diff -r 000000000000 -r d6fe6244b863 filebrowser/src/FBAppUi.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/filebrowser/src/FBAppUi.cpp Tue Feb 02 00:17:27 2010 +0200 @@ -0,0 +1,126 @@ +/* +* Copyright (c) 2009 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: +* +*/ + + +// INCLUDE FILES +#include "FBAppUi.h" +#include "FBFileListView.h" +#include "FB.hrh" +#include "FBModel.h" +#include "FBDocument.h" +#include + +#include +#include + +// ================= MEMBER FUNCTIONS ======================= +// +// ---------------------------------------------------------- +// CFileBrowserAppUi::ConstructL() +// ?implementation_description +// ---------------------------------------------------------- +// +void CFileBrowserAppUi::ConstructL() + { + BaseConstructL(EAknEnableSkin); + + iModel = static_cast(reinterpret_cast(iEikonEnv->AppUi())->Document())->Model(); + + CFileBrowserFileListView* fileListView = new (ELeave) CFileBrowserFileListView; + CleanupStack::PushL( fileListView ); + fileListView->ConstructL(); + AddViewL( fileListView ); // transfer ownership to CAknViewAppUi + CleanupStack::Pop(); // fileListView + + SetDefaultViewL(*fileListView); + + // notify the model that everything has been constructed + iModel->ActivateModelL(); + } + +// ---------------------------------------------------- +// CFileBrowserAppUi::~CFileBrowserAppUi() +// Destructor +// Frees reserved resources +// ---------------------------------------------------- +// +CFileBrowserAppUi::~CFileBrowserAppUi() + { + // notify the model that app ui will be deconstructed + if (iModel) + TRAP_IGNORE(iModel->DeActivateModelL()); + } + +// ------------------------------------------------------------------------------ +// CFileBrowserAppUi::::DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane) +// This function is called by the EIKON framework just before it displays +// a menu pane. Its default implementation is empty, and by overriding it, +// the application can set the state of menu items dynamically according +// to the state of application data. +// ------------------------------------------------------------------------------ +// +void CFileBrowserAppUi::DynInitMenuPaneL( + TInt /*aResourceId*/,CEikMenuPane* /*aMenuPane*/) + { + } + +// ---------------------------------------------------- +// CFileBrowserAppUi::HandleKeyEventL( +// const TKeyEvent& aKeyEvent,TEventCode /*aType*/) +// ?implementation_description +// ---------------------------------------------------- +// +TKeyResponse CFileBrowserAppUi::HandleKeyEventL( + const TKeyEvent& /*aKeyEvent*/,TEventCode /*aType*/) + { + return EKeyWasNotConsumed; + } + +// ---------------------------------------------------- +// CFileBrowserAppUi::HandleCommandL(TInt aCommand) +// ?implementation_description +// ---------------------------------------------------- +// +void CFileBrowserAppUi::HandleCommandL(TInt aCommand) + { + switch ( aCommand ) + { + // a normal way to close an application + case EAknCmdExit: + case EEikCmdExit: + { + Exit(); + } + break; + + default: + break; + } + } + +// ---------------------------------------------------- +// CFileBrowserAppUi::HandleWsEventL(const TWsEvent& aEvent, CCoeControl* aDestination) +// ?implementation_description +// ---------------------------------------------------- +// +void CFileBrowserAppUi::HandleWsEventL(const TWsEvent& aEvent, CCoeControl* aDestination) + { + //if (iModel->ScreenCapture()->HandleKeyCaptureEventsL(aEvent)) + CAknViewAppUi::HandleWsEventL(aEvent, aDestination); //continue the event loop if needed + } + +// End of File