uifw/ganes/src/HgGrid.cpp
branchRCL_3
changeset 18 0aa5fbdfbc30
parent 16 71dd06cfe933
child 25 941195f2d488
--- a/uifw/ganes/src/HgGrid.cpp	Wed Apr 14 16:14:00 2010 +0300
+++ b/uifw/ganes/src/HgGrid.cpp	Tue Apr 27 16:55:05 2010 +0300
@@ -91,7 +91,8 @@
 CHgGrid::CHgGrid( 
         TInt aItemCount, 
         CGulIcon* aDefaultIcon )
-: CHgScroller( aItemCount, aDefaultIcon )
+: CHgScroller( aItemCount, aDefaultIcon ),
+  iToolbarVisible( ETrue )
     {
     // No implementation required
     }
@@ -351,34 +352,43 @@
     {
     // Count number of visible rows
     // First is checked if 3x4 or 4x3 items fits to the grid.
-    TInt variety = Layout_Meta_Data::IsLandscapeOrientation() ? 1 : 0;
+
+    TInt mainVariety = iToolbarVisible ? 0 : 1;
+    TInt gridVariety = iToolbarVisible ? 0 : 2;
+    TInt cellVariety = iToolbarVisible ? 0 : 4;
 
-    TAknLayoutScalableParameterLimits limits = cell_gallery2_pane_ParamLimits(variety);
+    if( Layout_Meta_Data::IsLandscapeOrientation() )
+        {
+        ++gridVariety;
+        ++cellVariety;
+        }
+    
+    TAknLayoutScalableParameterLimits limits = cell_gallery2_pane_ParamLimits(cellVariety);
     iCols = limits.LastColumn() + 1;
     iRows = limits.LastRow() + 1;
     
     iLayoutData->ChangeCols( iCols );
     
-    iLayoutData->SetBaseLayout(main_gallery2_pane(0));
-    iLayoutData->SetItemLayout(grid_gallery2_pane(variety));
-    iLayoutData->SetIconLayout(cell_gallery2_pane_g2(variety));        
+    iLayoutData->SetBaseLayout(main_gallery2_pane(mainVariety));
+    iLayoutData->SetItemLayout(grid_gallery2_pane(gridVariety));
+    iLayoutData->SetIconLayout(cell_gallery2_pane_g2(cellVariety));        
     
     if( iLandscapeScrolling )
         {
         for(TInt i = 0; i < iRows; ++i)
             {
-            iLayoutData->SetColumnLayout(i, cell_gallery2_pane(variety, 0, i));            
+            iLayoutData->SetColumnLayout(i, cell_gallery2_pane(cellVariety, 0, i));            
             }
         }
     else
         {
         for(TInt i = 0; i < iCols; ++i)
             {
-            iLayoutData->SetColumnLayout(i, cell_gallery2_pane(variety, i, 0));            
+            iLayoutData->SetColumnLayout(i, cell_gallery2_pane(cellVariety, i, 0));            
             }
         }
-    iLayoutData->SetFirstIndicatorLayout(cell_gallery2_pane_g5(variety));
-    iLayoutData->SetSecondIndicatorLayout(cell_gallery2_pane_g4(variety));
+    iLayoutData->SetFirstIndicatorLayout(cell_gallery2_pane_g5(cellVariety));
+    iLayoutData->SetSecondIndicatorLayout(cell_gallery2_pane_g4(cellVariety));
     
     TAknLayoutRect gridAppPane;
     TAknLayoutRect gridItem;
@@ -808,4 +818,14 @@
     
     }
 
+// -----------------------------------------------------------------------------
+// CHgGrid::SetToolbarVisibility()
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void CHgGrid::SetToolbarVisibility( TBool aToolbarVisible )
+    {
+    iToolbarVisible = aToolbarVisible;
+    HandleSizeChanged();
+    }
+
 // End of File