examples/AppFramework/Apparc/MenuApp/MenuApp.h

00001 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
00002 // All rights reserved.
00003 // This component and the accompanying materials are made available
00004 // under the terms of "Eclipse Public License v1.0"
00005 // which accompanies this distribution, and is available
00006 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
00007 //
00008 // Initial Contributors:
00009 // Nokia Corporation - initial contribution.
00010 //
00011 // Contributors:
00012 //
00013 // Description:
00014 //
00015 
00016 #ifndef __MENUAPP_H__
00017 #define __MENUAPP_H__
00018 
00019 #include <coeccntx.h>
00020 
00021 #include <eikenv.h>
00022 #include <eikappui.h>
00023 #include <eikapp.h>
00024 #include <eikdoc.h>
00025 #include <eikmenup.h>
00026 
00027 
00028 #include <eikon.hrh>
00029 #include <eikon.rsg>
00030 #include <menuapp.rsg>
00031 
00032 #include <apgcli.h>
00033 
00034 
00035 // Application class
00036 class CExampleApplication : public CEikApplication
00037         {
00038 private:
00039         CApaDocument* CreateDocumentL();
00040         TUid AppDllUid() const;
00041         };
00042 
00043 
00044 // View class
00045 class CExampleAppView : public CCoeControl
00046         {
00047 public:
00048         static CExampleAppView* NewL(const TRect& aRect);
00049         CExampleAppView();
00050         ~CExampleAppView();
00051         void ConstructL(const TRect& aRect);
00052 private:
00053         void Draw(const TRect& /*aRect*/) const;        
00054         };
00055 
00056 
00057 // Application UI class
00058 class CExampleAppUi : public CEikAppUi
00059         {
00060 public:
00061         void ConstructL();
00062         ~CExampleAppUi();
00063 private:
00064         void HandleCommandL(TInt aCommand);     
00065         void DynInitMenuPaneL(TInt aResourceId, CEikMenuPane* aMenuPane);
00066 private:
00067         CCoeControl* iAppView;
00068 public: 
00069         RApaLsSession iApaLsSession;    
00070         };
00071 
00072 
00073 // Document class
00074 class CExampleDocument : public CEikDocument
00075         {
00076 public:
00077         static CExampleDocument* NewL(CEikApplication& aApp);
00078         CExampleDocument(CEikApplication& aApp);
00079         void ConstructL();
00080 private:
00081         CEikAppUi* CreateAppUiL();
00082         };
00083         
00084 #endif //__MENUAPP_H__
00085 

Generated by  doxygen 1.6.2