photosgallery/viewframework/views/gridview/src/glxgridviewimp.cpp
branchRCL_3
changeset 9 6b87b143d312
parent 0 4e91876724a2
child 18 bcb43dc84c44
equal deleted inserted replaced
5:f7f0874bfe7d 9:6b87b143d312
   104 	TRACER("CGlxGridViewImp::ConstructL()");
   104 	TRACER("CGlxGridViewImp::ConstructL()");
   105 	BaseConstructL(iResourceIds.iViewId);
   105 	BaseConstructL(iResourceIds.iViewId);
   106 	ViewBaseConstructL();
   106 	ViewBaseConstructL();
   107 	MLViewBaseConstructL(aMediaListFactory, aTitle);   
   107 	MLViewBaseConstructL(aMediaListFactory, aTitle);   
   108 
   108 
   109 	//Register the view to recieve toolbar events. ViewBase handles the events
   109 	//create the tool bar dynamically
       
   110 	//to reduce the startup time of the application.
       
   111 	iToolbar = CAknToolbar::NewL(R_GLX_GRID_VIEW_TOOLBAR);
       
   112 	SetGridToolBar(iToolbar);
   110 	SetToolbarObserver(this);
   113 	SetToolbarObserver(this);
   111 	ShowToolbarOnViewActivation(ETrue);
   114 	iToolbar->SetToolbarVisibility(ETrue);
   112     
   115     
   113 	// Get object that stores the active media list registry
   116 	// Get object that stores the active media list registry
   114 	iActiveMediaListRegistry = CGlxActiveMediaListRegistry::InstanceL();
   117 	iActiveMediaListRegistry = CGlxActiveMediaListRegistry::InstanceL();
   115 	}
   118 	}
   116 
   119 
   149 
   152 
   150 	GlxSetAppState::SetState(EGlxInCarouselView);
   153 	GlxSetAppState::SetState(EGlxInCarouselView);
   151 	// Setting the Context sensitive menu id
   154 	// Setting the Context sensitive menu id
   152 	MenuBar()->SetContextMenuTitleResourceId( iResourceIds.iOkOptionsMenuId );
   155 	MenuBar()->SetContextMenuTitleResourceId( iResourceIds.iOkOptionsMenuId );
   153 	iActiveMediaListRegistry->RegisterActiveMediaList(iMediaList);
   156 	iActiveMediaListRegistry->RegisterActiveMediaList(iMediaList);
   154 
   157 	if(!iToolbar)
       
   158         {
       
   159         iToolbar = CAknToolbar::NewL(R_GLX_GRID_VIEW_TOOLBAR);
       
   160         SetGridToolBar(iToolbar);
       
   161         SetToolbarObserver(this);
       
   162         iToolbar->SetToolbarVisibility(ETrue);
       
   163         }
   155 	//Create HG Grid, medialist observer, FS thumbnailcontext
   164 	//Create HG Grid, medialist observer, FS thumbnailcontext
   156 	iGlxGridViewContainer = CGlxGridViewContainer::NewL(iMediaList,iUiUtility,*this);
   165 	iGlxGridViewContainer = CGlxGridViewContainer::NewL(iMediaList,iUiUtility,*this,iToolbar);
   157 	iEikonEnv->AppUi()->AddToStackL(*this,iGlxGridViewContainer);
   166 	iEikonEnv->AppUi()->AddToStackL(*this,iGlxGridViewContainer);
   158 	}
   167 	}
   159 
   168 
   160 // ---------------------------------------------------------------------------
   169 // ---------------------------------------------------------------------------
   161 // From CAknView
   170 // From CAknView
   177 				TUid::Uid( EEikStatusPaneUidTitle ));        
   186 				TUid::Uid( EEikStatusPaneUidTitle ));        
   178 		iTitletext = titlePane->Text()->AllocL());
   187 		iTitletext = titlePane->Text()->AllocL());
   179 		}
   188 		}
   180 	// Deregister active media list pointer
   189 	// Deregister active media list pointer
   181 	iActiveMediaListRegistry->DeregisterActiveMediaList(iMediaList);
   190 	iActiveMediaListRegistry->DeregisterActiveMediaList(iMediaList);
   182 
   191 	if(iToolbar)
       
   192         {
       
   193          delete iToolbar;
       
   194          iToolbar = NULL;
       
   195 		 //set the gridtoolbar to NULL in viewbase.
       
   196          SetGridToolBar(iToolbar);
       
   197         }
   183 	// Destroy Grid widget before going to next view
   198 	// Destroy Grid widget before going to next view
   184 	DestroyGridWidget();
   199 	DestroyGridWidget();
   185 	}
   200 	}
   186 
   201 
   187 // ---------------------------------------------------------------------------
   202 // ---------------------------------------------------------------------------
   203 //
   218 //
   204 CGlxGridViewImp::~CGlxGridViewImp()
   219 CGlxGridViewImp::~CGlxGridViewImp()
   205 	{
   220 	{
   206 	TRACER("CGlxGridViewImp::~CGlxGridViewImp");
   221 	TRACER("CGlxGridViewImp::~CGlxGridViewImp");
   207 	delete iTitletext;
   222 	delete iTitletext;
   208     
   223 	if(iToolbar)
       
   224 	    {
       
   225         delete iToolbar;
       
   226         iToolbar = NULL;
       
   227 	    }
   209 	if (iActiveMediaListRegistry)
   228 	if (iActiveMediaListRegistry)
   210 		{
   229 		{
   211 		iActiveMediaListRegistry->Close();
   230 		iActiveMediaListRegistry->Close();
   212 		}    
   231 		}    
   213 	}
   232 	}
   266 //
   285 //
   267 void CGlxGridViewImp::HandleLatchToolbar()
   286 void CGlxGridViewImp::HandleLatchToolbar()
   268 	{
   287 	{
   269 	TRACER("CGlxGridViewImp::HandleLatchToolbarL()");
   288 	TRACER("CGlxGridViewImp::HandleLatchToolbarL()");
   270 	CAknButton* markButton = static_cast<CAknButton*>
   289 	CAknButton* markButton = static_cast<CAknButton*>
   271 									(Toolbar()->ControlOrNull( EGlxCmdStartMultipleMarking ));
   290 									(iToolbar->ControlOrNull( EGlxCmdStartMultipleMarking ));
   272 
   291 
   273 	if(markButton)
   292 	if(markButton)
   274 		{
   293 		{
   275 		markButton->SetCurrentState( KGlxToolbarButtonUnLatched, ETrue );
   294 		markButton->SetCurrentState( KGlxToolbarButtonUnLatched, ETrue );
   276 		}	
   295 		}