phonebookui/Phonebook2/UIControls/src/CPbk2ContactViewListBox.cpp
branchRCL_3
changeset 11 2828b4d142c0
parent 8 5586b4d2ec3e
child 17 2666d9724c76
--- a/phonebookui/Phonebook2/UIControls/src/CPbk2ContactViewListBox.cpp	Tue Apr 27 16:23:35 2010 +0300
+++ b/phonebookui/Phonebook2/UIControls/src/CPbk2ContactViewListBox.cpp	Tue May 11 16:00:21 2010 +0300
@@ -427,7 +427,10 @@
     const RPointerArray<MPbk2UiControlCmdItem>* aCommands )
     {
     iListboxModelDecorator->SetListCommands( aCommands );
-    iColumnData->SetListCommands( aCommands );
+    if( iColumnData )
+        {
+        iColumnData->SetListCommands( aCommands );
+        }
     }
 
 // --------------------------------------------------------------------------
@@ -520,7 +523,7 @@
     model->SetUnnamedText( iResourceData.iUnnamedText );
     iModel = model;
 
-    if(FeatureManager::FeatureSupported(KFeatureIdFfContactsPredictiveSearch))
+    if( iColumnData )
         {
         iColumnData->SetDataModel( iModel );
         }
@@ -589,18 +592,26 @@
 //
 void CPbk2ContactViewListBox::CreateItemDrawerL()
     {
-    CPbk2ContactViewCustomListBoxData* columnData =
-                    CPbk2ContactViewCustomListBoxData::NewL( iSearchFilter );
-
-    CleanupStack::PushL( columnData );
-
-    iItemDrawer=new(ELeave) CPbk2ContactViewCustomListBoxItemDrawer(
-            static_cast<MTextListBoxModel*>(Model()), iCoeEnv->NormalFont(),
-            columnData);
-    CleanupStack::Pop( columnData );
-
-    //Ownership has been transferred to iItemDrawer
-    iColumnData = columnData;
+    // Use custom drawer only if predictive search is enabled
+    if( FeatureManager::FeatureSupported(KFeatureIdFfContactsPredictiveSearch) )
+        {
+        CPbk2ContactViewCustomListBoxData* columnData =
+                        CPbk2ContactViewCustomListBoxData::NewL( iSearchFilter );
+    
+        CleanupStack::PushL( columnData );
+    
+        iItemDrawer=new(ELeave) CPbk2ContactViewCustomListBoxItemDrawer(
+                static_cast<MTextListBoxModel*>(Model()), iCoeEnv->NormalFont(),
+                columnData);
+        CleanupStack::Pop( columnData );
+    
+        //Ownership has been transferred to iItemDrawer
+        iColumnData = columnData;
+        }
+    else
+        {
+        CAknSingleGraphicStyleListBox::CreateItemDrawerL();
+        }
     }
 
 // --------------------------------------------------------------------------