diff -r 5cc91383ab1e -r 7333d7932ef7 iaupdate/IAD/ui/src/iaupdatehistoryview.cpp --- a/iaupdate/IAD/ui/src/iaupdatehistoryview.cpp Thu Aug 19 10:02:49 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,180 +0,0 @@ -/* -* Copyright (c) 2007-2008 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This module contains the implementation of CIAUpdateHistoryView -* class member functions. -* -*/ - - - -#include -#include -#include -#include -#include -#include -#include - -#include "iaupdatehistoryview.h" -#include "iaupdatehistorycontainer.h" -#include "iaupdatehistory.h" -#include "iaupdateappui.h" -#include "iaupdate.hrh" - - -// Standard construction sequence -CIAUpdateHistoryView* CIAUpdateHistoryView::NewL( MIAUpdateHistory& aHistory ) - { - CIAUpdateHistoryView* self = - CIAUpdateHistoryView::NewLC( aHistory ); - CleanupStack::Pop(self); - return self; - } - -CIAUpdateHistoryView* CIAUpdateHistoryView::NewLC( MIAUpdateHistory& aHistory ) - { - CIAUpdateHistoryView* self = - new( ELeave ) CIAUpdateHistoryView( aHistory ); - CleanupStack::PushL(self); - self->ConstructL(); - return self; - } - -CIAUpdateHistoryView::CIAUpdateHistoryView( MIAUpdateHistory& aHistory ) -: CAknView(), - iHistory( aHistory ) - { - // no implementation required - } - -CIAUpdateHistoryView::~CIAUpdateHistoryView() - { - delete iContainer; - } - -void CIAUpdateHistoryView::ConstructL() - { - // Initializes the view with the given resources - BaseConstructL( R_IAUPDATE_HISTORY_VIEW ); - } - - -void CIAUpdateHistoryView::RefreshL() - { - if( !iContainer ) - { - // Create the container if it does not already exist. - // Also, add it to the app ui control stack - iContainer = CIAUpdateHistoryContainer::NewL( ClientRect() ); - AppUi()->AddToStackL( iContainer ); - } - - UpdateStatusPaneL(); - - // Container does the actual refreshing by using the current history - // information. - // Also, refresh the history first, because it may have changed since - // last time. - History().RefreshL(); - iContainer->RefreshL( History() ); - } - - -TUid CIAUpdateHistoryView::Id() const - { - return TUid::Uid( EIAUpdateHistoryViewId ); - } - - -void CIAUpdateHistoryView::HandleCommandL( TInt aCommand ) - { - switch( aCommand ) - { - // All the exit type of softkey commands will be interpret as - // the exit from the history view. - case EAknSoftkeyBack: - case EAknSoftkeyExit: - case EAknSoftkeyClose: - aCommand = EIAUpdateCmdHistoryViewExit; - break; - - default: - break; - } - - // Let the app ui handle all the commands - AppUi()->HandleCommandL( aCommand ); - } - - -void CIAUpdateHistoryView::DoActivateL( const TVwsViewId& /*aPrevViewId*/, - TUid /*aCustomMessageId*/, - const TDesC8& /*aCustomMessage*/ ) - { - // Refresh everything. - RefreshL(); - } - -void CIAUpdateHistoryView::DoDeactivate() - { - if ( iContainer ) - { - // Remove container from the control stack and delete - // the container. - AppUi()->RemoveFromStack( iContainer ); - delete iContainer; - iContainer = NULL; - } - if ( static_cast(AppUi())->ShowStatusDialogAgain() ) - { - TRAP_IGNORE( static_cast(AppUi())->ShowStatusDialogDeferredL() ); - } - } - - -MIAUpdateHistory& CIAUpdateHistoryView::History() const - { - return iHistory; - } - - -void CIAUpdateHistoryView::UpdateStatusPaneL() - { - // Also update title pane text - // Gets a pointer to the status pane. - // Notice, that the ownership is not transferred here. - CEikStatusPane* statusPane = - static_cast< CAknAppUi* >( AppUi() )->StatusPane(); - - // Check if title pane is in current layout. - TBool isTitlePaneInLayout( - statusPane-> - PaneCapabilities( - TUid::Uid( EEikStatusPaneUidTitle ) ). - IsInCurrentLayout() ); - - // Change title text if title pane is in the curent layout. - if ( isTitlePaneInLayout ) - { - // Fetch pointer to the title pane control. Notice, that the ownership is not - // transferred here. - CAknTitlePane* titlePane = - static_cast< CAknTitlePane* >( statusPane->ControlL( - TUid::Uid( EEikStatusPaneUidTitle ) ) ); - HBufC* text = StringLoader::LoadLC( R_IAUPDATE_TEXT_TITLE_PANE_HISTORY ); - titlePane->SetTextL( *text ); - CleanupStack::PopAndDestroy( text ); - } - } -