--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/phonebookui/Phonebook2/Application/inc/CPbk2AppUi.h Tue Feb 02 10:12:17 2010 +0200
@@ -0,0 +1,173 @@
+/*
+* Copyright (c) 2005-2007 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: Phonebook 2 application UI.
+*
+*/
+
+
+#ifndef CPBK2APPUI_H
+#define CPBK2APPUI_H
+
+// INCLUDES
+#include <CPbk2AppUiBase.h>
+#include <coemain.h>
+#include <MPbk2AppUiExtension.h>
+#include <MPbk2KeyEventHandler.h>
+#include <RPbk2LocalizedResourceFile.h>
+
+// FORWARD DECLARATIONS
+class CPbk2Document;
+class CPbk2Application;
+class MPbk2AppUiExtension;
+class CPbk2ViewExplorer;
+class CPbk2StartupMonitor;
+class CPbk2ViewState;
+class CPbk2StoreManager;
+class CPbk2TabGroupContainer;
+class MPbk2ApplicationServices;
+class MPbk2ApplicationServices2;
+
+// CLASS DECLARATION
+
+/**
+ * Phonebook2 application UI.
+ * An object of this class is created by the Symbian OS
+ * framework by a call to CPbk2Document::CreateAppUiL().
+ * The application UI object creates and owns the application's
+ * views and handles system commands selected from the menu.
+ */
+class CPbk2AppUi : public CPbk2AppUiBase<CAknViewAppUi>,
+ public MPbk2KeyEventHandler,
+ private MCoeForegroundObserver
+ {
+ public: // Constructors and destructor
+
+ /**
+ * Constructor.
+ */
+ CPbk2AppUi();
+
+ /**
+ * Destructor.
+ */
+ ~CPbk2AppUi();
+
+ public: // Interface
+
+ /**
+ * Returns the Phonebook 2 document object.
+ *
+ * @return Phonebook document.
+ */
+ CPbk2Document* PhonebookDocument() const;
+
+ /**
+ * Returns the concrete store manager.
+ *
+ * @return Store manager.
+ */
+ CPbk2StoreManager& StoreManager() const;
+
+ /**
+ * Returns the Phonebook 2 application object.
+ *
+ * @return Phonebook application.
+ */
+ CPbk2Application* Pbk2Application() const;
+
+ /**
+ * Exits Phonebook 2 in a correct way.
+ */
+ void ExitL();
+
+ /**
+ * Forces exit.
+ */
+ void Exit();
+
+ /**
+ * Activates Phonebook view.
+ *
+ * @param aViewId Id of the view to activate.
+ * @param aViewState View activation parameters.
+ */
+ void ActivatePhonebookViewL(
+ TUid aViewId,
+ const CPbk2ViewState* aViewState );
+
+ public: // From CPbk2AppUiBase
+ CPbk2AppViewBase* ActiveView() const;
+ MPbk2ViewExplorer* Pbk2ViewExplorer() const;
+ MPbk2StartupMonitor* Pbk2StartupMonitor() const;
+ CPbk2TabGroupContainer* TabGroups() const;
+ MPbk2KeyEventHandler& KeyEventHandler();
+ MPbk2ApplicationServices& ApplicationServices() const;
+ void HandleCommandL(
+ TInt aCommand );
+ void ExitApplication();
+
+ private: // From MCoeForegroundObserver
+ void HandleGainingForeground();
+ void HandleLosingForeground();
+
+ private: // From CAknViewAppUi
+ void DynInitMenuPaneL(
+ TInt aResourceId,
+ CEikMenuPane* aMenuPane );
+ TKeyResponse HandleKeyEventL(
+ const TKeyEvent& aKeyEvent,
+ TEventCode aType );
+ void HandleResourceChangeL(
+ TInt aType );
+ void HandleForegroundEventL(
+ TBool aForeground );
+
+ private: // From MPbk2KeyEventHandler
+ TBool Pbk2ProcessKeyEventL(
+ const TKeyEvent& aKeyEvent,
+ TEventCode aType );
+
+ private: // Implementation
+ void ConstructL();
+ void CmdExit();
+ TBool LocalVariationFeatureEnabled(
+ TInt aFeatureFlag );
+ void LeavePbkInMemExitL();
+
+ private: // Data
+ /// Own: Phonebook 2 UI controls dll resource file
+ RPbk2LocalizedResourceFile iUiControlsResourceFile;
+ /// Own: Phonebook 2 commands dll resource file
+ RPbk2LocalizedResourceFile iCommandsResourceFile;
+ /// Own: Phonebook 2 common UI dll resource file
+ RPbk2LocalizedResourceFile iCommonUiResourceFile;
+ /// Own: View explorer
+ CPbk2ViewExplorer* iViewExplorer;
+ /// Own: Tab group
+ CPbk2TabGroupContainer* iTabGroups;
+ /// Own: AppUI extension
+ MPbk2AppUiExtension* iAppUiExtension;
+ /// Own: Start-up monitor
+ CPbk2StartupMonitor* iStartupMonitor;
+ /// Own: Indicates is this app in foreground
+ TBool iIsRunningForeground;
+ /// Ref: Application services
+ MPbk2ApplicationServices* iAppServices;
+ /// Ref: Application services extension
+ MPbk2ApplicationServices2* iAppServicesExtension;
+ };
+
+#endif // CPBK2APPUI_H
+
+// End of File