phoneuis/easydialing/src/easydialingcontactdatamanager.cpp
branchRCL_3
changeset 4 24062c24fe38
parent 3 8871b09be73b
child 5 2a26698d78ba
equal deleted inserted replaced
3:8871b09be73b 4:24062c24fe38
    40 #include <MVPbkOperationObserver.h>
    40 #include <MVPbkOperationObserver.h>
    41 #include <MVPbkContactStore.h>          // MVPbkContactStore
    41 #include <MVPbkContactStore.h>          // MVPbkContactStore
    42 #include <MVPbkStoreContact.h>
    42 #include <MVPbkStoreContact.h>
    43 #include <centralrepository.h>
    43 #include <centralrepository.h>
    44 
    44 
       
    45 #include <PbkGlobalSettingFactory.h>
       
    46 
    45 #include "easydialingcontactdata.h"
    47 #include "easydialingcontactdata.h"
    46 #include "easydialingcontactdatamanager.h"
    48 #include "easydialingcontactdatamanager.h"
    47 #include "easydialingutils.h"
    49 #include "easydialingutils.h"
    48 #include "mcontactdatamanagerobserver.h"
    50 #include "mcontactdatamanagerobserver.h"
    49 #include "easydialingcrkeys.h"
    51 #include "easydialingcrkeys.h"
    76     delete iFavsView;
    78     delete iFavsView;
    77     if (iContactStore)
    79     if (iContactStore)
    78         {
    80         {
    79         iContactStore->Close( *this);
    81         iContactStore->Close( *this);
    80         }
    82         }
       
    83     
       
    84     if ( iPbkSettings )
       
    85         {
       
    86         iPbkSettings->Close();
       
    87         }
       
    88     delete iPbkSettings;
    81     }
    89     }
    82 
    90 
    83 // ---------------------------------------------------------------------------
    91 // ---------------------------------------------------------------------------
    84 // CEasyDialingContactDataManager::ConstructL
    92 // CEasyDialingContactDataManager::ConstructL
    85 // ---------------------------------------------------------------------------
    93 // ---------------------------------------------------------------------------
   102     // Read easydialing setting from cenrep.
   110     // Read easydialing setting from cenrep.
   103     CRepository* cenrep = CRepository::NewL( KCRUidEasyDialSettings );
   111     CRepository* cenrep = CRepository::NewL( KCRUidEasyDialSettings );
   104     CleanupStack::PushL( cenrep );
   112     CleanupStack::PushL( cenrep );
   105     User::LeaveIfError( cenrep->Get( KEasyDialingContactThumbnails, iContactThumbnailSetting ) );
   113     User::LeaveIfError( cenrep->Get( KEasyDialingContactThumbnails, iContactThumbnailSetting ) );
   106     CleanupStack::PopAndDestroy( cenrep );
   114     CleanupStack::PopAndDestroy( cenrep );
       
   115     
       
   116     iPbkSettings = PbkGlobalSettingFactory::CreatePersistentSettingL();
       
   117     iPbkSettings->ConnectL( MPbkGlobalSetting::EGeneralSettingCategory );
       
   118     
       
   119     /*
       
   120     * Phonebook name ordering flag, integer value, possible values:
       
   121     * 0: name order Lastname Firstname
       
   122     * 1: name order Firstname Lastname
       
   123     * 2: name order undefined
       
   124     */
       
   125     TInt nameOrderSetting;
       
   126     iPbkSettings->Get( MPbkGlobalSetting::ENameOrdering, nameOrderSetting );
       
   127     iNameOrder = ( nameOrderSetting == 0 ? ELastnameFirstname : EFirstnameLastname );
       
   128     iPbkSettings->RegisterObserverL( this );
   107     }
   129     }
   108 
   130 
   109 // ---------------------------------------------------------------------------
   131 // ---------------------------------------------------------------------------
   110 // CEasyDialingContactDataManager::SetObserver
   132 // CEasyDialingContactDataManager::SetObserver
   111 // ---------------------------------------------------------------------------
   133 // ---------------------------------------------------------------------------
   252 
   274 
   253 // ---------------------------------------------------------------------------
   275 // ---------------------------------------------------------------------------
   254 // CEasyDialingContactDataManager::FavContactStringLC
   276 // CEasyDialingContactDataManager::FavContactStringLC
   255 // ---------------------------------------------------------------------------
   277 // ---------------------------------------------------------------------------
   256 //
   278 //
   257 HBufC* CEasyDialingContactDataManager::FavContactStringLC( TInt aIndex, CPbkContactEngine::TPbkNameOrder aNameOrder )
   279 HBufC* CEasyDialingContactDataManager::FavContactStringLC( TInt aIndex, TNameOrder aNameOrder )
   258     {
   280     {
   259     const MVPbkBaseContactFieldCollection& fields = iFavsView->ContactAtL( aIndex ).Fields();
   281     const MVPbkBaseContactFieldCollection& fields = iFavsView->ContactAtL( aIndex ).Fields();
   260     TPtrC firstName;
   282     TPtrC firstName;
   261     TPtrC lastName;
   283     TPtrC lastName;
   262     TPtrC companyName;
   284     TPtrC companyName;
   293     
   315     
   294     return EasyDialingUtils::CreateContactStringLC( firstName, lastName, companyName, aNameOrder );
   316     return EasyDialingUtils::CreateContactStringLC( firstName, lastName, companyName, aNameOrder );
   295     }
   317     }
   296 
   318 
   297 // ---------------------------------------------------------------------------
   319 // ---------------------------------------------------------------------------
       
   320 // CEasyDialingContactDataManager::NameOrder
       
   321 // ---------------------------------------------------------------------------
       
   322 //
       
   323 CEasyDialingContactDataManager::TNameOrder CEasyDialingContactDataManager::NameOrder()
       
   324     {
       
   325     return iNameOrder;
       
   326     }
       
   327 
       
   328 // ---------------------------------------------------------------------------
   298 // CEasyDialingContactDataManager::InitReady
   329 // CEasyDialingContactDataManager::InitReady
   299 // ---------------------------------------------------------------------------
   330 // ---------------------------------------------------------------------------
   300 //
   331 //
   301 void CEasyDialingContactDataManager::InitReady()
   332 void CEasyDialingContactDataManager::InitReady()
   302     {
   333     {
   389 //
   420 //
   390 void CEasyDialingContactDataManager::Pbk2ImageGetFailed(MPbk2ImageOperation& aOperation, TInt /*aError*/)
   421 void CEasyDialingContactDataManager::Pbk2ImageGetFailed(MPbk2ImageOperation& aOperation, TInt /*aError*/)
   391     {
   422     {
   392     LOGSTRING("CEasyDialingContactDataManager: Pbk2ImageGetFailed");
   423     LOGSTRING("CEasyDialingContactDataManager: Pbk2ImageGetFailed");
   393     Pbk2ImageGetComplete(aOperation, NULL);
   424     Pbk2ImageGetComplete(aOperation, NULL);
       
   425     }
       
   426 
       
   427 // ---------------------------------------------------------------------------
       
   428 // CEasyDialingContactDataManager::SettingChangedL
       
   429 // From MPbkGlobalSettingObserver
       
   430 // ---------------------------------------------------------------------------
       
   431 //
       
   432 void CEasyDialingContactDataManager::SettingChangedL( MPbkGlobalSetting::TPbkGlobalSetting aKey )
       
   433     {
       
   434     if ( aKey == MPbkGlobalSetting::ENameOrdering )
       
   435         {
       
   436         TInt nameOrderSetting;
       
   437         iPbkSettings->Get( MPbkGlobalSetting::ENameOrdering, nameOrderSetting );
       
   438         iNameOrder = ( nameOrderSetting == 0 ? ELastnameFirstname : EFirstnameLastname );
       
   439         if ( iObserver )
       
   440             {
       
   441             iObserver->NameOrderChanged();
       
   442             }
       
   443         }
   394     }
   444     }
   395 
   445 
   396 // ---------------------------------------------------------------------------
   446 // ---------------------------------------------------------------------------
   397 // CEasyDialingContactDataManager::DoHandleImageGetCompleteL
   447 // CEasyDialingContactDataManager::DoHandleImageGetCompleteL
   398 // ---------------------------------------------------------------------------
   448 // ---------------------------------------------------------------------------