--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/phonebookui/Phonebook2/ccapplication/ccapp/inc/ccaappappui.h Tue Feb 02 10:12:17 2010 +0200
@@ -0,0 +1,212 @@
+/*
+* Copyright (c) 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: Defines CCCAAppAppUi, class that prepares the
+* application View(s) and handles the UI commands
+*
+*/
+
+
+#ifndef __CCAAPP_APPUI_H__
+#define __CCAAPP_APPUI_H__
+
+#ifdef __CCAPPUNITTESTMODE
+ #include "ccappheaders.h"
+#else
+ #include <aknViewAppUi.h>
+#endif// __CCAPPUNITTESTMODE
+
+// FORWARD DECLARATIONS
+class CCCAppView;
+class CCCAParameter;
+class CRepository;
+
+/**
+ * Defines CCCAAppAppUi, class that prepares the application
+ * view and handles the UI commands
+ *
+ * @lib ccaapp.exe
+ * @since S60 v5.0
+ */
+class CCCAAppAppUi : public CAknViewAppUi
+ {
+#ifdef __CCAPPUNITTESTMODE
+ friend class ut_CCCAAppAppUi;
+#endif// __CCAPPUNITTESTMODE
+
+public:
+
+ CCCAAppAppUi();
+
+ /**
+ * Destructor.
+ */
+ ~CCCAAppAppUi();
+
+public:
+
+ /**
+ * Initializes view plugin for usage. Calls 1st
+ * PreparePluginViewL and then ActivatePluginViewL.
+ *
+ * @since S60 v5.0
+ * @param aParameter contains contact information.
+ * Ownership is transferred.
+ */
+ void InitializePlugin( CCCAParameter& aParameter );
+
+ /**
+ * Returns a reference to CCApp parameter
+ *
+ * @since S60 v5.0
+ * @return CCCAParameter reference
+ */
+ CCCAParameter& Parameter();
+
+ /**
+ * Returns a reference to EikonEnv
+ *
+ * @since S60 v5.0
+ * @return CEikonEnv reference
+ */
+ CEikonEnv& EikonEnv();
+
+ /**
+ * Returns an array of key ids reserved by the AppUi
+ *
+ * @since S60 v5.0
+ * @return key id array
+ */
+ RArray<TInt>& ReservedKeys();
+
+ /**
+ * Handles cases when plugin leaves in critical point.
+ * See more details in CCCAppView-classes similar method.
+ * (Set as virtual because this is called from the CCCAppViewPluginAknView (ccapputil.dll))
+ *
+ * @since S60 v5.0
+ */
+ virtual void RecoverFromBadPluginL();
+
+// from base class CCoeAppUi
+
+ /**
+ * From CCoeAppUi
+ * (see details from header)
+ *
+ * @since S60 v5.0
+ */
+ TKeyResponse HandleKeyEventL(
+ const TKeyEvent& aKeyEvent,
+ TEventCode aType );
+
+ void HandleWsEventL( const TWsEvent &aEvent, CCoeControl *aDestination );
+
+private:
+
+// from base class CEikAppUi
+
+ /**
+ * From CEikAppUi
+ * (see details from header)
+ *
+ * @since S60 v5.0
+ */
+ void HandleCommandL( TInt aCommand );
+
+ /**
+ * From CEikAppUi
+ * (see details from header)
+ *
+ * @since S60 v5.0
+ */
+ void PrepareToExit();
+
+
+// from base class CAknAppUi
+
+ /**
+ * From CAknAppUi
+ * (see details from header)
+ *
+ * @since S60 v5.0
+ */
+ TErrorHandlerResponse HandleError(
+ TInt aError,
+ const SExtendedError& aExtErr,
+ TDes& aErrorText,
+ TDes& aContextText );
+
+private:
+
+ /**
+ * Loads the settings from CenRep.
+ * In case of error some default values are used.
+ *
+ * @since S60 v5.0
+ */
+ void LoadSettingsL();
+
+private:
+
+ void ConstructL();
+
+public:
+ /**
+ * Sets the title of the View Plugin
+ * @param aTitle - the title to be set for the Plugin View
+ * @since S60 v5.0
+ *
+ */
+ virtual void SetTitleL( const TDesC& aTitle );
+
+private: // data
+
+ /**
+ * Pointer to tab view.
+ * Own.
+ */
+ CCCAppView* iCCAppView;
+
+ /**
+ * Pointer to CCA parameter.
+ * Own.
+ */
+ CCCAParameter* iCCAParameter;
+
+ /**
+ * Keys for view navigation
+ */
+ TInt iNextViewKey;
+ TInt iPrevViewKey;
+
+ /**
+ * Flag for settings loading
+ */
+ TBool iSettingsLoaded;
+
+ /**
+ * For loading the settings.
+ * Own.
+ */
+ CRepository* iRepository;
+
+ /**
+ * Ids of reserved keys
+ */
+ RArray<TInt> iReservedKeys;
+ };
+
+#endif // __CCAAPP_APPUI_H__
+
+//End Of File