| author | Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> | 
| Tue, 27 Apr 2010 16:33:37 +0300 | |
| branch | RCL_3 | 
| changeset 24 | e00582ce7ecd | 
| parent 0 | 72b543305e3a | 
| permissions | -rw-r--r-- | 
| 0 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1 | /* | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2 | * Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies). | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 3 | * All rights reserved. | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 4 | * This component and the accompanying materials are made available | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 5 | * under the terms of "Eclipse Public License v1.0" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 6 | * which accompanies this distribution, and is available | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 7 | * at the URL "http://www.eclipse.org/legal/epl-v10.html". | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 8 | * | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 9 | * Initial Contributors: | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 10 | * Nokia Corporation - initial contribution. | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 11 | * | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 12 | * Contributors: | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 13 | * | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 14 | * Description: ImumInSettingsDataCtrl.inl | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 15 | * | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 16 | */ | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 17 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 18 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 19 | #include "ImumDaErrorCodes.h" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 20 | #include "ImumPanic.h" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 21 | #include "ImumInSettingsDataAttribute.h" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 22 | #include "ImumInSettingsDataImpl.h" // CImumInSettingsDataImpl | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 23 | #include "ImumInSettingsDataCollectionImpl.h" // CImumInSettingsDataCollectionImpl | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 24 | #include "ImumInSettingsDataArray.h" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 25 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 26 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 27 | // ImumInSettingsDataCtrl::CreateToArray() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 28 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 29 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 30 | template<class TDefaultDataType, class TAttributeType, class TDefaultType> | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 31 | TInt ImumInSettingsDataCtrl::CreateToArray( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 32 | CImumInSettingsDataArray& aArray, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 33 | const TDefaultDataType* aDefaultData, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 34 | const TUint aAttributeKey, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 35 | const TInt aAttributeType, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 36 | const TAttributeType& aAttributeValue, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 37 | TDefaultType& aEmptyDefaultValue ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 38 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 39 | CImumInSettingsDataAttribute* attribute = NULL; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 40 | TInt error = KErrNone; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 41 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 42 | // In case the default data is not provided, it means the default data | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 43 | // itself is being constructed, thus this part can be skipped and | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 44 | // the object itself shall be filled with correct data. | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 45 | if ( aDefaultData ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 46 |         {        
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 47 | error = aDefaultData->GetAttr( aAttributeKey, aEmptyDefaultValue ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 48 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 49 | // The default data attribute must contain the default data in itself, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 50 | // so it will be possible to clone the attribute later on. | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 51 | else | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 52 |         {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 53 | // As this template method can be executed for both number and text | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 54 | // attributes, the copy part must be different here and executed | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 55 | // seperately for descriptors and built-in types. | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 56 | if ( aAttributeType == ECmpNormal ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 57 |             {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 58 | reinterpret_cast<TDes*>( &aEmptyDefaultValue )->Copy( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 59 | *reinterpret_cast<const TDesC*>( &aAttributeValue ) ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 60 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 61 | else if ( aAttributeType == ECmpNormal8 ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 62 |             {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 63 | reinterpret_cast<TDes8*>( &aEmptyDefaultValue )->Copy( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 64 | *reinterpret_cast<const TDesC8*>( &aAttributeValue ) ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 65 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 66 | else | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 67 |             {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 68 | aEmptyDefaultValue = aAttributeValue; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 69 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 70 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 71 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 72 | if ( error == KErrNone ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 73 |         {        
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 74 | TRAP( error, attribute = CreateAttributeL( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 75 | aAttributeKey, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 76 | aAttributeType, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 77 | aAttributeValue, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 78 | aEmptyDefaultValue ) ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 79 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 80 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 81 | if ( error == KErrNone ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 82 |         {        
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 83 | aArray.SetAttr( *attribute ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 84 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 85 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 86 | return error; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 87 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 88 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 89 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 90 | // ImumInSettingsDataCtrl::CreateToArray() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 91 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 92 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 93 | template<class TAttributeType> | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 94 | TInt ImumInSettingsDataCtrl::RetrieveFromArray( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 95 | CImumInSettingsDataArray& aArray, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 96 | const TUint aAttributeKey, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 97 | const TInt /* aAttributeType */, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 98 | TAttributeType& aAttributeValue ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 99 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 100 | CImumInSettingsDataAttribute* attribute = NULL; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 101 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 102 | TInt error = aArray.GetAttr( aAttributeKey, attribute ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 103 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 104 | if ( error == KErrNone ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 105 |         {        
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 106 | attribute->Value( aAttributeValue ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 107 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 108 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 109 | return error; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 110 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 111 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 112 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 113 | // ImumInSettingsDataCtrl::CreateAttributeL() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 114 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 115 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 116 | template<class TValueType, class TDefaultType> | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 117 | CImumInSettingsDataAttribute* ImumInSettingsDataCtrl::CreateAttributeL( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 118 | const TUint aAttributeId, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 119 | const TInt aAttributeType, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 120 | const TValueType& aAttributeValue, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 121 | const TDefaultType& aAttributeDefault ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 122 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 123 | // Size does matter! | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 124 | TUint size( 0 ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 125 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 126 | // Ok, this may look a bit ugly, but at this point it is certain | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 127 | // that attribute is going to be descriptor, so the conversion | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 128 | // is safe. | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 129 | if ( aAttributeType == ECmpNormal ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 130 |         {             
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 131 | size = reinterpret_cast<const TDesC*>( &aAttributeValue )->Length(); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 132 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 133 | else if ( aAttributeType == ECmpNormal8 ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 134 |         {             
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 135 | size = reinterpret_cast<const TDesC8*>( &aAttributeValue )->Length(); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 136 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 137 | else | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 138 |         {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 139 | size = sizeof( aAttributeValue ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 140 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 141 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 142 | // After calculating the size, create the actual container object | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 143 | return CImumInSettingsDataAttribute::NewL( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 144 | aAttributeId, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 145 | aAttributeType, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 146 | size, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 147 | &aAttributeValue, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 148 | &aAttributeDefault ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 149 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 150 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 151 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 152 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 153 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 154 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 155 | // ImumInSettingsDataCtrl::Copy() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 156 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 157 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 158 | template<class T> | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 159 | TInt ImumInSettingsDataCtrl::Copy( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 160 | MImumDaSettingsDataCollection& aDestination, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 161 | const MImumDaSettingsDataCollection& aSource, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 162 | const TUint aAttributeKey, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 163 | T& aAttribute, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 164 | const TInt aErrorCode ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 165 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 166 | TInt error = aSource.GetAttr( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 167 | aAttributeKey, aAttribute ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 168 | if ( !error ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 169 |         {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 170 | error = aDestination.SetAttr( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 171 | aAttributeKey, aAttribute ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 172 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 173 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 174 | if ( error ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 175 |         {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 176 | error = aErrorCode; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 177 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 178 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 179 | return error; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 180 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 181 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 182 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 183 | // ImumInSettingsDataCtrl::CompareText8() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 184 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 185 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 186 | template<TInt L> | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 187 | TBool ImumInSettingsDataCtrl::CompareText8( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 188 | const MImumDaSettingsDataCollection& aDestinationSettings, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 189 | const MImumDaSettingsDataCollection& aSourceSettings, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 190 | const TUint aAttributeKey ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 191 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 192 | TBuf8<L> destination; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 193 | TBuf8<L> source; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 194 | TBool result = EFalse; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 195 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 196 | TInt error = aDestinationSettings.GetAttr( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 197 | aAttributeKey, destination ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 198 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 199 | if ( !error ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 200 |         {        
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 201 | error = aSourceSettings.GetAttr( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 202 | aAttributeKey, source ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 203 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 204 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 205 | if ( !error ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 206 |         {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 207 | result = !source.CompareC( destination ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 208 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 209 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 210 | return result; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 211 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 212 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 213 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 214 | // ImumInSettingsDataCtrl::CompareText() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 215 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 216 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 217 | template<TInt L> | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 218 | TBool ImumInSettingsDataCtrl::CompareText( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 219 | const MImumDaSettingsDataCollection& aDestinationSettings, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 220 | const MImumDaSettingsDataCollection& aSourceSettings, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 221 | const TUint aAttributeKey ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 222 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 223 | TBuf<L> destination; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 224 | TBuf<L> source; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 225 | TBool result = EFalse; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 226 | TInt error = aDestinationSettings.GetAttr( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 227 | aAttributeKey, destination ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 228 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 229 | if ( !error ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 230 |         {        
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 231 | error = aSourceSettings.GetAttr( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 232 | aAttributeKey, source ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 233 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 234 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 235 | if ( !error ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 236 |         {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 237 | result = !source.CompareC( destination ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 238 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 239 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 240 | return result; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 241 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 242 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 243 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 244 | // ImumInSettingsDataCtrl::CompareNum() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 245 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 246 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 247 | template<class T> | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 248 | TBool ImumInSettingsDataCtrl::CompareNum( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 249 | const MImumDaSettingsDataCollection& aDestinationSettings, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 250 | const MImumDaSettingsDataCollection& aSourceSettings, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 251 | const TUint aAttributeKey ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 252 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 253 | T dest; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 254 | T source; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 255 | TBool result = EFalse; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 256 | TInt error = aDestinationSettings.GetAttr( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 257 | aAttributeKey, dest ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 258 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 259 | if ( !error ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 260 |         {        
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 261 | error = aSourceSettings.GetAttr( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 262 | aAttributeKey, source ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 263 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 264 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 265 | if ( !error ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 266 |         {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 267 | result = ( dest == source ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 268 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 269 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 270 | return result; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 271 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 272 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 273 |