S60UIExampleInitialContainer.inc
上传用户:laixiong
上传日期:2007-03-11
资源大小:2994k
文件大小:1685k
源码类别:

Symbian

开发平台:

C/C++

  1. class MGulLogicalBorder
  2. {
  3. public:
  4. virtual void Draw(const TGulBorder& aBorder,CGraphicsContext& aGc, const TRect& aRect, const TGulBorder::TColors& aBorderColors) const=0;
  5. virtual TMargins Margins(const TGulBorder& aBorder) const=0;
  6. private:
  7. __declspec(dllexport) virtual void MGulLogicalBorderReserved();
  8. };
  9. class GulTls
  10. {
  11. public:
  12. __declspec(dllexport) static void SetLogicalBorder(MGulLogicalBorder* aLogicalBorder);
  13. __declspec(dllexport) static const MGulLogicalBorder* LogicalBorder();
  14. };
  15. #line 12 "C:\Symbian\9.1\S60_3rd\epoc32\include\gulutil.h" /* stack depth 5 */
  16. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\gulftflg.hrh" /* stack depth 6 */
  17. #line 13 "C:\Symbian\9.1\S60_3rd\epoc32\include\gulutil.h" /* stack depth 5 */
  18. const TUint KTextUtilClipEndChar=0x2026;
  19. const TUint KColumnListSeparator='t';
  20. class CFont;
  21. class CFbsFont;
  22. class CWsScreenDevice;
  23. class TResourceReader;
  24. class CColorArray;
  25. class CGraphicsDevice;
  26. class RWsSession;
  27. class CColorList;
  28. template <class T> class CArrayFix;
  29. class TMargins8
  30. {
  31. public :
  32. TInt8 iLeft;
  33. TInt8 iRight;
  34. TInt8 iTop;
  35. TInt8 iBottom;
  36. public :
  37. __declspec(dllexport) TMargins8();
  38. __declspec(dllexport) void SetAllValuesTo(TInt aCommonValue);
  39.     __declspec(dllexport) TRect InnerRect(const TRect& aOuterRect) const;
  40.     __declspec(dllexport) TRect OuterRect(const TRect& aInnerRect) const;
  41. __declspec(dllexport) TSize SizeDelta() const;
  42. };
  43. class DrawUtils
  44. {
  45. public:
  46. __declspec(dllexport) static void DrawText(CGraphicsContext& aGc,const TDesC& aString,const TRect& aBox,TInt aBaseLineOffset,
  47. CGraphicsContext::TTextAlign aHoriz,TInt aMargin,const CFont* aFont);
  48.     __declspec(dllexport) static void DrawBetweenRects(CGraphicsContext& aGc,const TRect& aOuterRect,const TRect& aInnerRect);
  49.     __declspec(dllexport) static void ClearBetweenRects(CGraphicsContext& aGc,const TRect& aOuterRect,const TRect& aInnerRect);
  50. };
  51. class TextUtils
  52. {
  53. public:
  54. __declspec(dllexport) static void ClipToFit(TDes& aBuffer,const CFont& aFont,TInt aMaxWidthInPixels,TChar aAlternativeEnd=KTextUtilClipEndChar);
  55. __declspec(dllexport) static TInt ColumnText(TPtrC& aColumnText,TInt aColumn,const TDesC* aSourceText,TChar aColumnSeparator=KColumnListSeparator);
  56. __declspec(dllexport) static void TruncateToNumChars(TDes& aBuffer, TInt numChars);
  57. };
  58. class FontUtils
  59. {
  60. public:
  61. __declspec(dllexport) static void GetAvailableFontsL(CGraphicsDevice& aDevice,CDesCArray& aFontNameList,
  62. TInt aFonts=0x10 );
  63. __declspec(dllexport) static TInt TypefaceAttributes(CGraphicsDevice& aDevice,const TDesC& aTypefaceName);
  64. __declspec(dllexport) static TInt GetAvailableHeightsInTwipsL(CGraphicsDevice& aDevice,const TDesC& aTypefaceName,
  65. CArrayFix<TInt>& aHeightList);
  66. __declspec(dllexport) static TInt GetAvailableHeightsInTwipsAndPointsL(CGraphicsDevice& aDevice,const TDesC& aTypefaceName,
  67. CArrayFix<TInt>& aTwipsList,CDesCArray& aPointsList);
  68. __declspec(dllexport) static TInt PointsFromTwips(TInt aTwips);
  69. __declspec(dllexport) static TInt TwipsFromPoints(TInt aPoints);
  70. __declspec(dllexport) static TInt TwipsFromPoints(const TDesC& aPoints);
  71. __declspec(dllexport) static TInt IndexOfNearestHeight(CArrayFix<TInt>& aTwipsList,TInt aHeight);
  72. };
  73. class ResourceUtils
  74. #line 120
  75. {
  76. public:
  77. __declspec(dllexport) static CFbsFont* CreateNamedScreenFontL(TResourceReader& aResourceReader,CWsScreenDevice& aScreenDevice);
  78. __declspec(dllexport) static CFbsFont* CreateNamedScreenFontInPixelsL(TResourceReader& aResourceReader,CWsScreenDevice& aScreenDevice);
  79. __declspec(dllexport) static CFbsFont* CreateScreenFontL(TResourceReader& aResourceReader,CWsScreenDevice& aScreenDevice);
  80. inline static TInt8 ReadTInt8L(TResourceReader& aReader);
  81. inline static TInt16 ReadTInt16L(TResourceReader& aReader);
  82. inline static TInt32 ReadTInt32L(TResourceReader& aReader);
  83. __declspec(dllexport) static void PopulateColorArrayL(CColorArray& aColors,TResourceReader& aReader);
  84. private:
  85. enum TResourceTypeInt { EResourceInt8,EResourceInt16,EResourceInt32 };
  86. private:
  87. __declspec(dllexport) static TInt32 ReadResourceIntL(TResourceReader& aReader,TResourceTypeInt aSize);
  88. };
  89. class ColorUtils
  90. {
  91. public:
  92.     enum TBitmapOrientation
  93.     {
  94.     EBitmapOrientationVertical,
  95.     EBitmapOrientationHorizontal
  96.     };
  97. public:
  98. __declspec(dllexport) static TRgb ColorAdjust(TRgb aColor,TInt aPercentage);
  99.     __declspec(dllexport) static void CreateGradientBitmapL(CFbsBitmap& aBitmap,RWsSession& aWs,TInt aBreadth,
  100.                                        TBitmapOrientation aOrientation,TRgb aStartColor,TRgb aEndColor);
  101. __declspec(dllexport) static CColorList* CreateSystemColorListL(RFs& aFs);
  102. __declspec(dllexport) static CColorList* CreateSystemColorListL(RFs& aFs,const CColorList& aColorList);
  103. __declspec(dllexport) static void UpdateSystemColorListL(RFs& aFs,CColorList& aColorList);
  104. __declspec(dllexport) static void GetRgbDerivedBorderColors(TGulBorder::TColors& aBorderColors,TRgb aBackgroundColor,TDisplayMode aMode);
  105. __declspec(dllexport) static TRgb RgbDarkerColor(TRgb aRgb,TDisplayMode aMode);
  106. __declspec(dllexport) static TRgb RgbMidDarkerColor(TRgb aRgb,TDisplayMode aMode);
  107. __declspec(dllexport) static TRgb RgbLighterColor(TRgb aRgb,TDisplayMode aMode);
  108. };
  109. class TFindWidthOfWidestTextItem
  110. #line 176
  111. {
  112. protected:
  113. inline TFindWidthOfWidestTextItem() {}
  114. public:
  115. __declspec(dllexport) TInt MaximumWidthInPixels(const CFont& aFont) const;
  116. private:
  117. virtual void GetFirstAndLastIndex(TInt& aFirstIndex, TInt& aLastIndex) const=0;
  118. virtual void GetTextItem(TDes& aText, TInt aIndex) const=0;
  119. };
  120. class TFindWidthOfWidestDigit : public TFindWidthOfWidestTextItem
  121. #line 209
  122. {
  123. public:
  124. __declspec(dllexport) TFindWidthOfWidestDigit();
  125. private:
  126. virtual void GetFirstAndLastIndex(TInt& aFirstIndex, TInt& aLastIndex) const;
  127. virtual void GetTextItem(TDes& aText, TInt aIndex) const;
  128. };
  129. class TFindWidthOfWidestDigitType : public TFindWidthOfWidestTextItem
  130. {
  131. public:
  132. __declspec(dllexport) TFindWidthOfWidestDigitType(TDigitType aDigitType);
  133. private:
  134. virtual void GetFirstAndLastIndex(TInt& aFirstIndex, TInt& aLastIndex) const;
  135. virtual void GetTextItem(TDes& aText, TInt aIndex) const;
  136. private:
  137. TDigitType iDigitType;
  138. };
  139. class TFindWidthOfWidestAmPmName : public TFindWidthOfWidestTextItem
  140. #line 243
  141. {
  142. public:
  143. __declspec(dllexport) TFindWidthOfWidestAmPmName();
  144. private:
  145. virtual void GetFirstAndLastIndex(TInt& aFirstIndex, TInt& aLastIndex) const;
  146. virtual void GetTextItem(TDes& aText, TInt aIndex) const;
  147. };
  148. class TFindWidthOfWidestAbbreviatedDayName : public TFindWidthOfWidestTextItem
  149. #line 261
  150. {
  151. public:
  152. __declspec(dllexport) TFindWidthOfWidestAbbreviatedDayName();
  153. private:
  154. virtual void GetFirstAndLastIndex(TInt& aFirstIndex, TInt& aLastIndex) const;
  155. virtual void GetTextItem(TDes& aText, TInt aIndex) const;
  156. };
  157. class TFindWidthOfWidestDayName : public TFindWidthOfWidestTextItem
  158. #line 279
  159. {
  160. public:
  161. __declspec(dllexport) TFindWidthOfWidestDayName();
  162. private:
  163. virtual void GetFirstAndLastIndex(TInt& aFirstIndex, TInt& aLastIndex) const;
  164. virtual void GetTextItem(TDes& aText, TInt aIndex) const;
  165. };
  166. class TFindWidthOfWidestAbbreviatedMonthName : public TFindWidthOfWidestTextItem
  167. #line 297
  168. {
  169. public:
  170. __declspec(dllexport) TFindWidthOfWidestAbbreviatedMonthName();
  171. private:
  172. virtual void GetFirstAndLastIndex(TInt& aFirstIndex, TInt& aLastIndex) const;
  173. virtual void GetTextItem(TDes& aText, TInt aIndex) const;
  174. };
  175. class TFindWidthOfWidestMonthName : public TFindWidthOfWidestTextItem
  176. #line 314
  177. {
  178. public:
  179. __declspec(dllexport) TFindWidthOfWidestMonthName();
  180. private:
  181. virtual void GetFirstAndLastIndex(TInt& aFirstIndex, TInt& aLastIndex) const;
  182. virtual void GetTextItem(TDes& aText, TInt aIndex) const;
  183. };
  184. class TFindWidthOfWidestDateSuffix : public TFindWidthOfWidestTextItem
  185. #line 331
  186. {
  187. public:
  188. __declspec(dllexport) TFindWidthOfWidestDateSuffix();
  189. private:
  190. virtual void GetFirstAndLastIndex(TInt& aFirstIndex, TInt& aLastIndex) const;
  191. virtual void GetTextItem(TDes& aText, TInt aIndex) const;
  192. };
  193. inline TInt8 ResourceUtils::ReadTInt8L(TResourceReader& aReader)
  194. { return((TInt8)ReadResourceIntL(aReader,EResourceInt8)); }
  195. inline TInt16 ResourceUtils::ReadTInt16L(TResourceReader& aReader)
  196. { return((TInt16)ReadResourceIntL(aReader,EResourceInt16)); }
  197. inline TInt32 ResourceUtils::ReadTInt32L(TResourceReader& aReader)
  198. { return((TInt32)ReadResourceIntL(aReader,EResourceInt32)); }
  199. #line 10 "C:\Symbian\9.1\S60_3rd\epoc32\include\coetextdrawer.h" /* stack depth 4 */
  200. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\biditext.h" /* stack depth 5 */
  201. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\bidi.h" /* stack depth 6 */
  202. #line 16
  203. class RWriteStream;
  204. class RReadStream;
  205. class TBidirectionalState
  206. #line 31
  207. {
  208. public:
  209. class TRunInfo
  210. #line 44
  211. {
  212. public:
  213. TUint iCategory;
  214. TUint8 iEmbeddingLevel;
  215. TUint8 iDirection;
  216. TInt iIndex;
  217. TInt iStart;
  218. TInt iLength;
  219. };
  220. __declspec(dllexport) TBidirectionalState();
  221. __declspec(dllexport) void ReorderLine(TRunInfo* aRunInfo,TInt aRuns,TBool aParStart,TBool aParEnd,TBool aParRightToLeft,
  222.  TChar::TBdCategory aNextCategory,TChar::TBdCategory aNextStrongCategory,
  223.  TBool& aVisualEndIsAmbiguous);
  224. __declspec(dllexport) void ReorderLine(TRunInfo* aRunInfo,TInt aRuns,TBool aParStart,TBool aParEnd,TBool aParRightToLeft,
  225.  TChar::TBdCategory aNextCategory,TChar::TBdCategory aNextStrongCategory);
  226. __declspec(dllexport) static TInt ReorderText(const TText* aText,TInt aLength,TBool aParRightToLeft,TText*& aNewText);
  227. __declspec(dllexport) static void ReverseGroups(TText* aStart,TInt aLength);
  228. __declspec(dllexport) void Reset();
  229. __declspec(dllexport) TBool IsDefault() const;
  230. __declspec(dllexport) TBool operator==(const TBidirectionalState& aState) const;
  231. __declspec(dllexport) void ExternalizeL(RWriteStream& aDest);
  232. __declspec(dllexport) void InternalizeL(RReadStream& aSource);
  233. TBool ParRightToLeft() const { return iStack[0].iEmbeddingLevel & 1; }
  234. private:
  235. enum TCategory
  236. {
  237. ELeftToRight = 1 << TChar::ELeftToRight,
  238. ELeftToRightEmbedding = 1 << TChar::ELeftToRightEmbedding,
  239. ELeftToRightOverride = 1 << TChar::ELeftToRightOverride,
  240. ERightToLeft = 1 << TChar::ERightToLeft,
  241. ERightToLeftArabic = 1 << TChar::ERightToLeftArabic,
  242. ERightToLeftEmbedding = 1 << TChar::ERightToLeftEmbedding,
  243. ERightToLeftOverride = 1 << TChar::ERightToLeftOverride,
  244. EPopDirectionalFormat = 1 << TChar::EPopDirectionalFormat,
  245. EEuropeanNumber = 1 << TChar::EEuropeanNumber,
  246. EEuropeanNumberSeparator = 1 << TChar::EEuropeanNumberSeparator,
  247. EEuropeanNumberTerminator = 1 << TChar::EEuropeanNumberTerminator,
  248. EArabicNumber = 1 << TChar::EArabicNumber,
  249. ECommonNumberSeparator = 1 << TChar::ECommonNumberSeparator,
  250. ENonSpacingMark = 1 << TChar::ENonSpacingMark,
  251. EBoundaryNeutral = 1 << TChar::EBoundaryNeutral,
  252. EParagraphSeparator = 1 << TChar::EParagraphSeparator,
  253. ESegmentSeparator = 1 << TChar::ESegmentSeparator,
  254. EWhitespace = 1 << TChar::EWhitespace,
  255. EOtherNeutral = 1 << TChar::EOtherNeutral,
  256. EBdControlsGroup = ELeftToRightEmbedding | ERightToLeftEmbedding |
  257.    ELeftToRightOverride | ERightToLeftOverride | EPopDirectionalFormat,
  258. ELeftToRightGroup = ELeftToRight | EEuropeanNumber | ELeftToRightOverride | ELeftToRightEmbedding,
  259. ERightToLeftGroup = ERightToLeft | EArabicNumber | ERightToLeftArabic | ERightToLeftOverride |
  260. ERightToLeftEmbedding,
  261. EStrongGroup = ELeftToRightEmbedding | ERightToLeftEmbedding
  262. | ELeftToRightOverride | ERightToLeftOverride
  263. | ELeftToRight | ERightToLeft | ERightToLeftArabic,
  264. ENoCategory = 0
  265. };
  266. enum
  267. {
  268. EMaxExplicitLevel = 61,
  269. EMaxLevel = 63,
  270. EMaxStackLevels = 62
  271. };
  272. enum TOverrideState
  273. {
  274. ENoOverrideState = 0,
  275. ELeftToRightOverrideState = ELeftToRightOverride,
  276. ERightToLeftOverrideState = ERightToLeftOverride
  277. };
  278. class TStackItem
  279. {
  280. public:
  281. TUint8 iEmbeddingLevel;
  282. TOverrideState iOverrideState;
  283. TCategory iStartCategory;
  284. };
  285. public:
  286. class TReorderContext
  287. {
  288. public:
  289. void SetNextCategory(TChar::TBdCategory aCat);
  290. void SetNextStrongCategory(TChar::TBdCategory aCat);
  291. public:
  292. TCategory iNextCategory;
  293. TCategory iNextStrongCategory;
  294. TRunInfo* iRunInfo;
  295. TInt iRuns;
  296. TUint32 iCategories;
  297. TCategory iLastStrongCategory;
  298. };
  299. public:
  300. static TInt GenerateBdRunArray(const TText* aText, TInt aLength,
  301. TBidirectionalState::TRunInfo* aRun, TInt aMaxRuns);
  302. private:
  303. const TStackItem& State() const { return iStack[iStackLevel]; }
  304. TCategory Push(TCategory aStartCategory);
  305. TCategory Pop();
  306. public:
  307. TBidirectionalState(TChar::TBdCategory aPrevCat,
  308. TChar::TBdCategory aPrevStrongCat, TBool aParRightToLeft);
  309. void HandleBdControls(TReorderContext& aContext);
  310. void ResolveWeakTypesW1W2W3(TReorderContext& aContext);
  311. void ResolveWeakTypesW4W5W6(TReorderContext& aContext);
  312. void ResolveWeakTypesW7(TReorderContext& aContext);
  313. void ResolveNeutralTypes(TReorderContext& aContext);
  314. void ResolveImplicitLevels(TReorderContext& aContext);
  315. void PrepareForNextLine(const TReorderContext& aContext);
  316. void ReorderRuns(TReorderContext& aContext);
  317. static TInt CatToNumber(TInt aCat);
  318. static TCategory CharToBdCat(TChar::TBdCategory aCat);
  319. static TCategory UintToBdCat(TUint aCat);
  320. static void DeneutralizeRuns(TRunInfo* aStart, TRunInfo* aEnd,
  321. TCategory aStartCategory, TCategory aEndCategory);
  322. private:
  323. TCategory iPreviousCategory;
  324. TCategory iPreviousStrongCategory;
  325. TInt16 iStackLevel;
  326. TInt8 iPushesBeyond60;
  327. TInt8 iPushesBeyond61;
  328. TStackItem iStack[EMaxStackLevels];
  329. };
  330. #line 11 "C:\Symbian\9.1\S60_3rd\epoc32\include\biditext.h" /* stack depth 5 */
  331. enum CGraphicsContext::TTextAlign;
  332. class MLineBreaker;
  333. class RRunInfoArray;
  334. class CBidiTextTls;
  335. #line 27
  336. class TBidiText
  337. {
  338. public:
  339. enum TDirectionality
  340. {
  341. ELeftToRight = 0,
  342. ERightToLeft = 1
  343. };
  344. enum TPanicCodes
  345. {
  346. EPanicRunArrayNull,
  347. };
  348. __declspec(dllexport) static TDirectionality ScriptDirectionality(TLanguage aLanguage);
  349. __declspec(dllexport) static TDirectionality TextDirectionality(
  350. const TDesC& aText, TBool* aFound = 0);
  351. protected:
  352. TBidiText();
  353. public:
  354. __declspec(dllexport) static TBidiText* NewL(TInt aReservedMaxLength, TInt aMaxLines);
  355. __declspec(dllexport) static TBidiText* NewL(const TDesC& aText, TInt aMaxLines);
  356. __declspec(dllexport) static TBidiText* NewL(const TDesC& aText, TInt aMaxLines,
  357. TDirectionality aDirectionality);
  358. __declspec(dllexport) TInt SetText(const TDesC& aText, RRunInfoArray& aRunInfoArray);
  359. __declspec(dllexport) TInt SetText(const TDesC& aText, TDirectionality aDirectionality, RRunInfoArray& aRunInfoArray);
  360. __declspec(dllexport) void SetTruncationChar(TChar aTruncateWith);
  361. __declspec(dllexport) void WrapText(TInt aWrappingWidth, const CFont& aFont,
  362. const MLineBreaker* aBreaker, TInt aMaxLines);
  363. __declspec(dllexport) void WrapText(TInt aWrappingWidth, const CFont& aFont,
  364. const MLineBreaker* aBreaker = 0 );
  365. __declspec(dllexport) TSize MinimumSize(TInt aWrappingWidth, const CFont& aFont, TInt aLineGap, TInt aMaxLines = -1,
  366. const MLineBreaker* aBreaker = 0 ) const;
  367. __declspec(dllexport) TPtrC Text() const;
  368. __declspec(dllexport) TPtrC DisplayText() const;
  369. __declspec(dllexport) TInt WrappingWidth() const;
  370. __declspec(dllexport) TDirectionality Directionality() const;
  371. __declspec(dllexport) TChar TruncationChar() const;
  372. __declspec(dllexport) TInt NumberOfLinesInDisplayText() const;
  373. __declspec(dllexport) TPtrC LineOfDisplayText(TInt aLine, TInt& aWidthInPixels) const;
  374. __declspec(dllexport) void DrawText(CGraphicsContext& aGc, const TPoint& aLeft) const;
  375. __declspec(dllexport) void DrawText(CGraphicsContext& aGc,
  376. const TPoint& aLeft, TInt aBaseLineSpacing,
  377. CGraphicsContext::TTextAlign aAlignment) const;
  378. __declspec(dllexport) void DrawText(CGraphicsContext& aGc,
  379. const TPoint& aLeft, TInt aBaseLineSpacing) const;
  380. private:
  381. TInt DoWrapText(TInt aWrappingWidth, const CFont& aFont, const MLineBreaker* aBreaker,
  382. TInt aMaxLines, TText*& aOutputText, TInt& aNumLines, TInt16* aLineWidthArray) const;
  383. };
  384. #line 93
  385. class RRunInfoArray
  386. {
  387. friend class TBidiText;
  388. public:
  389. __declspec(dllexport) RRunInfoArray();
  390. __declspec(dllexport) void OpenL();
  391. __declspec(dllexport) void Close();
  392. private:
  393. TBidirectionalState::TRunInfo* RunArray() const;
  394. private:
  395. CBidiTextTls* iTls;
  396. };
  397. #line 18 "C:\Symbian\9.1\S60_3rd\epoc32\include\coetextdrawer.h" /* stack depth 4 */
  398. #line 30
  399. class CCoeTextDrawerBase;
  400. class TCoeTextTypeAdaptor;
  401. #line 51
  402. class XCoeTextDrawer
  403. {
  404. public:
  405. __declspec(dllexport) XCoeTextDrawer(CCoeTextDrawerBase& aTextDrawer);
  406. __declspec(dllexport) ~XCoeTextDrawer();
  407. __declspec(dllexport) void operator=(CCoeTextDrawerBase& aTextDrawer);
  408. __declspec(dllexport) CCoeTextDrawerBase *operator ->();
  409. __declspec(dllexport) void DrawText(CGraphicsContext& aGc, const TBidiText& aText, const TRect& aTextRect, const CFont& aFont) const;
  410. __declspec(dllexport) void DrawDisplayOrderedText(CGraphicsContext& aGc, const TDesC& aText, const TRect& aTextRect, const CFont& aFont) const;
  411. __declspec(dllexport) TRect ClipRect() const;
  412. __declspec(dllexport) void SetClipRect(const TRect& aClipRect);
  413. private:
  414. XCoeTextDrawer(XCoeTextDrawer& aTextDrawer);
  415. private:
  416. CCoeTextDrawerBase* iTextDrawer;
  417. TRect iClipRect;
  418. };
  419. class CCoeTextDrawerBaseExt;
  420. #line 96
  421. class CCoeTextDrawerBase : public CBase, public MObjectProvider
  422. {
  423. friend class XCoeTextDrawer;
  424. public:
  425. __declspec(dllexport) ~CCoeTextDrawerBase();
  426. __declspec(dllexport) virtual void Reset();
  427. virtual TRgb TextColor() const = 0;
  428. virtual void SetTextColor(TRgb aColor) = 0;
  429. __declspec(dllexport) TGulAlignment Alignment() const;
  430. __declspec(dllexport) void SetAlignment(const TGulAlignment& aAlignment);
  431. __declspec(dllexport) TMargins8 Margins() const;
  432. __declspec(dllexport) void SetMargins(const TMargins8& aMargins);
  433. __declspec(dllexport) TInt LineGapInPixels() const;
  434. __declspec(dllexport) void SetLineGapInPixels(TInt aLineGapInPixels);
  435.   __declspec(dllexport) TBool IsReusable() const;
  436. __declspec(dllexport) void SetReusable(TBool aIsReusable);
  437. protected:
  438.   __declspec(dllexport) CCoeTextDrawerBase();
  439. __declspec(dllexport) TInt Construct();
  440. private:
  441. virtual void DrawText(CGraphicsContext& aGc, const TCoeTextTypeAdaptor& aText, const CFont& aFont,
  442. const TRect& aTextRect, const TRect& aClipRect) const = 0;
  443. __declspec(dllexport) virtual void CCoeTextDrawerBase_Reserved1();
  444. __declspec(dllexport) virtual void CCoeTextDrawerBase_Reserved2();
  445. __declspec(dllexport) virtual void CCoeTextDrawerBase_Reserved3();
  446. __declspec(dllexport) virtual void CCoeTextDrawerBase_Reserved4();
  447. __declspec(dllexport) virtual void CCoeTextDrawerBase_Reserved5();
  448. __declspec(dllexport) virtual void CCoeTextDrawerBase_Reserved6();
  449. __declspec(dllexport) virtual void CCoeTextDrawerBase_Reserved7();
  450. __declspec(dllexport) virtual void CCoeTextDrawerBase_Reserved8();
  451. __declspec(dllexport) virtual void CCoeTextDrawerBase_Reserved9();
  452. __declspec(dllexport) virtual void CCoeTextDrawerBase_Reserved10();
  453.  private:
  454. TBool iIsReusable;
  455. TGulAlignment iAlignment;
  456. TMargins8 iMargins;
  457. TInt iLineGap;
  458. CCoeTextDrawerBaseExt* iExtension;
  459. };
  460. #line 169
  461. class TCoeTextTypeAdaptor
  462. {
  463. public:
  464. __declspec(dllexport) TCoeTextTypeAdaptor(const TDesC& aText);
  465. __declspec(dllexport) TCoeTextTypeAdaptor(const TBidiText& aText);
  466. __declspec(dllexport) TInt NumberOfLines() const;
  467. __declspec(dllexport) TPtrC LineOfText(TInt aLineNumber, TInt& aWidthInPixels, const CFont& aFont) const;
  468. __declspec(dllexport) TBool HasRightToLeftDirectionality() const;
  469. private:
  470. enum TTextType
  471. {
  472. ENewlineSeparated,
  473. EBidiText
  474. };
  475. const TAny* iText;
  476. TTextType iTextType;
  477. };
  478. #line 196
  479. class CCoePlainTextDrawer : public CCoeTextDrawerBase
  480. {
  481. public:
  482. enum { ETypeId = 0x1020831A };
  483. public:
  484. __declspec(dllexport) static CCoePlainTextDrawer* New(TRgb aTextColor);
  485. __declspec(dllexport) TRgb TextColor() const;
  486. __declspec(dllexport) void SetTextColor(TRgb aTextColor);
  487. protected:
  488. __declspec(dllexport) virtual TTypeUid::Ptr MopSupplyObject(TTypeUid aId);
  489. private:
  490. void DrawText(CGraphicsContext& aGc, const TCoeTextTypeAdaptor& aText, const CFont& aFont,
  491. const TRect& aTextRect, const TRect& aClipRect) const;
  492. void Reset();
  493. CCoePlainTextDrawer(TRgb aTextColor);
  494. __declspec(dllexport) TInt Construct();
  495. private:
  496. TRgb iTextColor;
  497. };
  498. #line 34 "C:\Symbian\9.1\S60_3rd\epoc32\include\coemain.h" /* stack depth 3 */
  499. #line 42
  500. class CVwsSessionWrapper;
  501. class MVwsSessionWrapperObserver;
  502. class CCoeAppUi;
  503. class CCoeEnv;
  504. class TResourceReader;
  505. class RGenericPointerArray;
  506. enum TActivePriority
  507. {
  508. EActivePriorityClockTimer=300,
  509. EActivePriorityIpcEventsHigh=200,
  510. EActivePriorityFepLoader=150,
  511. EActivePriorityWsEvents=100,
  512. EActivePriorityRedrawEvents=50,
  513. EActivePriorityDefault=0,
  514. EActivePriorityLogonA=-10
  515. };
  516. class CCoeEnvExtra;
  517. class CCoeStatic;
  518. class MCoeObserverOfLoadedFep
  519. #line 90
  520. {
  521. public:
  522. virtual void HandleChangeInLoadedFep()=0;
  523. protected:
  524. __declspec(dllexport) MCoeObserverOfLoadedFep();
  525. private:
  526. __declspec(dllexport) virtual void MCoeObserverOfLoadedFep_Reserved_1();
  527. __declspec(dllexport) virtual void MCoeObserverOfLoadedFep_Reserved_2();
  528. private:
  529.   TInt iMCoeObserverOfLoadedFep_Reserved1;
  530. };
  531. class TCoeInputCapabilities;
  532. class MCoeFocusObserver
  533. #line 125
  534. {
  535. public:
  536. virtual void HandleChangeInFocus()=0;
  537. virtual void HandleDestructionOfFocusedItem()=0;
  538. protected:
  539. __declspec(dllexport) MCoeFocusObserver();
  540. private:
  541. __declspec(dllexport) virtual void MCoeFocusObserver_Reserved_1();
  542. __declspec(dllexport) virtual void MCoeFocusObserver_Reserved_2();
  543. private:
  544. TInt iMCoeFocusObserver_Reserved1;
  545. };
  546. class MCoeResourceChangeObserver
  547. {
  548. public:
  549. virtual void HandleResourceChange()=0;
  550. protected:
  551. __declspec(dllexport) MCoeResourceChangeObserver();
  552. private:
  553. __declspec(dllexport) virtual void MCoeResourceChangeObserver_Reserved_1();
  554. __declspec(dllexport) virtual void MCoeResourceChangeObserver_Reserved_2();
  555. private:
  556. TInt iMCoeResourceChangeObserver_Reserved1;
  557. };
  558. class MCoeForegroundObserver
  559. #line 182
  560. {
  561. public:
  562. virtual void HandleGainingForeground()=0;
  563. virtual void HandleLosingForeground()=0;
  564. protected:
  565. __declspec(dllexport) MCoeForegroundObserver();
  566. private:
  567. __declspec(dllexport) virtual void MCoeForegroundObserver_Reserved_1();
  568. __declspec(dllexport) virtual void MCoeForegroundObserver_Reserved_2();
  569. private:
  570. TInt iMCoeForegroundObserver_Reserved1;
  571. };
  572. class MCoeMessageObserver
  573. #line 214
  574. {
  575. public:
  576. enum TMessageResponse
  577. {
  578. EMessageNotHandled,
  579. EMessageHandled
  580. };
  581. public:
  582. #line 236
  583. virtual TMessageResponse HandleMessageL(TUint32 aClientHandleOfTargetWindowGroup, TUid aMessageUid, const TDesC8& aMessageParameters)=0;
  584. protected:
  585. __declspec(dllexport) MCoeMessageObserver();
  586. private:
  587. __declspec(dllexport) virtual void MCoeMessageObserver_Reserved_1();
  588. __declspec(dllexport) virtual void MCoeMessageObserver_Reserved_2();
  589. private:
  590. TInt iMCoeMessageObserver_Reserved1();
  591. };
  592. class MCoeMessageMonitorObserver
  593. {
  594. public:
  595. virtual void MonitorWsMessage(const TWsEvent& aEvent)=0;
  596. private:
  597. __declspec(dllexport) virtual void MCoeMessageMonitorObserver_Reserved_1();
  598. __declspec(dllexport) virtual void MCoeMessageMonitorObserver_Reserved_2();
  599. };
  600. class MCoeFepObserver;
  601. typedef void (*TCoeFepObserverFunction)(MCoeFepObserver& aFepObserver);
  602. class CCoeFepParameters : public CBase
  603. {
  604. public:
  605. static CCoeFepParameters* NewLC();
  606. private:
  607. inline CCoeFepParameters() {}
  608. };
  609. class CCoeFep;
  610. class CCoeScheduler : public CBaActiveScheduler
  611. {
  612. public:
  613. __declspec(dllexport) CCoeScheduler(CCoeEnv* aCoeEnv);
  614. __declspec(dllexport) virtual void WaitForAnyRequest();
  615. __declspec(dllexport) virtual void DisplayError(TInt aError) const;
  616. inline CCoeEnv* CoeEnv() {return iCoeEnv;}
  617. TBool Flush() const;
  618. void SetFlush(TBool aFlush);
  619. private:
  620. __declspec(dllexport) virtual void Reserved_1();
  621. __declspec(dllexport) virtual void Reserved_2();
  622. private:
  623. CCoeEnv* iCoeEnv;
  624. TBool iFlush;
  625. };
  626. class CCoeFontProvider;
  627. class CCoeEnv : public CActive
  628. , public MObjectProvider
  629. #line 331
  630. {
  631. public:
  632. __declspec(dllexport) ~CCoeEnv();
  633. __declspec(dllexport) CCoeEnv();
  634. __declspec(dllexport) virtual void DestroyEnvironment();
  635. __declspec(dllexport) CCoeAppUi* SetAppUi(CCoeAppUi* aAppUi);
  636. __declspec(dllexport) void ExecuteD();
  637. __declspec(dllexport) void RunL();
  638. __declspec(dllexport) void DoCancel();
  639. __declspec(dllexport) virtual void HandleError(TInt aError);
  640. __declspec(dllexport) void ConstructL();
  641. __declspec(dllexport) void ConstructL(TBool aInitialFocusState);
  642. __declspec(dllexport) void ConstructL( TBool aInitialFocusState, TInt aDefaultScreenNumber ) ;
  643. __declspec(dllexport) void ConstructL(TBool aInitialFocusState, TInt aDefaultScreenNumber, TInt aWindowGroupID );
  644. inline const TWsEvent& LastEvent() const;
  645. inline CCoeAppUi* AppUi() const;
  646. inline RFs& FsSession() const;
  647. inline RWsSession& WsSession() const;
  648. inline RWindowGroup& RootWin() const;
  649. inline CWindowGc& SystemGc() const;
  650. inline const CFont* NormalFont() const;
  651. inline CWsScreenDevice* ScreenDevice() const;
  652. inline TBool IsSchedulerRunning() const;
  653. __declspec(dllexport) CWindowGc* CreateGcL();
  654. __declspec(dllexport) void Flush(TTimeIntervalMicroSeconds32 aDelay=0);
  655. __declspec(dllexport) CFbsFont* CreateDeviceFontL(CGraphicsDevice* aDevice,const TFontSpec& aFontSpec);
  656. __declspec(dllexport) CFbsFont* CreateScreenFontL(const TFontSpec& aFontSpec);
  657. __declspec(dllexport) void ReleaseScreenFont(CFont* aFont) const;
  658. __declspec(dllexport) void CreateResourceReaderLC(TResourceReader& aReader,TInt aResourceId) const;
  659. inline void ReadResource(TDes& aDes,TInt aResourceId) const;
  660. inline void ReadResourceL(TDes& aDes,TInt aResourceId) const;
  661. inline  HBufC* AllocReadResourceL(TInt aResourceId) const;
  662. inline HBufC* AllocReadResourceLC(TInt aResourceId) const;
  663. __declspec(dllexport) TInt AddResourceFileL(const TDesC& aFileName);
  664. __declspec(dllexport) void DeleteResourceFile(TInt aOffset);
  665. inline CDesCArrayFlat* ReadDesCArrayResourceL(TInt aResourceId);
  666. __declspec(dllexport) void LeaveWithErrorText(const TDesC& aMsg,const TDesC* aContextText=0 );
  667. __declspec(dllexport) void Format128(TDes& aDes,TInt aResourceId,...);
  668. __declspec(dllexport) void Format256(TDes& aDes,TInt aResourceId,...);
  669. __declspec(dllexport) static TVersion Version();
  670. __declspec(dllexport) static CCoeEnv* Static();
  671. __declspec(dllexport) void SimulateKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
  672. __declspec(dllexport) TBool IsWservEventPending() const;
  673. __declspec(dllexport) TBool IsRedrawEventPending() const;
  674. __declspec(dllexport) void PrepareToExit();
  675. __declspec(dllexport) void BringOwnerToFront();
  676. __declspec(dllexport) void ReadResourceAsDes8(TDes8& aDes,TInt aResourceId) const;
  677. __declspec(dllexport) void ReadResourceAsDes8L(TDes8& aDes,TInt aResourceId) const;
  678. __declspec(dllexport) HBufC8* AllocReadResourceAsDes8L(TInt aResourceId) const;
  679. __declspec(dllexport) HBufC8* AllocReadResourceAsDes8LC(TInt aResourceId) const;
  680. __declspec(dllexport) CDesC8ArrayFlat* ReadDesC8ArrayResourceL(TInt aResourceId);
  681. __declspec(dllexport) void SuppressNextFlush();
  682. __declspec(dllexport) void ReadResourceAsDes16(TDes16& aDes,TInt aResourceId) const;
  683. __declspec(dllexport) void ReadResourceAsDes16L(TDes16& aDes,TInt aResourceId) const;
  684. __declspec(dllexport) HBufC16* AllocReadResourceAsDes16L(TInt aResourceId) const;
  685. __declspec(dllexport) HBufC16* AllocReadResourceAsDes16LC(TInt aResourceId) const;
  686. __declspec(dllexport) CDesC16ArrayFlat* ReadDesC16ArrayResourceL(TInt aResourceId);
  687. __declspec(dllexport) void AddObserverOfLoadedFepL(MCoeObserverOfLoadedFep& aObserverOfLoadedFep);
  688. __declspec(dllexport) void RemoveObserverOfLoadedFep(MCoeObserverOfLoadedFep& aObserverOfLoadedFep);
  689. __declspec(dllexport) void AddFocusObserverL(MCoeFocusObserver& aFocusObserver);
  690. __declspec(dllexport) void RemoveFocusObserver(MCoeFocusObserver& aFocusObserver);
  691. __declspec(dllexport) void SyncNotifyFocusObserversOfChangeInFocus();
  692. void NotifyFocusObserversOfDestructionOfFocusedItem();
  693. __declspec(dllexport) void AddForegroundObserverL(MCoeForegroundObserver& aForegroundObserver);
  694. __declspec(dllexport) void RemoveForegroundObserver(MCoeForegroundObserver& aForegroundObserver);
  695. void NotifyForegroundObserversOfGainingForeground();
  696. void NotifyForegroundObserversOfLosingForeground();
  697. __declspec(dllexport) void AddResourceChangeObserverL(MCoeResourceChangeObserver& aResourceChangeObserver);
  698. __declspec(dllexport) void RemoveResourceChangeObserver(MCoeResourceChangeObserver& aResourceChangeObserver);
  699. void NotifyResourceObserversOfChangeInResource();
  700. __declspec(dllexport) void AddMessageObserverL(MCoeMessageObserver& aMessageObserver);
  701. __declspec(dllexport) void RemoveMessageObserver(MCoeMessageObserver& aMessageObserver);
  702. __declspec(dllexport) void AddMessageMonitorObserverL(MCoeMessageMonitorObserver& aMessageMonitorObserver);
  703. __declspec(dllexport) void RemoveMessageMonitorObserver(MCoeMessageMonitorObserver& aMessageMonitorObserver);
  704. void NotifyMessageMonitorObserversOfEvent(const TWsEvent& aEvent);
  705. __declspec(dllexport) void AddFepObserverL(MCoeFepObserver& aFepObserver);
  706. __declspec(dllexport) void RemoveFepObserver(MCoeFepObserver& aFepObserver);
  707. __declspec(dllexport) void ForEachFepObserverCall(TCoeFepObserverFunction aFepObserverFunction);
  708. void EnsureCorrectFepIsLoadedL();
  709. #line 419
  710. void EnsureSpecifiedFepIsLoadedL(TUid aFepUid);
  711. __declspec(dllexport) void InstallFepL(TUid aFepUid);
  712. __declspec(dllexport) void InstallFepL(TUid aFepUid, const TBool aLeave);
  713. __declspec(dllexport) void AvailableFepsL(RArray<TUid>& aUids, CDesCArray* aDisplayNames);
  714. __declspec(dllexport) void ExecuteFepSettingsDialogL(TUid aFepUid);
  715. __declspec(dllexport) CCoeFep* Fep() const;
  716. __declspec(dllexport) TUid FepUid() const;
  717. __declspec(dllexport) CWindowGc* SwapSystemGc(CWindowGc* aGc);
  718. __declspec(dllexport) static CCoeStatic* Static(TUid aUid);
  719. __declspec(dllexport) CCoeStatic* FindStatic(TUid aUid);
  720. __declspec(dllexport) void DisableExitChecks(TBool aDisable);
  721. __declspec(dllexport) void InputCapabilitiesChanged();
  722. __declspec(dllexport) TBool IsResourceAvailableL(TInt aResourceId) const;
  723. __declspec(dllexport) CCoeTextDrawerBase& DefaultTextDrawer() const;
  724. __declspec(dllexport) const CCoeFontProvider& DefaultFontProvider() const;
  725. public:
  726. TInt AppStartupInstrumentationEventIdBase();
  727. public:
  728. __declspec(dllexport) void GetMessageNotifyingObserversLC(TUint32 aClientHandleOfTargetWindowGroup, TUid& aMessageUid, TPtr8& aMessageParameters, const TWsEvent& aMessageEvent);
  729. protected:
  730. __declspec(dllexport) void SetAppStartupInstrumentationEventIdBaseL(TInt aAppStartupInstrumentationEventIdBase);
  731. __declspec(dllexport) void DestroyEnvironmentStatic();
  732. __declspec(dllexport) void DestroyEnvironmentEnd();
  733. private:
  734. __declspec(dllexport) virtual void Reserved_1();
  735. __declspec(dllexport) virtual void Reserved_2();
  736. private:
  737. __declspec(dllexport) TInt RunError(TInt aError);
  738. public:
  739. void ReadEvent();
  740. CVwsSessionWrapper* InitViewServerSessionL(MVwsSessionWrapperObserver& aObserver);
  741. void AddStatic(CCoeStatic* aStatic);
  742. void QueueNotificationToFocusObserversOfChangeInFocus();
  743. TInt FocusObserverNotificationIdentifier() const;
  744. TBool FocusObserverNotificationIsStillPending(TInt aFocusObserverNotificationIdentifier) const;
  745. void RefetchPixelMapping();
  746. protected:
  747. __declspec(dllexport) virtual TTypeUid::Ptr MopSupplyObject(TTypeUid aId);
  748. public:
  749. __declspec(dllexport) void SetZoomFactor(const TZoomFactor& aZoomFactor);
  750. __declspec(dllexport) TZoomFactor ZoomFactor() const;
  751. protected:
  752. __declspec(dllexport) virtual void DestroyScreen();
  753. inline TDes& ErrorText();
  754. inline TDes& ErrorContextText();
  755. private:
  756. __declspec(dllexport) virtual void InitSystemFontsL();
  757. __declspec(dllexport) virtual TInt ResourceFileVersionNumber() const;
  758. void CreateActiveSchedulerL();
  759. void ConnectToFileServerL();
  760. void ConnectToWindowServerL();
  761. void InitScreenL( TInt aDefaultScreenNumber );
  762. void InitRootWindowL(TBool aInitialFocusState, TInt aWindowGroupID=0);
  763. void InitSystemGcL();
  764. RResourceFile& ResourceFileForId(TInt aResourceId) const;
  765. void DestroyAllResourceFiles();
  766. void AddObserverL(TAny* aObserver, RGenericPointerArray& aArray);
  767. void RemoveObserver(TAny* aObserver, RGenericPointerArray& aArray);
  768. inline TBool DisableShutdownChecks() const;
  769. void UpdateStatic(CCoeAppUi* aNewAppUi);
  770. void SetInitialHandleCount();
  771. inline TUint InitialHandleCount() const;
  772. protected:
  773. CCoeAppUi* iAppUi;
  774. RFs iFsSession;
  775. RWsSession iWsSession;
  776. RWindowGroup iRootWin;
  777. CWindowGc* iSystemGc;
  778. const CFont* iNormalFont;
  779. CWsScreenDevice* iScreen;
  780. TWsEvent iLastEvent;
  781. CArrayFix<RResourceFile> * iResourceFileArray;
  782. private:
  783. enum TFlags
  784. {
  785. ENoShutdownChecks =0x0001,
  786. EExtraPointerIsErrorCode =0x0002,
  787. ESchedulerIsRunning =0x0004
  788. };
  789. private:
  790. TDes* iErrorText;
  791. TDes* iErrorContextText;
  792. CCoeEnvExtra* iExtra;
  793. CTrapCleanup* iCleanup;
  794. TUint iEnvFlags;
  795. };
  796. class CCoeStatic : public CBase
  797. #line 524
  798. {
  799. public:
  800. enum TScope
  801. {
  802. EThread,
  803. EApp,
  804. };
  805. enum {EDefaultDestructionPriority=100};
  806. public:
  807. __declspec(dllexport) ~CCoeStatic();
  808. protected:
  809. __declspec(dllexport) CCoeStatic();
  810. __declspec(dllexport) CCoeStatic(TUid aUid,TScope=EThread);
  811. __declspec(dllexport) CCoeStatic(TUid aUid,TInt aDestructionPriority,TScope aScope=EThread);
  812. private:
  813. __declspec(dllexport) virtual void CCoeStatic_Reserved1();
  814. __declspec(dllexport) virtual void CCoeStatic_Reserved2();
  815. private:
  816. void DoConstruction(TUid aUid,TInt aDestructionPriority,TScope aScope);
  817. void SetCsAppUi(CCoeAppUi* aAppUi);
  818. CCoeAppUi* CsAppUi() const;
  819. TScope CsScope() const;
  820. inline TInt DestructionPriority() const {return iCsLink.iPriority;}
  821. private:
  822. TPriQueLink iCsLink;
  823. TUid iCsUid;
  824. TUint iCsAppUiAndScope;
  825. TInt iCCoeStatic_Reserved1;
  826. private:
  827. friend class CCoeEnv;
  828. friend class CCoeEnvExtra;
  829. };
  830. inline const TWsEvent& CCoeEnv::LastEvent() const
  831. { return(iLastEvent); }
  832. inline CCoeAppUi* CCoeEnv::AppUi() const
  833. { return(iAppUi); }
  834. inline RFs& CCoeEnv::FsSession() const
  835. { return((RFs&)iFsSession); }
  836. inline RWsSession& CCoeEnv::WsSession() const
  837. { return((RWsSession&)iWsSession); }
  838. inline RWindowGroup& CCoeEnv::RootWin() const
  839. { return((RWindowGroup&)iRootWin); }
  840. inline CWindowGc& CCoeEnv::SystemGc() const
  841. { return((CWindowGc&)*iSystemGc); }
  842. inline const CFont* CCoeEnv::NormalFont() const
  843. { return(iNormalFont); }
  844. inline CWsScreenDevice* CCoeEnv::ScreenDevice() const
  845. { return(iScreen); }
  846. inline TDes& CCoeEnv::ErrorText()
  847. { return *iErrorText; }
  848. inline TDes& CCoeEnv::ErrorContextText()
  849. { return *iErrorContextText; }
  850. inline void CCoeEnv::ReadResource(TDes& aDes,TInt aResourceId) const
  851. #line 657
  852. { ReadResourceAsDes16(aDes,aResourceId); }
  853. inline void CCoeEnv::ReadResourceL(TDes& aDes,TInt aResourceId) const
  854. #line 668
  855. { ReadResourceAsDes16L(aDes,aResourceId); }
  856. inline  HBufC* CCoeEnv::AllocReadResourceL(TInt aResourceId) const
  857. #line 679
  858. { return AllocReadResourceAsDes16L(aResourceId); }
  859. inline HBufC* CCoeEnv::AllocReadResourceLC(TInt aResourceId) const
  860. #line 691
  861. { return AllocReadResourceAsDes16LC(aResourceId); }
  862. inline CDesCArrayFlat* CCoeEnv::ReadDesCArrayResourceL(TInt aResourceId)
  863. { return ReadDesC16ArrayResourceL(aResourceId); }
  864. #line 727
  865. inline TBool CCoeEnv::IsSchedulerRunning() const
  866. {return iEnvFlags&ESchedulerIsRunning;}
  867. #line 46 "C:\Symbian\9.1\S60_3rd\epoc32\include\coecntrl.h" /* stack depth 2 */
  868. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\coecontrolarray.h" /* stack depth 3 */
  869. #line 12
  870. class CCoeControl;
  871. const TInt KCoeNoControlId = KErrNotFound;
  872. class TCoeControlWithId
  873. {
  874. public:
  875. TCoeControlWithId(TInt aControlId, CCoeControl* aControl = 0 );
  876. public:
  877. CCoeControl* iControl;
  878. TInt iId;
  879. };
  880. #line 46
  881. class CCoeControlArray : public CBase
  882. {
  883. public:
  884. class TCursor
  885. {
  886. public:
  887. template<typename T> T* Control();
  888. template<typename T> const T* Control() const;
  889. __declspec(dllexport) TBool Prev();
  890. __declspec(dllexport) TBool Next();
  891. __declspec(dllexport) TBool IsValid() const;
  892. __declspec(dllexport) TBool operator==(const TCursor& aCursor) const;
  893. __declspec(dllexport) TBool operator!=(const TCursor& aCursor) const;
  894. public:
  895. TCursor(const CCoeControlArray& aArray, TInt aIndex);
  896. TInt Index() const;
  897. private:
  898. __declspec(dllexport) CCoeControl* Ctrl() const;
  899. void UpdateMemento() const;
  900. void UpdateIndex() const;
  901. private:
  902. const CCoeControlArray* iArray;
  903. mutable TInt iIndex;
  904. mutable TCoeControlWithId iMemento;
  905. };
  906. public:
  907. __declspec(dllexport) static CCoeControlArray* NewL(CCoeControl& aOwner);
  908. __declspec(dllexport) ~CCoeControlArray();
  909. __declspec(dllexport) TInt Count() const;
  910. __declspec(dllexport) void Reset();
  911. __declspec(dllexport) void ResetAndDestroy();
  912. __declspec(dllexport) void SortById();
  913. __declspec(dllexport) TBool ControlsOwnedExternally() const;
  914. __declspec(dllexport) void SetControlsOwnedExternally(TBool aOwnedExternally);
  915. __declspec(dllexport) TBool IsArrayLocked() const;
  916. __declspec(dllexport) void SetArrayLocked();
  917. template<typename T> T* ControlById(TInt aControlId);
  918. template<typename T> const T* ControlById(TInt aControlId) const;
  919. __declspec(dllexport) TCursor Begin() const;
  920. __declspec(dllexport) TCursor End() const;
  921. __declspec(dllexport) TCursor Find(const CCoeControl* aControl) const;
  922. __declspec(dllexport) TCursor Find(TInt aControlId) const;
  923. __declspec(dllexport) TCursor AppendLC(CCoeControl* aControl, TInt aControlId = KCoeNoControlId);
  924. __declspec(dllexport) TCursor InsertAfterLC(TInt aInsertAfterId, CCoeControl* aControl, TInt aControlId = KCoeNoControlId);
  925. __declspec(dllexport) TCursor InsertLC(TCursor& aInsertAt, CCoeControl* aControl, TInt aControlId = KCoeNoControlId);
  926. __declspec(dllexport) TInt Remove(const CCoeControl* aControl);
  927. __declspec(dllexport) CCoeControl* Remove(TCursor aRemoveAt);
  928. __declspec(dllexport) CCoeControl* RemoveById(TInt aControlId);
  929. public:
  930. __declspec(dllexport) TInt Replace(CCoeControl* aOriginalControl, CCoeControl* aNewControl);
  931. public:
  932. __declspec(dllexport) TCoeControlWithId At(TInt aIndex);
  933. __declspec(dllexport) const TCoeControlWithId At(TInt aIndex) const;
  934. __declspec(dllexport) TInt Id(const CCoeControl& aControl) const;
  935. __declspec(dllexport) void Sort(TLinearOrder< TCoeControlWithId > aOrder);
  936. public:
  937. enum TEvent
  938. {
  939. EControlAdded,
  940. EControlRemoved
  941. };
  942. private:
  943. __declspec(dllexport) CCoeControlArray(CCoeControl& aOwner);
  944. TInt IndexById(TInt aControlId) const;
  945. __declspec(dllexport) CCoeControl* CtrlById(TInt aControlId) const;
  946. private:
  947. CCoeControl& iOwner;
  948. TInt iFlags;
  949. RArray<TCoeControlWithId> iControls;
  950. };
  951. template<typename T>
  952. T* CCoeControlArray::TCursor::Control()
  953. {
  954. return static_cast<T*>(Ctrl());
  955. }
  956. template<typename T>
  957. const T* CCoeControlArray::TCursor::Control() const
  958. {
  959. return static_cast<T*>(Ctrl());
  960. }
  961. template<typename T>
  962. T* CCoeControlArray::ControlById(TInt aControlId)
  963. {
  964. return static_cast<T*>(CtrlById(aControlId));
  965. }
  966. template<typename T>
  967. const T* CCoeControlArray::ControlById(TInt aControlId) const
  968. {
  969. return static_cast<T*>(CtrlById(aControlId));
  970. }
  971. #line 55 "C:\Symbian\9.1\S60_3rd\epoc32\include\coecntrl.h" /* stack depth 2 */
  972. class TResourceReader;
  973. class CCoeEnv;
  974. class MCoeControlContext;
  975. class CCoeControlExtension;
  976. class MCoeLayoutManager;
  977. class TCoeZoomWithType;
  978. class CCoeFontProvider;
  979. class TCoeFont;
  980. #line 79
  981. class TCoeColorUse
  982.     {
  983. public:
  984. enum TGround
  985. {
  986. EFore=0x01,
  987. EBack=0x02
  988. };
  989. enum TAreas
  990. {
  991. EContents=0x10,
  992. EHighlights=0x20,
  993. ESurrounds=0x40,
  994. EBorders=0x80
  995. };
  996. enum TFocus
  997. {
  998. EActive=0x100,
  999. EDimmed=0x200,
  1000. EShadowed=0x400,
  1001. EPressed=0x800
  1002. };
  1003. enum TState
  1004. {
  1005. ENormal=0x1000,
  1006. ESet=0x2000,
  1007. EChecked=0x4000
  1008. };
  1009. enum TTones
  1010. {
  1011. ENeutral=0x10000,
  1012. ELight=0x20000,
  1013. EMidLight=0x40000,
  1014. EMid=0x80000,
  1015. EDark=0x100000
  1016. };
  1017. public:
  1018. __declspec(dllexport) TCoeColorUse();
  1019. __declspec(dllexport) void SetUse(TInt aUse);
  1020. __declspec(dllexport) void SetLogicalColor(TInt aLogicalColor);
  1021. __declspec(dllexport) TInt LogicalColor() const;
  1022. __declspec(dllexport) TInt Use() const;
  1023. __declspec(dllexport) TBool IsForeground() const;
  1024. __declspec(dllexport) TBool IsBackground() const;
  1025. __declspec(dllexport) TBool IsContents() const;
  1026. __declspec(dllexport) TBool IsHighlights() const;
  1027. __declspec(dllexport) TBool IsSurrounds() const;
  1028. __declspec(dllexport) TBool IsBorders() const;
  1029. __declspec(dllexport) TBool IsActive() const;
  1030. __declspec(dllexport) TBool IsDimmed() const;
  1031. __declspec(dllexport) TBool IsPressed() const;
  1032. __declspec(dllexport) TBool IsNormal() const;
  1033. __declspec(dllexport) TBool IsSet() const;
  1034. private:
  1035.     TInt iLogicalColor;
  1036. TInt iUse;
  1037. TInt iTCoeColorUse_Reserved1;
  1038.     };
  1039. class CCoeControl;
  1040. class CCoeTextDrawerBase;
  1041. #line 184
  1042. class MCoeControlBackground
  1043. {
  1044. public:
  1045. #line 198
  1046. virtual void Draw(CWindowGc& aGc, const CCoeControl& aControl, const TRect& aRect) const = 0;
  1047. __declspec(dllexport) virtual void GetTextDrawer(CCoeTextDrawerBase*& aTextDrawer, const CCoeControl* aDrawingControl) const;
  1048. protected:
  1049. __declspec(dllexport) MCoeControlBackground();
  1050. private:
  1051.    __declspec(dllexport) virtual void MCoeControlBackground_Reserved1();
  1052.    __declspec(dllexport) virtual void MCoeControlBackground_Reserved2();
  1053.    __declspec(dllexport) virtual void MCoeControlBackground_Reserved3();
  1054.    __declspec(dllexport) virtual void MCoeControlBackground_Reserved4();
  1055.    __declspec(dllexport) virtual void MCoeControlBackground_Reserved5();
  1056. private:
  1057. TInt iMCoeControlBackground_Reserved1();
  1058. };
  1059. #line 232
  1060. class MCoeControlHitTest
  1061. {
  1062. public:
  1063. #line 244
  1064. virtual TBool HitRegionContains(const TPoint& aPoint, const CCoeControl& aControl) const = 0;
  1065. protected:
  1066. __declspec(dllexport) MCoeControlHitTest();
  1067. private:
  1068. __declspec(dllexport) virtual void MCoeControlHitTest_Reserved1();
  1069. __declspec(dllexport) virtual void MCoeControlHitTest_Reserved2();
  1070. private:
  1071.     TInt iMCoeControlHitTest_Reserved1;
  1072. };
  1073. class RCoeExtensionStorage
  1074. {
  1075. public:
  1076. RCoeExtensionStorage();
  1077. void Close();
  1078. TInt& Flags();
  1079. TInt Flags() const;
  1080. const MCoeControlBackground* Background() const;
  1081. void SetBackground(const MCoeControlBackground* aBackground);
  1082. CCoeControl* Parent();
  1083. TInt SetParent(CCoeControl* aParent);
  1084. const MCoeControlHitTest* HitTestControl() const;
  1085. TInt SetHitTestControl(const MCoeControlHitTest* aHitTest);
  1086. TCoeZoomWithType* ZoomWithType() const;
  1087. TInt SetZoomWithType(TCoeZoomWithType* aZoomWithType);
  1088. const CCoeFontProvider* FontProvider() const;
  1089. TInt SetFontProvider(const CCoeFontProvider* aFontProvider);
  1090. void SetExtension(CCoeControlExtension* aExtension);
  1091. CCoeControlExtension* Extension() const;
  1092. private:
  1093. inline TBool IsFlags() const;
  1094. private:
  1095. union
  1096. {
  1097. TInt iFlags;
  1098. CCoeControlExtension* iExtension;
  1099. };
  1100. };
  1101. class CCoeControl : public CBase
  1102. , public MObjectProvider
  1103. {
  1104. public:
  1105.     enum TZoomType
  1106.         {
  1107.         EAbsoluteZoom,
  1108.         ERelativeZoom
  1109.         };
  1110. __declspec(dllexport) CCoeControl();
  1111. __declspec(dllexport) CCoeControl(CCoeEnv* aCoeEnv);
  1112. __declspec(dllexport) ~CCoeControl();
  1113. __declspec(dllexport) virtual TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
  1114. __declspec(dllexport) virtual void MakeVisible(TBool aVisible);
  1115. __declspec(dllexport) virtual void SetDimmed(TBool aDimmed);
  1116. __declspec(dllexport) virtual void SetContainerWindowL(const CCoeControl& aContainer);
  1117. __declspec(dllexport) void SetContainerWindowL(RWindow& aWindow);
  1118. __declspec(dllexport) void SetContainerWindowL(RBackedUpWindow& aWindow);
  1119. __declspec(dllexport) virtual void ConstructFromResourceL(TResourceReader& aReader);
  1120. __declspec(dllexport) virtual void ActivateL();
  1121. __declspec(dllexport) virtual void PrepareForFocusLossL();
  1122. __declspec(dllexport) virtual void PrepareForFocusGainL();
  1123. __declspec(dllexport) virtual void SetAdjacent(TInt aAdjacent);
  1124. __declspec(dllexport) virtual void SetNeighbor(CCoeControl* aNeighbor);
  1125. __declspec(dllexport) virtual TBool HasBorder() const;
  1126. __declspec(dllexport) virtual TSize MinimumSize();
  1127. __declspec(dllexport) virtual void HandleResourceChange(TInt aType);
  1128. __declspec(dllexport) virtual void GetColorUseListL(CArrayFix<TCoeColorUse>& aColorUseList) const;
  1129. __declspec(dllexport) virtual void GetHelpContext(TCoeHelpContext& aContext) const;
  1130. __declspec(dllexport) virtual TCoeInputCapabilities InputCapabilities() const;
  1131. __declspec(dllexport) TCoeInputCapabilities RecursivelyMergedInputCapabilities() const;
  1132. __declspec(dllexport) void DrawNow() const;
  1133. __declspec(dllexport) void DrawNow(const TRect &aRect) const;
  1134. __declspec(dllexport) void DrawDeferred() const;
  1135. __declspec(dllexport) void SetFocus(TBool aFocus,TDrawNow aDrawNow=ENoDrawNow);
  1136. __declspec(dllexport) void SetExtent(const TPoint& aPosition,const TSize& aSize);
  1137. __declspec(dllexport) void SetSize(const TSize& aSize);
  1138. __declspec(dllexport) TInt SetMaximumWidth(TInt aMaxWidth);
  1139. __declspec(dllexport) void SetPosition(const TPoint& aPosition);
  1140. __declspec(dllexport) void SetRect(const TRect& aRect);
  1141. __declspec(dllexport) void SetExtentToWholeScreen();
  1142. __declspec(dllexport) TBool IsFocused() const;
  1143. __declspec(dllexport) TBool IsVisible() const;
  1144. __declspec(dllexport) TBool IsDimmed() const;
  1145. __declspec(dllexport) RDrawableWindow* DrawableWindow() const;
  1146. __declspec(dllexport) TSize Size() const;
  1147. __declspec(dllexport) TInt MaximumWidth() const;
  1148. __declspec(dllexport) TPoint Position() const;
  1149. __declspec(dllexport) TRect Rect() const;
  1150. __declspec(dllexport) TPoint PositionRelativeToScreen() const;
  1151. __declspec(dllexport) void SetObserver(MCoeControlObserver* aObserver);
  1152. __declspec(dllexport) MCoeControlObserver* Observer() const;
  1153. inline CCoeEnv* ControlEnv() const;
  1154. __declspec(dllexport) TInt Index(const CCoeControl* aControl) const;
  1155. __declspec(dllexport) void SetNonFocusing();
  1156. __declspec(dllexport) void SetFocusing(TBool aFocusing);
  1157. __declspec(dllexport) TBool IsNonFocusing() const;
  1158. __declspec(dllexport) void SetControlContext(MCoeControlContext* aContext);
  1159. __declspec(dllexport) void CopyControlContextFrom(const CCoeControl* aControl);
  1160. __declspec(dllexport) MCoeControlContext* ControlContext() const;
  1161. __declspec(dllexport) TBool OwnsWindow() const;
  1162. __declspec(dllexport) TBool IsBackedUp() const;
  1163. __declspec(dllexport) void SetPointerCapture(TBool aCapture=ETrue);
  1164. __declspec(dllexport) void ClaimPointerGrab(TBool aSendUpEvent=ETrue);
  1165. __declspec(dllexport) void IgnoreEventsUntilNextPointerUp();
  1166. __declspec(dllexport) void SetComponentsToInheritVisibility(TBool aInherit=ETrue);
  1167. __declspec(dllexport) void SetGloballyCapturing(TBool aGlobal);
  1168. __declspec(dllexport) void OverrideColorL(TInt aLogicalColor,TRgb aColor);
  1169. __declspec(dllexport) TBool GetColor(TInt aLogicalColor,TRgb& aColor) const;
  1170. __declspec(dllexport) void SetMopParent(MObjectProvider* aParent);
  1171. __declspec(dllexport) const MCoeControlBackground* Background() const;
  1172. __declspec(dllexport) const MCoeControlBackground* FindBackground() const;
  1173. __declspec(dllexport) virtual TInt SetParent(CCoeControl* aParent);
  1174. __declspec(dllexport) virtual void SetLayoutManagerL(MCoeLayoutManager* aLayout);
  1175. __declspec(dllexport) MCoeLayoutManager* LayoutManager() const;
  1176. __declspec(dllexport) virtual TBool RequestRelayout(const CCoeControl* aChildControl);
  1177. __declspec(dllexport) void SetZoomFactorL(TInt aZoomFactor, TZoomType aZoomType = ERelativeZoom);
  1178.     __declspec(dllexport) void SetFontProviderL(const CCoeFontProvider& aFontProvider);
  1179.     __declspec(dllexport) TZoomFactor AccumulatedZoom() const;
  1180.     __declspec(dllexport) const TCoeZoomWithType* ZoomWithType() const;
  1181.     __declspec(dllexport) const CCoeFontProvider& FindFontProvider() const;
  1182. __declspec(dllexport) virtual TInt TextBaselineOffset(const TSize& aSize) const;
  1183. __declspec(dllexport) virtual void SetTextBaselineSpacing(TInt aSpacing);
  1184. public:
  1185. void ProcessPointerEventL(const TPointerEvent& aPointerEvent);
  1186. void ProcessPointerBufferReadyL();
  1187. void RecursivelyMergeInputCapabilities(TCoeInputCapabilities& aInputCapabilities) const;
  1188. void WriteInternalStateNowL(RWriteStream& aWriteStream) const;
  1189.     void NotifyFontChange(const CCoeFontProvider* aFontProvider);
  1190.     void RemoveFromParent();
  1191.     void RefetchPixelMapping();
  1192. public:
  1193. __declspec(dllexport) virtual void HandlePointerEventL(const TPointerEvent& aPointerEvent);
  1194. protected:
  1195. __declspec(dllexport) virtual void HandlePointerBufferReadyL();
  1196. __declspec(dllexport) virtual void FocusChanged(TDrawNow aDrawNow);
  1197. __declspec(dllexport) virtual void SizeChanged();
  1198. __declspec(dllexport) virtual void PositionChanged();
  1199. public:
  1200. __declspec(dllexport) virtual TInt CountComponentControls() const;
  1201. __declspec(dllexport) virtual CCoeControl* ComponentControl(TInt aIndex) const;
  1202. __declspec(dllexport) CWindowGc& SystemGc() const;
  1203. protected:
  1204. __declspec(dllexport) void EnableDragEvents();
  1205. __declspec(dllexport) void HandleRedrawEvent(const TRect& aRect) const;
  1206. __declspec(dllexport) RWindow& Window() const;
  1207. __declspec(dllexport) RBackedUpWindow& BackedUpWindow() const;
  1208. __declspec(dllexport) void CloseWindow();
  1209. __declspec(dllexport) void CreateWindowL();
  1210. __declspec(dllexport) void CreateWindowL(const CCoeControl* aParent);
  1211. __declspec(dllexport) void CreateWindowL(RWindowTreeNode& aParent);
  1212. __declspec(dllexport) void CreateWindowL(RWindowGroup* aParent);
  1213. __declspec(dllexport) void CreateBackedUpWindowL(RWindowTreeNode& aParent);
  1214. __declspec(dllexport) void CreateBackedUpWindowL(RWindowTreeNode& aParent,TDisplayMode aDisplayMode);
  1215. __declspec(dllexport) void SetAllowStrayPointers();
  1216. __declspec(dllexport) void SetCanDrawOutsideRect();
  1217. __declspec(dllexport) void SetBlank();
  1218. __declspec(dllexport) void ReportEventL(MCoeControlObserver::TCoeEvent aEvent);
  1219. __declspec(dllexport) void SetCornerAndSize(TGulAlignment aCorner,const TSize& aSize);
  1220. __declspec(dllexport) void SetSizeWithoutNotification(const TSize& aSize);
  1221. __declspec(dllexport) void ActivateGc() const;
  1222. __declspec(dllexport) void ResetGc() const;
  1223. __declspec(dllexport) void DeactivateGc() const;
  1224. __declspec(dllexport) TBool IsReadyToDraw() const;
  1225. __declspec(dllexport) TBool IsActivated() const;
  1226. __declspec(dllexport) TBool IsBlank() const;
  1227. __declspec(dllexport) TBool IsBeingDestroyed() const;
  1228. __declspec(dllexport) CCoeControl* GrabbingComponent() const;
  1229. __declspec(dllexport) TBool CapturesPointer() const;
  1230. __declspec(dllexport) void HandleComponentControlsResourceChange(TInt aType);
  1231. friend class CCoeControlArray;
  1232. __declspec(dllexport) virtual void HandleControlArrayEventL(CCoeControlArray::TEvent aEvent, const CCoeControlArray* aArray, CCoeControl* aControl, TInt aControlId);
  1233. __declspec(dllexport) virtual void Reserved_CCoeControl_10();
  1234. __declspec(dllexport) virtual void Reserved_CCoeControl_11();
  1235. __declspec(dllexport) virtual void Reserved_CCoeControl_12();
  1236. __declspec(dllexport) virtual void Reserved_CCoeControl_13();
  1237. __declspec(dllexport) const CFont& ScreenFont(const TCoeFont& aFont) const;
  1238. __declspec(dllexport) CCoeTextDrawerBase& TextDrawer(TInt aKey = KErrNotFound) const;
  1239. __declspec(dllexport) void InitComponentArrayL();
  1240. __declspec(dllexport) CCoeControlArray& Components();
  1241. __declspec(dllexport) const CCoeControlArray& Components() const;
  1242. private:
  1243. __declspec(dllexport) virtual void GetTextDrawer(CCoeTextDrawerBase*& aTextDrawer, const CCoeControl* aDrawingControl, TInt aKey) const;
  1244. __declspec(dllexport) virtual void Reserved_CCoeControl_8();
  1245. __declspec(dllexport) virtual void Reserved_CCoeControl_9();
  1246. protected:
  1247. __declspec(dllexport) virtual TTypeUid::Ptr MopSupplyObject(TTypeUid aId);
  1248. private:
  1249. __declspec(dllexport) virtual MObjectProvider* MopNext();
  1250. private:
  1251. friend class CCoeRedrawer;
  1252. __declspec(dllexport) virtual void Draw(const TRect& aRect) const;
  1253. void DrawComponents(const TRect& aRect) const;
  1254. void DrawWindowOwningComponentsNow() const;
  1255. void DrawWindowOwningComponentsNow(const TRect &aRect) const;
  1256. void SetGrabbed(TBool aGrabbed);
  1257. TBool IsGrabbed() const;
  1258. void DoMakeVisible(TBool aVisible);
  1259. void CheckPointerEventPurge() const;
  1260. inline TInt Flags() const;
  1261. inline TInt& Flags();
  1262. void RecursivelyMergeTextDrawers(CCoeTextDrawerBase*& aTextDrawer,
  1263. const CCoeControl* aDrawingControl, TInt aKey) const;
  1264. const CCoeControl* WindowOwningParent() const;
  1265. const CCoeControl* SearchParent(const CCoeControl* aParentToFind) const;
  1266. void DoSetLayoutL(MCoeLayoutManager* aLayoutManager);
  1267. TInt SetZoomWithType(TCoeZoomWithType* aZoomWithType);
  1268. TCoeZoomWithType* GetZoomWithType() const;
  1269. TInt SetFontProvider(const CCoeFontProvider* aFontProvider);
  1270. const CCoeFontProvider* GetFontProvider() const;
  1271. protected:
  1272. __declspec(dllexport) virtual void WriteInternalStateL(RWriteStream& aWriteStream) const;
  1273. public:
  1274. __declspec(dllexport) void SetBackground(const MCoeControlBackground* aBackground);
  1275. __declspec(dllexport) CCoeControl* Parent();
  1276. __declspec(dllexport) const CCoeControl* Parent() const;
  1277.     __declspec(dllexport) TInt SetGc(CWindowGc* aGraphicsContext) const;
  1278. __declspec(dllexport) CWindowGc* CCoeControl::GetGc() const;
  1279. __declspec(dllexport) void DrawBackground(const TRect& aRect) const;
  1280. __declspec(dllexport) void DrawForeground(const TRect& aRect) const;
  1281. __declspec(dllexport) TInt SetHitTest(const MCoeControlHitTest* aHitTestControl);
  1282. __declspec(dllexport) const MCoeControlHitTest* HitTest() const;
  1283. private:
  1284. __declspec(dllexport) virtual void Reserved_2();
  1285. public:
  1286. __declspec(dllexport) TInt UniqueHandle() const ;
  1287. __declspec(dllexport) TInt SetUniqueHandle( TInt aUniqueHandle ) ;
  1288. protected:
  1289. CCoeEnv* iCoeEnv;
  1290. MCoeControlContext* iContext;
  1291. TPoint iPosition;
  1292. TSize iSize;
  1293. private:
  1294. RDrawableWindow* iWin;
  1295. MCoeControlObserver* iObserver;
  1296. RCoeExtensionStorage iExt;
  1297. MObjectProvider* iMopParent;
  1298. };
  1299. inline CCoeEnv* CCoeControl::ControlEnv() const
  1300. {return(iCoeEnv);}
  1301. #line 11 "C:\gbtukmanpf01\NOK124\Courses\S60\05300-S60_C++_Introduction\Working\LabCode\Lab_05304-s2.cb1\starter\inc\S60UIExampleInitialContainer.h" /* stack depth 1 */
  1302. class CS60UIExampleModel;
  1303. #line 24
  1304. class CS60UIExampleInitialContainer : public CCoeControl
  1305.     {
  1306.     public:
  1307. #line 35
  1308.         static CS60UIExampleInitialContainer* NewL(const TRect& aRect,
  1309.                                                    CS60UIExampleModel& aModel);
  1310. #line 46
  1311.         static CS60UIExampleInitialContainer* NewLC(const TRect& aRect,
  1312.                                                     CS60UIExampleModel& aModel);
  1313.         void ConstructL(const TRect& aRect);
  1314.         virtual ~CS60UIExampleInitialContainer();
  1315.     public:
  1316.         void SizeChanged();
  1317.         void HandleResourceChange(TInt aType);
  1318.         void Draw( const TRect& aRect ) const;
  1319.     private:
  1320.         CS60UIExampleInitialContainer(CS60UIExampleModel& aModel);
  1321.     private:
  1322.         CS60UIExampleModel& iModel;
  1323.         CFbsBitmap* iBkgBitmap;
  1324.         HBufC*   iTitle;
  1325.     };
  1326. #line 3 "C:\gbtukmanpf01\NOK124\Courses\S60\05300-S60_C++_Introduction\Working\LabCode\Lab_05304-s2.cb1\starter\src\S60UIExampleInitialContainer.cpp" /* stack depth 0 */
  1327. #line 1 "C:\gbtukmanpf01\NOK124\Courses\S60\05300-S60_C++_Introduction\Working\LabCode\Lab_05304-s2.cb1\starter\inc\S60UIExampleModel.h" /* stack depth 1 */
  1328. #line 18
  1329. class THighScore
  1330.     {
  1331.     public:
  1332.         TInt      iScore;
  1333.         TBufC<20> iName;
  1334.     };
  1335. #line 32
  1336. class CS60UIExampleModel : public CBase
  1337.     {
  1338.     public:
  1339.         static CS60UIExampleModel* CS60UIExampleModel::NewL();
  1340.         static CS60UIExampleModel* CS60UIExampleModel::NewLC();
  1341.         void ConstructL();
  1342.         virtual ~CS60UIExampleModel();
  1343.     public:
  1344.         TBool IsGameStarted() const  { return iGameStarted; }
  1345.         TBool IsGamePaused() const   { return iGamePaused; }
  1346.         void GameStart()    { iGameStarted = ETrue; iLevel = 1; iScore = 0; }
  1347.         void GameStop()     { iGameStarted = EFalse; }
  1348.         void GamePause()    { iGamePaused = ETrue; }
  1349.         void GameContinue() { iGameStarted = ETrue; iGamePaused = EFalse; }
  1350.         TInt LevelNumber()               { return iLevel; }
  1351.         void SetLevelNumber(TInt aLevel) { iLevel = aLevel; }
  1352.         TInt Score()               { return iScore; }
  1353.         void SetScore(TInt aScore) { iScore = aScore; }
  1354.         RArray<THighScore> * HighScoreArray() { return &iHighScores; }
  1355.         void InsertInHighScoresL(TDesC& aName, TInt aScore);
  1356.     private:
  1357.         TBool iGameStarted;
  1358.         TBool iGamePaused;
  1359.         TInt iLevel;
  1360.         TInt iScore;
  1361.         RArray<THighScore>  iHighScores;
  1362.     };
  1363. #line 4 "C:\gbtukmanpf01\NOK124\Courses\S60\05300-S60_C++_Introduction\Working\LabCode\Lab_05304-s2.cb1\starter\src\S60UIExampleInitialContainer.cpp" /* stack depth 0 */
  1364. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\akntitle.h" /* stack depth 1 */
  1365. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\AknControl.h" /* stack depth 2 */
  1366. #line 33
  1367. class CAknControl : public CCoeControl
  1368.   {
  1369.   public:
  1370.       __declspec(dllexport) CAknControl();
  1371.       __declspec(dllexport) ~CAknControl();
  1372.   private:
  1373.       __declspec(dllexport) virtual void* ExtensionInterface( TUid aInterface );
  1374.   private:
  1375.       TInt iSpare[6];
  1376.   };
  1377. #line 26 "C:\Symbian\9.1\S60_3rd\epoc32\include\akntitle.h" /* stack depth 1 */
  1378. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\coeccntx.h" /* stack depth 2 */
  1379. #line 13
  1380. class MCoeControlContext
  1381. #line 30
  1382. {
  1383. public:
  1384. __declspec(dllexport) virtual void ActivateContext(CWindowGc& aGc,RDrawableWindow& aWindow) const;
  1385. __declspec(dllexport) virtual void ResetContext(CWindowGc& aGc) const;
  1386. __declspec(dllexport) virtual void PrepareContext(CWindowGc& aGc) const;
  1387. protected:
  1388. __declspec(dllexport) MCoeControlContext();
  1389. private:
  1390. __declspec(dllexport) virtual void MCoeControlContext_Reserved1();
  1391. __declspec(dllexport) virtual void MCoeControlContext_Reserved2();
  1392. private:
  1393. TInt iMCoeControlContext_Reserved1;
  1394. };
  1395. class CCoeBrushAndPenContext : public CBase, public MCoeControlContext
  1396. {
  1397. public:
  1398. __declspec(dllexport) static CCoeBrushAndPenContext* NewL();
  1399. __declspec(dllexport) void SetBrushStyle(CWindowGc::TBrushStyle aBrushStyle);
  1400. __declspec(dllexport) void SetBrushColor(TRgb aColor);
  1401. __declspec(dllexport) void SetBrushBitmap(const CFbsBitmap& aBitmap);
  1402. __declspec(dllexport) void SetPenColor(TRgb aColor);
  1403. __declspec(dllexport) CWindowGc::TBrushStyle BrushStyle() const;
  1404. __declspec(dllexport) TRgb BrushColor() const;
  1405. __declspec(dllexport) const CFbsBitmap& BrushBitmap() const;
  1406. __declspec(dllexport) TRgb PenColor() const;
  1407. protected:
  1408. __declspec(dllexport) void PrepareContext(CWindowGc& aGc) const;
  1409. private:
  1410. CCoeBrushAndPenContext();
  1411. private:
  1412. CWindowGc::TBrushStyle iBrushStyle;
  1413. TRgb iBrushColor;
  1414. const CFbsBitmap* iBitmap;
  1415. TRgb iPenColor;
  1416. };
  1417. class MCoeControlBrushContext : public MCoeControlContext
  1418. #line 91
  1419. {
  1420. public:
  1421. __declspec(dllexport) MCoeControlBrushContext();
  1422. protected:
  1423. __declspec(dllexport) void PrepareContext(CWindowGc& aGc) const;
  1424. public:
  1425. CWindowGc::TBrushStyle iBrushStyle;
  1426. TRgb iBrushColor;
  1427. const CFbsBitmap* iBitmap;
  1428. private:
  1429. TInt iMCoeControlBrushContext_Reserved1;
  1430. };
  1431. #line 27 "C:\Symbian\9.1\S60_3rd\epoc32\include\akntitle.h" /* stack depth 1 */
  1432. class CEikLabel;
  1433. class CEikImage;
  1434. class CAknTitlePaneExtension;
  1435. class CAknTitlePaneLabel;
  1436. class MAknTitlePaneObserver;
  1437. class CAknTitlePane : public CAknControl, public MCoeControlContext
  1438. {
  1439. public:
  1440.     __declspec(dllexport) CAknTitlePane();
  1441.     __declspec(dllexport) ~CAknTitlePane();
  1442.     __declspec(dllexport) void ConstructL();
  1443.     __declspec(dllexport) void ConstructFromResourceL(TResourceReader& aReader);
  1444. #line 68
  1445.     __declspec(dllexport) void SetTextL(const TDesC& aText);
  1446.     __declspec(dllexport) void SetText(HBufC* aText);
  1447. #line 89
  1448.     __declspec(dllexport) void SetTextL(const TDesC& aText, TBool aScroll);
  1449. #line 100
  1450.     __declspec(dllexport) void SetText(HBufC* aText, TBool aScroll);
  1451.     inline const TDesC* Text() const;
  1452. #line 116
  1453.     __declspec(dllexport) void SetPicture(const CFbsBitmap* aBitmap, const CFbsBitmap* aMaskBitmap = 0 );
  1454.     __declspec(dllexport) void SetPictureFromFileL(const TDesC& aFileName, TInt aMainId, TInt aMaskId = -1);
  1455. #line 139
  1456.     __declspec(dllexport) void SetSmallPicture(const CFbsBitmap* aBitmap, const CFbsBitmap* aMaskBitmap, TBool aVisible);
  1457.     __declspec(dllexport) void SetFromResourceL(TResourceReader& aReader);
  1458.     __declspec(dllexport) void SetTextToDefaultL();
  1459. public:
  1460.     __declspec(dllexport) virtual void PrepareContext(CWindowGc& aGc) const;
  1461. protected:
  1462.     __declspec(dllexport) virtual void SizeChanged();
  1463.     __declspec(dllexport) virtual void PositionChanged();
  1464.     __declspec(dllexport) virtual void HandleResourceChange(TInt aType);
  1465.     __declspec(dllexport) virtual TInt CountComponentControls() const;
  1466.     __declspec(dllexport) virtual CCoeControl* ComponentControl(TInt aIndex) const;
  1467. public:
  1468.     __declspec(dllexport) void HandlePointerEventL( const TPointerEvent& aPointerEvent );
  1469.     __declspec(dllexport) void SetTitlePaneObserver( MAknTitlePaneObserver* aObserver);
  1470. private:
  1471.     __declspec(dllexport) void* ExtensionInterface( TUid aInterface );
  1472. public:
  1473.     CEikLabel* TextLabel();
  1474. private:
  1475.     void CommonConstructL();
  1476.     TUid AppUid();
  1477.     TInt FormatTitlePaneLabelL(
  1478.         const TInt aOneLineLayoutWidth,  const TInt aTwoLineLayoutWidth,
  1479.         const CFont* aOneLineFont,  const CFont* aTwoLineFont);
  1480.     void ReadFromResourceFileL(TResourceReader& aReader);
  1481. private:
  1482.     __declspec(dllexport) virtual void Draw(const TRect& aRect) const;
  1483. protected:
  1484.     MAknTitlePaneObserver* iTitlePaneObserver;
  1485. private:
  1486.     void SizeChangedInNormalStatusPane();
  1487.     void SizeChangedInFlatStatusPane();
  1488.     void SizeChangedInStaconPane();
  1489.     void SizeChangedInWideScreenPane();
  1490.     RWindow* StatuspaneContainerWindow() const;
  1491.     void DrawTransparencyMaskL(TBool aTransparencyEnabled);
  1492.     void SetupTitleLabelEffectL();
  1493.     void SetContainerWindowNonFading(TBool aNonFading);
  1494.     void SetupStaconPaneScrollEffectL();
  1495.     void SetupFlatStatusPaneScrollEffectL();
  1496.     void SetupNormalStatusPaneScrollEffectL();
  1497.     void SetupFlatStatusPaneFadeEffectL();
  1498.     void SetupNoEffectL();
  1499. private:
  1500.     HBufC* iTitleText;
  1501.     HBufC* iDefaultTitleText;
  1502.     CAknTitlePaneLabel* iTitleLabel;
  1503.     TBool iImageShown;
  1504.     CAknTitlePaneExtension* iExtension;
  1505.     };
  1506. inline const TDesC* CAknTitlePane::Text() const
  1507.     { return(iTitleText); }
  1508. #line 5 "C:\gbtukmanpf01\NOK124\Courses\S60\05300-S60_C++_Introduction\Working\LabCode\Lab_05304-s2.cb1\starter\src\S60UIExampleInitialContainer.cpp" /* stack depth 0 */
  1509. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikspane.h" /* stack depth 1 */
  1510. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikspmod.h" /* stack depth 2 */
  1511. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\uikon.hrh" /* stack depth 3 */
  1512. #line 20
  1513. enum TEikAppResourceFileStandardOffset
  1514. {
  1515. ESignatureResourceOffset=1,
  1516. EDefaultNameResourceOffset,
  1517. EAppInfoResourceOffset
  1518. };
  1519. #line 14 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikspmod.h" /* stack depth 2 */
  1520. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eiksrvc.h" /* stack depth 3 */
  1521. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eiksrvs.h" /* stack depth 4 */
  1522. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikappui.h" /* stack depth 5 */
  1523. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\coeaui.h" /* stack depth 6 */
  1524. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\vwsdef.h" /* stack depth 7 */
  1525. #line 12
  1526. class TVwsViewId
  1527. #line 21
  1528. {
  1529. public:
  1530. inline TVwsViewId();
  1531. inline TVwsViewId(const TVwsViewId& aUid);
  1532. inline TVwsViewId(TUid aAppUid,TUid aViewUid);
  1533. inline TBool operator==(const TVwsViewId& aUid) const;
  1534. inline TBool operator!=(const TVwsViewId& aUid) const;
  1535. public:
  1536. TUid iAppUid;
  1537. TUid iViewUid;
  1538. };
  1539. const TInt KErrViewWrongMode=1;
  1540. class TVwsViewIdAndMessage
  1541. {
  1542. public:
  1543. inline TVwsViewIdAndMessage();
  1544. inline TVwsViewIdAndMessage(const TVwsViewId& aId);
  1545. inline TVwsViewIdAndMessage(const TVwsViewId& aId,TUid aCustomMessageId,const TDesC8& aCustomMessage);
  1546. inline TVwsViewIdAndMessage& operator=(const TVwsViewIdAndMessage& aVwsViewIdAndMessage);
  1547. public:
  1548. TVwsViewId iViewId;
  1549. TUid iCustomMessageId;
  1550. TInt iCustomMessageLength;
  1551. TPtrC8 iCustomMessage;
  1552. };
  1553. class TVwsViewEvent
  1554. #line 79
  1555. {
  1556. public:
  1557. enum TVwsViewEventType
  1558. {
  1559. EVwsActivateView,
  1560. EVwsDeactivateView,
  1561. EVwsScreenDeviceChanged,
  1562. EVwsDeactivationNotification,
  1563. EVwsActivationNotification
  1564. };
  1565. public:
  1566. inline TVwsViewEvent();
  1567. inline TVwsViewEvent(TVwsViewEventType aEventType);
  1568. inline TVwsViewEvent(TVwsViewEventType aEventType,const TVwsViewId& aViewOneId);
  1569. inline TVwsViewEvent(TVwsViewEventType aEventType,const TVwsViewId& aViewOneId,const TVwsViewId& aViewTwoId);
  1570. inline TVwsViewEvent(TVwsViewEventType aEventType,const TVwsViewId& aViewOneId,const TVwsViewId& aViewTwoId,TUid aCustomMessageId,TInt aCustomMessageLength);
  1571. public:
  1572. TVwsViewEventType iEventType;
  1573. TVwsViewId iViewOneId;
  1574. TVwsViewId iViewTwoId;
  1575. TUid iCustomMessageId;
  1576. TInt iCustomMessageLength;
  1577. };
  1578. typedef TPckgBuf<TVwsViewIdAndMessage> TVwsViewIdAndMessageBuf;
  1579. typedef TPckgBuf<TVwsViewEvent> TVwsViewEventBuf;
  1580. inline TVwsViewId::TVwsViewId()
  1581. : iAppUid(TUid::Null() ), iViewUid(TUid::Null() ) {}
  1582. inline TVwsViewId::TVwsViewId(const TVwsViewId& aUid)
  1583. : iAppUid(aUid.iAppUid), iViewUid(aUid.iViewUid) {}
  1584. inline TVwsViewId::TVwsViewId(TUid aAppUid,TUid aViewUid)
  1585. : iAppUid(aAppUid), iViewUid(aViewUid) {}
  1586. inline TBool TVwsViewId::operator==(const TVwsViewId& aUid) const
  1587. #line 147
  1588. {
  1589. return (aUid.iAppUid==iAppUid && aUid.iViewUid==iViewUid);
  1590. }
  1591. inline TBool TVwsViewId::operator!=(const TVwsViewId& aUid) const
  1592. #line 160
  1593. {
  1594. return (aUid.iAppUid!=iAppUid || aUid.iViewUid!=iViewUid);
  1595. }
  1596. inline TVwsViewIdAndMessage::TVwsViewIdAndMessage()
  1597. : iViewId(TVwsViewId()), iCustomMessageLength(0)
  1598. {
  1599. iCustomMessageId.iUid=0;
  1600. iCustomMessage.Set(KNullDesC8);
  1601. }
  1602. inline TVwsViewIdAndMessage::TVwsViewIdAndMessage(const TVwsViewId& aId)
  1603. : iViewId(aId), iCustomMessageLength(0)
  1604. {
  1605. iCustomMessageId.iUid=0;
  1606. iCustomMessage.Set(KNullDesC8);
  1607. }
  1608. inline TVwsViewIdAndMessage::TVwsViewIdAndMessage(const TVwsViewId& aId,TUid aCustomMessageId,const TDesC8& aCustomMessage)
  1609. : iViewId(aId), iCustomMessageId(aCustomMessageId)
  1610. {
  1611. iCustomMessageLength=aCustomMessage.Length();
  1612. iCustomMessage.Set(aCustomMessage);
  1613. }
  1614. inline TVwsViewIdAndMessage& TVwsViewIdAndMessage::operator=(const TVwsViewIdAndMessage& aVwsViewIdAndMessage)
  1615. {
  1616. iViewId=aVwsViewIdAndMessage.iViewId;
  1617. iCustomMessageId=aVwsViewIdAndMessage.iCustomMessageId;
  1618. iCustomMessageLength=aVwsViewIdAndMessage.iCustomMessage.Length();
  1619. iCustomMessage.Set(aVwsViewIdAndMessage.iCustomMessage);
  1620. return(*this);
  1621. }
  1622. inline TVwsViewEvent::TVwsViewEvent() {}
  1623. inline TVwsViewEvent::TVwsViewEvent(TVwsViewEventType aEventType)
  1624. : iEventType(aEventType),iViewOneId(),iViewTwoId(),iCustomMessageId(TUid::Null() ),iCustomMessageLength(0) {}
  1625. inline TVwsViewEvent::TVwsViewEvent(TVwsViewEventType aEventType,const TVwsViewId& aViewOneId)
  1626. : iEventType(aEventType),iViewOneId(aViewOneId),iViewTwoId(),iCustomMessageId(TUid::Null() ),iCustomMessageLength(0) {}
  1627. inline TVwsViewEvent::TVwsViewEvent(TVwsViewEventType aEventType,const TVwsViewId& aViewOneId,const TVwsViewId& aViewTwoId)
  1628. : iEventType(aEventType),iViewOneId(aViewOneId),iViewTwoId(aViewTwoId),iCustomMessageId(TUid::Null() ),iCustomMessageLength(0) {}
  1629. inline TVwsViewEvent::TVwsViewEvent(TVwsViewEventType aEventType,const TVwsViewId& aViewOneId,const TVwsViewId& aViewTwoId,TUid aCustomMessageId,TInt aCustomMessageLength)
  1630. : iEventType(aEventType),iViewOneId(aViewOneId),iViewTwoId(aViewTwoId),iCustomMessageId(aCustomMessageId),iCustomMessageLength(aCustomMessageLength) {}
  1631. #line 22 "C:\Symbian\9.1\S60_3rd\epoc32\include\coeaui.h" /* stack depth 6 */
  1632. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\coeview.h" /* stack depth 7 */
  1633. #line 12
  1634. class CCoeAppUi;
  1635. class MCoeView
  1636. {
  1637. public:
  1638. virtual TVwsViewId ViewId() const=0;
  1639. private:
  1640. #line 41
  1641. virtual void ViewActivatedL(const TVwsViewId& aPrevViewId,TUid aCustomMessageId,const TDesC8& aCustomMessage)=0;
  1642. virtual void ViewDeactivated()=0;
  1643. protected:
  1644. __declspec(dllexport) MCoeView();
  1645. __declspec(dllexport) virtual TVwsViewIdAndMessage ViewScreenDeviceChangedL();
  1646. private:
  1647. __declspec(dllexport) virtual void ViewConstructL();
  1648. protected:
  1649. __declspec(dllexport) virtual TBool ViewScreenModeCompatible(TInt aScreenMode);
  1650. private:
  1651. friend class CCoeViewManager;
  1652. __declspec(dllexport) virtual void PrepareForViewActivation();
  1653. __declspec(dllexport) virtual void MCoeView_Reserved_2();
  1654. __declspec(dllexport) virtual void MCoeView_Reserved_3();
  1655. private:
  1656. TInt iMCoeView_Reserved1;
  1657. };
  1658. class CCoeScreenDeviceChangeDefaultHandler : public CCoeStatic
  1659. #line 79
  1660. {
  1661. public:
  1662. __declspec(dllexport) ~CCoeScreenDeviceChangeDefaultHandler();
  1663. __declspec(dllexport) static CCoeScreenDeviceChangeDefaultHandler* Self();
  1664. protected:
  1665. __declspec(dllexport) CCoeScreenDeviceChangeDefaultHandler();
  1666. __declspec(dllexport) CCoeScreenDeviceChangeDefaultHandler(TInt aDestructionPriority);
  1667. private:
  1668. __declspec(dllexport) virtual void CCoeStatic_Reserved1();
  1669. __declspec(dllexport) virtual void CCoeStatic_Reserved2();
  1670. __declspec(dllexport) virtual void CCoeScreenDeviceChangeDefaultHandler_Reserved1();
  1671. __declspec(dllexport) virtual void CCoeScreenDeviceChangeDefaultHandler_Reserved2();
  1672. public:
  1673. virtual void HandleScreenDeviceChangedL()=0;
  1674. virtual TVwsViewIdAndMessage DefaultViewOnScreenDeviceChanged()=0;
  1675. private:
  1676. TInt iCCoeScreenDeviceChangeDefaultHandler;
  1677. };
  1678. #line 34 "C:\Symbian\9.1\S60_3rd\epoc32\include\coeaui.h" /* stack depth 6 */
  1679. class CCoeEnv;
  1680. class CCoeControl;
  1681. typedef CCoeFep* (*TCoeFepFactoryFunctionL)(CCoeEnv& aConeEnvironment, const TDesC& aFullFileNameOfDll, const CCoeFepParameters& aFepParameters);
  1682. typedef void (*TCoeSynchronouslyExecuteFepSettingsDialogFunctionL)(CCoeEnv& aConeEnvironment, const TDesC& aFullFileNameOfDll);
  1683. #line 67
  1684. enum
  1685. {
  1686. ECoeStackPriorityDefault=0,
  1687. ECoeStackPriorityMenu=10,
  1688. ECoeStackPriorityDialog=50,
  1689. ECoeStackPriorityCba=60,
  1690. ECoeStackPriorityAlert=200,
  1691. ECoeStackPriorityFep=250,
  1692. ECoeStackPriorityEnvironmentFilter=300
  1693. };
  1694. #line 93
  1695. enum
  1696. {
  1697. ECoeStackFlagStandard = 0,
  1698. ECoeStackFlagRefusesAllKeys = 0x01,
  1699. ECoeStackFlagRefusesFocus = 0x02,
  1700. ECoeStackFlagOwnershipTransfered= 0x04,
  1701. ECoeStackFlagSharable = 0x08
  1702. };
  1703. class CCoeControlStack;
  1704. class CCoeViewManager;
  1705. class MCoeViewDeactivationObserver;
  1706. class MCoeViewActivationObserver;
  1707. class MCoeViewObserver;
  1708. #line 128
  1709. class CCoeAppUi : public CBase
  1710. {
  1711. public:
  1712. __declspec(dllexport) CCoeAppUi();
  1713. __declspec(dllexport) ~CCoeAppUi();
  1714. __declspec(dllexport) void ConstructL(CCoeAppUi* aPrevious=0 );
  1715. public:
  1716. __declspec(dllexport) void AddToStackL(CCoeControl* aControl,TInt aPriority=ECoeStackPriorityDefault,TInt aStackingFlags=ECoeStackFlagStandard);
  1717. __declspec(dllexport) void RemoveFromStack(CCoeControl* aControl);
  1718. __declspec(dllexport) void UpdateStackedControlFlags(CCoeControl* aControl,TInt aFlags,TInt aMask);
  1719. __declspec(dllexport) void HandleStackChanged();
  1720. __declspec(dllexport) TBool IsDisplayingMenuOrDialog() const;
  1721. __declspec(dllexport) TBool IsDisplayingDialog() const;
  1722. __declspec(dllexport) TBool IsDisplayingControlBetweenPriorities(TInt aLowerPriority, TInt aHigherPriority) const;
  1723. __declspec(dllexport) CArrayFix<TCoeHelpContext> * AppHelpContextL() const;
  1724. __declspec(dllexport) virtual TCoeInputCapabilities InputCapabilities() const;
  1725. __declspec(dllexport) void HandleStackedControlsResourceChange(TInt aType);
  1726. __declspec(dllexport) void ActivateViewL(const TVwsViewId& aViewId);
  1727. __declspec(dllexport) void ActivateViewL(const TVwsViewId& aViewId,TUid aCustomMessageId,const TDesC8& aCustomMessage);
  1728. __declspec(dllexport) TBool CheckSourceOfViewSwitchL(const TSecurityPolicy& aSecurityPolicy,const char* aDiagnostic=0 ) const;
  1729. __declspec(dllexport) void RegisterViewL(MCoeView& aView);
  1730. __declspec(dllexport) void DeregisterView(const MCoeView& aView);
  1731. __declspec(dllexport) void SetDefaultViewL(const MCoeView& aView);
  1732. __declspec(dllexport) TInt GetDefaultViewId(TVwsViewId& aViewId) const;
  1733. __declspec(dllexport) TInt GetActiveViewId(TVwsViewId& aViewId) const;
  1734. __declspec(dllexport) void AddToStackL(const MCoeView& aView,CCoeControl* aControl,TInt aPriority=ECoeStackPriorityDefault,TInt aStackingFlags=ECoeStackFlagStandard);
  1735. __declspec(dllexport) CCoeControl* TopFocusedControl() const;
  1736. public:
  1737. TBool IsControlOnStack(CCoeControl* aControl) const;
  1738. void SetCurrentControlStackGroupId(TInt aGroupId);
  1739. void NotifyFontChange(const CCoeFontProvider& aFontProvider);
  1740. void RefetchPixelMapping();
  1741. public:
  1742. __declspec(dllexport) void CreateActivateViewEventL(const TVwsViewId& aViewId,TUid aCustomMessageId,const TDesC8& aCustomMessage);
  1743. __declspec(dllexport) void ActivateTopViewL();
  1744. __declspec(dllexport) void DeactivateActiveViewL();
  1745. __declspec(dllexport) void RegisterApplicationViewL(TUid aAppUid);
  1746. __declspec(dllexport) void DeregisterApplicationView();
  1747. __declspec(dllexport) void CheckInitializeViewsL(TUid aAppUid);
  1748. __declspec(dllexport) void SetApplicationViewAsDefaultL();
  1749. __declspec(dllexport) void AddViewDeactivationObserverL(MCoeViewDeactivationObserver* aViewDeactivationObserver);
  1750. __declspec(dllexport) void RemoveViewDeactivationObserver(MCoeViewDeactivationObserver* aViewDeactivationObserver);
  1751. __declspec(dllexport) void NotifyNextDeactivation(const TVwsViewId& aViewId, MCoeViewDeactivationObserver& aViewDeactivationObserver);
  1752. __declspec(dllexport) void NotifyNextDeactivation(MCoeViewDeactivationObserver& aViewDeactivationObserver);
  1753. __declspec(dllexport) void AddViewActivationObserverL(MCoeViewActivationObserver* aViewActivationObserver);
  1754. __declspec(dllexport) void RemoveViewActivationObserver(MCoeViewActivationObserver* aViewActivationObserver);
  1755. __declspec(dllexport) void NotifyNextActivation(const TVwsViewId& aViewId, MCoeViewActivationObserver& aViewActivationObserver);
  1756. __declspec(dllexport) void NotifyNextActivation(MCoeViewActivationObserver& aViewActivationObserver);
  1757. __declspec(dllexport) void AddViewObserverL(MCoeViewObserver* aViewObserver);
  1758. __declspec(dllexport) void RemoveViewObserver(MCoeViewObserver* aViewObserver);
  1759. __declspec(dllexport) void WriteInternalStateOfStackedControlsL(RWriteStream& aWriteStream) const;
  1760.   __declspec(dllexport) void SetSystemDefaultViewL(const TVwsViewId& aViewId,TInt aMode);
  1761.   __declspec(dllexport) void SetSystemDefaultViewL(const TVwsViewId& aViewId);
  1762.   __declspec(dllexport) void GetSystemDefaultViewL(TVwsViewId& aViewId);
  1763. public:
  1764. __declspec(dllexport) void RegisterViewAndAddStackL(MCoeView& aView);
  1765. __declspec(dllexport) void DeregisterViewAndRemoveStack(const MCoeView& aView);
  1766. __declspec(dllexport) void RemoveFromViewStack(const MCoeView& aView,CCoeControl* aControl);
  1767. __declspec(dllexport) void UpdateViewStackedControlFlags(const MCoeView& aView,CCoeControl* aControl,TInt aFlags,TInt aMask);
  1768. __declspec(dllexport) void AddToViewStackL(const MCoeView& aView,CCoeControl* aControl,TInt aPriority=ECoeStackPriorityDefault,TInt aStackingFlags=ECoeStackFlagStandard);
  1769. public:
  1770. __declspec(dllexport) virtual void HandleWsEventL(const TWsEvent& aEvent,CCoeControl* aDestination);
  1771. __declspec(dllexport) virtual void PrepareToExit();
  1772. protected:
  1773. __declspec(dllexport) virtual void HandleScreenDeviceChangedL();
  1774. private:
  1775. __declspec(dllexport) virtual TKeyResponse HandleKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
  1776. __declspec(dllexport) virtual void HandleForegroundEventL(TBool aForeground);
  1777. __declspec(dllexport) virtual void HandleSwitchOnEventL(CCoeControl* aDestination);
  1778. __declspec(dllexport) virtual void HandleSystemEventL(const TWsEvent& aEvent);
  1779. __declspec(dllexport) virtual void HandleApplicationSpecificEventL(TInt aType,const TWsEvent& aEvent);
  1780. __declspec(dllexport) virtual void SetAndDrawFocus(TBool aFocus);
  1781. __declspec(dllexport) virtual CArrayFix<TCoeHelpContext> * HelpContextL() const;
  1782. public:
  1783. __declspec(dllexport) TBool IsViewConstructed(const TVwsViewId& aViewId) const;
  1784. __declspec(dllexport) virtual void CCoeAppUi_Reserved1();
  1785. __declspec(dllexport) virtual void CCoeAppUi_Reserved2();
  1786. private:
  1787. enum TRemoveCondition
  1788. {
  1789. ERemoveUnconditionally,
  1790. ERemoveOnlyIfSharable
  1791. };
  1792. private:
  1793. CCoeControl* TopFocusableControl() const;
  1794. TInt FindPos(CCoeControlStack* aStack,CCoeControl* aControl) const;
  1795. void SetFocusToControl(CCoeControl* aControl,TBool aFocus);
  1796. void DoAddToStackL(CCoeControlStack* aStack,CCoeControl* aControl,TInt aPriority,TInt aStackingFlags);
  1797. void DoAddToStackL(CCoeControlStack* aStack,CCoeControl* aControl,TInt aPriority,TInt aStackingFlags, TInt aGroupId);
  1798. void DoRemoveFromStack(CCoeControlStack* aStack,CCoeControl* aControl,TRemoveCondition aRemoveCondition=ERemoveUnconditionally);
  1799. void DoUpdateStackedControlFlags(CCoeControlStack* aStack,CCoeControl* aControl,TInt aFlags,TInt aMask);
  1800. public:
  1801. void MonitorWsEvent(const TWsEvent& aEvent);
  1802. private:
  1803. class CExtra;
  1804. friend class CExtra;
  1805. friend class CTestDriver;
  1806. protected:
  1807. CCoeEnv* iCoeEnv;
  1808. private:
  1809. CCoeViewManager* iViewManager;
  1810. CCoeControlStack* iStack;
  1811. CExtra* iExtra;
  1812. TInt iCCoeAppUi_Reserved1;
  1813. };
  1814. class MCoeViewDeactivationObserver
  1815. #line 248
  1816. {
  1817. public:
  1818. virtual void HandleViewDeactivation(const TVwsViewId& aViewIdToBeDeactivated,const TVwsViewId& aNewlyActivatedViewId)=0;
  1819. protected:
  1820. __declspec(dllexport) MCoeViewDeactivationObserver();
  1821. private:
  1822. __declspec(dllexport) virtual void MCoeViewDeactivationObserver_Reserved_1();
  1823. __declspec(dllexport) virtual void MCoeViewDeactivationObserver_Reserved_2();
  1824. private:
  1825. TInt iMCoeViewDeactivationObserver_Reserved1;
  1826. };
  1827. class MCoeViewActivationObserver
  1828. {
  1829. public:
  1830. virtual void HandleViewActivation(const TVwsViewId& aNewlyActivatedViewId,const TVwsViewId& aViewIdToBeDeactivated)=0;
  1831. protected:
  1832. __declspec(dllexport) MCoeViewActivationObserver();
  1833. private:
  1834. __declspec(dllexport) virtual void MCoeViewActivationObserver_Reserved_1();
  1835. __declspec(dllexport) virtual void MCoeViewActivationObserver_Reserved_2();
  1836. private:
  1837. TInt iMCoeViewActivationObserver_Reserved1;
  1838. };
  1839. class MCoeViewObserver
  1840. {
  1841. public:
  1842. virtual void HandleViewEventL(const TVwsViewEvent& aEvent)=0;
  1843. protected:
  1844. __declspec(dllexport) MCoeViewObserver();
  1845. private:
  1846. __declspec(dllexport) virtual void MCoeViewObserver_Reserved1();
  1847. __declspec(dllexport) virtual void MCoeViewObserver_Reserved2();
  1848. private:
  1849. TInt iMCoeViewObserver_Reserved1;
  1850. };
  1851. #line 9 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikappui.h" /* stack depth 5 */
  1852. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikmobs.h" /* stack depth 6 */
  1853. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikcmobs.h" /* stack depth 7 */
  1854. #line 11
  1855. class CCoeControl;
  1856. class MEikCommandObserver
  1857. #line 24
  1858. {
  1859. public:
  1860. virtual void ProcessCommandL(TInt aCommandId)=0;
  1861. #line 44
  1862. __declspec(dllexport) virtual CCoeControl* CreateCustomCommandControlL(TInt aControlType);
  1863. protected:
  1864. __declspec(dllexport) MEikCommandObserver();
  1865. private:
  1866. __declspec(dllexport) virtual void MEikCommandObserver_Reserved1();
  1867. __declspec(dllexport) virtual void MEikCommandObserver_Reserved2();
  1868. private:
  1869. TInt iMEikCommandObserver_Reserved1;
  1870. };
  1871. #line 9 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikmobs.h" /* stack depth 6 */
  1872. class CCoeControl;
  1873. class CEikMenuPane;
  1874. class CEikMenuBar;
  1875. class CEikHotKeyTable;
  1876. class TPoint;
  1877. class MEikMenuObserver : public MEikCommandObserver
  1878. #line 29
  1879. {
  1880. public:
  1881. enum TMenuType
  1882. {
  1883. EMenuPane,
  1884. EMenuBar
  1885. };
  1886. public:
  1887. __declspec(dllexport) virtual void HandleAttemptDimmedSelectionL(TInt aCommandId);
  1888. __declspec(dllexport) virtual TBool CheckHotKeyNotDimmedL(TInt aCommandId);
  1889. __declspec(dllexport) virtual void RestoreMenuL(CCoeControl* aMenuControl,TInt aResourceId,TMenuType aType);
  1890. __declspec(dllexport) virtual void DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane);
  1891. __declspec(dllexport) virtual void DynInitMenuBarL(TInt aResourceId,CEikMenuBar* aMenuBar);
  1892. __declspec(dllexport) virtual void HandleSideBarMenuL(TInt aResourceId,const TPoint& aPos,TInt aModifiers,const CEikHotKeyTable* aTable);
  1893. __declspec(dllexport) virtual void OfferKeyToAppL(const TKeyEvent& aKeyEvent,TEventCode aType);
  1894. #line 56
  1895. virtual void SetEmphasis(CCoeControl* aMenuControl,TBool aEmphasis)=0;
  1896. public:
  1897. __declspec(dllexport) virtual CCoeControl* CreateCustomCommandControlL(TInt aControlType);
  1898. protected:
  1899. __declspec(dllexport) MEikMenuObserver();
  1900. private:
  1901. __declspec(dllexport) virtual void Reserved_1_MenuObserver();
  1902. __declspec(dllexport) virtual void Reserved_2_MenuObserver();
  1903. __declspec(dllexport) virtual void MEikCommandObserver_Reserved1();
  1904. __declspec(dllexport) virtual void MEikCommandObserver_Reserved2();
  1905. private:
  1906. TInt iMEikMenuObserver_Reserved1;
  1907. };
  1908. class MEikAutoMenuObserver : public MEikMenuObserver
  1909. #line 80
  1910. {
  1911. public:
  1912. virtual TKeyResponse OfferHotKeyL(const TKeyEvent& aKeyEvent,TEventCode aType)=0;
  1913. public:
  1914. __declspec(dllexport) void SetEmphasis(CCoeControl* aMenuControl,TBool aEmphasis);
  1915. public:
  1916. __declspec(dllexport) virtual void HandleAttemptDimmedSelectionL(TInt aCommandId);
  1917. __declspec(dllexport) virtual TBool CheckHotKeyNotDimmedL(TInt aCommandId);
  1918. __declspec(dllexport) virtual void RestoreMenuL(CCoeControl* aMenuControl,TInt aResourceId,TMenuType aType);
  1919. __declspec(dllexport) virtual void DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane);
  1920. __declspec(dllexport) virtual void DynInitMenuBarL(TInt aResourceId,CEikMenuBar* aMenuBar);
  1921. __declspec(dllexport) virtual void HandleSideBarMenuL(TInt aResourceId,const TPoint& aPos,TInt aModifiers,const CEikHotKeyTable* aTable);
  1922. __declspec(dllexport) virtual void OfferKeyToAppL(const TKeyEvent& aKeyEvent,TEventCode aType);
  1923. __declspec(dllexport) virtual CCoeControl* CreateCustomCommandControlL(TInt aControlType);
  1924. protected:
  1925. __declspec(dllexport) MEikAutoMenuObserver();
  1926. private:
  1927. __declspec(dllexport) virtual void Reserved_1_MenuObserver();
  1928. __declspec(dllexport) virtual void Reserved_2_MenuObserver();
  1929. __declspec(dllexport) virtual void MEikCommandObserver_Reserved1();
  1930. __declspec(dllexport) virtual void MEikCommandObserver_Reserved2();
  1931. private:
  1932. TInt iMEikAutoMenuObserver_Reserved1;
  1933. };
  1934. #line 11 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikappui.h" /* stack depth 5 */
  1935. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\apadef.h" /* stack depth 6 */
  1936. #line 18
  1937. const TUint KApaCommandLetterOpen='O';
  1938. const TUint KApaCommandLetterCreate='C';
  1939. const TUint KApaCommandLetterRun='R';
  1940. const TUint KApaCommandLetterBackground='B';
  1941. const TUint KApaCommandLetterViewActivate='V';
  1942. const TUint KApaCommandLetterRunWithoutViews='W';
  1943. enum TApaCommand
  1944. {
  1945. EApaCommandOpen,
  1946. EApaCommandCreate,
  1947. EApaCommandRun,
  1948. EApaCommandBackground,
  1949. EApaCommandViewActivate,
  1950. EApaCommandRunWithoutViews
  1951. };
  1952. const TInt KApaMaxAppCaption=0x100;
  1953. #line 82
  1954. typedef TBuf<KApaMaxAppCaption> TApaAppCaption;
  1955. const TInt KApaMaxCommandLine=0x100;
  1956. typedef TBuf<KApaMaxCommandLine> TApaCommandLine;
  1957. const TInt KApaMaxAppFileName=0x10;
  1958. typedef TBuf<KApaMaxAppFileName> TApaAppFileName;
  1959. const TInt KApaMaxAppGroupName=0x10;
  1960. #line 118
  1961. typedef TBuf<KApaMaxAppGroupName> TApaAppGroupName;
  1962. const TInt KAppUidValue8 = 0x1000006c;
  1963. const TUid KUidApp8={KAppUidValue8};
  1964. #line 141
  1965. const TInt KAppUidValue16 = 0x100039CE;
  1966. const TUid KUidApp16={KAppUidValue16};
  1967. const TUid KUidAppDllDoc8={268435565};
  1968. const TUid KUidAppDllDoc16={0x10003A12};
  1969. const TUid KUidPictureTypeDoor8={268435537};
  1970. const TUid KUidPictureTypeDoor16={0x10003A33};
  1971. const TUid KUidSecurityStream8={268435661};
  1972. const TUid KUidSecurityStream16={0x10003A40};
  1973. const TUid KUidAppIdentifierStream8={268435593};
  1974. const TUid KUidAppIdentifierStream16={0x10003A34};
  1975. #line 272
  1976. const TUid KUidFileEmbeddedApplicationInterfaceUid={0x101f8c96};
  1977. #line 12 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikappui.h" /* stack depth 5 */
  1978. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikdef.h" /* stack depth 6 */
  1979. #line 20
  1980. enum TPopupTargetPosType
  1981. {
  1982. EPopupTargetTopLeft,
  1983. EPopupTargetTopRight,
  1984. EPopupTargetBottomLeft,
  1985. EPopupTargetBottomRight
  1986. };
  1987. #line 110
  1988. const static TLitC<sizeof(L"*")/2> KEikDefaultAppBitmapStore={sizeof(L"*")/2-1,L"*"} ;
  1989. const TInt KUidValueEikColorSchemeChangeEvent =0x10006956;
  1990. const TInt KEikCustomColorsArrayValue =0x100057C2;
  1991. const TInt KEikMessageFadeAllWindows =0x100056C2;
  1992. const TInt KEikMessageUnfadeWindows =0x100056C3;
  1993. const TInt KEikMessageColorSchemeChange =KUidValueCoeColorSchemeChangeEvent;
  1994. #line 157
  1995. const TInt KEikMessageZoomChange =KUidValueCoeZoomChangeEvent;
  1996. const TInt KEikMessageFontChange     = KUidValueCoeFontChangeEvent;
  1997. const TInt KEikMessageVirtualCursorStateChange =0x10005D0A;
  1998. const TInt KEikMessageCapsLock =0x100048F9;
  1999. const TInt KEikMessagePrepareForSave =0x100069FD;
  2000. const TInt KEikMessageEmbedLevelChange =0x1000A4AA;
  2001. #line 202
  2002. const TInt KEikHasBecomeCurrentAppUiWhileEmbeddedAppUiDeletes = 0x10207F75;
  2003. const TInt KEikNotifyPreCreateEmbeddedL = 0x10207F67;
  2004. const TInt KEikNotifyPostCreateEmbeddedL = 0x10207F65;
  2005. const TInt KEikPostCoeAppUiConstructL = 0x10207F66;
  2006. const TInt KEikResIdQueryDialog =0;
  2007. const TInt KEikResIdInfoDialog =1;
  2008. #line 14 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikappui.h" /* stack depth 5 */
  2009. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\baerrhan.h" /* stack depth 6 */
  2010. #line 31
  2011. const TInt KUidBaflErrorHandlerValue8=0x10000257;
  2012. const TUid KUidBaflErrorHandler8={KUidBaflErrorHandlerValue8};
  2013. const TInt KUidBaflErrorHandlerValue16=0x10003A13;
  2014. const TUid KUidBaflErrorHandler16={KUidBaflErrorHandlerValue16};
  2015. enum TErrorHandlerResponse
  2016. {
  2017. EErrorNotHandled,
  2018. ENoDisplay,
  2019. EAlertDisplay,
  2020. EInfoDisplay
  2021. };
  2022. class CBaErrorHandler : public CBase
  2023. {
  2024. public:
  2025. virtual TErrorHandlerResponse HandleError(TDes& aErrorText,TDes& aContextText)=0;
  2026. inline static TErrorHandlerResponse CallBack(TInt aErrorNumber,TDes& aErrorText,TDes& aContextText);
  2027. };
  2028. inline TErrorHandlerResponse CBaErrorHandler::CallBack(TInt aErrorNumber,TDes& aErrorText,TDes& aContextText)
  2029. {
  2030. return((CBaErrorHandler*)(aErrorNumber))->HandleError(aErrorText,aContextText);
  2031. }
  2032. #line 15 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikappui.h" /* stack depth 5 */
  2033. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikaufty.h" /* stack depth 6 */
  2034. #line 17
  2035. class CEikHotKeyTable;
  2036. class CEikMenuBar;
  2037. class CEikMenuPane;
  2038. class CEikCommandButton;
  2039. class CEikToolBar;
  2040. class CEikButtonGroupContainer;
  2041. class CEikAppUi;
  2042. class CEikonEnv;
  2043. class CEikStatusPane;
  2044. class MEikAppUiFactory
  2045. : public MObjectProvider
  2046. {
  2047. public:
  2048. virtual void CreateResourceIndependentFurnitureL(CEikAppUi* aAppUi) =0;
  2049. virtual TRect ClientRect() = 0;
  2050. virtual void ReadAppInfoResourceL(TInt aResourceFileOffset,CEikAppUi* aAppUi) = 0;
  2051. virtual void LaunchPopupMenuL(
  2052. TInt aResourceId,
  2053. const TPoint& aTargetPos,
  2054. TPopupTargetPosType aTargetType,
  2055. const CEikHotKeyTable* aHotKeyTable,
  2056. CEikAppUi* aAppUi) = 0;
  2057. virtual void DoLaunchPopupL(TInt aResourceId,const TPoint& aTargetPos, const CEikHotKeyTable* aHotKeyTable,
  2058. TPopupTargetPosType aTargetType,CEikAppUi* aAppUi) = 0;
  2059.     virtual void ClosePopup(CEikAppUi* aAppUi) = 0;
  2060. virtual void StopDisplayingMenuBar() = 0;
  2061. virtual void HandleSideBarMenuL(TInt aResourceId,const TPoint& aPos,
  2062. const CEikHotKeyTable* aHotKeyTable,CEikAppUi* aAppUi) = 0;
  2063. virtual void CreateHotKeyControlL(TInt aResourceId, CEikAppUi* aAppUi) = 0;
  2064. virtual CEikMenuBar* MenuBar() const = 0;
  2065. virtual CEikMenuBar* SwapMenuBar(CEikMenuBar* aMenu) = 0;
  2066. virtual CEikMenuPane* Popup() const = 0;
  2067. virtual CEikButtonGroupContainer* ToolBar() const = 0;
  2068. virtual CEikButtonGroupContainer* SwapButtonGroup(CEikButtonGroupContainer* aNewGroup) = 0;
  2069. virtual CEikToolBar* ToolBand() const = 0;
  2070. virtual CEikToolBar* TitleBand() const = 0;
  2071. virtual CEikStatusPane* StatusPane() const = 0;
  2072. virtual CEikButtonGroupContainer* Cba() const = 0;
  2073. inline CEikToolBar* SwapToolBand(CEikToolBar* aToolBand);
  2074. inline CEikToolBar* SwapTitleBand(CEikToolBar* aTitleBand);
  2075. virtual CEikCommandButton*  CreateStandardTabButtonL() const = 0;
  2076. virtual void CreateEmbeddedL(CEikonEnv& aEikonEnv) = 0;
  2077. virtual void DestroyEmbedded(CEikonEnv& aEikonEnv) = 0;
  2078. virtual void HandleResourceChangeL(TInt aType) = 0;
  2079. protected:
  2080. enum TToolBarType
  2081. {
  2082. EBand,
  2083. ETitle
  2084. };
  2085. private:
  2086. virtual CEikToolBar* SwapToolBar(CEikToolBar* aToolBar,TToolBarType aType) = 0;
  2087. };
  2088. inline CEikToolBar* MEikAppUiFactory::SwapToolBand(CEikToolBar* aToolBand)
  2089. {return SwapToolBar(aToolBand,EBand);}
  2090. inline CEikToolBar* MEikAppUiFactory::SwapTitleBand(CEikToolBar* aTitleBand)
  2091. {return SwapToolBar(aTitleBand,ETitle);}
  2092. #line 16 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikappui.h" /* stack depth 5 */
  2093. class CEikDocument;
  2094. class CEikApplication;
  2095. class CEikAppUiExtra;
  2096. class MApaEmbeddedDocObserver;
  2097. struct SExtendedError;
  2098. class CApaCommandLine;
  2099. class CEikAppUi : public CCoeAppUi, public MEikMenuObserver, public MCoeMessageObserver
  2100. , public MObjectProvider
  2101. #line 56
  2102. {
  2103. public:
  2104. __declspec(dllexport) ~CEikAppUi();
  2105. __declspec(dllexport) CEikAppUi();
  2106. public:
  2107. __declspec(dllexport) virtual void ConstructL();
  2108. __declspec(dllexport) virtual void HandleModelChangeL();
  2109. __declspec(dllexport) void LaunchPopupMenuL(TInt aResourceId,const TPoint& aTargetPos,TPopupTargetPosType aTargetType,const CEikHotKeyTable* aHotKeyTable=0 );
  2110. inline CEikAppUi* ContainerAppUi() const;
  2111. __declspec(dllexport) void SetDocument(CEikDocument* aDocument);
  2112. __declspec(dllexport) void SetEmbeddedDocInfo(MApaEmbeddedDocObserver* aObserver,TBool aReadOnly);
  2113. __declspec(dllexport) virtual TBool ProcessCommandParametersL(TApaCommand aCommand,TFileName& aDocumentName,const TDesC8& aTail);
  2114. __declspec(dllexport) virtual TBool ProcessCommandParametersL(CApaCommandLine& aCommandLine);
  2115. __declspec(dllexport) CEikDocument* Document() const;
  2116. __declspec(dllexport) CEikApplication* Application() const;
  2117. __declspec(dllexport) TRect ClientRect() const;
  2118. __declspec(dllexport) virtual TRect ApplicationRect() const;
  2119. __declspec(dllexport) virtual void StopDisplayingMenuBar();
  2120. __declspec(dllexport) TBool FadeWhenInBackground();
  2121. __declspec(dllexport) virtual void SetFadedL(TBool aFaded);
  2122. inline void SetFaded(TBool aFaded);
  2123. public:
  2124. virtual __declspec(dllexport) void ReportResourceChangedToAppL(TInt aType);
  2125. __declspec(dllexport) virtual void HandleCommandL(TInt aCommand);
  2126. __declspec(dllexport) virtual void ProcessMessageL(TUid aUid,const TDesC8& aParams);
  2127. __declspec(dllexport) virtual void OpenFileL(const TDesC& aFileName);
  2128. __declspec(dllexport) virtual void CreateFileL(const TDesC& aFileName);
  2129. __declspec(dllexport) virtual TErrorHandlerResponse HandleError(TInt aError,const SExtendedError& aExtErr,TDes& aErrorText,TDes& aContextText);
  2130. __declspec(dllexport) virtual void HandleResourceChangeL(TInt aType);
  2131. public:
  2132. __declspec(dllexport) void PrepareToExit();
  2133. protected:
  2134. __declspec(dllexport) void BaseConstructL(TInt aAppUiFlags=0);
  2135. __declspec(dllexport) void ReadAppInfoResourceL(TInt aResourceFileOffset=0);
  2136. __declspec(dllexport) void CreateHotKeyControlL(TInt aResourceId);
  2137. __declspec(dllexport) void SetDocChanged();
  2138. __declspec(dllexport) void SaveAnyChangesL();
  2139. __declspec(dllexport) virtual void Exit();
  2140. __declspec(dllexport) void SaveL();
  2141. __declspec(dllexport) void ClosePopup();
  2142. __declspec(dllexport) TBool ProcessCommandParametersL(TApaCommand aCommand,TFileName& aDocumentName);
  2143. protected:
  2144. __declspec(dllexport) void HandleSideBarMenuL(TInt aResourceId,const TPoint& aPos,TInt aModifiers,const CEikHotKeyTable* aTable);
  2145. protected:
  2146. __declspec(dllexport) void HandleApplicationSpecificEventL(TInt aType,const TWsEvent& aEvent);
  2147. __declspec(dllexport) void HandleForegroundEventL(TBool aForeground);
  2148. __declspec(dllexport) void HandleWsEventL(const TWsEvent& aEvent, CCoeControl* aDestination);
  2149. __declspec(dllexport) void HandleSystemEventL(const TWsEvent& aEvent);
  2150. __declspec(dllexport) void HandleScreenDeviceChangedL();
  2151. protected:
  2152. __declspec(dllexport) void ProcessCommandL(TInt aCommand);
  2153. private:
  2154. __declspec(dllexport) void SetEmphasis(CCoeControl* aMenuWindow,TBool aEmphasis);
  2155. protected:
  2156. __declspec(dllexport) MCoeMessageObserver::TMessageResponse HandleMessageL(TUint32 aClientHandleOfTargetWindowGroup, TUid aMessageUid, const TDesC8& aMessageParameters);
  2157. protected:
  2158. __declspec(dllexport) virtual TTypeUid::Ptr MopSupplyObject(TTypeUid aId);
  2159. __declspec(dllexport) virtual MObjectProvider* MopNext();
  2160. private:
  2161. private:
  2162. __declspec(dllexport) virtual TBool ValidFileType(TUid aFileUid) const;
  2163. __declspec(dllexport) virtual void Reserved_3();
  2164. __declspec(dllexport) virtual void Reserved_4();
  2165. public:
  2166. __declspec(dllexport) TLanguage ApplicationLanguageL() const;
  2167. public:
  2168. enum
  2169. {
  2170. EStandardApp = 0x00,
  2171. ENoAppResourceFile = 0x01,
  2172. ENonStandardResourceFile= 0x02,
  2173. ENoScreenFurniture = 0x04,
  2174. ELastReservedEikAppUiFlag = 0x8000
  2175. };
  2176. public:
  2177. __declspec(dllexport) void ReportResourceChangedToAppStackL(CEikAppUi* aTopApp, TInt aEventId);
  2178. private:
  2179. void CreateResourceIndependentFurnitureL();
  2180. TBool ValidFileExistsL(const TDesC& aFileName);
  2181. protected:
  2182. CEikDocument* iDocument;
  2183. CEikAppUi* iContainerAppUi;
  2184. MApaEmbeddedDocObserver* iDoorObserver;
  2185. TBool iEmbeddedAndReadOnly;
  2186. TInt iFlags;
  2187. private:
  2188. enum
  2189. {
  2190. EEmbedded = 0x01
  2191. };
  2192. private:
  2193. CEikAppUiExtra* iAppUiExtra;
  2194. };
  2195. inline CEikAppUi* CEikAppUi::ContainerAppUi() const
  2196. { return iContainerAppUi; }
  2197. #line 10 "C:\Symbian\9.1\S60_3rd\epoc32\include\eiksrvs.h" /* stack depth 4 */
  2198. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 5 */
  2199. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\apaflrec.h" /* stack depth 6 */
  2200. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\apaid.h" /* stack depth 7 */
  2201. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\apmstd.h" /* stack depth 8 */
  2202. #line 17
  2203. const TInt KMaxDataTypeLength=256;
  2204. class RReadStream;
  2205. class RWriteStream;
  2206. #line 31
  2207. typedef TInt32 TDataTypePriority;
  2208. const TInt32 KDataTypePriorityUserSpecified=KMaxTInt16;
  2209. #line 46
  2210. const TInt32 KDataTypePrioritySystem = 0xFFF9;
  2211. #line 55
  2212. const TInt32 KDataTypeUnTrustedPriorityThreshold=KMaxTInt16;
  2213. #line 64
  2214. const TInt32 KDataTypePriorityHigh=10000;
  2215. #line 73
  2216. const TInt32 KDataTypePriorityNormal=0;
  2217. #line 82
  2218. const TInt32 KDataTypePriorityLow=-10000;
  2219. #line 91
  2220. const TInt32 KDataTypePriorityLastResort=-20000;
  2221. const TInt32 KDataTypePriorityNotSupported=KMinTInt16;
  2222. class TDataType
  2223. #line 110
  2224. {
  2225. public:
  2226. __declspec(dllexport) TDataType();
  2227. __declspec(dllexport) TDataType(const TDataType& aDataType);
  2228. __declspec(dllexport) TDataType(const TDesC8& aDataType);
  2229. __declspec(dllexport) TDataType(TUid aUid);
  2230. __declspec(dllexport) TInt operator==(const TDataType& aDataType) const;
  2231. __declspec(dllexport) TInt operator!=(const TDataType& aDataType) const;
  2232. __declspec(dllexport) TBool IsNative() const;
  2233. __declspec(dllexport) TBuf<KMaxDataTypeLength> Des() const;
  2234. __declspec(dllexport) TPtrC8 Des8() const;
  2235. __declspec(dllexport) TUid Uid() const;
  2236. __declspec(dllexport) void InternalizeL(RReadStream& aReadStream);
  2237. __declspec(dllexport) void ExternalizeL(RWriteStream& aWriteStream) const;
  2238. private:
  2239. void ParseDes();
  2240. private:
  2241. TBuf8<KMaxDataTypeLength> iDataType;
  2242. TUid iUid;
  2243. };
  2244. #line 142
  2245. const static TLitC8<sizeof( "X-Epoc-Url/")> KEpocUrlDataTypeHeader={sizeof( "X-Epoc-Url/")-1, "X-Epoc-Url/"} ;
  2246. class TDataTypeWithPriority
  2247. #line 159
  2248. {
  2249. public:
  2250. __declspec(dllexport) TDataTypeWithPriority();
  2251. __declspec(dllexport) TDataTypeWithPriority(const TDataType& aDataType, TDataTypePriority aPriority);
  2252. __declspec(dllexport) void InternalizeL(RReadStream& aReadStream);
  2253. __declspec(dllexport) void ExternalizeL(RWriteStream& aWriteStream) const;
  2254. public:
  2255. TDataType iDataType;
  2256. TDataTypePriority iPriority;
  2257. };
  2258. #line 16 "C:\Symbian\9.1\S60_3rd\epoc32\include\apaid.h" /* stack depth 7 */
  2259. class TApaAppIdentifier;
  2260. class TApaAppEntry;
  2261. class CApaAppFinder;
  2262. class RReadStream;
  2263. class RWriteStream;
  2264. class RFs;
  2265. class TApaAppIdentifier
  2266. #line 49
  2267. {
  2268. public:
  2269. __declspec(dllexport) TApaAppIdentifier();
  2270. __declspec(dllexport) TApaAppIdentifier(TUid aAppUidType,const TFileName& aDllName);
  2271. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream)const;
  2272. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  2273. public:
  2274. TUid iAppUid;
  2275. TFileName iFullName;
  2276. private:
  2277. TInt iTApaAppIdentifier_Reserved1;
  2278. };
  2279. class TApaAppEntry
  2280. #line 78
  2281. {
  2282. public:
  2283. __declspec(dllexport) TApaAppEntry();
  2284. __declspec(dllexport) TApaAppEntry(const TUidType& aAppUidType,const TFileName& aDllName);
  2285. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream)const;
  2286. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  2287. public:
  2288. TUidType iUidType;
  2289. TFileName iFullName;
  2290. private:
  2291. TInt iTApaAppEntry_Reserved1;
  2292. };
  2293. class TApaAppInfo
  2294. #line 109
  2295. {
  2296. public:
  2297. __declspec(dllexport) TApaAppInfo();
  2298. __declspec(dllexport) TApaAppInfo(TUid aAppUid,const TFileName& aDllName,const TApaAppCaption& aCaption);
  2299. __declspec(dllexport) TApaAppInfo(TUid aAppUid,const TFileName& aDllName,const TApaAppCaption& aCaption,const TApaAppCaption& aShortCaption);
  2300. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream)const;
  2301. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  2302. public:
  2303. TUid iUid;
  2304. TFileName iFullName;
  2305. TApaAppCaption iCaption;
  2306. TApaAppCaption iShortCaption;
  2307. private:
  2308. TInt iTApaAppInfo_Reserved1;
  2309. };
  2310. class TApaAppViewInfo
  2311. #line 146
  2312. {
  2313. public:
  2314. __declspec(dllexport) TApaAppViewInfo();
  2315. __declspec(dllexport) TApaAppViewInfo(TUid aViewUid,const TApaAppCaption& aViewCaption,TInt aScreenMode);
  2316. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream)const;
  2317. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  2318. public:
  2319. TUid iUid;
  2320. TApaAppCaption iViewCaption;
  2321. TInt iScreenMode;
  2322. private:
  2323. TInt iTApaAppViewInfo_Reserved1;
  2324. };
  2325. #line 171
  2326. typedef CArrayFixFlat<TApaAppViewInfo> CApaAppViewArray;
  2327. class TApaAppCapability
  2328. {
  2329. public:
  2330. __declspec(dllexport) static void CopyCapability(TDes8& aDest,const TDesC8& aSource);
  2331. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  2332. __declspec(dllexport) void Internalize7_0L(RReadStream& aStream);
  2333. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream) const;
  2334. private:
  2335. __declspec(dllexport) void Externalize7_0L(RWriteStream& aStream) const;
  2336. void DoInternalizeL(RReadStream& aStream, TBool& aLaunchInBackground, TApaAppGroupName& aGroupName);
  2337. public:
  2338. enum TEmbeddability {
  2339. ENotEmbeddable=0,
  2340. EEmbeddable=1,
  2341. EEmbeddableOnly=2,
  2342. EEmbeddableUiOrStandAlone=5,
  2343. EEmbeddableUiNotStandAlone=6 };
  2344. enum TCapabilityAttribute
  2345. {
  2346. EBuiltAsDll = 0x00000001,
  2347. EControlPanelItem = 0x00000002,
  2348. ENonNative = 0x00000004
  2349. };
  2350. public:
  2351. TEmbeddability iEmbeddability;
  2352. TBool iSupportsNewFile;
  2353. TBool iAppIsHidden;
  2354. TBool iLaunchInBackground;
  2355. TApaAppGroupName iGroupName;
  2356. TUint iAttributes;
  2357. private:
  2358. enum { EVersion=4 };
  2359. private:
  2360. TInt iTApaAppCapability_Reserved1;
  2361. };
  2362. typedef TPckgBuf<TApaAppCapability> TApaAppCapabilityBuf;
  2363. class TApaEmbeddabilityFilter
  2364. {
  2365. public:
  2366. __declspec(dllexport) TApaEmbeddabilityFilter();
  2367. __declspec(dllexport) void AddEmbeddability(TApaAppCapability::TEmbeddability aEmbeddability);
  2368. __declspec(dllexport) TBool MatchesEmbeddability(TApaAppCapability::TEmbeddability aEmbeddability) const;
  2369. private:
  2370. TUint iEmbeddabilityFlags;
  2371. private:
  2372. TInt iTApaEmbeddabilityFilter_Reserved1;
  2373. };
  2374. class CApaAppFinder : public CBase
  2375. {
  2376. public:
  2377. virtual void FindAllAppsL()=0;
  2378. virtual TBool NextL(TApaAppEntry& aEntry)=0;
  2379. virtual TFileName FindAppL(const TDesC& aFileName,TUid aFileUid)=0;
  2380. #line 282
  2381. virtual TFileName DefaultAppInfoFileName()const=0;
  2382. protected:
  2383. __declspec(dllexport) CApaAppFinder();
  2384. private:
  2385. __declspec(dllexport) virtual void CApaAppFinder_Reserved1();
  2386. __declspec(dllexport) virtual void CApaAppFinder_Reserved2();
  2387. };
  2388. const TUid KOpenServiceUid = { 0x10208DCA };
  2389. #line 310
  2390. class TApaAppServiceInfo
  2391. {
  2392. public:
  2393. TApaAppServiceInfo();
  2394. TApaAppServiceInfo(TUid aUid, CArrayFixFlat<TDataTypeWithPriority> * aDataTypes,
  2395. HBufC8* aOpaqueData);
  2396. void ExternalizeL(RWriteStream& aStream) const;
  2397. void InternalizeL(RReadStream& aStream);
  2398. void Release();
  2399. CArrayFixFlat<TDataTypeWithPriority>& DataTypes();
  2400. __declspec(dllexport) TUid Uid() const;
  2401. __declspec(dllexport) const CArrayFixFlat<TDataTypeWithPriority>& DataTypes() const;
  2402. __declspec(dllexport) const TDesC8& OpaqueData() const;
  2403. private:
  2404. TUid iUid;
  2405. CArrayFixFlat<TDataTypeWithPriority> * iDataTypes;
  2406. HBufC8* iOpaqueData;
  2407. TInt iTApaAppServiceInfo;
  2408. };
  2409. #line 338
  2410. class CApaAppServiceInfoArray : public CBase
  2411. {
  2412. protected:
  2413. CApaAppServiceInfoArray();
  2414. public:
  2415. virtual TArray<TApaAppServiceInfo> Array()=0;
  2416. private:
  2417. __declspec(dllexport) virtual void CApaAppServiceInfoArray_Reserved1();
  2418. __declspec(dllexport) virtual void CApaAppServiceInfoArray_Reserved2();
  2419. private:
  2420. TInt iCApaAppServiceInfoArray_Reserved1;
  2421. };
  2422. #line 13 "C:\Symbian\9.1\S60_3rd\epoc32\include\apaflrec.h" /* stack depth 6 */
  2423. class MApaAppStarter;
  2424. class CApaAppLocator;
  2425. class CApaFileRecognizer;
  2426. class CApaFileRecognizerType;
  2427. class CFileRecognizerExtension;
  2428. class TApaAppEntry;
  2429. class CApaCommandLine;
  2430. class RFs;
  2431. #line 44
  2432. const TInt KFileRecognizerUidValue8=0x1000013E;
  2433. const TUid KUidFileRecognizer8={KFileRecognizerUidValue8};
  2434. const TUid KUidFileRecognizer16={0x10003A37};
  2435. class CApaAppLocator : public CBase
  2436. {
  2437. public:
  2438. virtual TInt GetAppEntryByUid(TApaAppEntry& aAppEntry,TUid aAppUid)=0;
  2439. virtual TInt GetAppCapabilityByUid(TDes8& aCapabilityBuf,TUid aAppUid)=0;
  2440. };
  2441. class CApaFileRecognizer : public CBase
  2442. {
  2443. public:
  2444. __declspec(dllexport) CApaFileRecognizerType* RecognizeFileL(const TDesC& aFullFileName,const TUidType* aUidType=0 );
  2445. __declspec(dllexport) CApaAppLocator* AppLocator() const;
  2446. __declspec(dllexport) ~CApaFileRecognizer();
  2447. protected:
  2448. __declspec(dllexport) CApaFileRecognizer(RFs& aFs);
  2449. __declspec(dllexport) void AddFileRecognizerType(CApaFileRecognizerType* aFileRecognizerType);
  2450. __declspec(dllexport) TInt RemoveFileRecognizerType(const CApaFileRecognizerType* aFileRecognizerType);
  2451. __declspec(dllexport) void SetAppLocator(CApaAppLocator* aAppLocator);
  2452. static inline void SetAppStarter(CApaFileRecognizerType* aRecognizer,MApaAppStarter* aAppStarter);
  2453. __declspec(dllexport) void DestroyRecognizerList();
  2454. protected:
  2455. RFs& iFs;
  2456. CApaAppLocator* iAppLocator;
  2457. private:
  2458. CApaFileRecognizerType *iFileRecognizerList;
  2459. };
  2460. class MApaAppStarter
  2461. {
  2462. public:
  2463. virtual TThreadId StartAppL(const CApaCommandLine& aCommandLine)=0;
  2464. protected:
  2465. __declspec(dllexport) MApaAppStarter();
  2466. private:
  2467. __declspec(dllexport) virtual void MApaAppStarter_Reserved1();
  2468. __declspec(dllexport) virtual void MApaAppStarter_Reserved2();
  2469. private:
  2470. TInt iMApaAppStarter_Reserved1;
  2471. };
  2472. class CApaFileRecognizerType : public CBase
  2473. {
  2474. public:
  2475. enum TRecognizedType {EProgram,EDoc,EOtherFile,ENotRecognized};
  2476. public:
  2477. virtual TThreadId RunL(TApaCommand aCommand,const TDesC* aDocFileName=0 ,const TDesC8* aTailEnd=0 ) const=0;
  2478. inline TUid AppUid()const;
  2479. inline TUid TypeUid()const;
  2480. inline TRecognizedType Type()const;
  2481. __declspec(dllexport) void Capability(TDes8& aCapabilityBuf)const;
  2482. __declspec(dllexport) void Lock();
  2483. __declspec(dllexport) void Unlock();
  2484. protected:
  2485. __declspec(dllexport) CApaFileRecognizerType();
  2486. __declspec(dllexport) ~CApaFileRecognizerType();
  2487. __declspec(dllexport) TThreadId AppRunL(const CApaCommandLine& aCommandLine) const;
  2488. private:
  2489. inline void SetAppStarter(MApaAppStarter* aAppStarter);
  2490. virtual TRecognizedType DoRecognizeFileL(RFs& aFs,TUidType aUidType)=0;
  2491. TRecognizedType RecognizeFileL(RFs& aFs,const TDesC& aFullFileName,TUidType aUidType);
  2492. TBool Locked()const;
  2493. __declspec(dllexport) virtual void Reserved_1();
  2494. public:
  2495. __declspec(dllexport) static CApaFileRecognizerType* CreateFileRecognizerL(TUid aImplUid);
  2496. protected:
  2497. CApaFileRecognizer* iFileRecognizer;
  2498. MApaAppStarter* iAppStarter;
  2499. HBufC* iFullFileName;
  2500. TUid iFileType;
  2501. TUid iAppUid;
  2502. TRecognizedType iRecognizedType;
  2503. TApaAppCapabilityBuf* iCapabilityBuf;
  2504. private:
  2505. CApaFileRecognizerType* iNext;
  2506. TInt iLock;
  2507. CFileRecognizerExtension* iFileRecognizerExtn;
  2508. private:
  2509. friend class CApaFileRecognizer;
  2510. };
  2511. inline void CApaFileRecognizer::SetAppStarter(CApaFileRecognizerType* aRecognizer,MApaAppStarter* aAppStarter)
  2512. { aRecognizer->SetAppStarter(aAppStarter); }
  2513. inline void CApaFileRecognizerType::SetAppStarter(MApaAppStarter* aAppStarter)
  2514. { iAppStarter = aAppStarter; }
  2515. inline TUid CApaFileRecognizerType::AppUid() const
  2516. { return iAppUid; }
  2517. inline TUid CApaFileRecognizerType::TypeUid() const
  2518. { return iFileType; }
  2519. inline CApaFileRecognizerType::TRecognizedType CApaFileRecognizerType::Type()const
  2520. { return iRecognizedType; }
  2521. #line 14 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 5 */
  2522. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\apacmdln.h" /* stack depth 6 */
  2523. #line 26
  2524. class CApaCommandLine : public CBase
  2525. #line 43
  2526. {
  2527. public:
  2528. __declspec(dllexport) static CApaCommandLine* NewL();
  2529. __declspec(dllexport) static CApaCommandLine* NewLC();
  2530. __declspec(dllexport) ~CApaCommandLine();
  2531. #line 66
  2532. __declspec(dllexport) void SetProcessEnvironmentL(RProcess& aProcess) const;
  2533. __declspec(dllexport) static TInt GetCommandLineFromProcessEnvironment(CApaCommandLine*& aCommandLine);
  2534. __declspec(dllexport) void GetIpcArgsLC(TIpcArgs& aIpcArgs) const;
  2535. __declspec(dllexport) void ConstructCmdLineFromMessageL(const RMessage2& aMessage);
  2536. __declspec(dllexport) void SetDocumentNameL(const TDesC& aDocName);
  2537. __declspec(dllexport) TPtrC DocumentName() const;
  2538. __declspec(dllexport) void SetExecutableNameL(const TDesC& aAppName);
  2539. __declspec(dllexport) TPtrC ExecutableName() const;
  2540. __declspec(dllexport) void SetOpaqueDataL(const TDesC8& aOpaqueData);
  2541. __declspec(dllexport) TPtrC8 OpaqueData() const;
  2542. __declspec(dllexport) void SetTailEndL(const TDesC8& aTailEnd);
  2543. __declspec(dllexport) TPtrC8 TailEnd() const;
  2544. __declspec(dllexport) void SetCommandL(TApaCommand aCommand);
  2545. __declspec(dllexport) TApaCommand Command() const;
  2546. __declspec(dllexport) void SetParentProcessId(TProcessId aProcessId);
  2547. __declspec(dllexport) TProcessId ParentProcessId() const;
  2548. __declspec(dllexport) void SetFileByHandleL(const RFile& aFile);
  2549. __declspec(dllexport) void GetFileByHandleL(RFile& aFile) const;
  2550. public:
  2551. __declspec(dllexport) void SetServerNotRequiredL();
  2552. __declspec(dllexport) void SetServerRequiredL(TUint aServerDifferentiator);
  2553. __declspec(dllexport) TUint ServerRequired() const;
  2554. __declspec(dllexport) void SetDefaultScreenL(TInt aDefaultScreenNumber);
  2555. __declspec(dllexport) TInt DefaultScreen() const;
  2556. __declspec(dllexport) TBool IsDefaultScreenSet() const;
  2557. __declspec(dllexport) void SetParentWindowGroupID(TInt aParentWindowGroupID);
  2558. __declspec(dllexport) TInt ParentWindowGroupID() const;
  2559. __declspec(dllexport) void SetDebugMemFailL(TInt aDebugMemFail);
  2560. __declspec(dllexport) TInt DebugMemFail() const;
  2561. __declspec(dllexport) void SetAppStartupInstrumentationEventIdBaseL(TInt aEventIdBase);
  2562. __declspec(dllexport) TInt AppStartupInstrumentationEventIdBase() const;
  2563. __declspec(dllexport) static TInt EnvironmentSlotForPublicUse(TInt aIndex);
  2564. private:
  2565. struct SOption
  2566. {
  2567. const TDesC* iToken;
  2568. TInt* iResult;
  2569. TRadix iRadix;
  2570. HBufC8* iHBufC8Result;
  2571. };
  2572. private:
  2573. CApaCommandLine();
  2574. void SetServerDifferentiatorL(TUint aServerDifferentiator);
  2575. void ExternalizeL(RWriteStream& aStream) const;
  2576. void InternalizeL(RReadStream& aStream);
  2577. HBufC8* StreamableAttributesLC() const;
  2578. void GetCommandLineFromProcessEnvironmentL();
  2579. TInt Parse(const TDesC& aCmdLine);
  2580. TPtrC StripQuotes(const TDesC& aDes) const;
  2581. #line 153
  2582. private:
  2583. enum
  2584. {
  2585. EEnvironmentSlotUnused=0,
  2586. EEnvironmentSlotMain=1,
  2587. EEnvironmentSlotFsSession=2,
  2588. EEnvironmentSlotFile=3,
  2589. EFirstEnvironmentSlotForPublicUse=8,
  2590. ENumberOfEnvironmentSlotsForPublicUse=4
  2591. };
  2592. enum
  2593. {
  2594. EIpcSlotMain=0,
  2595. EIpcSlotFsSession=1,
  2596. EIpcSlotFile=2
  2597. };
  2598. public:
  2599. enum
  2600. {
  2601. EIpcFirstFreeSlot=3
  2602. };
  2603. private:
  2604. HBufC* iDocumentName;
  2605. HBufC* iExecutableName;
  2606. HBufC8* iOpaqueData;
  2607. HBufC8* iTailEnd;
  2608. TApaCommand iCommand;
  2609. TUint iServerDifferentiator;
  2610. TInt iDefaultScreenNumber;
  2611. TInt iParentWindowGroupID;
  2612. TInt iDebugMemFail;
  2613. TInt iAppStartupInstrumentationEventIdBase;
  2614. RFile iFile;
  2615. TProcessId iParentProcessId;
  2616. };
  2617. #line 15 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 5 */
  2618. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\gulcolor.h" /* stack depth 6 */
  2619. #line 33
  2620. enum TLogicalColor
  2621. {
  2622. EColorWindowBackground,
  2623. EColorWindowText,
  2624. EColorControlBackground,
  2625. EColorControlText,
  2626. EColorControlSurroundBackground,
  2627. EColorControlSurroundText,
  2628. EColorControlHighlightBackground,
  2629. EColorControlHighlightText,
  2630. EColorControlDimmedBackground,
  2631. EColorControlDimmedText,
  2632. EColorControlDimmedHighlightBackground,
  2633. EColorControlDimmedHighlightText,
  2634. EColorDialogBackground,
  2635. EColorDialogText,
  2636. EColorDialogTitle,
  2637. EColorDialogTitlePressed,
  2638. EColorDialogTitleText,
  2639. EColorDialogTitleTextPressed,
  2640. EColorMenubarBackground,
  2641. EColorMenubarText,
  2642. EColorMenubarTitleBackground,
  2643. EColorMenubarTitleText,
  2644. EColorMenuPaneBackground,
  2645. EColorMenuPaneText,
  2646. EColorMenuPaneHighlight,
  2647. EColorMenuPaneTextHighlight,
  2648. EColorMenuPaneDimmedHighlight,
  2649. EColorMenuPaneDimmedText,
  2650. EColorMenuPaneDimmedTextHighlight,
  2651. EColorButtonFaceClear,
  2652. EColorButtonFaceSet,
  2653. EColorButtonFaceSetPressed,
  2654. EColorButtonFaceClearPressed,
  2655. EColorButtonText,
  2656. EColorButtonTextPressed,
  2657. EColorButtonTextDimmed,
  2658. EColorMsgWinForeground,
  2659. EColorMsgWinBackground,
  2660. EColorScrollBarBorder,
  2661. EColorScrollBarShaft,
  2662. EColorScrollBarShaftDimmed,
  2663. EColorScrollBarShaftPressed,
  2664. EColorScrollBarNoShaftOrThumb,
  2665. EColorScrollButtonIcon,
  2666. EColorScrollButtonIconPressed,
  2667. EColorScrollButtonIconDimmed,
  2668. EColorScrollButtonThumbBackground,
  2669. EColorScrollButtonThumbBackgroundPressed,
  2670. EColorScrollThumbDimmed,
  2671. EColorScrollThumbEdge,
  2672. EColorToolbarBackground,
  2673. EColorToolbarText,
  2674. EColorStatusPaneBackground,
  2675. EColorStatusPaneText,
  2676. EColorLabelText,
  2677. EColorLabelTextEmphasis,
  2678. EColorLabelDimmedText,
  2679. EColorLabelHighlightPartialEmphasis,
  2680. EColorLabelHighlightFullEmphasis,
  2681. EColorNumberOfLogicalColors
  2682. };
  2683. class RReadStream;
  2684. class RWriteStream;
  2685. class CColorArray;
  2686. class CColorList : public CBase
  2687. #line 184
  2688. {
  2689. public:
  2690. __declspec(dllexport) static CColorList* NewL(CArrayFix<TRgb> * aColors);
  2691. __declspec(dllexport) ~CColorList();
  2692. __declspec(dllexport) TRgb Color(TLogicalColor aColor) const;
  2693. __declspec(dllexport) TInt Count() const;
  2694. __declspec(dllexport) TRgb Color(TUid aApp,TInt aColor) const;
  2695. __declspec(dllexport) CColorArray* ColorArray(TUid aApp) const;
  2696. __declspec(dllexport) TBool ContainsColorArray(TUid aApp) const;
  2697. __declspec(dllexport) void SetColor(TLogicalColor aLogicalColor,TRgb aColor);
  2698. __declspec(dllexport) void AddColorArrayL(TUid aApp,CColorArray* aArray);
  2699. __declspec(dllexport) void DeleteColorArray(TUid aApp);
  2700. public:
  2701. __declspec(dllexport) static CColorList* NewLC();
  2702. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  2703. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream) const;
  2704. __declspec(dllexport) void MergeL(const CColorList& aList);
  2705. private:
  2706. CColorList(CArrayFix<TRgb> * aColors);
  2707. TInt Find(TUid aApp) const;
  2708. private:
  2709. class TAppColorList
  2710. {
  2711. public:
  2712. inline TAppColorList(TUid aApp,CColorArray* aColorArray);
  2713. public:
  2714. TUid iApp;
  2715. CColorArray* iColorArray;
  2716. };
  2717. private:
  2718. CArrayFix<TRgb> * iEikColors;
  2719. CArrayFix<TAppColorList> * iAppColors;
  2720. };
  2721. class CColorArray : public CBase
  2722. {
  2723. public:
  2724. __declspec(dllexport) static CColorArray* NewL();
  2725. __declspec(dllexport) static CColorArray* NewLC();
  2726. __declspec(dllexport) ~CColorArray();
  2727. __declspec(dllexport) TRgb Color(TInt aLogicalColor) const;
  2728. __declspec(dllexport) void SetColor(TInt aLogicalColor,TRgb aColor);
  2729. __declspec(dllexport) TBool Contains(TInt aLogicalColor) const;
  2730. __declspec(dllexport) TInt Count() const;
  2731. __declspec(dllexport) void Reset();
  2732. __declspec(dllexport) void AddL(TInt aLogicalColor,TRgb aColor);
  2733. __declspec(dllexport) void Remove(TInt aLogicalColor);
  2734. public:
  2735. static CColorArray* NewLC(const CColorArray& aArray);
  2736. public:
  2737. void InternalizeL(RReadStream& aStream);
  2738. void ExternalizeL(RWriteStream& aStream) const;
  2739. private:
  2740. CColorArray();
  2741. void ConstructL();
  2742. TInt Find(TInt aLogicalColor) const;
  2743. private:
  2744. class TColor
  2745. {
  2746. public:
  2747. inline TColor();
  2748. inline TColor(TRgb aColor,TInt aLogicalColor);
  2749. public:
  2750. void InternalizeL(RReadStream& aStream);
  2751. void ExternalizeL(RWriteStream& aStream) const;
  2752. public:
  2753. TRgb iColor;
  2754. TInt iLogicalColor;
  2755. };
  2756. CArrayFixFlat<TColor> iColors;
  2757. };
  2758. #line 18 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 5 */
  2759. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikdgfty.h" /* stack depth 6 */
  2760. #line 13
  2761. class MEikFindAndReplaceDlgObserver;
  2762. class CCoeControl;
  2763. class CEikEmbeddableAppList;
  2764. class CGraphicsDevice;
  2765. class CApaDoor;
  2766. class CApaDocument;
  2767. class TCharFormat;
  2768. class TCharFormatMask;
  2769. class TRgb;
  2770. class CEikGlobalTextEditor;
  2771. struct SEdwinFindModel;
  2772. class CParaFormat;
  2773. class TParaFormatMask;
  2774. class CPrintSetup;
  2775. class MEikCDlgDialogFactory
  2776. {
  2777. public:
  2778. virtual TBool RunCharMapDlgLD(CCoeControl* aControl) = 0;
  2779. virtual TBool RunFontDlgLD( TCharFormat& aFormat,
  2780. TCharFormatMask& aAttribChangedMask,
  2781. TCharFormatMask& aUndeterminedMask,
  2782. TDesC& aTextSelection,
  2783. TInt aFonts,
  2784. CGraphicsDevice* aGraphicsDevice,
  2785. TInt aFontControlFlags,
  2786. const TRgb aBackGroundColor) = 0;
  2787. virtual TBool RunInsertObjectDlgLD( CEikEmbeddableAppList* aList,
  2788. TInt& aChoice) = 0;
  2789. virtual TBool RunObjectInfoDlgLD(const TDesC& aCaption) = 0;
  2790. virtual TBool RunFormatObjectDlgLD( CApaDoor& aDoor,
  2791. CApaDocument& aDoc,
  2792. const TSize& aDefaultIconSize) = 0;
  2793. virtual TBool RunEdwinFindDlgLD(SEdwinFindModel* aModel,
  2794. CDesCArray* aFindList) = 0;
  2795. virtual TBool RunEdwinReplaceDlgLD( SEdwinFindModel* aModel,
  2796. CDesCArray* aFindList,
  2797. CDesCArray* aReplaceList) = 0;
  2798. virtual void RunEdwinFindAndReplaceDlgLD(MEikFindAndReplaceDlgObserver& aObserver,
  2799. SEdwinFindModel& aModel, TBool aFindOnly, TRect aEdwinRect)=0;
  2800. virtual TBool RunEdwinReplaceOptionDlgLD( CEikGlobalTextEditor* aEdwin,
  2801. SEdwinFindModel* aModel) = 0;
  2802. virtual TBool RunAlignDlgLD( CParaFormat* aFormat,
  2803. TParaFormatMask& aAttribChangedMask,
  2804. TParaFormatMask& aUndeterminedMask) = 0;
  2805. virtual TBool RunBorderDlgLD( CParaFormat* aFormat,
  2806. TParaFormatMask& aAttribChangedMask,
  2807. TParaFormatMask& aUndeterminedMask) = 0;
  2808. virtual TBool RunSpaceDlgLD( CParaFormat* aFormat,
  2809. TParaFormatMask& aAttribChangedMask,
  2810. TParaFormatMask& aUndeterminedMask) = 0;
  2811. virtual TBool RunTabsDlgLD( CParaFormat* aFormat,
  2812. TParaFormatMask& aAttribChangedMask,
  2813. TParaFormatMask& aUndeterminedMask,
  2814. const TInt aPageWidth) = 0;
  2815. virtual TBool RunIndentDlgLD( CParaFormat* aFormat,
  2816. TParaFormatMask& aAttribChangedMask,
  2817. TParaFormatMask& aUndeterminedMask,
  2818. const TInt aPageWidth) = 0;
  2819. protected:
  2820. __declspec(dllexport) MEikCDlgDialogFactory();
  2821. private:
  2822. __declspec(dllexport) virtual void MEikCDlgDialogFactory_Reserved1();
  2823. __declspec(dllexport) virtual void MEikCDlgDialogFactory_Reserved2();
  2824. private:
  2825. TInt iMEikCDlgDialogFactory;
  2826. };
  2827. class MEikPrintDialogFactory
  2828. {
  2829. public:
  2830. virtual TBool RunPaginateDlgLD( CEikGlobalTextEditor* aEditor,
  2831. CPrintSetup* aPrintSetup,
  2832. CArrayFix<TInt> * aCharsPerPage) = 0;
  2833. virtual CPrintSetup* NewDefaultPrintSetupL() = 0;
  2834. protected:
  2835. __declspec(dllexport) MEikPrintDialogFactory();
  2836. private:
  2837. __declspec(dllexport) virtual void MEikPrintDialogFactory_Reserved1();
  2838. __declspec(dllexport) virtual void MEikPrintDialogFactory_Reserved2();
  2839. private:
  2840. TInt iMEikPrintDialogFactory;
  2841. };
  2842. class MEikFileDialogFactory
  2843. {
  2844. public:
  2845. virtual TBool RunFileSaveAsDlgLD( TDes* aFileName,
  2846. TBool* aUseNewFile,
  2847. TInt aTitleId,
  2848. TBool aAppendExtension) = 0;
  2849. virtual TBool RunScreenCaptureDlgLD(TDes* aFileName,
  2850. TBool& aSaveAsMonochromeImage,
  2851. TInt aTitleId) = 0;
  2852. protected:
  2853. __declspec(dllexport) MEikFileDialogFactory();
  2854. private:
  2855. __declspec(dllexport) virtual void MEikFileDialogFactory_Reserved1();
  2856. __declspec(dllexport) virtual void MEikFileDialogFactory_Reserved2();
  2857. private:
  2858. TInt iMEikFileDialogFactory;
  2859. };
  2860. #line 19 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 5 */
  2861. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eiklibry.h" /* stack depth 6 */
  2862. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikfctry.h" /* stack depth 7 */
  2863. #line 13
  2864. class CCoeControl;
  2865. enum
  2866. {
  2867. EEikControlHasEars=0x01,
  2868. EEikControlIsNonFocusing=0x02,
  2869. EEikControlHasExtraAscent=0x04,
  2870. EEikControlIsNonEditInPlace=0x08
  2871. };
  2872. struct SEikControlInfo
  2873.     {
  2874.     CCoeControl* iControl;
  2875. TInt iTrailerTextId;
  2876.     TInt iFlags;
  2877.     };
  2878. class EikControlFactory
  2879. {
  2880. public:
  2881.     __declspec(dllexport) static SEikControlInfo CreateByTypeL(TInt aControlType);
  2882. };
  2883. #line 18 "C:\Symbian\9.1\S60_3rd\epoc32\include\eiklibry.h" /* stack depth 6 */
  2884. typedef SEikControlInfo (*TCreateByTypeFunction)(TInt);
  2885. class CEikLibrary : public CBase
  2886. {
  2887. public:
  2888. virtual void InitializeL() = 0;
  2889. virtual CArrayFix<TFileName> * ResourceFileArrayL() const = 0;
  2890. virtual CArrayFix<TCreateByTypeFunction> * ControlFactoryArrayL() const = 0;
  2891. __declspec(dllexport) virtual void PostAppUiInitializeL();
  2892. };
  2893. class CEikLibrary2 : public CEikLibrary
  2894. {
  2895. public:
  2896. __declspec(dllexport) virtual ~CEikLibrary2();
  2897. __declspec(dllexport) static CEikLibrary2* LoadLibraryL(TUid aImplementationUid);
  2898. private:
  2899. TUid iDtrkey;
  2900. };
  2901. #line 21 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 5 */
  2902. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikamnt.h" /* stack depth 6 */
  2903. #line 11
  2904. class CGulIcon;
  2905. class MEikAutoMenuObserver;
  2906. class CEikAutoMenuTitle : public CBase
  2907. #line 25
  2908. {
  2909. public:
  2910. enum TTitlePos
  2911. {
  2912. EStart,
  2913. EEnd
  2914. };
  2915. enum { ENominalTextLength=40 };
  2916. public:
  2917. __declspec(dllexport) static CEikAutoMenuTitle* NewLC(TTitlePos aPos,const TDesC& aText,MEikAutoMenuObserver& aMenuObserver,
  2918. TInt aMenuPaneResourceId=0,CGulIcon* aIcon=0 );
  2919. __declspec(dllexport) ~CEikAutoMenuTitle();
  2920. private:
  2921. CEikAutoMenuTitle(TTitlePos aPos,const TDesC& aText,MEikAutoMenuObserver& aMenuObserver,
  2922. TInt aMenuPaneResourceId,CGulIcon* aIcon);
  2923. public:
  2924. TTitlePos iPos;
  2925. TBuf<ENominalTextLength> iText;
  2926. MEikAutoMenuObserver& iMenuObserver;
  2927. TInt iMenuPaneResourceId;
  2928. CGulIcon* iIcon;
  2929. };
  2930. class CEikAutoMenuTitleArray : public CArrayPtrFlat<CEikAutoMenuTitle>
  2931. #line 67
  2932. {
  2933. public:
  2934. CEikAutoMenuTitleArray();
  2935. ~CEikAutoMenuTitleArray();
  2936. };