phonebookui/Phonebook2/Presentation/src/CPbk2ContactViewBuilder.cpp
branchRCL_3
changeset 3 04ab22b956c2
parent 0 e686773b3f54
child 64 c1e8ba0c2b16
equal deleted inserted replaced
0:e686773b3f54 3:04ab22b956c2
    42 
    42 
    43 // System includes
    43 // System includes
    44 #include <coemain.h>
    44 #include <coemain.h>
    45 #include <barsread.h>
    45 #include <barsread.h>
    46 
    46 
    47 
       
    48 // --------------------------------------------------------------------------
    47 // --------------------------------------------------------------------------
    49 // CPbk2ContactViewBuilder::CPbk2ContactViewBuilder
    48 // CPbk2ContactViewBuilder::CPbk2ContactViewBuilder
    50 // --------------------------------------------------------------------------
    49 // --------------------------------------------------------------------------
    51 //
    50 //
    52 CPbk2ContactViewBuilder::CPbk2ContactViewBuilder(
    51 CPbk2ContactViewBuilder::CPbk2ContactViewBuilder(
    93     {
    92     {
    94     return CreateViewForStoresLC
    93     return CreateViewForStoresLC
    95         ( EPbk2MainNamesList, aUriArray, aObserver, aSortOrder, aFilter, aFlags );
    94         ( EPbk2MainNamesList, aUriArray, aObserver, aSortOrder, aFilter, aFlags );
    96     }
    95     }
    97 
    96 
       
    97 // --------------------------------------------------------------------------
       
    98 // CPbk2ContactViewBuilder::CreateContactViewForStoresLC
       
    99 // --------------------------------------------------------------------------
       
   100 //
       
   101 EXPORT_C MVPbkContactViewBase*
       
   102     CPbk2ContactViewBuilder::CreateContactViewForStoresLC(
       
   103         const CVPbkContactStoreUriArray& aUriArray,
       
   104         MVPbkContactViewObserver& aObserver,
       
   105         const MVPbkFieldTypeList& aSortOrder,
       
   106         CVPbkFieldTypeSelector* aFilter,
       
   107         TUint32 aFlags,
       
   108         MVPbkContactSelector* aContactSelector) const
       
   109     {
       
   110     return CreateViewForStoresLC
       
   111         ( EPbk2MainNamesList, aUriArray, aObserver, aSortOrder, aFilter, aFlags, EFalse, aContactSelector );
       
   112     }
    98 
   113 
    99 // --------------------------------------------------------------------------
   114 // --------------------------------------------------------------------------
   100 // CPbk2ContactViewBuilder::CreateTopNonTopContactViewForStoresLC
   115 // CPbk2ContactViewBuilder::CreateTopNonTopContactViewForStoresLC
   101 //
   116 //
   102 // Similar as CreateContactViewForStoresLC but TopContacts are filtered out
   117 // Similar as CreateContactViewForStoresLC but TopContacts are filtered out
   193         const CVPbkContactStoreUriArray& aUriArray,
   208         const CVPbkContactStoreUriArray& aUriArray,
   194         MVPbkContactViewObserver& aObserver,
   209         MVPbkContactViewObserver& aObserver,
   195         const MVPbkFieldTypeList& aSortOrder,
   210         const MVPbkFieldTypeList& aSortOrder,
   196         CVPbkFieldTypeSelector* aFilter,
   211         CVPbkFieldTypeSelector* aFilter,
   197         TUint32 aFlags,
   212         TUint32 aFlags,
   198         TBool aTopContacts ) const
   213         TBool aTopContacts,
       
   214         MVPbkContactSelector* aContactSelector) const
   199     {
   215     {
   200     // Main view is a composite view that contains several sub composite
   216     // Main view is a composite view that contains several sub composite
   201     // views. The subviews are identified by TPbk2ContactViewLocation. 
   217     // views. The subviews are identified by TPbk2ContactViewLocation. 
   202     CVPbkContactViewDefinition* viewDef = BuildMainViewStructureLC( aFilter, aFlags );
   218     CVPbkContactViewDefinition* viewDef = BuildMainViewStructureLC( aFilter, aFlags );
   203     
   219     
   253                     
   269                     
   254                     if( aFlags & EVPbkExcludeEmptyGroups )
   270                     if( aFlags & EVPbkExcludeEmptyGroups )
   255                     	{
   271                     	{
   256                     	newSubView->SetFlag ( EVPbkExcludeEmptyGroups, ETrue );
   272                     	newSubView->SetFlag ( EVPbkExcludeEmptyGroups, ETrue );
   257                     	}
   273                     	}
       
   274                     if( !(newSubView->ContactSelector()) )
       
   275                         {
       
   276                         newSubView->SetContactSelector( aContactSelector );
       
   277                         }
   258                     
   278                     
   259                     subView.AddSubViewL( newSubView );
   279                     subView.AddSubViewL( newSubView );
   260                     CleanupStack::Pop();
   280                     CleanupStack::Pop();
   261                     }
   281                     }
   262                 }
   282                 }