| author | hgs | 
| Thu, 04 Nov 2010 02:02:03 +0530 | |
| changeset 81 | 2043ea884c04 | 
| 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: ImumInSettingsDataArray.cpp | 
| 
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 FILES | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 20 | #include <e32base.h> | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 21 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 22 | #include "ImumInSettingsDataArray.h" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 23 | #include "ImumDaErrorCodes.h" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 24 | #include "ImumDaSettingsKeys.h" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 25 | #include "ImumInSettingsKeys.h" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 26 | #include "ImumInSettingsDataAttribute.h" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 27 | #include "ImumMboxDefaultData.h" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 28 | #include "ImumPanic.h" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 29 | #include "ImumUtilsLogging.h" | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 30 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 31 | // EXTERNAL DATA STRUCTURES | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 32 | // EXTERNAL FUNCTION PROTOTYPES | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 33 | // CONSTANTS | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 34 | // MACROS | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 35 | // LOCAL CONSTANTS AND MACROS | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 36 | // MODULE DATA STRUCTURES | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 37 | // LOCAL FUNCTION PROTOTYPES | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 38 | // FORWARD DECLARATIONS | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 39 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 40 | // ============================ MEMBER FUNCTIONS =============================== | 
| 
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 | // ---------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 43 | // CImumInSettingsDataArray::CImumInSettingsDataArray() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 44 | // ---------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 45 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 46 | CImumInSettingsDataArray::CImumInSettingsDataArray() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 47 |     {
 | 
| 
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 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 50 | // ---------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 51 | // CImumInSettingsDataArray::~CImumInSettingsDataArray() | 
| 
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 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 54 | CImumInSettingsDataArray::~CImumInSettingsDataArray() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 55 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 56 | iSettings.ResetAndDestroy(); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 57 | iSettings.Close(); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 58 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 59 | delete iSearchItem; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 60 | iSearchItem = NULL; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 61 | } | 
| 
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 | // ---------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 64 | // CImumInSettingsDataArray::ConstructL() | 
| 
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 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 67 | void CImumInSettingsDataArray::ConstructL() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 68 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 69 | // This item is need to search the array for the specific id. Only required | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 70 | // value is the id of the item, other can be ignored. The id is specified | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 71 | // just before the search begins. | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 72 | iSearchItem = CImumInSettingsDataAttribute::NewL( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 73 | 0, ECmpTInt32, 0, NULL, NULL ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 74 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 75 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 76 | // ---------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 77 | // CImumInSettingsDataArray::NewL() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 78 | // ---------------------------------------------------------------------------- | 
| 
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 | CImumInSettingsDataArray* CImumInSettingsDataArray::NewL() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 81 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 82 | CImumInSettingsDataArray* self = NewLC(); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 83 | CleanupStack::Pop( self ); | 
| 
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 | return self; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 86 | } | 
| 
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 | // CImumInSettingsDataArray::NewLC() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 90 | // ---------------------------------------------------------------------------- | 
| 
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 | CImumInSettingsDataArray* CImumInSettingsDataArray::NewLC() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 93 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 94 | CImumInSettingsDataArray* self = new ( ELeave ) CImumInSettingsDataArray(); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 95 | CleanupStack::PushL( self ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 96 | self->ConstructL(); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 97 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 98 | return self; | 
| 
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 | |
| 
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 | // CImumInSettingsDataArray::HasItem() | 
| 
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 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 105 | TBool CImumInSettingsDataArray::HasItem( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 106 | const TUint aAttributeKey, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 107 | TInt& aIndex ) const | 
| 
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 | iSearchItem->SetId( aAttributeKey ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 110 | TIdentityRelation<CImumInSettingsDataAttribute> relation( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 111 | CImumInSettingsDataAttribute::IdCompare ); | 
| 
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 | aIndex = iSettings.Find( iSearchItem, relation ); | 
| 
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 | return ( aIndex >= 0 ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 116 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 117 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 118 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 119 | // CImumInSettingsDataArray::GetAttr() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 120 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 121 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 122 | TInt CImumInSettingsDataArray::GetAttr( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 123 | const TUint aAttributeKey, | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 124 | CImumInSettingsDataAttribute*& aAttribute ) const | 
| 
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 | // Try to find the key from the settings key list | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 127 | TInt index = KErrNotFound; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 128 | TInt error = KErrNone; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 129 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 130 | // Find the item from the list | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 131 | if ( HasItem( aAttributeKey, index ) ) | 
| 
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 | aAttribute = iSettings[index]; | 
| 
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 | else | 
| 
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 | error = TImumDaErrorCode::ESettingNotFound; | 
| 
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 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 140 | return error; | 
| 
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 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 143 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 144 | // CImumInSettingsDataArray::SetAttr() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 145 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 146 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 147 | TInt CImumInSettingsDataArray::SetAttr( | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 148 | CImumInSettingsDataAttribute& aAttribute ) | 
| 
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 | TInt error = KErrNone; | 
| 
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 | // Try to find the key from the settings key list | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 153 | TInt index = KErrNotFound; | 
| 
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 | // Find the item from the list | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 156 | if ( !HasItem( aAttribute.Id(), index ) ) | 
| 
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 | TRAP( error, iSettings.AppendL( &aAttribute ) ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 159 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 160 | // Key exists, replace the old value with the new one | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 161 | else | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 162 |         {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 163 | delete iSettings[index]; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 164 | iSettings.Remove( index ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 165 | iSettings.Insert( &aAttribute, index ); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 166 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 167 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 168 | return 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 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 171 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 172 | // CImumInSettingsDataArray::ResetAttr() | 
| 
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 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 175 | void CImumInSettingsDataArray::ResetAttr( const TUint aAttributeKey ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 176 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 177 | CImumInSettingsDataAttribute* attr = NULL; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 178 | if ( GetAttr( aAttributeKey, attr ) == KErrNone ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 179 |         {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 180 | attr->Reset(); | 
| 
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 | |
| 
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 | // CImumInSettingsDataArray::ResetAll() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 186 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 187 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 188 | void CImumInSettingsDataArray::ResetAll( const RArray<TUint>& /* aExcludeList */ ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 189 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 190 | // Start from the last item | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 191 | TInt settingsCount = iSettings.Count() - 1; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 192 | for ( TInt setting = settingsCount; setting >= 0; --setting ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 193 |         {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 194 | iSettings[setting]->Reset(); | 
| 
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 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 197 | |
| 
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 | // CImumInSettingsDataArray::CloneL() | 
| 
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 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 202 | CImumInSettingsDataArray* CImumInSettingsDataArray::CloneL() const | 
| 
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 | CImumInSettingsDataArray* clone = NewLC(); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 205 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 206 | for ( TInt setting = iSettings.Count(); --setting >= 0; ) | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 207 |         {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 208 | clone->iSettings.Append( iSettings[setting]->CloneL() ); | 
| 
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 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 211 | CleanupStack::Pop( clone ); | 
| 
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 | return clone; | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 214 | } | 
| 
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 | // CImumInSettingsDataArray::Count() | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 218 | // --------------------------------------------------------------------------- | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 219 | // | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 220 | TInt CImumInSettingsDataArray::Count() const | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 221 |     {
 | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 222 | return iSettings.Count(); | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 223 | } | 
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 224 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 225 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 226 | |
| 
72b543305e3a
Revision: 200949
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 227 | // End of File |