williamr@2
|
1 |
// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
|
williamr@2
|
2 |
// All rights reserved.
|
williamr@2
|
3 |
// This component and the accompanying materials are made available
|
williamr@2
|
4 |
// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
|
williamr@2
|
5 |
// which accompanies this distribution, and is available
|
williamr@2
|
6 |
// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
|
williamr@2
|
7 |
//
|
williamr@2
|
8 |
// Initial Contributors:
|
williamr@2
|
9 |
// Nokia Corporation - initial contribution.
|
williamr@2
|
10 |
//
|
williamr@2
|
11 |
// Contributors:
|
williamr@2
|
12 |
//
|
williamr@2
|
13 |
// Description:
|
williamr@2
|
14 |
//
|
williamr@2
|
15 |
|
williamr@2
|
16 |
#ifndef __EIKENV_H__
|
williamr@2
|
17 |
#define __EIKENV_H__
|
williamr@2
|
18 |
|
williamr@2
|
19 |
#include <uikon.hrh>
|
williamr@2
|
20 |
#include <coemain.h>
|
williamr@2
|
21 |
#include <coedef.h>
|
williamr@2
|
22 |
#include <eikdef.h>
|
williamr@2
|
23 |
#include <gulalign.h>
|
williamr@2
|
24 |
#include <apaflrec.h>
|
williamr@2
|
25 |
#include <apacmdln.h>
|
williamr@2
|
26 |
#include <badesca.h>
|
williamr@2
|
27 |
#include <baerrhan.h>
|
williamr@2
|
28 |
#include <gulcolor.h>
|
williamr@2
|
29 |
#include <eikdgfty.h>
|
williamr@2
|
30 |
#include <eikaufty.h>
|
williamr@2
|
31 |
#include <eiklibry.h>
|
williamr@2
|
32 |
#include <eikamnt.h>
|
williamr@2
|
33 |
#include <lafmain.h>
|
williamr@2
|
34 |
#include <eikvcurs.h>
|
williamr@2
|
35 |
#include <babitflags.h>
|
williamr@2
|
36 |
#include <eikpicturefactory.h>
|
williamr@2
|
37 |
|
williamr@2
|
38 |
class CEikProcess;
|
williamr@2
|
39 |
class MEikInfoMsgWin;
|
williamr@2
|
40 |
class MEikBusyMsgWin;
|
williamr@2
|
41 |
class CEikAppUi;
|
williamr@2
|
42 |
class CEikHotKeyTable;
|
williamr@2
|
43 |
class CCoeControl;
|
williamr@2
|
44 |
class CParaFormatLayer;
|
williamr@2
|
45 |
class CCharFormatLayer;
|
williamr@2
|
46 |
class CCoeBrushAndPenContext;
|
williamr@2
|
47 |
class CEikCommandButton;
|
williamr@2
|
48 |
class CPrintSetup;
|
williamr@2
|
49 |
class CDictionaryStore;
|
williamr@2
|
50 |
class CApaWindowGroupName;
|
williamr@2
|
51 |
class CEikErrorIdler;
|
williamr@2
|
52 |
class CEikApplication;
|
williamr@2
|
53 |
class MEikInfoDialog;
|
williamr@2
|
54 |
class MEikAlertWin;
|
williamr@2
|
55 |
class CEikDialog;
|
williamr@2
|
56 |
class MEikDebugKeys;
|
williamr@2
|
57 |
class CEikLibrary;
|
williamr@2
|
58 |
class MEikAppUiFactory;
|
williamr@2
|
59 |
class MEikIrFactory;
|
williamr@2
|
60 |
class CGulIcon;
|
williamr@2
|
61 |
class CApaMaskedBitmap;
|
williamr@2
|
62 |
class CEikLogicalBorderProxy;
|
williamr@2
|
63 |
class CEikLafEnv;
|
williamr@2
|
64 |
class TLogicalFont;
|
williamr@2
|
65 |
class CEikPictureFactory;
|
williamr@2
|
66 |
class CEikEnvExtra;
|
williamr@2
|
67 |
class TApaApplicationFactory;
|
williamr@2
|
68 |
class CEikAppServer;
|
williamr@2
|
69 |
class CLafSystemFont;
|
williamr@2
|
70 |
class RApaLsSession;
|
williamr@2
|
71 |
|
williamr@2
|
72 |
/**
|
williamr@2
|
73 |
@publishedAll
|
williamr@2
|
74 |
@released
|
williamr@2
|
75 |
*/
|
williamr@2
|
76 |
typedef void (*TRequestDialogFunc)();
|
williamr@2
|
77 |
|
williamr@2
|
78 |
/**
|
williamr@2
|
79 |
@internalComponent
|
williamr@2
|
80 |
*/
|
williamr@2
|
81 |
const TUid KUikonLibraryUid = {KUidUikonLibraryValue};
|
williamr@2
|
82 |
|
williamr@2
|
83 |
/**
|
williamr@2
|
84 |
Creates the CEikLibrary interface object by calling the first ordinal function which is mapped to NewL method.
|
williamr@2
|
85 |
|
williamr@2
|
86 |
The function leaves with KErrBadLibraryEntryPoint if the ordinal 1 function
|
williamr@2
|
87 |
cannot be found.
|
williamr@2
|
88 |
|
williamr@2
|
89 |
@publishedPartner
|
williamr@2
|
90 |
@released
|
williamr@2
|
91 |
*/
|
williamr@2
|
92 |
typedef CEikLibrary* (*EikLibraryEntryPoint)();
|
williamr@2
|
93 |
|
williamr@2
|
94 |
|
williamr@2
|
95 |
/** An environment for creating controls and utility functions for manipulating
|
williamr@2
|
96 |
them.
|
williamr@2
|
97 |
|
williamr@2
|
98 |
Every GUI application is provided with an instance of CEikonEnv
|
williamr@2
|
99 |
by the framework, which can be accessed through either CEikonEnv::Static()
|
williamr@2
|
100 |
or the iEikonEnv macro of CEikApplication.
|
williamr@2
|
101 |
|
williamr@2
|
102 |
@publishedAll
|
williamr@2
|
103 |
@released */
|
williamr@2
|
104 |
class CEikonEnv : public CCoeEnv
|
williamr@2
|
105 |
{
|
williamr@2
|
106 |
public:
|
williamr@2
|
107 |
enum TErrorValidity
|
williamr@2
|
108 |
{ EErrorNumValid, EErrorNumInvalid };
|
williamr@2
|
109 |
public:
|
williamr@2
|
110 |
// Properties
|
williamr@2
|
111 |
IMPORT_C static TVersion Version();
|
williamr@2
|
112 |
inline static CEikonEnv* Static();
|
williamr@2
|
113 |
// Construction and destruction
|
williamr@2
|
114 |
IMPORT_C ~CEikonEnv();
|
williamr@2
|
115 |
IMPORT_C CEikonEnv();
|
williamr@2
|
116 |
IMPORT_C void ConstructL();
|
williamr@2
|
117 |
IMPORT_C void ConstructL(TBool aInitialFocusState);
|
williamr@2
|
118 |
IMPORT_C void ConstructL(TBool aInitialFocusState, TInt aWindowGroupID);
|
williamr@2
|
119 |
IMPORT_C void ConstructAppFromCommandLineL(const TApaApplicationFactory& aApplicationFactory, const CApaCommandLine& aCommandLine);
|
williamr@2
|
120 |
IMPORT_C void ControlStackReadyL();
|
williamr@2
|
121 |
IMPORT_C void DestroyEnvironment();
|
williamr@2
|
122 |
//
|
williamr@2
|
123 |
inline CEikAppUi* EikAppUi() const;
|
williamr@2
|
124 |
inline CEikProcess* Process() const;
|
williamr@2
|
125 |
// Legacy font support (see new TCoeFont and CCoeControl::ScreenFont())
|
williamr@2
|
126 |
IMPORT_C const CFont* AnnotationFont() const;
|
williamr@2
|
127 |
IMPORT_C const CFont* TitleFont() const;
|
williamr@2
|
128 |
IMPORT_C const CFont* LegendFont() const;
|
williamr@2
|
129 |
IMPORT_C const CFont* SymbolFont() const;
|
williamr@2
|
130 |
IMPORT_C const CFont* DenseFont() const;
|
williamr@2
|
131 |
IMPORT_C const CFont* Font(const TLogicalFont& aLogicalFont) const;
|
williamr@2
|
132 |
IMPORT_C void UpdateSystemFontsL();
|
williamr@2
|
133 |
// System bitmaps
|
williamr@2
|
134 |
IMPORT_C const CFbsBitmap* TexturedBitmap() const; // deprecated
|
williamr@2
|
135 |
IMPORT_C const CFbsBitmap* GrayBitmap() const; // deprecated
|
williamr@2
|
136 |
IMPORT_C const CFbsBitmap* OptionBitmap() const; // deprecated
|
williamr@2
|
137 |
IMPORT_C const CFbsBitmap* HighlightedOptionBitmap() const;
|
williamr@2
|
138 |
IMPORT_C const CFbsBitmap* OptionMaskBitmap() const; // deprecated
|
williamr@2
|
139 |
IMPORT_C const CFbsBitmap* Bitmap(TUid aUidBmp) const;
|
williamr@2
|
140 |
public:
|
williamr@2
|
141 |
IMPORT_C TBool ConfirmLossOfAllChangesL() const;
|
williamr@2
|
142 |
|
williamr@2
|
143 |
IMPORT_C MPictureFactory* PictureFactory() const;
|
williamr@2
|
144 |
IMPORT_C MEikPictureFactory* ExtendedPictureFactory(TUid aPictureType) const;
|
williamr@2
|
145 |
IMPORT_C void AddPictureFactoryL(MEikPictureFactory& aFactory);
|
williamr@2
|
146 |
IMPORT_C void RemovePictureFactory(TUid aFactoryId);
|
williamr@2
|
147 |
// Alert dialogs
|
williamr@2
|
148 |
IMPORT_C void AlertWin(const TDesC& aMsg);
|
williamr@2
|
149 |
IMPORT_C void AlertWin(const TDesC& aMsg1, const TDesC& aMsg2);
|
williamr@2
|
150 |
inline const MEikAlertWin* Alert() const;
|
williamr@2
|
151 |
IMPORT_C void SetAlertWin(MEikAlertWin* aAlertWin);
|
williamr@2
|
152 |
// Error handling
|
williamr@2
|
153 |
IMPORT_C void LeaveWithInfoMsg(TInt aResourceId,...);
|
williamr@2
|
154 |
IMPORT_C void LeaveWithErrorContext(TInt aError, const TDesC& aContextText); // deprecated
|
williamr@2
|
155 |
IMPORT_C void GetErrorText(TDes& aDes,TInt aError) const;
|
williamr@2
|
156 |
IMPORT_C TErrorValidity GetErrorText(TDes& aErrorText, TInt aError, TUid aAppUid) const;
|
williamr@2
|
157 |
IMPORT_C TErrorValidity GetErrorTextAndTitle(TDes& aErrorText, TInt aError, TDes& aTitleText) const;
|
williamr@2
|
158 |
IMPORT_C void ResolveError(TInt aError, TUid aAppUid = KNullUid) const;
|
williamr@2
|
159 |
IMPORT_C void NotifyIdleErrorWhileRedrawing(TInt aError);
|
williamr@2
|
160 |
IMPORT_C void NotifyIdleError(TInt aError, TInt aContextResourceId);
|
williamr@2
|
161 |
IMPORT_C void HandleErrorWithContext(TInt aError,TInt aContextResourceId);
|
williamr@2
|
162 |
// Info prints
|
williamr@2
|
163 |
IMPORT_C void InfoMsg(const TDesC& aDes);
|
williamr@2
|
164 |
IMPORT_C void InfoMsgWithAlignment(TGulAlignment aCorner,const TDesC& aDes);
|
williamr@2
|
165 |
IMPORT_C void InfoMsg(TInt aResourceId, ...);
|
williamr@2
|
166 |
IMPORT_C void InfoMsg(TInt aResourceId, VA_LIST aList);
|
williamr@2
|
167 |
IMPORT_C void InfoMsgWithAlignment(TGulAlignment aCorner, TInt aResourceId,...);
|
williamr@2
|
168 |
IMPORT_C void InfoMsgWithAlignment(TGulAlignment aCorner, TInt aResourceId, VA_LIST aList);
|
williamr@2
|
169 |
IMPORT_C void InfoMsgWithDuration(const TDesC& aDes, TTimeIntervalMicroSeconds32 aDuration);
|
williamr@2
|
170 |
IMPORT_C void InfoMsgWithDuration(TInt aResourceId, TTimeIntervalMicroSeconds32 aDuration, ...);
|
williamr@2
|
171 |
IMPORT_C void InfoMsgWithDuration(TInt aResourceId, TTimeIntervalMicroSeconds32 aDuration, VA_LIST aList);
|
williamr@2
|
172 |
IMPORT_C void InfoMsgWithAlignmentAndDuration(TGulAlignment aCorner, const TDesC& aDes, TTimeIntervalMicroSeconds32 aDuration);
|
williamr@2
|
173 |
IMPORT_C void InfoMsgWithAlignmentAndDuration(TGulAlignment aCorner, TInt aResourceId, TTimeIntervalMicroSeconds32 aDuration, ...);
|
williamr@2
|
174 |
IMPORT_C void InfoMsgWithAlignmentAndDuration(TGulAlignment aCorner, TInt aResourceId, TTimeIntervalMicroSeconds32 aDuration, VA_LIST aList);
|
williamr@2
|
175 |
IMPORT_C void InfoMsgCancel();
|
williamr@2
|
176 |
IMPORT_C void VerboseInfoMsg(const TDesC& aDes);
|
williamr@2
|
177 |
IMPORT_C void SetVerboseInfoReporting(TBool aVerbose); // deprecated
|
williamr@2
|
178 |
// Busy messages
|
williamr@2
|
179 |
IMPORT_C void BusyMsgL(const TDesC& aDes);
|
williamr@2
|
180 |
IMPORT_C void BusyMsgL(const TDesC& aDes, TGulAlignment aCorner);
|
williamr@2
|
181 |
IMPORT_C void BusyMsgL(TInt aResourceId);
|
williamr@2
|
182 |
IMPORT_C void BusyMsgL(const TDesC& aDes, TTimeIntervalMicroSeconds32 aInitialDelay);
|
williamr@2
|
183 |
IMPORT_C void BusyMsgL(const TDesC& aDes, TGulAlignment aCorner, TTimeIntervalMicroSeconds32 aInitialDelay);
|
williamr@2
|
184 |
IMPORT_C void BusyMsgL(TInt aResourceId, TTimeIntervalMicroSeconds32 aInitialDelay);
|
williamr@2
|
185 |
IMPORT_C void BusyMsgCancel();
|
williamr@2
|
186 |
// Query dialogs
|
williamr@2
|
187 |
IMPORT_C static TBool QueryWinL(const TDesC& aFirstLine, const TDesC& aSecondLine);
|
williamr@2
|
188 |
IMPORT_C TBool QueryWinL(TInt aFirstLineId, TInt aSecondLineId = 0) const;
|
williamr@2
|
189 |
IMPORT_C void SetQueryDialog(MEikInfoDialog* aQueryDialog);
|
williamr@2
|
190 |
IMPORT_C void SetRequestQueryDialogFunc(TRequestDialogFunc aQueryDialogFunc);
|
williamr@2
|
191 |
// Info dialogs
|
williamr@2
|
192 |
IMPORT_C static void InfoWinL(const TDesC& aFirstLine, const TDesC& aSecondLine);
|
williamr@2
|
193 |
IMPORT_C void InfoWinL(TInt aFirstLineId, TInt aSecondLineId = 0) const;
|
williamr@2
|
194 |
IMPORT_C void SetInfoDialog(MEikInfoDialog* aInfoDialog);
|
williamr@2
|
195 |
IMPORT_C void SetRequestInfoDialogFunc(TRequestDialogFunc aInfoDialogFunc);
|
williamr@2
|
196 |
IMPORT_C void AllocInfoMsg();
|
williamr@2
|
197 |
IMPORT_C void WservAllocInfoMsg();
|
williamr@2
|
198 |
IMPORT_C void FservAllocInfoMsg();
|
williamr@2
|
199 |
// Sound notificatons
|
williamr@2
|
200 |
IMPORT_C static void Beep(); // deprecated
|
williamr@2
|
201 |
// Bitmap utilities
|
williamr@2
|
202 |
IMPORT_C CWsBitmap* CreateBitmapL(const TDesC& aFileName, TInt aId);
|
williamr@2
|
203 |
IMPORT_C CWsBitmap* CreateBitmapL(const TDesC& aFileName, TInt aId, TBool aShowDlgIfErr);
|
williamr@2
|
204 |
IMPORT_C CGulIcon* CreateIconL(const TDesC& aFileName, TInt aBitmapId, TInt aMaskId = KErrNotFound);
|
williamr@2
|
205 |
IMPORT_C static CGulIcon* CreateIconFromMaskedBitmapL(const CApaMaskedBitmap& aApaMaskedBitmap);
|
williamr@2
|
206 |
// Debugging
|
williamr@2
|
207 |
IMPORT_C void SetDebugKeys(MEikDebugKeys* aDebugKeys);
|
williamr@2
|
208 |
// Menu utilities
|
williamr@2
|
209 |
IMPORT_C void LaunchPopupMenuL(TInt aResourceId, const TPoint& aTargetPos, TPopupTargetPosType aTargetType = EPopupTargetTopLeft, const CEikHotKeyTable* aHotKeyTable = NULL);
|
williamr@2
|
210 |
// Graphical effects
|
williamr@2
|
211 |
IMPORT_C static void AddWindowShadow(CCoeControl* aWinArea);
|
williamr@2
|
212 |
IMPORT_C RAnimDll& ClockDllL();
|
williamr@2
|
213 |
// Text formatting parameters
|
williamr@2
|
214 |
IMPORT_C CParaFormatLayer* SystemSingleLineParaFormatLayerL();
|
williamr@2
|
215 |
IMPORT_C CParaFormatLayer* SystemParaFormatLayerL();
|
williamr@2
|
216 |
IMPORT_C CCharFormatLayer* SystemCharFormatLayerL();
|
williamr@2
|
217 |
IMPORT_C static CParaFormatLayer* NewDefaultSingleLineParaFormatLayerL();
|
williamr@2
|
218 |
IMPORT_C static CParaFormatLayer* NewDefaultParaFormatLayerL();
|
williamr@2
|
219 |
IMPORT_C static CCharFormatLayer* NewDefaultCharFormatLayerL();
|
williamr@2
|
220 |
// Control stack utilities
|
williamr@2
|
221 |
IMPORT_C void AddDialogLikeControlToStackL(CCoeControl* aControl);
|
williamr@2
|
222 |
IMPORT_C void AddAlertDialogLikeControlToStackL(CCoeControl* aControl);
|
williamr@2
|
223 |
IMPORT_C void RemoveFromStack(CCoeControl* aControl);
|
williamr@2
|
224 |
IMPORT_C void AddSleepingDialogToStackL(CCoeControl* aControl);
|
williamr@2
|
225 |
IMPORT_C void AddSleepingAlertDialogToStackL(CCoeControl* aControl);
|
williamr@2
|
226 |
IMPORT_C void RouseSleepingDialog(CCoeControl* aControl, TBool aRoused);
|
williamr@2
|
227 |
// Text cursors
|
williamr@2
|
228 |
IMPORT_C void DrawCursor(const CCoeControl* aControl, const TPoint& aPosition, TInt aWidth);
|
williamr@2
|
229 |
IMPORT_C void DrawCursor(const CCoeControl* aControl, const TPoint& aPosition, TInt aWidth, TInt aAscent, TInt aHeight);
|
williamr@2
|
230 |
IMPORT_C void HideCursor(const CCoeControl* aControl);
|
williamr@2
|
231 |
// Virtual pointer device cursor
|
williamr@2
|
232 |
IMPORT_C TEikVirtualCursor& VirtualCursor();
|
williamr@2
|
233 |
// Control of the application's ordinal position
|
williamr@2
|
234 |
IMPORT_C void BringForwards(TBool aForwards, TInt aPriority = ECoeWinPriorityAlwaysAtFront);
|
williamr@2
|
235 |
IMPORT_C void SetAutoForwarding(TBool aAutoBringToForeground);
|
williamr@2
|
236 |
//
|
williamr@2
|
237 |
IMPORT_C TPtrC KeyPressLabel(TInt aIndex) const; // deprecated
|
williamr@2
|
238 |
// Printing
|
williamr@2
|
239 |
IMPORT_C CPrintSetup* NewDefaultPrintSetupL();
|
williamr@2
|
240 |
IMPORT_C static void GetPrinterNamesL(CPrinterModelList* aModelNameList, CDesCArray& aPrinterNameList);
|
williamr@2
|
241 |
// Application properties
|
williamr@2
|
242 |
IMPORT_C void UpdateTaskNameL();
|
williamr@2
|
243 |
IMPORT_C void SetBusy(TBool aBusy);
|
williamr@2
|
244 |
IMPORT_C TBool IsBusy() const;
|
williamr@2
|
245 |
IMPORT_C void SetSystem(TBool aSystem);
|
williamr@2
|
246 |
IMPORT_C TBool IsSystem() const;
|
williamr@2
|
247 |
IMPORT_C void SetDocNameIsAFile(TBool aDocNameIsAFile);
|
williamr@2
|
248 |
IMPORT_C TBool DocNameIsAFile() const;
|
williamr@2
|
249 |
IMPORT_C void SetRespondsToShutdownEvent(TBool aRespondsToShutdownEvent);
|
williamr@2
|
250 |
IMPORT_C TBool RespondsToShutdownEvent() const;
|
williamr@2
|
251 |
IMPORT_C void SetRespondsToSwitchFilesEvent(TBool aRespondsToSwitchFilesEvent);
|
williamr@2
|
252 |
IMPORT_C TBool RespondsToSwitchFilesEvent() const;
|
williamr@2
|
253 |
// Task list dialog
|
williamr@2
|
254 |
IMPORT_C void DisplayTaskList();
|
williamr@2
|
255 |
IMPORT_C void DismissTaskList();
|
williamr@2
|
256 |
public: // Internal (for Symbian and partners only)
|
williamr@2
|
257 |
// Dialog factories
|
williamr@2
|
258 |
inline MEikCDlgDialogFactory* CDlgDialogFactory() const;
|
williamr@2
|
259 |
inline MEikPrintDialogFactory* PrintDialogFactory() const;
|
williamr@2
|
260 |
inline MEikFileDialogFactory* FileDialogFactory() const;
|
williamr@2
|
261 |
inline MEikIrFactory* IrFactory() const;
|
williamr@2
|
262 |
inline void SetCDlgDialogFactory(MEikCDlgDialogFactory* aDialogFactory);
|
williamr@2
|
263 |
inline void SetPrintDialogFactory(MEikPrintDialogFactory* aDialogFactory);
|
williamr@2
|
264 |
inline void SetFileDialogFactory(MEikFileDialogFactory* aDialogFactory);
|
williamr@2
|
265 |
inline void SetIrFactory(MEikIrFactory* aIrFactory);
|
williamr@2
|
266 |
CArrayFix<TCreateByTypeFunction>* ControlFactoryFuncArray() const;
|
williamr@2
|
267 |
// Color scheme
|
williamr@2
|
268 |
inline CColorList& ColorList() const;
|
williamr@2
|
269 |
inline TRgb Color(TLogicalColor aLogicalColor) const;
|
williamr@2
|
270 |
inline void SetColor(TLogicalColor aLogicalColor, TRgb aColor);
|
williamr@2
|
271 |
IMPORT_C TRgb ControlColor(TLogicalColor aLogicalColor,const CCoeControl& aControl) const;
|
williamr@2
|
272 |
inline CColorArray& CustomColorArray() const;
|
williamr@2
|
273 |
IMPORT_C CColorList* CreateSystemColorListL();
|
williamr@2
|
274 |
IMPORT_C CColorList* CreateSystemColorListL(const CColorList& aColorList);
|
williamr@2
|
275 |
IMPORT_C void UpdateSystemColorListL(const CColorList& aColorList);
|
williamr@2
|
276 |
IMPORT_C CColorList* PopulateColorArrayL();
|
williamr@2
|
277 |
// Library loading and unloading
|
williamr@2
|
278 |
IMPORT_C TInt AddLibraryL(TCreateByTypeFunction aControlFactory, TFileName* aResourceFile);
|
williamr@2
|
279 |
inline TInt AddLibraryL(TCreateByTypeFunction aControlFactory);
|
williamr@2
|
280 |
inline TInt AddLibraryL(TFileName* aResourceFile);
|
williamr@2
|
281 |
IMPORT_C void RemoveLibrary(TCreateByTypeFunction aControlFactory, TInt aResourceFileOffset);
|
williamr@2
|
282 |
inline void RemoveLibrary(TCreateByTypeFunction aControlFactory);
|
williamr@2
|
283 |
inline void RemoveLibrary(TInt aResourceFileOffset);
|
williamr@2
|
284 |
// Legacy UI utilities
|
williamr@2
|
285 |
inline TChar NudgeCharMinus() const;
|
williamr@2
|
286 |
inline TChar NudgeCharPlus() const;
|
williamr@2
|
287 |
// Status pane
|
williamr@2
|
288 |
inline TInt StatusPaneCoreResId() const;
|
williamr@2
|
289 |
inline void SetStatusPaneCoreResId(TInt aStatusPaneCoreResId);
|
williamr@2
|
290 |
// Auto menus
|
williamr@2
|
291 |
IMPORT_C void AddAutoMenuTitleL(CEikAutoMenuTitle* aTitle);
|
williamr@2
|
292 |
inline CEikAutoMenuTitleArray* AutoMenuTitleArray() const;
|
williamr@2
|
293 |
// Display mode
|
williamr@2
|
294 |
IMPORT_C TDisplayMode DefaultDisplayMode() const;
|
williamr@2
|
295 |
public: // internal
|
williamr@2
|
296 |
IMPORT_C MLafEnv& LafEnv() const; // deprecated
|
williamr@2
|
297 |
inline TInt EditableControlStandardHeight() const;
|
williamr@2
|
298 |
IMPORT_C void SendEventToEikonServer(TInt aEvent,const TAny* aPtr,TInt aLength);
|
williamr@2
|
299 |
// Object factories
|
williamr@2
|
300 |
IMPORT_C MEikAppUiFactory* AppUiFactory() const;
|
williamr@2
|
301 |
IMPORT_C MEikAppUiFactory* AppUiFactory(const CEikAppUi& aAppUi) const;
|
williamr@2
|
302 |
IMPORT_C void SetAppUiFactoryL(MEikAppUiFactory* aAppUiFactory);
|
williamr@2
|
303 |
IMPORT_C void AddAppUiFactoryL(MEikAppUiFactory* aAppUiFactory);
|
williamr@2
|
304 |
IMPORT_C void RemoveAppUiFactory();
|
williamr@2
|
305 |
public: // Internal. Do not use!
|
williamr@2
|
306 |
IMPORT_C void SetExtension(CBase* aExtension); // deprecated
|
williamr@2
|
307 |
inline CBase* Extension() const; // deprecated
|
williamr@2
|
308 |
IMPORT_C void HandleError(TInt aError);
|
williamr@2
|
309 |
IMPORT_C void WriteInternalStateOfStackedControlsL();
|
williamr@2
|
310 |
IMPORT_C void DoGetErrorText(TDes& aDes,TInt aError) const;
|
williamr@2
|
311 |
IMPORT_C TErrorValidity DoGetErrorTextAndTitle(TDes& aErrorText, TInt aError, TInt& aTextId, TUint& aFlags, TDes& aTitleText, TBool aIsMemoryAllocatedByErrResolver = EFalse) const;
|
williamr@2
|
312 |
void InitSystemBitmapsL();
|
williamr@2
|
313 |
void UpdateColorListL();
|
williamr@2
|
314 |
void PostAppUiInitializeL();
|
williamr@2
|
315 |
TLanguage ApplicationLanguage() const;
|
williamr@2
|
316 |
void PostAppUiDestroy();
|
williamr@2
|
317 |
private:
|
williamr@2
|
318 |
IMPORT_C virtual void CEikonEnv_Reserved_1();
|
williamr@2
|
319 |
IMPORT_C virtual void CEikonEnv_Reserved_2();
|
williamr@2
|
320 |
IMPORT_C virtual void CEikonEnv_Reserved_3();
|
williamr@2
|
321 |
IMPORT_C virtual void CEikonEnv_Reserved_4();
|
williamr@2
|
322 |
IMPORT_C virtual void CEikonEnv_Reserved_5();
|
williamr@2
|
323 |
private: // framework functions
|
williamr@2
|
324 |
IMPORT_C void DestroyScreen();
|
williamr@2
|
325 |
IMPORT_C void InitSystemFontsL();
|
williamr@2
|
326 |
IMPORT_C TInt ResourceFileVersionNumber() const;
|
williamr@2
|
327 |
public:
|
williamr@2
|
328 |
IMPORT_C MEikInfoDialog* QueryDialog() const;
|
williamr@2
|
329 |
IMPORT_C MEikInfoDialog* InfoDialog() const;
|
williamr@2
|
330 |
public:
|
williamr@2
|
331 |
IMPORT_C CEikAppServer* AppServer() const;
|
williamr@2
|
332 |
IMPORT_C TBool StartedAsServerApp() const;
|
williamr@2
|
333 |
protected:
|
williamr@2
|
334 |
friend class CEikServAppUi;
|
williamr@2
|
335 |
private: // Internal
|
williamr@2
|
336 |
void InitSystemResourceFileL();
|
williamr@2
|
337 |
void InitPrivateResourceFileL();
|
williamr@2
|
338 |
void InitInfoMsgL();
|
williamr@2
|
339 |
void PrepareBusyMsgL();
|
williamr@2
|
340 |
void InitAlertWinL();
|
williamr@2
|
341 |
void InitDebugKeysL();
|
williamr@2
|
342 |
TErrorHandlerResponse PrepareToHandleError(TInt aError);
|
williamr@2
|
343 |
void DoHandleError(TErrorHandlerResponse aType);
|
williamr@2
|
344 |
static TInt IdleErrorCallBack(TAny* aThis);
|
williamr@2
|
345 |
void InitColorSchemeL();
|
williamr@2
|
346 |
void LoadParserListL();
|
williamr@2
|
347 |
void LoadLibrariesL();
|
williamr@2
|
348 |
void CloseLibraries();
|
williamr@2
|
349 |
TRequestDialogFunc RequestQueryDialogFunc();
|
williamr@2
|
350 |
TRequestDialogFunc RequestInfoDialogFunc();
|
williamr@2
|
351 |
void SetAppReady();
|
williamr@2
|
352 |
public:
|
williamr@2
|
353 |
TBool IsEiksrvThread() const;
|
williamr@2
|
354 |
private:
|
williamr@2
|
355 |
TBool InfoWinOrQueryWinL(TInt aFirstLineId,TInt aSecondLineId,TBool aIsQueryWin=EFalse) const;
|
williamr@2
|
356 |
void SetCommandLineDebugMemFailL(const CApaCommandLine& aCommandLine);
|
williamr@2
|
357 |
void StoreAppLanguageL(const RApaLsSession& aLsSession);
|
williamr@2
|
358 |
void ErrorContextL(TInt aError,const TDesC& aContextText);
|
williamr@2
|
359 |
private:
|
williamr@2
|
360 |
IMPORT_C virtual void CEikonEnv_Reserved_6();
|
williamr@2
|
361 |
IMPORT_C virtual void CEikonEnv_Reserved_7();
|
williamr@2
|
362 |
IMPORT_C virtual void CEikonEnv_Reserved_8();
|
williamr@2
|
363 |
IMPORT_C virtual void CEikonEnv_Reserved_9();
|
williamr@2
|
364 |
IMPORT_C virtual void CEikonEnv_Reserved_10();
|
williamr@2
|
365 |
private:
|
williamr@2
|
366 |
NONSHARABLE_CLASS(TEikAppUiFactory)
|
williamr@2
|
367 |
{
|
williamr@2
|
368 |
public:
|
williamr@2
|
369 |
MEikAppUiFactory* iFactory;
|
williamr@2
|
370 |
CEikAppUi* iAppUi;
|
williamr@2
|
371 |
};
|
williamr@2
|
372 |
private:
|
williamr@2
|
373 |
TBitFlags iEikonEnvFlags;
|
williamr@2
|
374 |
TInt iForwardsCount;
|
williamr@2
|
375 |
TInt iBusyCount;
|
williamr@2
|
376 |
CEikProcess* iProcess;
|
williamr@2
|
377 |
RAnimDll* iClockDll;
|
williamr@2
|
378 |
CArrayPtr<CLafSystemFont>* iFontArray;
|
williamr@2
|
379 |
MEikInfoMsgWin* iInfoMsgWin;
|
williamr@2
|
380 |
MEikBusyMsgWin* iBusyMsgWin;
|
williamr@2
|
381 |
MEikAlertWin* iAlertWin;
|
williamr@2
|
382 |
TInt iSystemResourceFileOffset;
|
williamr@2
|
383 |
HBufC8* iKeyPressLabels;
|
williamr@2
|
384 |
CParaFormatLayer* iSingleLineParaFormatLayer;
|
williamr@2
|
385 |
CParaFormatLayer* iParaFormatLayer;
|
williamr@2
|
386 |
CCharFormatLayer* iCharFormatLayer;
|
williamr@2
|
387 |
const CCoeControl* iCursorWindow;
|
williamr@2
|
388 |
TInt iEditableControlStandardHeight;
|
williamr@2
|
389 |
CApaWindowGroupName* iWgName;
|
williamr@2
|
390 |
CEikErrorIdler* iErrorIdler;
|
williamr@2
|
391 |
TInt iPrivateResourceFileOffset;
|
williamr@2
|
392 |
CColorList* iColorList;
|
williamr@2
|
393 |
CEikPictureFactory* iPictureFactory;
|
williamr@2
|
394 |
TBuf<2> iNudgeChars;
|
williamr@2
|
395 |
MEikInfoDialog* iQueryDialog;
|
williamr@2
|
396 |
MEikInfoDialog* iInfoDialog;
|
williamr@2
|
397 |
TRequestDialogFunc iQueryDialogFunc;
|
williamr@2
|
398 |
TRequestDialogFunc iInfoDialogFunc;
|
williamr@2
|
399 |
CArrayFix<TCreateByTypeFunction>* iControlFactoryFuncArray;
|
williamr@2
|
400 |
CArrayFix<TInt>* iResourceFileOffsetArray;
|
williamr@2
|
401 |
TBool iAlertWinInitialized;
|
williamr@2
|
402 |
MEikDebugKeys* iDebugKeys;
|
williamr@2
|
403 |
MEikCDlgDialogFactory* iCDlgDialogFactory;
|
williamr@2
|
404 |
MEikPrintDialogFactory* iPrintDialogFactory;
|
williamr@2
|
405 |
MEikFileDialogFactory* iFileDialogFactory;
|
williamr@2
|
406 |
CArrayFix<TEikAppUiFactory>* iAppUiFactoryArray;
|
williamr@2
|
407 |
MEikIrFactory* iIrFactory;
|
williamr@2
|
408 |
CArrayPtr<CEikLibrary>* iLibraries;
|
williamr@2
|
409 |
TInt iEmbeddedAppLevel;
|
williamr@2
|
410 |
TInt iAutoLoadedResourceFiles;
|
williamr@2
|
411 |
TInt iAutoLoadedControlFactories;
|
williamr@2
|
412 |
CBase* iExtension;
|
williamr@2
|
413 |
TInt iStatusPaneCoreResId;
|
williamr@2
|
414 |
CEikAutoMenuTitleArray* iAutoMenuTitleArray;
|
williamr@2
|
415 |
TEikVirtualCursor iVirtualCursor;
|
williamr@2
|
416 |
CEikLogicalBorderProxy* iLogicalBorderProxy;
|
williamr@2
|
417 |
CEikLafEnv* iLafEnv;
|
williamr@2
|
418 |
CArrayPtrFlat<CFbsBitmap>* iBitmapArray;
|
williamr@2
|
419 |
CEikEnvExtra* iEikEnvExtra; // used to be TInt iSpare1;
|
williamr@2
|
420 |
HBufC* iOOMErrorText; // used to be TInt iSpare2;
|
williamr@2
|
421 |
TInt iSpare3;
|
williamr@2
|
422 |
};
|
williamr@2
|
423 |
|
williamr@2
|
424 |
|
williamr@2
|
425 |
/** Interface for launching a dialog with a title and a message, for instance a
|
williamr@2
|
426 |
query dialog.
|
williamr@2
|
427 |
|
williamr@2
|
428 |
Dialogs implementing this interface can be passed to CEikonEnv::SetQueryDialog()
|
williamr@2
|
429 |
or CEikonEnv::SetInfoDialog().
|
williamr@2
|
430 |
|
williamr@2
|
431 |
@publishedAll
|
williamr@2
|
432 |
@released */
|
williamr@2
|
433 |
class MEikInfoDialog
|
williamr@2
|
434 |
{
|
williamr@2
|
435 |
public:
|
williamr@2
|
436 |
/** Initialises and executes the dialog.
|
williamr@2
|
437 |
|
williamr@2
|
438 |
@param aResource The ID of the DIALOG resource that identifies the dialog's
|
williamr@2
|
439 |
type. For instance, a query dialog (with Yes/No buttons) or an info dialog
|
williamr@2
|
440 |
(with a Continue button).
|
williamr@2
|
441 |
@param aTitle The dialog's title.
|
williamr@2
|
442 |
@param aMsg The message to display in the dialog.
|
williamr@2
|
443 |
@return True if the Confirm button (or equivalent) was pressed, false if the
|
williamr@2
|
444 |
dialog was cancelled. */
|
williamr@2
|
445 |
virtual TBool RunDlgLD(TInt aResource, const TDesC& aTitle, const TDesC& aMsg) = 0;
|
williamr@2
|
446 |
};
|
williamr@2
|
447 |
|
williamr@2
|
448 |
|
williamr@2
|
449 |
/**
|
williamr@2
|
450 |
@publishedPartner
|
williamr@2
|
451 |
@released
|
williamr@2
|
452 |
*/
|
williamr@2
|
453 |
class MEikAlertWin
|
williamr@2
|
454 |
{
|
williamr@2
|
455 |
public:
|
williamr@2
|
456 |
virtual void ConstructL() = 0;
|
williamr@2
|
457 |
virtual void RunAlert(const TDesC& aTitle, const TDesC& aMsg) = 0;
|
williamr@2
|
458 |
virtual void Release() = 0;
|
williamr@2
|
459 |
virtual CEikDialog* AsEikDialog() = 0;
|
williamr@2
|
460 |
inline const CEikDialog* AsEikDialog() const;
|
williamr@2
|
461 |
IMPORT_C virtual CCoeControl* AsCoeControl();
|
williamr@2
|
462 |
inline const CCoeControl* AsCoeControl() const;
|
williamr@2
|
463 |
private:
|
williamr@2
|
464 |
IMPORT_C virtual void MEikAlertWin_Reserved2();
|
williamr@2
|
465 |
IMPORT_C virtual void MEikAlertWin_Reserved3();
|
williamr@2
|
466 |
};
|
williamr@2
|
467 |
|
williamr@2
|
468 |
|
williamr@2
|
469 |
/**
|
williamr@2
|
470 |
@publishedPartner
|
williamr@2
|
471 |
@released
|
williamr@2
|
472 |
*/
|
williamr@2
|
473 |
class MEikDebugKeys
|
williamr@2
|
474 |
{
|
williamr@2
|
475 |
public:
|
williamr@2
|
476 |
virtual void ConstructL() = 0;
|
williamr@2
|
477 |
virtual void Release() = 0;
|
williamr@2
|
478 |
private:
|
williamr@2
|
479 |
IMPORT_C virtual void MEikDebugKeys_Reserved1();
|
williamr@2
|
480 |
IMPORT_C virtual void MEikDebugKeys_Reserved2();
|
williamr@2
|
481 |
IMPORT_C virtual void MEikDebugKeys_Reserved3();
|
williamr@2
|
482 |
};
|
williamr@2
|
483 |
|
williamr@2
|
484 |
|
williamr@2
|
485 |
IMPORT_C void InternalizeL(TEikPortFlag& aThing,RReadStream& aStream);
|
williamr@2
|
486 |
inline RWriteStream& operator<<(RWriteStream& aStream,const TEikPortFlag& aThing)
|
williamr@2
|
487 |
{aStream.WriteUint8L(aThing);return aStream;}
|
williamr@2
|
488 |
inline RReadStream& operator>>(RReadStream& aStream,TEikPortFlag& aThing)
|
williamr@2
|
489 |
{InternalizeL(aThing,aStream);return aStream;}
|
williamr@2
|
490 |
|
williamr@2
|
491 |
#include <eikenv.inl>
|
williamr@2
|
492 |
|
williamr@2
|
493 |
#endif // __EIKENV_H__
|