QtGui/qs60mainappui.h Source File

qs60mainappui.h
Go to the documentation of this file.
1 /****************************************************************************
2 **
3 ** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
4 ** Contact: http://www.qt-project.org/legal
5 **
6 ** This file is part of the Symbian application wrapper of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and Digia. For licensing terms and
14 ** conditions see http://qt.digia.com/licensing. For further information
15 ** use the contact form at http://qt.digia.com/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 2.1 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL included in the
21 ** packaging of this file. Please review the following information to
22 ** ensure the GNU Lesser General Public License version 2.1 requirements
23 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
24 **
25 ** In addition, as a special exception, Digia gives you certain additional
26 ** rights. These rights are described in the Digia Qt LGPL Exception
27 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
28 **
29 ** GNU General Public License Usage
30 ** Alternatively, this file may be used under the terms of the GNU
31 ** General Public License version 3.0 as published by the Free Software
32 ** Foundation and appearing in the file LICENSE.GPL included in the
33 ** packaging of this file. Please review the following information to
34 ** ensure the GNU General Public License version 3.0 requirements will be
35 ** met: http://www.gnu.org/copyleft/gpl.html.
36 **
37 **
38 ** $QT_END_LICENSE$
39 **
40 ****************************************************************************/
41 
42 #ifndef QS60MAINAPPUI_H
43 #define QS60MAINAPPUI_H
44 
45 #include <QtCore/qglobal.h>
46 
47 #ifdef Q_OS_SYMBIAN
48 
49 #ifdef Q_WS_S60
50 #include <aknappui.h>
51 typedef CAknAppUi QS60MainAppUiBase;
52 #else
53 #include <eikappui.h>
54 // these stub classes simulate the structure of CAknAppUi, to help binary compatibility between Qt configured with and without S60/Avkon
55 class QS60StubAknAppUiBase : public CEikAppUi
56 {
57 private:
58  int qS60StubAknAppUiBaseSpace[4];
59 };
60 
61 class QS60StubMEikStatusPaneObserver
62 {
63 public:
64  virtual void HandleStatusPaneSizeChange() = 0;
65 };
66 
67 class QS60StubMAknTouchPaneObserver
68 {
69 public:
70  virtual void HandleTouchPaneSizeChange() = 0;
71 };
72 
73 class QS60StubAknAppUi : public QS60StubAknAppUiBase, QS60StubMEikStatusPaneObserver,
74  public MCoeViewDeactivationObserver,
75  public QS60StubMAknTouchPaneObserver
76 {
77 public: // MCoeViewDeactivationObserver
78  virtual void HandleViewDeactivation(const TVwsViewId&, const TVwsViewId &);
79 
80 public: // from MAknTouchPaneObserver
81  virtual void HandleTouchPaneSizeChange();
82 
83 protected: // from MEikStatusPaneObserver
84  virtual void HandleStatusPaneSizeChange();
85 
86 protected: // from CAknAppUi
87  virtual void Reserved_MtsmPosition();
88  virtual void Reserved_MtsmObject();
89 
90 private:
91  int qS60StubAknAppUiSpace[4];
92 };
93 
94 typedef QS60StubAknAppUi QS60MainAppUiBase;
95 #endif
96 
98 
100 
101 QT_MODULE(Gui)
102 
103 class Q_GUI_EXPORT QS60MainAppUi : public QS60MainAppUiBase
104 {
105 public:
106  QS60MainAppUi();
107  // The virtuals are for qdoc.
108  virtual ~QS60MainAppUi();
109 
110  virtual void ConstructL();
111 
112  virtual void RestoreMenuL(CCoeControl *menuWindow,TInt resourceId,TMenuType menuType);
113  virtual void DynInitMenuBarL(TInt resourceId, CEikMenuBar *menuBar);
114  virtual void DynInitMenuPaneL(TInt resourceId, CEikMenuPane *menuPane);
115 
116  virtual void HandleCommandL( TInt command );
117 
118  virtual void HandleResourceChangeL(TInt type);
119 
120  virtual void HandleStatusPaneSizeChange();
121 
122 protected:
123  virtual void HandleWsEventL(const TWsEvent &event, CCoeControl *destination);
124 
125 public:
126  virtual void Exit();
127  virtual void SetFadedL(TBool aFaded);
128  virtual TRect ApplicationRect() const;
129  virtual void ProcessCommandL(TInt aCommand);
130  virtual TErrorHandlerResponse HandleError (TInt aError, const SExtendedError &aExtErr, TDes &aErrorText, TDes &aContextText);
131  virtual void HandleViewDeactivation(const TVwsViewId &aViewIdToBeDeactivated, const TVwsViewId &aNewlyActivatedViewId);
132  virtual void PrepareToExit();
133  virtual void HandleTouchPaneSizeChange();
134  virtual TBool ProcessCommandParametersL(TApaCommand aCommand, TFileName &aDocumentName, const TDesC8 &aTail);
135 
136 protected:
137  virtual void HandleScreenDeviceChangedL();
138  virtual void HandleApplicationSpecificEventL(TInt aType, const TWsEvent &aEvent);
139  virtual TTypeUid::Ptr MopSupplyObject(TTypeUid aId);
140  virtual void HandleSystemEventL(const TWsEvent &aEvent);
141  virtual void Reserved_MtsmPosition();
142  virtual void Reserved_MtsmObject();
143  virtual void HandleForegroundEventL(TBool aForeground);
144 };
145 
147 
149 
150 #endif // Q_OS_SYMBIAN
151 
152 #endif // QS60MAINAPPUI_H
GLuint GLuint GLsizei GLenum type
Definition: GLee.h:872
#define QT_END_NAMESPACE
Definition: qglobal.h:128
#define QT_BEGIN_HEADER
Definition: qglobal.h:141
#define QT_BEGIN_NAMESPACE
Definition: qglobal.h:127
#define QT_END_HEADER
Definition: qglobal.h:142