idlehomescreen/widgetmanager/src/wmmaincontainerview.cpp
branchRCL_3
changeset 9 f966699dea19
parent 2 08c6ee43b396
child 15 ff572dfe6d86
equal deleted inserted replaced
5:c743ef5928ba 9:f966699dea19
    53 //
    53 //
    54 CWmMainContainerView::~CWmMainContainerView()
    54 CWmMainContainerView::~CWmMainContainerView()
    55 	{
    55 	{
    56     if ( iWmMainContainer != NULL )
    56     if ( iWmMainContainer != NULL )
    57         {
    57         {
    58         AppUi()->RemoveFromViewStack( *this, iWmMainContainer );
    58         AppUi()->RemoveFromStack( iWmMainContainer );
       
    59 
    59         delete iWmMainContainer;
    60         delete iWmMainContainer;
    60         iWmMainContainer = NULL;
    61         iWmMainContainer = NULL;
    61         }
    62         }
    62 	}
    63 	}
    63 
    64 
   138             case EWmMainContainerViewHelpMenuItemCommand:
   139             case EWmMainContainerViewHelpMenuItemCommand:
   139                 HandleHelpMenuItemSelectedL();
   140                 HandleHelpMenuItemSelectedL();
   140                 break;
   141                 break;
   141             case EWmMainContainerViewBackMenuItemCommand: // flow through
   142             case EWmMainContainerViewBackMenuItemCommand: // flow through
   142             case EAknSoftkeyBack:
   143             case EAknSoftkeyBack:
   143                 iWmPlugin.Deactivate();
   144                 iWmPlugin.CloseView();
   144                 break;
   145                 break;
   145             case EWmMainContainerViewWiddetDetailsMenuItemCommand:
   146             case EWmMainContainerViewWiddetDetailsMenuItemCommand:
   146                 HandleDetailsMenuItemSelectedL();
   147                 HandleDetailsMenuItemSelectedL();
   147                 break;
   148                 break;
   148             case EAknSoftkeySelect:
   149             case EAknSoftkeySelect:
   168 void CWmMainContainerView::DoActivateL( 
   169 void CWmMainContainerView::DoActivateL( 
   169 		const TVwsViewId& aPrevViewId,
   170 		const TVwsViewId& aPrevViewId,
   170 		TUid /*aCustomMessageId*/,
   171 		TUid /*aCustomMessageId*/,
   171 		const TDesC8& /*aCustomMessage*/ )
   172 		const TDesC8& /*aCustomMessage*/ )
   172 	{
   173 	{
   173 	if ( iWmMainContainer == NULL )
   174     // setup status pane layout
   174 		{
       
   175 		iWmMainContainer = CreateContainerL();
       
   176 		iWmMainContainer->SetMopParent( this );
       
   177 		AppUi()->AddToStackL( *this, iWmMainContainer );
       
   178 		}
       
   179 	
       
   180 	SetupStatusPaneL();
       
   181    
       
   182     iWmPlugin.MainViewActivated( aPrevViewId, iWmMainContainer );
       
   183     StatusPane()->SwitchLayoutL( 
   175     StatusPane()->SwitchLayoutL( 
   184             R_AVKON_STATUS_PANE_LAYOUT_USUAL_FLAT );
   176             R_AVKON_STATUS_PANE_LAYOUT_USUAL_FLAT );
   185     StatusPane()->ApplyCurrentSettingsL();
   177     StatusPane()->ApplyCurrentSettingsL();
       
   178     
       
   179     // title in status pane
       
   180     SetTitleL();
       
   181     
   186     StatusPane()->DrawNow();
   182     StatusPane()->DrawNow();
       
   183     
       
   184     // update cba
   187     CEikButtonGroupContainer* bgc( Cba() );
   185     CEikButtonGroupContainer* bgc( Cba() );
   188         
       
   189     CEikCba* cba = static_cast< CEikCba* >( bgc->ButtonGroup() );
   186     CEikCba* cba = static_cast< CEikCba* >( bgc->ButtonGroup() );
   190     if ( cba ) 
   187     if ( cba ) 
   191         {
   188         {       
   192         
       
   193         bgc->SetBoundingRect( TRect() );
   189         bgc->SetBoundingRect( TRect() );
   194         cba->DrawNow();
   190         cba->DrawNow();
   195         }
   191         }
       
   192 
       
   193     // create container
       
   194     if ( iWmMainContainer == NULL )
       
   195         {
       
   196         iWmMainContainer = CreateContainerL();
       
   197         iWmMainContainer->SetMopParent( this );
       
   198         AppUi()->AddToStackL( *this, iWmMainContainer );
       
   199         }
       
   200     
       
   201     iWmPlugin.MainViewActivated( aPrevViewId, iWmMainContainer );
   196 	}
   202 	}
   197 
   203 
   198 // ---------------------------------------------------------
   204 // ---------------------------------------------------------
   199 // CWmMainContainerView::DoDeactivate
   205 // CWmMainContainerView::DoDeactivate
   200 // ---------------------------------------------------------
   206 // ---------------------------------------------------------
   201 //
   207 //
   202 void CWmMainContainerView::DoDeactivate()
   208 void CWmMainContainerView::DoDeactivate()
   203 	{
   209 	{
   204 	if ( iWmMainContainer != NULL )
   210 	if ( iWmMainContainer != NULL )
   205 		{
   211 		{
   206 		AppUi()->RemoveFromViewStack( *this, iWmMainContainer );
   212         AppUi()->RemoveFromStack( iWmMainContainer );
   207 		delete iWmMainContainer;
   213 		delete iWmMainContainer;
   208 		iWmMainContainer = NULL;
   214 		iWmMainContainer = NULL;
       
   215 		iWmPlugin.MainViewDeactivated();
   209 		}
   216 		}
   210 
       
   211 	iWmPlugin.MainViewDeactivated();
       
   212 	}
   217 	}
   213 
   218 
   214 // ---------------------------------------------------------
   219 // ---------------------------------------------------------
   215 // CWmMainContainerView::HandleStatusPaneSizeChange
   220 // CWmMainContainerView::HandleStatusPaneSizeChange
   216 // ---------------------------------------------------------
   221 // ---------------------------------------------------------
   231 		}
   236 		}
   232 	
   237 	
   233 	}
   238 	}
   234 
   239 
   235 // ---------------------------------------------------------
   240 // ---------------------------------------------------------
   236 // CWmMainContainerView::SetupStatusPaneL
   241 // CWmMainContainerView::SetTitleL
   237 // ---------------------------------------------------------
   242 // ---------------------------------------------------------
   238 //
   243 //
   239 void CWmMainContainerView::SetupStatusPaneL()
   244 void CWmMainContainerView::SetTitleL()
   240 	{	
   245 	{	
   241 	// setup the title pane
   246 	// setup the title pane
   242 	TUid titlePaneUid = TUid::Uid( EEikStatusPaneUidTitle );
   247 	TUid titlePaneUid = TUid::Uid( EEikStatusPaneUidTitle );
   243 	CEikStatusPaneBase::TPaneCapabilities subPaneTitle = 
   248 	CEikStatusPaneBase::TPaneCapabilities subPaneTitle = 
   244 		StatusPane()->PaneCapabilities( titlePaneUid );
   249 		StatusPane()->PaneCapabilities( titlePaneUid );
   410         iWmMainContainer->DeactivateFindPaneL();
   415         iWmMainContainer->DeactivateFindPaneL();
   411         }
   416         }
   412     return ETrue;
   417     return ETrue;
   413     }
   418     }
   414 
   419 
       
   420 // ---------------------------------------------------------
       
   421 // CWmMainContainerView::HandleForegroundEventL
       
   422 // ---------------------------------------------------------
       
   423 //
       
   424 void CWmMainContainerView::HandleForegroundEventL( TBool aForeground )
       
   425     {
       
   426     CAknView::HandleForegroundEventL( aForeground );
       
   427     if ( iWmMainContainer )
       
   428         {
       
   429         iWmMainContainer->ProcessForegroundEvent( aForeground );
       
   430         }
       
   431     }
       
   432 
   415 // End of file
   433 // End of file