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

Symbian

开发平台:

C/C++

  1. __declspec(dllexport) void DrawTextVertical(const TDesC& aText,const TRect& aBox,TInt aBaselineOffset,TBool aUp,TTextAlign aVert=ELeft,TInt aMargin=0);
  2. __declspec(dllexport) void DrawTextVertical(const TDesC& aText,const TRect& aBox,TInt aBaselineOffset,TInt aTextWidth,TBool aUp,TTextAlign aVert=ELeft,TInt aMargin=0);
  3. __declspec(dllexport) void MapColors(const TRect& aRect,const TRgb* aColors,TInt aNumPairs=2,TBool aMapForwards=ETrue);
  4. __declspec(dllexport) void MoveTo(const TPoint& aPoint);
  5. __declspec(dllexport) void MoveBy(const TPoint& aVector);
  6. __declspec(dllexport) void OrientationsAvailable(TBool aOrientation[4]);
  7. __declspec(dllexport) void Plot(const TPoint& aPoint);
  8. __declspec(dllexport) void RectDrawnTo(TRect& aRect);
  9. __declspec(dllexport) void Reset();
  10. __declspec(dllexport) void Resized();
  11. __declspec(dllexport) void SetBrushColor(const TRgb& aColor);
  12. __declspec(dllexport) void SetBrushOrigin(const TPoint& aOrigin);
  13. __declspec(dllexport) void SetBrushStyle(TBrushStyle aBrushStyle);
  14. __declspec(dllexport) void SetClippingRegion(const TRegion* aRegion);
  15. __declspec(dllexport) void SetClippingRect(const TRect& aRect);
  16. __declspec(dllexport) void SetDitherOrigin(const TPoint& aPoint);
  17. __declspec(dllexport) void SetDrawMode(TDrawMode);
  18. __declspec(dllexport) void SetOrigin(const TPoint& aPoint=TPoint(0,0));
  19. __declspec(dllexport) void SetPenColor(const TRgb& aColor);
  20. __declspec(dllexport) void SetPenStyle(TPenStyle);
  21. __declspec(dllexport) void SetPenSize(const TSize& aSize);
  22. __declspec(dllexport) void SetCharJustification(TInt aExcessWidth,TInt aNumGaps);
  23. __declspec(dllexport) void SetWordJustification(TInt aExcessWidth,TInt aNumChars);
  24. __declspec(dllexport) void SetUnderlineStyle(TFontUnderline aUnderlineStyle);
  25. __declspec(dllexport) void SetUserDisplayMode(TDisplayMode aDisplayMode);
  26. __declspec(dllexport) void SetStrikethroughStyle(TFontStrikethrough aStrikethroughStyle);
  27. __declspec(dllexport) void SetShadowMode(TBool aShadowMode = EFalse);
  28. inline void SetFadeMode(TBool aFadeMode = EFalse);
  29. inline void SetFadingParameters(TUint8 aBlackMap = 0);
  30. __declspec(dllexport) void SetFaded(TBool aFaded);
  31. __declspec(dllexport) void SetFadingParameters(TUint8 aBlackMap,TUint8 aWhiteMap);
  32. __declspec(dllexport) TBool SetOrientation(TGraphicsOrientation aOrientation);
  33. __declspec(dllexport) void ShadowArea(const TRegion* aRegion);
  34. __declspec(dllexport) void FadeArea(const TRegion* aRegion);
  35. __declspec(dllexport) void UpdateJustification(const TDesC& aText);
  36. __declspec(dllexport) void UpdateJustificationVertical(const TDesC& aText,TBool aUp);
  37. __declspec(dllexport) void UseBrushPattern(const CFbsBitmap* aBitmap);
  38. __declspec(dllexport) TInt UseBrushPattern(TInt aFbsBitmapHandle);
  39. __declspec(dllexport) void UseFont(const CFont* aFont);
  40. __declspec(dllexport) TInt UseFont(TInt aFontHandle);
  41. __declspec(dllexport) void UseFontNoDuplicate(const CFbsBitGcFont* aFont);
  42. __declspec(dllexport) TBool IsBrushPatternUsed() const;
  43. __declspec(dllexport) TBool IsFontUsed() const;
  44. inline static TInt16 Load16(const TUint8* aPtr) { return TInt16(aPtr[0]+(aPtr[1]<<8)); }
  45. __declspec(dllexport) TInt AlphaBlendBitmaps(const TPoint& aDestPt,
  46. const CFbsBitmap* aSrcBmp1,
  47. const CFbsBitmap* aSrcBmp2,
  48. const TRect& aSrcRect1,
  49. const TPoint& aSrcPt2,
  50. const CFbsBitmap* aAlphaBmp,
  51. const TPoint& aAlphaPt);
  52. __declspec(dllexport) TInt AlphaBlendBitmaps(const TPoint& aDestPt,
  53. const CFbsBitmap* aSrcBmp,
  54. const TRect& aSrcRect,
  55. const CFbsBitmap* aAlphaBmp,
  56. const TPoint& aAlphaPt);
  57. __declspec(dllexport) void ExternalizeL(RWriteStream& aWriteStream);
  58. __declspec(dllexport) void InternalizeL(RReadStream& aReadStream);
  59. __declspec(dllexport) TInt SetClippingRegion(const TRegion& aRegion);
  60. __declspec(dllexport) TInt AlphaBlendBitmaps(const TPoint& aDestPt,
  61. const CWsBitmap* aSrcBmp,
  62. const TRect& aSrcRect,
  63. const CWsBitmap* aAlphaBmp,
  64. const TPoint& aAlphaPt);
  65. __declspec(dllexport) TRgb BrushColor();
  66. __declspec(dllexport) TRgb PenColor();
  67. private:
  68. CFbsBitGc();
  69. void AddRect(const TRect& aRect);
  70. void AnalyseEllipse(const TRect& rc,TPoint& srad,TPoint& erad,TPoint& center,TInt& startq,TInt& endq,TBool* quads);
  71. void BitMultiply(TUint32* aBinaryDataPtr,TInt aBitLength,TInt aMultiplier);
  72. void CheckDevice() const;
  73. TBool CheckDevice(const TRect& aRect) const;
  74. TUint32* ClipBinaryArray(TUint32* aArray,TUint32* aArrayLimit,TInt aArrayWordWd,TInt& aDataWd,TInt& aDataHt,TPoint& aPos);
  75. void ClipFillLine(TPoint,TPoint);
  76. void CopyCharWord(TUint32* aBinaryDataPtr,const TUint8* aData,TInt aBitShift);
  77. void CopyCharLine(TUint32* aBinaryDataPtr,TInt aBufferWords,const TUint8* aData,TInt aBitShift,TInt aCharWidth);
  78. void DrawText(const TDesC& aText,const TPoint& aPosition,TTextAlign aAlignment,
  79.   CFont::TTextDirection aDirection,const TRect* aBox = 0 );
  80. void DoBitBlt(const TPoint& aDest,CFbsDevice* aDevice,const TRect& aSourceRect);
  81. void DoBitBlt(const TPoint& aDest,CBitwiseBitmap* aBitmap,TUint32* aBase,const TRect& aSourceRect);
  82. void DoBitBltMasked(const TPoint& aDest,CBitwiseBitmap* aSourceBitmap,TUint32* aSourceBase,const TRect& aSourceRect,CBitwiseBitmap* aMaskBitmap,TUint32* aMaskBase,TBool aInvertMask,const TPoint& aDitherOrigin,TInt aShadowMode);
  83. void DoBitBltMaskedFlicker(const TPoint& aDest,CBitwiseBitmap* aSourceBitmap,TUint32* aSourceBase,const TRect& aSourceRect,CBitwiseBitmap* aMaskBitmap,TUint32* aMaskBase,TBool aInvertMask,const TPoint& aDitherOrigin,TInt aShadowMode);
  84. void DoBitBltMaskedNonFlicker(const TPoint& aDest,CBitwiseBitmap* aSourceBitmap,TUint32* aSourceBase,const TRect& aSourceRect,CBitwiseBitmap* aMaskBitmap,TUint32* aMaskBase,TBool aInvertMask,const TPoint& aDitherOrigin,TInt aShadowMode);
  85. void DoBitBltMaskedNonFlickerSolid(const TPoint& aDest,CBitwiseBitmap* aSourceBitmap,TUint32* aSourceBase,const TRect& aSourceRect,CBitwiseBitmap* aMaskBitmap,TUint32* aMaskBase,TBool aInvertMask,const TPoint& aDitherOrigin,TInt aShadowMode);
  86. void DoBitBltMaskedNonFlickerPatterned(const TPoint& aDest,CBitwiseBitmap* aSourceBitmap,TUint32* aSourceBase,const TRect& aSourceRect,CBitwiseBitmap* aMaskBitmap,TUint32* aMaskBase,TBool aInvertMask,const TPoint& aDitherOrigin,TInt aShadowMode);
  87. void DoBitBltAlpha(const TPoint& aDest,CBitwiseBitmap* aSourceBitmap,TUint32* aSourceBase,const TRect& aSourceRect,CBitwiseBitmap* aMaskBitmap,TUint32* aMaskBase,const TPoint& aDitherOrigin,TInt aShadowMode);
  88. void DoBitBltAlpha(const TPoint& aDestPt,
  89.    const CBitwiseBitmap* aSrcBmp1,
  90.    TUint32* aSrcBmpDataAddr1,
  91.    const CBitwiseBitmap* aSrcBmp2,
  92.    TUint32* aSrcBmpDataAddr2,
  93.    const CBitwiseBitmap* aAlphaBmp,
  94.    TUint32* aAlphaBmpDataAddr,
  95.    const TRect& aSrcRect1,
  96.    const TPoint& aSrcPt2,
  97.    const TPoint& aAlphaPt,
  98.    TInt aShadowMode);
  99. void DoCopyRect(const TPoint&,const TRect&);
  100. void DoDrawBitmap(const TRect&,CBitwiseBitmap*,TUint32* aBase,const TRect&,const TPoint& aDitherOrigin);
  101. void DoDrawBitmapMasked(const TRect& aDestRect,CBitwiseBitmap* aSourceBitmap,TUint32* aSourceBase,const TRect& aSourceRect,CBitwiseBitmap* aMaskBitmap,TUint32* aMaskBase,TBool aInvertMask,const TPoint& aDitherOrigin);
  102. void DoDrawLine(TPoint aStart,TPoint aEnd,TBool aDrawStartPoint);
  103. void DoDrawDottedWideLine(const TPoint& pt1,const TPoint& pt2,TBool drawstart,const TRect& screenrect);
  104. void DoDrawSolidWideLine(const TPoint& pt1,const TPoint& pt2,TBool drawstart,const TRect& screenrect);
  105. void DoDrawText(CFont::TPositionParam& aParam);
  106. void DoDrawCharacter(const TPoint& aTopLeft,const TSize& aDataSize,const TUint8* aData);
  107. void DoDrawTextEx(CFont::TPositionParam& aParam,const CBitmapFont* font);
  108. void DoDrawCharacterEx(const TPoint& aTopLeft,const TSize& aDataSize,const TUint8* aData,
  109. TBool aBold,TBool aItalic,TInt aSemiAscent);
  110. void DoDrawCharacterAntiAliased(const TPoint& aTopLeft,const TSize& aDataSize,const TUint8* aData);
  111. void DoDrawTextLarge(CFont::TPositionParam& aParam,const CBitmapFont* font);
  112. void DoDrawCharacterLarge(const TPoint& aTopLeft,const TSize& aDataSize,const TUint8* aData,
  113. TBool aBold,TBool aItalic,TInt aSemiAscent,TInt aWidthFactor,TInt aHeightFactor);
  114. void DoDrawCharacterExLarge(const TPoint& aTopLeft,const TSize& aDataSize,const TUint8* aData,
  115. TBool aBold,TBool aItalic,TInt aSemiAscent,TInt aWidthFactor,TInt aHeightFactor);
  116. void DoDrawCharacterMultiplied(const TPoint& aTopLeft,const TSize& aDataSize,const TUint8* aData,
  117. TBool aBold,TBool aItalic,TInt aSemiAscent,TInt aWidthMultiplier,TInt aHeightMultiplier);
  118. void DoDrawTextVertical(CFont::TPositionParam& aParam,const CBitmapFont* font,TBool aUp);
  119. void DoDrawCharacterVertical(const TPoint& aTopLeft,const TSize& aDataSize,const TUint8* aData,
  120. TBool aBold,TBool aItalic,TInt aSemiAscent,TInt aWidthFactor,TInt aHeightFactor,TBool aUp);
  121. void DoDrawCharacterVerticalAntiAliased(const TPoint& aTopLeft,const TSize& aDataSize,const TUint8* aData,TBool aUp);
  122. void DoPlot(const TPoint& pt);
  123. void EllipseFill(const TRect& aRect);
  124. void EllipseOutline(const TRect& aRect);
  125. void EllipseOutlineWide(const TRect& aRect);
  126. void GetUnderlineMetrics(TInt& aTop,TInt& aBottom);
  127. void GetStrikethroughMetrics(TInt& aTop,TInt& aBottom);
  128. void OutputCharLine(TPoint aPrintPos,TUint32* aBuffer,TInt aDataLength,TInt aNum,TBool aBold,TInt aWidthFactor,TInt aHeightFactor);
  129. void OutputCharLineMultiplied(TPoint aPrintPos,TUint32* aBuffer,TInt aDataLength,TInt aNum,TBool aBold,TInt aWidthMultiplier,TInt aHeightMultiplier);
  130. void OutputCharLineVertical(TPoint aPrintPos,TUint32* aBuffer,TInt aDataLength,TInt aNum,TBool aBold,TInt aWidthFactor,TInt aHeightFactor,TBool aUp);
  131. void PenAllocate();
  132. void PenDrawClipped(TPoint aPoint);
  133. void PenDrawDeferred(TPoint aPoint,TInt* aArray,TInt aFirstElement);
  134. void PieArcOutline(const TRect& aRect,const TPoint& aStartRadius,const TPoint& aEndRadius,TBool aDoPie);
  135. void PieFill(const TRect& aRect,const TPoint& aStartRadius,const TPoint& aEndRadius);
  136. void PieShell(const TRect& ellrect,const TPoint& startradius,const TPoint& endradius,TBool quads[5],TInt startquad,TInt endquad);
  137. void PieTriangles(TBool aInside,const TPoint& aStart,const TPoint& aEnd);
  138. void PieSliver(const TRect& ellrect,const TPoint& startradius,const TPoint& endradius,TInt quad);
  139. void PolyFill(const CArrayFix<TPoint> * aPointList,TFillRule aFillRule);
  140. void PolyFillLarge(const CArrayFix<TPoint> * aPointList,TFillRule aFillRule);
  141. void PolyFill(const TPoint* aPointList,TInt aNumPoints,TFillRule aFillRule);
  142. void PolyFillLarge(const TPoint* aPointList,TInt aNumPoints,TFillRule aFillRule);
  143. void PolyOutline(const CArrayFix<TPoint> * aPointList);
  144. void PolyOutline(const TPoint* aPointList,TInt aNumPoints);
  145. void RectFill(const TRect& aRect);
  146. void RoundRectFill(const TRect& aRect,TSize aSize);
  147. void RoundRectOutline(const TRect& aRect,TSize aSize);
  148. void SetupDevice() const;
  149. void ShadowFadeArea(const TRegion* aRegion,TInt8 aShadowMode);
  150. TBool UserClipRect(TRect& aRect);
  151. CGraphicsAccelerator* GraphicsAccelerator();
  152. private:
  153. __declspec(dllexport) void Reserved_CGraphicsContext_1();
  154. __declspec(dllexport) void Reserved_CGraphicsContext_2();
  155. __declspec(dllexport) void Reserved_CBitmapContext_1();
  156. __declspec(dllexport) void Reserved_CBitmapContext_2();
  157. __declspec(dllexport) void Reserved_CBitmapContext_3();
  158. __declspec(dllexport) virtual void Reserved_CFbsBitGc_1();
  159. __declspec(dllexport) virtual void Reserved_CFbsBitGc_2();
  160. __declspec(dllexport) virtual void Reserved_CFbsBitGc_3();
  161. __declspec(dllexport) virtual void Reserved_CFbsBitGc_4();
  162. __declspec(dllexport) virtual void Reserved_CFbsBitGc_5();
  163. private:
  164. CFbsBitGcBitmap iBrushBitmap;
  165. TBool iBrushUsed;
  166. TRgb iBrushColor;
  167. TPoint iBrushOrigin;
  168. TBrushStyle iBrushStyle;
  169. TRect iClipRect;
  170. TRegionFix<1> iDefaultRegion;
  171. const TRegion* iDefaultRegionPtr;
  172. TRect iUserClipRect;
  173. CFbsDevice* iDevice;
  174. TPoint iDitherOrigin;
  175. TInt iDotLength;
  176. TInt iDotMask;
  177. TInt iDotParam;
  178. TInt iDotDirection;
  179. TDrawMode iDrawMode;
  180. TRect iDrawnTo;
  181. CFbsBitGcFont iFont;
  182. TInt iCharJustExcess;
  183. TInt iCharJustNum;
  184. TInt iWordJustExcess;
  185. TInt iWordJustNum;
  186. TPoint iLastPrintPosition;
  187. TPoint iLinePosition;
  188. TPoint iOrigin;
  189. TInt* iPenArray;
  190. TRgb iPenColor;
  191. TPenStyle iPenStyle;
  192. TSize iPenSize;
  193. TInt8 iShadowMode;
  194. TInt8 iAutoUpdateJustification;
  195. TUint8 iFadeBlackMap;
  196. TUint8 iFadeWhiteMap;
  197. TFontStrikethrough iStrikethrough;
  198. TFontUnderline iUnderline;
  199. TDisplayMode iUserDisplayMode;
  200. RRegion iClippingRegion;
  201. };
  202. inline void CFbsBitGc::SetFadeMode(TBool aFadeMode )
  203. {SetFaded(aFadeMode);}
  204. inline void CFbsBitGc::SetFadingParameters(TUint8 aBlackMap )
  205. {SetFadingParameters(aBlackMap,255);}
  206. #line 22 "C:\Symbian\9.1\S60_3rd\epoc32\include\bitdev.h" /* stack depth 5 */
  207. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\graphicsaccelerator.h" /* stack depth 6 */
  208. #line 17
  209. class CFbsBitmap;
  210. class TAcceleratedBitmapSpec;
  211. #line 32
  212. class TAcceleratedBitmapInfo
  213. {
  214. public:
  215. TDisplayMode iDisplayMode;
  216. TUint8* iAddress;
  217. TSize iSize;
  218. TInt iLinePitch;
  219. TInt iPixelShift;
  220. TUint8* iPhysicalAddress;
  221. };
  222. #line 69
  223. class RHardwareBitmap
  224. {
  225. friend class CBitwiseBitmap;
  226. friend class CFbsScreenDevice;
  227. public:
  228. inline RHardwareBitmap();
  229. inline RHardwareBitmap(TInt aHandle);
  230. __declspec(dllexport) TInt GetInfo(TAcceleratedBitmapInfo& aInfo) const;
  231. private:
  232. __declspec(dllexport) TInt SetAsScreenReference(TInt aScreen=-1);
  233. __declspec(dllexport) TInt Create(TDisplayMode aDisplayMode, TSize aSize, TUid aCreatorUid);
  234. __declspec(dllexport) void Destroy();
  235. public:
  236. TInt iHandle;
  237. };
  238. inline RHardwareBitmap::RHardwareBitmap()
  239. : iHandle(0)
  240. {}
  241. inline RHardwareBitmap::RHardwareBitmap(TInt aHandle)
  242. : iHandle(aHandle)
  243. {}
  244. #line 114
  245. class TBitmapLockCount
  246. {
  247. friend class TAcceleratedBitmapSpec;
  248. public:
  249. inline TBitmapLockCount() : iCount(0) {}
  250. private:
  251. inline TInt Inc() { return iCount++; }
  252. inline TInt Dec() { return --iCount; }
  253. private:
  254. TInt iCount;
  255. };
  256. #line 139
  257. class TAcceleratedBitmapSpec
  258. {
  259. public:
  260. inline TAcceleratedBitmapSpec();
  261. __declspec(dllexport) TAcceleratedBitmapSpec(CFbsBitmap* aBitmap);
  262. __declspec(dllexport) TAcceleratedBitmapSpec(RHardwareBitmap aBitmap);
  263. __declspec(dllexport) TInt GetInfo(TAcceleratedBitmapInfo& aInfo) const;
  264. inline void Lock(TBitmapLockCount& aCount);
  265. inline void Lock(TBitmapLockCount& aCount,TAcceleratedBitmapInfo& aInfo);
  266. inline void Unlock(TBitmapLockCount& aCount);
  267. enum TAcceleratedBitmapType
  268. {
  269. ENoBitmap,
  270. EFbsBitmap,
  271. EHardwareBitmap,
  272. };
  273. enum TAcceleratedBitmapLock
  274. {
  275. EBitmapIsStatic,
  276. EBitmapNeedsLocking,
  277. };
  278. inline TAcceleratedBitmapType Type() const;
  279. inline TInt Handle() const;
  280. private:
  281. __declspec(dllexport) void DoLock(TBitmapLockCount& aCount);
  282. __declspec(dllexport) void DoLock(TBitmapLockCount& aCount,TAcceleratedBitmapInfo& aInfo);
  283. __declspec(dllexport) void DoUnlock(TBitmapLockCount& aCount);
  284. private:
  285. TUint8 iType;
  286. TUint8 iLockStatus;
  287. TUint8 iSpare1;
  288. TUint8 iSpare2;
  289. TInt iHandle;
  290. };
  291. inline TAcceleratedBitmapSpec::TAcceleratedBitmapSpec()
  292. : iType(ENoBitmap), iLockStatus(EBitmapIsStatic)
  293. {}
  294. #line 210
  295. inline void TAcceleratedBitmapSpec::Lock(TBitmapLockCount& aCount)
  296. { if(iLockStatus==EBitmapNeedsLocking) DoLock(aCount); }
  297. #line 226
  298. inline void TAcceleratedBitmapSpec::Lock(TBitmapLockCount& aCount,TAcceleratedBitmapInfo& aInfo)
  299. { if(iLockStatus==EBitmapNeedsLocking) DoLock(aCount,aInfo); }
  300. #line 237
  301. inline void TAcceleratedBitmapSpec::Unlock(TBitmapLockCount& aCount)
  302. { if(iLockStatus==EBitmapNeedsLocking) DoUnlock(aCount); }
  303. inline TAcceleratedBitmapSpec::TAcceleratedBitmapType TAcceleratedBitmapSpec::Type() const
  304. { return (TAcceleratedBitmapSpec::TAcceleratedBitmapType)iType; }
  305. inline TInt TAcceleratedBitmapSpec::Handle() const
  306. { return iHandle; }
  307. #line 268
  308. enum TTransparencyType
  309. {
  310. ETransparentPixelZero,
  311. ETransparentPixel,
  312. ETransparentColor,
  313. ETransparent1555,
  314. };
  315. #line 303
  316. class TGraphicsAcceleratorCaps
  317. {
  318. public:
  319. enum TClipCaps
  320. {
  321. EClipToBitmap = 1,
  322. EClipping = 2
  323. };
  324. enum TMaskBitmapCaps
  325. {
  326. EMaskBitmapNone = 0,
  327. EMaskBitmapAnyDisplayMode,
  328. EMaskBitmapMatchingDisplayMode,
  329. EMaskBitmapGray2,
  330. };
  331. enum TAlphaChannelCaps
  332.      {
  333. EAlpha4444 = 1,
  334. EAlpha8888 = 2,
  335. EAlpha1555 = 4,
  336. };
  337. enum TAlphaBitmapCaps
  338.      {
  339. EAlphaBitmapGray256 = 1,
  340. EAlphaBitmapColor16M = 2,
  341. EAlphaBitmapMatchingMode = 4,
  342. };
  343. enum TPatternSizeCaps
  344. {
  345. EPatternSizeAny = 0xFFFFFFFF,
  346. };
  347. enum TPatternCaps
  348. {
  349. EPatternAnyDisplayMode = 1,
  350. EPatternMatchingDisplayMode = 2,
  351. EPatternMustBeSquare = 4,
  352. };
  353. enum TPolygonCaps
  354. {
  355. EPolygonFillAlternate = 1,
  356. EPolygonFillWinding = 2,
  357. };
  358. TInt iStructureSize;
  359. TInt iVersion;
  360. TUid iVendorUid;
  361. TUint iDisplayModes;
  362. TUint iClipping;
  363. TMaskBitmapCaps iMaskType;
  364. TUint iTransparency;
  365. TUint iAlphaChannel;
  366. TUint iAlphaBitmap;
  367. #line 473
  368. TUint iPatternSizes;
  369. TUint iPattern;
  370. TUint iPolygon;
  371. TUint iReserved[4];
  372. };
  373. #line 508
  374. class TGraphicsOperation
  375. {
  376. public:
  377. enum TGopFunction
  378. {
  379. EFilledRect,
  380. EFilledRectUsingDrawMode,
  381. EFilledRectWithPattern,
  382. EInvertRect,
  383. EFadeRect,
  384. EBitBlt,
  385. EBitBltMasked,
  386. EBitBltTransparent,
  387. EBitBltAlphaChannel,
  388. EBitBltAlphaBitmap,
  389. EScaledBitBlt,
  390. EScaledBitBltMasked,
  391. EScaledBitBltTransparent,
  392. EScaledBitBltAlphaChannel,
  393. EScaledBitBltAlphaBitmap,
  394. EFilledPolygon,
  395. EFilledPolygonWithPattern,
  396. };
  397. public:
  398. inline TGopFunction Function() const { return iFunction; }
  399. inline TInt Size() const { return iSize; }
  400. inline TGraphicsOperation* Next() const;
  401. inline void Append(TInt aNumBytes,TAny* aData);
  402. protected:
  403. inline TGraphicsOperation(TGopFunction aFunction, TInt aArgSize);
  404. inline TGraphicsOperation() {}
  405. protected:
  406. TGopFunction iFunction;
  407. TInt iSize;
  408. };
  409. inline TGraphicsOperation::TGraphicsOperation(TGopFunction aFunction, TInt aSize)
  410. : iFunction(aFunction) , iSize(aSize) {}
  411. inline TGraphicsOperation* TGraphicsOperation::Next() const
  412. { return (TGraphicsOperation*)((TUint8*)this+iSize); }
  413. inline void TGraphicsOperation::Append(TInt aNumBytes,TAny* aData)
  414. {
  415. Mem::Copy(Next(),aData,aNumBytes);
  416. iSize += aNumBytes;
  417. }
  418. #line 579
  419. class CGraphicsAccelerator : public CBase
  420. {
  421. public:
  422. virtual const TGraphicsAcceleratorCaps* Capabilities() = 0;
  423. #line 598
  424. virtual TInt Operation(const TGraphicsOperation& aOperation) = 0;
  425. #line 611
  426. virtual TInt Operation(const TGraphicsOperation& aOperation,TInt aNumClipRects,TRect* aClipRects) = 0;
  427. #line 634
  428. virtual TInt Operation(TDes8& aBuffer) = 0;
  429. #line 657
  430. virtual TInt Operation(TDes8& aBuffer,TInt aNumClipRects,TRect* aClipRects) = 0;
  431. public:
  432. virtual void Reserved_1() = 0;
  433. virtual void Reserved_2() = 0;
  434. virtual void Reserved_3() = 0;
  435. virtual void Reserved_4() = 0;
  436. };
  437. #line 678
  438. class CSoftwareGraphicsAccelerator : public CGraphicsAccelerator
  439. {
  440. public:
  441. __declspec(dllexport) static CSoftwareGraphicsAccelerator* NewL(CFbsBitmap* aBitmap);
  442. __declspec(dllexport) static const TGraphicsAcceleratorCaps* GenericCapabilities();
  443. public:
  444. virtual const TGraphicsAcceleratorCaps* Capabilities() = 0;
  445. virtual TInt Operation(const TGraphicsOperation& aOperation) = 0;
  446. virtual TInt Operation(const TGraphicsOperation& aOperation,TInt aNumClipRects,TRect* aClipRects) = 0;
  447. virtual TInt Operation(TDes8& aBuffer) = 0;
  448. virtual TInt Operation(TDes8& aBuffer,TInt aNumClipRects,TRect* aClipRects) = 0;
  449. virtual void Reserved_1() = 0;
  450. virtual void Reserved_2() = 0;
  451. virtual void Reserved_3() = 0;
  452. virtual void Reserved_4() = 0;
  453. };
  454. #line 713
  455. class CHardwareGraphicsAccelerator : public CGraphicsAccelerator
  456. {
  457. public:
  458. __declspec(dllexport) static CHardwareGraphicsAccelerator* NewL(RHardwareBitmap aBitmap);
  459. __declspec(dllexport) static const TGraphicsAcceleratorCaps* GenericCapabilities();
  460. public:
  461. virtual const TGraphicsAcceleratorCaps* Capabilities() = 0;
  462. virtual TInt Operation(const TGraphicsOperation& aOperation) = 0;
  463. virtual TInt Operation(const TGraphicsOperation& aOperation,TInt aNumClipRects,TRect* aClipRects) = 0;
  464. virtual TInt Operation(TDes8& aBuffer) = 0;
  465. virtual TInt Operation(TDes8& aBuffer,TInt aNumClipRects,TRect* aClipRects) = 0;
  466. virtual void Reserved_1() = 0;
  467. virtual void Reserved_2() = 0;
  468. virtual void Reserved_3() = 0;
  469. virtual void Reserved_4() = 0;
  470. };
  471. #line 752
  472. class TGopFillPattern
  473. {
  474. public:
  475. TAcceleratedBitmapSpec iBitmap;
  476. TPoint iOrigin;
  477. };
  478. #line 789
  479. class TGopFadeParams
  480. {
  481. public:
  482. TInt iScale;
  483. TInt iOffset;
  484. };
  485. #line 814
  486. class TGopTransparency
  487. {
  488. public:
  489. inline TGopTransparency(TTransparencyType aType) : iType(aType), iParam(0) {}
  490. inline TGopTransparency(TInt aPixelValue) : iType(ETransparentPixel), iParam(aPixelValue) {}
  491. inline TGopTransparency(TRgb aRgb) : iType(ETransparentColor), iParam(aRgb.Value()) {}
  492. inline TRgb Color() const { return TRgb(iParam); }
  493. inline TInt Pixel() const { return iParam; }
  494. public:
  495. TTransparencyType iType;
  496. TUint32 iParam;
  497. };
  498. #line 865
  499. #pragma warning(disable : 4355) 
  500. #line 876
  501. class TGopFilledRect : public TGraphicsOperation
  502. {
  503. public:
  504. inline TGopFilledRect(const TRect& aRect,TRgb aColor)
  505. : TGraphicsOperation(EFilledRect,sizeof(*this)), iRect(aRect) , iColor(aColor) {}
  506. public:
  507. TRect iRect;
  508. TRgb iColor;
  509. };
  510. #line 905
  511. class TGopFilledRectUsingDrawMode : public TGraphicsOperation
  512. {
  513. public:
  514. inline TGopFilledRectUsingDrawMode(const TRect& aRect,TRgb aColor,CGraphicsContext::TDrawMode aDrawMode)
  515. : TGraphicsOperation(EFilledRectUsingDrawMode,sizeof(*this)), iRect(aRect) , iColor(aColor) , iDrawMode(aDrawMode) {}
  516. public:
  517. TRect iRect;
  518. TRgb iColor;
  519. CGraphicsContext::TDrawMode iDrawMode;
  520. };
  521. #line 935
  522. class TGopFilledRectWithPattern : public TGraphicsOperation
  523. {
  524. public:
  525. inline TGopFilledRectWithPattern(const TRect& aRect,TGopFillPattern aPattern)
  526. : TGraphicsOperation(EFilledRectWithPattern,sizeof(*this)), iRect(aRect) , iPattern(aPattern) {}
  527. public:
  528. TRect iRect;
  529. TGopFillPattern iPattern;
  530. };
  531. #line 963
  532. class TGopInvertRect : public TGraphicsOperation
  533. {
  534. public:
  535. inline TGopInvertRect(const TRect& aRect)
  536. : TGraphicsOperation(EInvertRect,sizeof(*this)), iRect(aRect) {}
  537. public:
  538. TRect iRect;
  539. };
  540. #line 984
  541. class TGopFadeRect : public TGraphicsOperation
  542. {
  543. public:
  544. inline TGopFadeRect(const TRect& aRect, const TGopFadeParams aFade)
  545. : TGraphicsOperation(EFadeRect,sizeof(*this)), iRect(aRect), iFade(aFade) {}
  546. public:
  547. TRect iRect;
  548. TGopFadeParams iFade;
  549. };
  550. #line 1011
  551. class TGopBitBlt : public TGraphicsOperation
  552. {
  553. public:
  554. inline TGopBitBlt(const TPoint& aDestination, TAcceleratedBitmapSpec aSourceBitmap, TRect& aSourceRect)
  555. : TGraphicsOperation(EBitBlt,sizeof(*this)), iDestination(aDestination), iSourceBitmap(aSourceBitmap), iSourceRect(aSourceRect) {}
  556. public:
  557. TPoint iDestination;
  558. TAcceleratedBitmapSpec iSourceBitmap;
  559. TRect iSourceRect;
  560. };
  561. #line 1050
  562. class TGopBitBltMasked : public TGraphicsOperation
  563. {
  564. public:
  565. #line 1062
  566. inline TGopBitBltMasked(const TPoint& aDestination, TAcceleratedBitmapSpec aSourceBitmap, TRect& aSourceRect, TAcceleratedBitmapSpec aMask)
  567. : TGraphicsOperation(EBitBltMasked,sizeof(*this)), iDestination(aDestination), iSourceBitmap(aSourceBitmap), iSourceRect(aSourceRect), iMask(aMask) {}
  568. public:
  569. TPoint iDestination;
  570. TAcceleratedBitmapSpec iSourceBitmap;
  571. TRect iSourceRect;
  572. TAcceleratedBitmapSpec iMask;
  573. };
  574. #line 1091
  575. class TGopBitBltTransparent : public TGraphicsOperation
  576. {
  577. public:
  578. #line 1106
  579. inline TGopBitBltTransparent(const TPoint& aDestination, TAcceleratedBitmapSpec aSourceBitmap, TRect& aSourceRect, TGopTransparency aTransparency)
  580. : TGraphicsOperation(EBitBltTransparent,sizeof(*this)), iDestination(aDestination), iSourceBitmap(aSourceBitmap), iSourceRect(aSourceRect), iTransparency(aTransparency) {}
  581. public:
  582. TPoint iDestination;
  583. TAcceleratedBitmapSpec iSourceBitmap;
  584. TRect iSourceRect;
  585. TGopTransparency iTransparency;
  586. };
  587. #line 1139
  588. class TGopBitBltAlphaChannel : public TGraphicsOperation
  589. {
  590. public:
  591. inline TGopBitBltAlphaChannel(const TPoint& aDestination, TAcceleratedBitmapSpec aSourceBitmap, TRect& aSourceRect)
  592. : TGraphicsOperation(EBitBltAlphaChannel,sizeof(*this)), iDestination(aDestination), iSourceBitmap(aSourceBitmap), iSourceRect(aSourceRect) {}
  593. public:
  594. TPoint iDestination;
  595. TAcceleratedBitmapSpec iSourceBitmap;
  596. TRect iSourceRect;
  597. };
  598. #line 1188
  599. class TGopBitBltAlphaBitmap : public TGraphicsOperation
  600. {
  601. public:
  602. #line 1200
  603. inline TGopBitBltAlphaBitmap(const TPoint& aDestination, TAcceleratedBitmapSpec aSourceBitmap, TRect& aSourceRect, TAcceleratedBitmapSpec aAlphaBitmap)
  604. : TGraphicsOperation(EBitBltAlphaBitmap,sizeof(*this)), iDestination(aDestination), iSourceBitmap(aSourceBitmap), iSourceRect(aSourceRect), iAlphaBitmap(aAlphaBitmap) {}
  605. public:
  606. TPoint iDestination;
  607. TAcceleratedBitmapSpec iSourceBitmap;
  608. TRect iSourceRect;
  609. TAcceleratedBitmapSpec iAlphaBitmap;
  610. };
  611. #line 1227
  612. class TGopScaledBitBlt : public TGraphicsOperation
  613. {
  614. public:
  615. #line 1238
  616. inline TGopScaledBitBlt(const TRect& aDestination, TAcceleratedBitmapSpec aSourceBitmap, TRect& aSourceRect)
  617. : TGraphicsOperation(EScaledBitBlt,sizeof(*this)), iDestination(aDestination), iSourceBitmap(aSourceBitmap), iSourceRect(aSourceRect) {}
  618. public:
  619. TRect iDestination;
  620. TAcceleratedBitmapSpec iSourceBitmap;
  621. TRect iSourceRect;
  622. };
  623. #line 1267
  624. class TGopScaledBitBltMasked : public TGraphicsOperation
  625. {
  626. public:
  627. #line 1280
  628. inline TGopScaledBitBltMasked(const TRect& aDestination, TAcceleratedBitmapSpec aSourceBitmap, TRect& aSourceRect, TAcceleratedBitmapSpec aMask)
  629. : TGraphicsOperation(EScaledBitBltMasked,sizeof(*this)), iDestination(aDestination), iSourceBitmap(aSourceBitmap), iSourceRect(aSourceRect), iMask(aMask) {}
  630. public:
  631. TRect iDestination;
  632. TAcceleratedBitmapSpec iSourceBitmap;
  633. TRect iSourceRect;
  634. TAcceleratedBitmapSpec iMask;
  635. };
  636. #line 1310
  637. class TGopScaledBitBltTransparent : public TGraphicsOperation
  638. {
  639. public:
  640. #line 1325
  641. inline TGopScaledBitBltTransparent(const TRect& aDestination, TAcceleratedBitmapSpec aSourceBitmap, TRect& aSourceRect, TGopTransparency aTransparency)
  642. : TGraphicsOperation(EScaledBitBltTransparent,sizeof(*this)), iDestination(aDestination), iSourceBitmap(aSourceBitmap), iSourceRect(aSourceRect), iTransparency(aTransparency) {}
  643. public:
  644. TRect iDestination;
  645. TAcceleratedBitmapSpec iSourceBitmap;
  646. TRect iSourceRect;
  647. TGopTransparency iTransparency;
  648. };
  649. #line 1355
  650. class TGopScaledBitBltAlphaChannel : public TGraphicsOperation
  651. {
  652. public:
  653. #line 1367
  654. inline TGopScaledBitBltAlphaChannel(const TRect& aDestination, TAcceleratedBitmapSpec aSourceBitmap, TRect& aSourceRect)
  655. : TGraphicsOperation(EScaledBitBltAlphaChannel,sizeof(*this)), iDestination(aDestination), iSourceBitmap(aSourceBitmap), iSourceRect(aSourceRect) {}
  656. public:
  657. TRect iDestination;
  658. TAcceleratedBitmapSpec iSourceBitmap;
  659. TRect iSourceRect;
  660. };
  661. #line 1394
  662. class TGopScaledBitBltAlphaBitmap : public TGraphicsOperation
  663. {
  664. public:
  665. #line 1406
  666. inline TGopScaledBitBltAlphaBitmap(const TRect& aDestination, TAcceleratedBitmapSpec aSourceBitmap, TRect& aSourceRect, TAcceleratedBitmapSpec aAlphaBitmap)
  667. : TGraphicsOperation(EScaledBitBltAlphaBitmap,sizeof(*this)), iDestination(aDestination), iSourceBitmap(aSourceBitmap), iSourceRect(aSourceRect), iAlphaBitmap(aAlphaBitmap) {}
  668. public:
  669. TRect iDestination;
  670. TAcceleratedBitmapSpec iSourceBitmap;
  671. TRect iSourceRect;
  672. TAcceleratedBitmapSpec iAlphaBitmap;
  673. };
  674. #line 1434
  675. class TGopFilledPolygon : public TGraphicsOperation
  676. {
  677. public:
  678. inline TGopFilledPolygon(TRgb aColor, CGraphicsContext::TFillRule aFillRule)
  679. : TGraphicsOperation(EFilledPolygon,sizeof(*this)), iColor(aColor), iFillRule(aFillRule), iNumPoints(0) {}
  680. inline void AddPoints(TInt aNumPoints, TPoint* aPoints);
  681. public:
  682. TRgb iColor;
  683. CGraphicsContext::TFillRule iFillRule;
  684. TInt iNumPoints;
  685. };
  686. inline void TGopFilledPolygon::AddPoints(TInt aNumPoints, TPoint* aPoints)
  687. { Append(aNumPoints*sizeof(TPoint),aPoints); iNumPoints += aNumPoints; }
  688. #line 1478
  689. class TGopFilledPolygonWithPattern : public TGraphicsOperation
  690. {
  691. public:
  692. inline TGopFilledPolygonWithPattern(TGopFillPattern aPattern, CGraphicsContext::TFillRule aFillRule)
  693. : TGraphicsOperation(EFilledPolygonWithPattern,sizeof(*this)), iPattern(aPattern), iFillRule(aFillRule), iNumPoints(0) {}
  694. inline void AddPoints(TInt aNumPoints, TPoint* aPoints);
  695. public:
  696. TGopFillPattern iPattern;
  697. CGraphicsContext::TFillRule iFillRule;
  698. TInt iNumPoints;
  699. };
  700. inline void TGopFilledPolygonWithPattern::AddPoints(TInt aNumPoints, TPoint* aPoints)
  701. { Append(aNumPoints*sizeof(TPoint),aPoints); iNumPoints += aNumPoints; }
  702. #line 23 "C:\Symbian\9.1\S60_3rd\epoc32\include\bitdev.h" /* stack depth 5 */
  703. enum {EScanBufSize=0x80};
  704. class CFbsDrawDevice;
  705. #line 53
  706. class CFbsDevice : public CBitmapDevice
  707. {
  708. friend class CFbsBitGc;
  709. public:
  710. __declspec(dllexport) ~CFbsDevice();
  711. __declspec(dllexport) TInt CreateContext(CFbsBitGc*& aGc);
  712. inline TInt CreateContext(CGraphicsContext*& aGc);
  713. __declspec(dllexport) TDisplayMode DisplayMode() const;
  714. __declspec(dllexport) TSize SizeInPixels() const;
  715. __declspec(dllexport) TBool RectCompare(const TRect& aSourceRect,const CFbsDevice& aDevice,const TRect& aDeviceRect) const;
  716. __declspec(dllexport) TInt AddFile(const TDesC& aName,TInt& aId);
  717. __declspec(dllexport) void RemoveFile(TInt aId=0);
  718. __declspec(dllexport) virtual TInt GetNearestFontInTwips(CFont*& aFont, const TFontSpec& aFontSpec);
  719. __declspec(dllexport) virtual TInt GetNearestFontInPixels(CFont*& aFont, const TFontSpec& aFontSpec);
  720. __declspec(dllexport) virtual TInt GetNearestFontToDesignHeightInTwips(CFont*& aFont, const TFontSpec& aFontSpec);
  721. __declspec(dllexport) virtual TInt GetNearestFontToDesignHeightInPixels(CFont*& aFont, const TFontSpec& aFontSpec);
  722. __declspec(dllexport) virtual TInt GetNearestFontToMaxHeightInTwips(CFont*& aFont, const TFontSpec& aFontSpec, TInt aMaxHeight);
  723. __declspec(dllexport) virtual TInt GetNearestFontToMaxHeightInPixels(CFont*& aFont, const TFontSpec& aFontSpec, TInt aMaxHeight);
  724. __declspec(dllexport) TInt GetFontById(CFont*& aFont,TUid aFileId,const TAlgStyle& aStyle);
  725. inline TInt GetNearestFontInTwips(CFbsFont*& aFont, const TFontSpec& aFontSpec);
  726. inline TInt GetNearestFontInPixels(CFbsFont*& aFont, const TFontSpec& aFontSpec);
  727. inline TInt GetNearestFontToDesignHeightInTwips(CFbsFont*& aFont, const TFontSpec& aFontSpec);
  728. inline TInt GetNearestFontToDesignHeightInPixels(CFbsFont*& aFont, const TFontSpec& aFontSpec);
  729. inline TInt GetNearestFontToMaxHeightInTwips(CFbsFont*& aFont, const TFontSpec& aFontSpec, TInt aMaxHeight);
  730. inline TInt GetNearestFontToMaxHeightInPixels(CFbsFont*& aFont, const TFontSpec& aFontSpec, TInt aMaxHeight);
  731. inline TInt GetFontById(CFbsFont*& aFont,TUid aFileId,const TAlgStyle& aStyle);
  732. __declspec(dllexport) void ReleaseFont(CFont* aFont);
  733. __declspec(dllexport) TInt FontHeightInTwips(TInt aTypefaceIndex,TInt aHeightIndex) const;
  734. __declspec(dllexport) TInt FontHeightInPixels(TInt aTypefaceIndex,TInt aHeightIndex) const;
  735. __declspec(dllexport) TInt NumTypefaces() const;
  736. __declspec(dllexport) void TypefaceSupport(TTypefaceSupport& aTypefaceSupport,TInt aTypefaceIndex) const;
  737. __declspec(dllexport) TInt SetCustomPalette(const CPalette* aPalette);
  738. inline CGraphicsAccelerator* GraphicsAccelerator() const;
  739. inline CFbsBitGc::TGraphicsOrientation Orientation() const;
  740. __declspec(dllexport) static TDisplayMode DisplayMode16M();
  741. __declspec(dllexport) TInt SetScalingFactor(const TPoint& aOrigin,
  742.    TInt aFactorX, TInt aFactorY,
  743.    TInt aDivisorX, TInt aDivisorY);
  744. __declspec(dllexport) void GetDrawRect(TRect& aRect) const;
  745. protected:
  746. CFbsDevice();
  747. virtual void DrawingBegin(TBool = EFalse) {}
  748. virtual void DrawingEnd(TBool = EFalse) {}
  749. virtual void SetBits() {}
  750. virtual void CancelSprite() const {}
  751. virtual TSpriteBase* HideSprite() const {return(0 );}
  752. virtual TSpriteBase* HideSprite(const TRect&,const TRegion*) const {return(0 );}
  753. virtual void ShowSprite(TSpriteBase*) const {}
  754. virtual void ShowSprite(TSpriteBase*,const TRect&,const TRegion*) const {}
  755. TInt GetNearestFbsFont(CFbsFont*& aFont,const TFontSpec& aFontSpec);
  756. void DoGetScanLine(TDes8& aBuf,const TPoint& aPixel,TInt aLength,TDisplayMode aDispMode);
  757. void ReadLineDiffMode(TInt,TInt,TInt,TAny*,TDisplayMode) const;
  758. void TruncateRect(TRect& aRect);
  759. TBool SetOrientation(CFbsBitGc::TGraphicsOrientation aOrientation);
  760. void DrawingBegin(const CFbsBitmap* aBitmap,TBool aAlways);
  761. void DrawingEnd(const CFbsBitmap* aBitmap,TBool aAlways);
  762. protected:
  763. CFbsDrawDevice* iDrawDevice;
  764. RFbsSession* iFbs;
  765. CFbsTypefaceStore* iTypefaceStore;
  766. TBool iLockHeap;
  767. TBool iScreenDevice;
  768. TUint8* iBitBltMaskedBuffer;
  769. CGraphicsAccelerator* iGraphicsAccelerator;
  770. CFbsBitGc::TGraphicsOrientation iOrientation;
  771. };
  772. #line 131
  773. class CFbsScreenDevice : public CFbsDevice
  774. {
  775. public:
  776. __declspec(dllexport) static CFbsScreenDevice* NewL(const TDesC& aLibname,TDisplayMode aDispMode);
  777. __declspec(dllexport) static CFbsScreenDevice* NewL(const TDesC& aLibname,TDisplayMode aDispMode, TRgb aWhite);
  778. __declspec(dllexport) static CFbsScreenDevice* NewL(TInt aScreenNo, TDisplayMode aDispMode);
  779. __declspec(dllexport) virtual ~CFbsScreenDevice();
  780. __declspec(dllexport) void GetScanLine(TDes8& aBuf,const TPoint& aStartPixel,TInt aLength,TDisplayMode aDispMode) const;
  781. __declspec(dllexport) void GetPixel(TRgb& aColor,const TPoint& aPixel) const;
  782. __declspec(dllexport) TInt HorizontalPixelsToTwips(TInt aPixels) const;
  783. __declspec(dllexport) TInt VerticalPixelsToTwips(TInt aPixels) const;
  784. __declspec(dllexport) TInt HorizontalTwipsToPixels(TInt aTwips) const;
  785. __declspec(dllexport) TInt VerticalTwipsToPixels(TInt aTwips) const;
  786. __declspec(dllexport) void SetAutoUpdate(TBool aValue);
  787. __declspec(dllexport) void DrawSpriteBegin();
  788. __declspec(dllexport) void DrawSpriteEnd();
  789. __declspec(dllexport) void CancelSprite() const;
  790. __declspec(dllexport) TSpriteBase* HideSprite() const;
  791. __declspec(dllexport) TSpriteBase* HideSprite(const TRect& aRect,const TRegion* aClippingRegion) const;
  792. __declspec(dllexport) void ShowSprite(TSpriteBase* aSprite) const;
  793. __declspec(dllexport) void ShowSprite(TSpriteBase* aSprite,const TRect& aRect,const TRegion* aClippingRegion) const;
  794. __declspec(dllexport) void ChangeScreenDevice(CFbsScreenDevice* aOldDevice);
  795. __declspec(dllexport) void PaletteAttributes(TBool& aModifiable,TInt& aNumEntries) const;
  796. __declspec(dllexport) void SetPalette(CPalette* aPalette);
  797. __declspec(dllexport) TInt GetPalette(CPalette*& aPalette) const;
  798. __declspec(dllexport) void Update();
  799. __declspec(dllexport) void Update(const TRegion& aRegion);
  800. __declspec(dllexport) TSize SizeInTwips() const;
  801. __declspec(dllexport) RHardwareBitmap HardwareBitmap();
  802. private:
  803. CFbsScreenDevice(TInt aScreenNo);
  804. void ConstructL(TInt aScreenNo, TDisplayMode aDispMode);
  805. private:
  806. TSpriteBase* iSprite;
  807. TBool iSpriteDraw;
  808.     TInt iScreenNo;
  809. };
  810. #line 177
  811. class CFbsBitmapDevice : public CFbsDevice
  812. {
  813. public:
  814. __declspec(dllexport) static CFbsBitmapDevice* NewL(CFbsBitmap* aFbsBitmap);
  815. __declspec(dllexport) static CFbsBitmapDevice* NewL(CFbsBitmap* aFbsBitmap,const TDesC& aLibname);
  816. __declspec(dllexport) virtual ~CFbsBitmapDevice();
  817. __declspec(dllexport) TInt Resize(const TSize& aSize);
  818. __declspec(dllexport) virtual void GetScanLine(TDes8& aBuf,const TPoint& aStartPixel,TInt aLength,TDisplayMode iDispMode) const;
  819. __declspec(dllexport) virtual void GetPixel(TRgb& aColor,const TPoint& aPixel) const;
  820. __declspec(dllexport) virtual TInt HorizontalPixelsToTwips(TInt aPixels) const;
  821. __declspec(dllexport) virtual TInt VerticalPixelsToTwips(TInt aPixels) const;
  822. __declspec(dllexport) virtual TInt HorizontalTwipsToPixels(TInt aTwips) const;
  823. __declspec(dllexport) virtual TInt VerticalTwipsToPixels(TInt aTwips) const;
  824. __declspec(dllexport) virtual TSize SizeInTwips() const;
  825. __declspec(dllexport) virtual void PaletteAttributes(TBool& aModifiable,TInt& aNumEntries) const;
  826. __declspec(dllexport) virtual void SetPalette(CPalette* aPalette);
  827. __declspec(dllexport) virtual TInt GetPalette(CPalette*& aPalette) const;
  828. __declspec(dllexport) virtual void DrawingBegin(TBool aAlways);
  829. __declspec(dllexport) virtual void DrawingEnd(TBool aAlways);
  830. __declspec(dllexport) TInt SwapWidthAndHeight();
  831. private:
  832. CFbsBitmapDevice();
  833. virtual void SetBits();
  834. void ConstructL(CFbsBitmap* aFbsBitmap);
  835. void ConstructL(CFbsBitmap* aFbsBitmap,const TDesC& aLibname);
  836. private:
  837. CFbsBitGcBitmap* iFbsBmp;
  838. };
  839. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\bitdev.inl" /* stack depth 6 */
  840. #line 16
  841. TInt CFbsDevice::CreateContext(CGraphicsContext*& aGc)
  842. {
  843. return CreateContext((CFbsBitGc*&)aGc);
  844. }
  845. #line 36
  846. TInt CFbsDevice::GetNearestFontInTwips(CFbsFont*& aFont, const TFontSpec& aFontSpec)
  847. {
  848. return GetNearestFontToDesignHeightInTwips(aFont, aFontSpec);
  849. }
  850. #line 55
  851. TInt CFbsDevice::GetNearestFontInPixels(CFbsFont*& aFont, const TFontSpec& aFontSpec)
  852. {
  853. return GetNearestFontToDesignHeightInPixels(aFont, aFontSpec);
  854. }
  855. #line 74
  856. TInt CFbsDevice::GetNearestFontToDesignHeightInTwips(CFbsFont*& aFont, const TFontSpec& aFontSpec)
  857. {
  858. return GetNearestFontToDesignHeightInTwips((CFont*&)aFont, aFontSpec);
  859. }
  860. #line 92
  861. TInt CFbsDevice::GetNearestFontToDesignHeightInPixels(CFbsFont*& aFont, const TFontSpec& aFontSpec)
  862. {
  863. return GetNearestFontToDesignHeightInPixels((CFont*&)aFont, aFontSpec);
  864. }
  865. #line 117
  866. TInt CFbsDevice::GetNearestFontToMaxHeightInTwips(CFbsFont*& aFont, const TFontSpec& aFontSpec, TInt aMaxHeight)
  867. {
  868. return GetNearestFontToMaxHeightInTwips((CFont*&)aFont, aFontSpec, aMaxHeight);
  869. }
  870. #line 142
  871. TInt CFbsDevice::GetNearestFontToMaxHeightInPixels(CFbsFont*& aFont, const TFontSpec& aFontSpec, TInt aMaxHeight)
  872. {
  873. return GetNearestFontToMaxHeightInPixels((CFont*&)aFont, aFontSpec, aMaxHeight);
  874. }
  875. #line 156
  876. TInt CFbsDevice::GetFontById(CFbsFont*& aFont,TUid aFileId,const TAlgStyle& aStyle)
  877. {
  878. return GetFontById((CFont*&)aFont,aFileId,aStyle);
  879. }
  880. CGraphicsAccelerator* CFbsDevice::GraphicsAccelerator() const
  881. {
  882. return iGraphicsAccelerator;
  883. }
  884. CFbsBitGc::TGraphicsOrientation CFbsDevice::Orientation() const
  885. {
  886. return iOrientation;
  887. }
  888. #line 206 "C:\Symbian\9.1\S60_3rd\epoc32\include\bitdev.h" /* stack depth 5 */
  889. #line 26 "C:\Symbian\9.1\S60_3rd\epoc32\include\w32std.h" /* stack depth 4 */
  890. const static TLitC<sizeof(L"Wserv")/2> KWSERVThreadName={sizeof(L"Wserv")/2-1,L"Wserv"} ;
  891. const static TLitC<sizeof(L"!Windowserver")/2> KWSERVServerName={sizeof(L"!Windowserver")/2-1,L"!Windowserver"} ;
  892. class RWindowBase;
  893. class RWindow;
  894. class RWsBuffer;
  895. class TSizeMode
  896. {
  897. public:
  898. inline TSizeMode(){}
  899. inline TSizeMode(TSize& aSize);
  900. static inline TInt ScaledCord(TInt aOrigin,TInt aScale);
  901. inline TPoint ScaledOrigin();
  902. public:
  903. CFbsBitGc::TGraphicsOrientation iRotation;
  904. TPoint iOrigin;
  905. TSize iScreenSize;
  906. TSize iScreenTwipsSize;
  907. TUint iAlternativeRotations;
  908. TRect iPointerCursorArea;
  909. TSize iScreenScale;
  910. TDisplayMode iDefaultDisplayMode;
  911. };
  912. #line 79
  913. enum TScreenModeEnforcement
  914. {
  915. ESizeEnforcementNone,
  916. ESizeEnforcementPixelsAndRotation,
  917. ESizeEnforcementPixelsTwipsAndRotation,
  918. };
  919. struct TPixelsAndRotation
  920. #line 112
  921. {
  922. TSize iPixelSize;
  923. CFbsBitGc::TGraphicsOrientation iRotation;
  924. };
  925. struct TPixelsTwipsAndRotation
  926. #line 128
  927. {
  928. TSize iPixelSize;
  929. TSize iTwipsSize;
  930. CFbsBitGc::TGraphicsOrientation iRotation;
  931. };
  932. #line 144
  933. enum {
  934. KLogMessageLength=0x80
  935. };
  936. typedef TBuf<KLogMessageLength> TLogMessageText;
  937. #line 165
  938. enum
  939. {
  940. KPasswordWindowGroupPriority=1000
  941. };
  942. #line 185
  943. enum {
  944. KOrdinalPositionSwitchToOwningWindow=0x80000000
  945. };
  946. #line 201
  947. enum TCornerType
  948. {
  949. EWindowCornerSquare,
  950. EWindowCorner1,
  951. EWindowCorner2,
  952. EWindowCorner3,
  953. EWindowCorner5,
  954. EWindowCornerRegion,
  955. ECornerTypeMask=0xFFFF
  956. };
  957. #line 240
  958. enum TCornerFlags
  959. {
  960. EWindowCornerNotTL=0x10000,
  961. EWindowCornerNotTR=0x20000,
  962. EWindowCornerNotBL=0x40000,
  963. EWindowCornerNotBR=0x80000,
  964. };
  965. enum TWindowBackupType
  966. {
  967. EWindowBackupAreaBehind=0x0001,
  968. EWindowBackupFullScreen=0x0002,
  969. };
  970. #line 281
  971. enum TEventCode
  972. {
  973. EEventNull,
  974. #line 298
  975. EEventKey,
  976. EEventKeyUp,
  977. EEventKeyDown,
  978. EEventModifiersChanged,
  979. #line 325
  980. EEventPointer,
  981. EEventPointerEnter,
  982. EEventPointerExit,
  983. EEventPointerBufferReady,
  984. EEventDragDrop,
  985. EEventFocusLost,
  986. EEventFocusGained,
  987. EEventSwitchOn,
  988. #line 370
  989. EEventPassword,
  990. EEventWindowGroupsChanged,
  991. #line 386
  992. EEventErrorMessage,
  993. EEventMessageReady,
  994. EEventMarkInvalid,
  995. #line 401
  996. EEventSwitchOff,
  997. EEventKeySwitchOff,
  998. EEventScreenDeviceChanged,
  999. EEventFocusGroupChanged,
  1000. EEventCaseOpened,
  1001. #line 427
  1002. EEventCaseClosed,
  1003. EEventWindowGroupListChanged,
  1004. EEventWindowVisibilityChanged,
  1005. EEventKeyRepeat=100,
  1006. EEventDirectScreenAccessBegin=200,
  1007. EEventDirectScreenAccessEnd,
  1008. EEventHeartbeatTimerStateChange,
  1009. #line 472
  1010. EEventUser=1000,
  1011. };
  1012. enum THotKey
  1013. {
  1014. EHotKeyEnableLogging,
  1015. EHotKeyDisableLogging,
  1016. EHotKeyStateDump,
  1017. EHotKeyOfDeath,
  1018. EHotKeyShutDown,
  1019. EHotKeyHeapDump,
  1020. EHotKeyIncContrast,
  1021. EHotKeyDecContrast,
  1022. EHotKeyOff,
  1023. EHotKeyBacklightOn,
  1024. EHotKeyBacklightOff,
  1025. EHotKeyBacklightToggle,
  1026. EHotKeyScreenDimension0,
  1027. EHotKeyScreenDimension1,
  1028. EHotKeyScreenDimension2,
  1029. EHotKeyScreenDimension3,
  1030. #line 569
  1031. EHotKeyCycleDisplaySize,
  1032. #line 583
  1033. EHotKeyCycleOrientation,
  1034. EHotKeyIncBrightness,
  1035. EHotKeyDecBrightness,
  1036. EHotKeyCycleFocusScreen,
  1037. EHotKeyFirstKeyType=EHotKeyEnableLogging,
  1038. EHotKeyLastKeyType=EHotKeyCycleFocusScreen,
  1039. };
  1040. enum TPasswordMode
  1041. {
  1042. EPasswordCancel,
  1043. EPasswordNone,
  1044. EPasswordOnceADay,
  1045. EPasswordAlways,
  1046. EPasswordAlwaysTriggerNow,
  1047. EPasswordOnceADayTriggerNow,
  1048. };
  1049. struct TTextCursor
  1050. #line 662
  1051.     {
  1052. #line 675
  1053. enum ENamedCursors
  1054. {
  1055. ETypeNone,
  1056. ETypeRectangle,
  1057. ETypeHollowRectangle,
  1058. ETypeFirst=ETypeRectangle,
  1059. ETypeLast=ETypeHollowRectangle,
  1060. ETypeLastBasic = 1000,
  1061. };
  1062. typedef TInt EType;
  1063. enum EFlags
  1064. {
  1065. EFlagNoFlash = 0x00000001,
  1066. EFlagClipHorizontal = 0x00000002,
  1067. EFlagClipVertical = 0x00000004,
  1068. EUserFlags = 0x0000FFFF,
  1069. EFlagClipped = 0x00010000,
  1070. EPrivateFlags = 0xFFFF0000,
  1071. };
  1072. TInt iType;
  1073.     TInt iHeight;
  1074.     TInt iAscent;
  1075.     TInt iWidth;
  1076.     TUint iFlags;
  1077. TRgb iColor;
  1078.     };
  1079. #line 762
  1080. enum TSpriteFlags
  1081. {
  1082. ESpriteFlash=0x1,
  1083. #line 782
  1084. ESpriteNoChildClip=0x2,
  1085. ESpriteNoShadows=0x4,
  1086. ESpriteNonSystemFlags=0x0000FFFF,
  1087. ESpriteSystemFlags=   0xFFFF0000,
  1088. ESpritePointer=0x10000,
  1089. ESpriteOOM=0x20000,
  1090. ESpriteDisabled=0x40000,
  1091. ESpriteActive=0x80000,
  1092. };
  1093. struct TSpriteMember
  1094. {
  1095. CFbsBitmap *iBitmap;
  1096. #line 832
  1097. CFbsBitmap *iMaskBitmap;
  1098. TBool iInvertMask;
  1099. CGraphicsContext::TDrawMode iDrawMode;
  1100. TPoint iOffset;
  1101. TTimeIntervalMicroSeconds32 iInterval;
  1102. };
  1103. #line 860
  1104. enum TEventControl
  1105. {
  1106. EEventControlAlways,
  1107. EEventControlOnlyWithKeyboardFocus,
  1108. EEventControlOnlyWhenVisible
  1109. };
  1110. #line 882
  1111. enum TPointerFilter
  1112. {
  1113. EPointerFilterEnterExit=0x1,
  1114. EPointerFilterMove=0x2,
  1115. EPointerFilterDrag=0x4,
  1116. EPointerGenerateSimulatedMove=0x8,
  1117. #line 907
  1118. EPointerMoveEvents=EPointerFilterMove|EPointerGenerateSimulatedMove,
  1119. };
  1120. struct TPointerEvent
  1121. {
  1122. enum TType
  1123. {
  1124. EButton1Down,
  1125. EButton1Up,
  1126. EButton2Down,
  1127. EButton2Up,
  1128. EButton3Down,
  1129. EButton3Up,
  1130. EDrag,
  1131. EMove,
  1132. EButtonRepeat,
  1133. ESwitchOn,
  1134. };
  1135. TType iType;
  1136. TUint iModifiers;
  1137. TPoint iPosition;
  1138. TPoint iParentPosition;
  1139. };
  1140. struct TKeyEvent
  1141. #line 989
  1142. {
  1143. TUint iCode;
  1144. TInt iScanCode;
  1145. TUint iModifiers;
  1146. TInt iRepeats;
  1147. };
  1148. struct TModifiersChangedEvent
  1149. {
  1150. TUint iChangedModifiers;
  1151. TUint iModifiers;
  1152. };
  1153. struct TWsVisibilityChangedEvent
  1154. {
  1155. enum
  1156. {
  1157. ECanBeSeen = 0x01,
  1158. ECantBeSeen = 0x02,
  1159. };
  1160. enum
  1161. {
  1162. EPartiallyVisible = 0x01,
  1163. ENotVisible = 0x02,
  1164. EFullyVisible = 0x04,
  1165. };
  1166. TUint iFlags;
  1167. };
  1168. struct TWsErrorMessage
  1169. {
  1170. enum TErrorCategory
  1171. {
  1172. EDrawingRegion,
  1173. EBackLight,
  1174. ELogging,
  1175. EContrast,
  1176. };
  1177. TErrorCategory iErrorCategory;
  1178. TUint iError;
  1179. };
  1180. class TWsRedrawEvent
  1181. #line 1096
  1182. {
  1183. public:
  1184. inline TUint Handle() const;
  1185. inline TRect Rect() const;
  1186. public:
  1187. void SetHandle(TUint aHandle);
  1188. void SetRect(TRect aRect);
  1189. protected:
  1190. TUint iHandle;
  1191. TRect iRect;
  1192. };
  1193. class TWsPriorityKeyEvent
  1194. {
  1195. public:
  1196. inline TKeyEvent *Key() const;
  1197. inline TUint Handle() const;
  1198. inline void SetHandle(TUint aHandle);
  1199. protected:
  1200. TUint iHandle;
  1201. TUint8 iEventData[sizeof(TKeyEvent)];
  1202. };
  1203. class TWsEvent
  1204. #line 1143
  1205. {
  1206. public:
  1207. enum
  1208. {
  1209. EWsEventDataSize=sizeof(TPointerEvent)+8
  1210. };
  1211. public:
  1212. inline TPointerEvent* Pointer() const;
  1213. inline TKeyEvent* Key() const;
  1214. inline TModifiersChangedEvent* ModifiersChanged() const;
  1215. inline TWsVisibilityChangedEvent* VisibilityChanged();
  1216. inline const TWsVisibilityChangedEvent* VisibilityChanged() const;
  1217. inline TWsErrorMessage* ErrorMessage() const;
  1218. inline TUint8* EventData() const;
  1219. inline TInt Type() const;
  1220. inline TUint Handle() const;
  1221. inline TTime Time() const;
  1222. inline void SetType(TInt aType);
  1223. inline void SetHandle(TUint aHandle);
  1224. inline void SetTimeNow();
  1225. inline TInt* Int() const;
  1226. protected:
  1227. TInt iType;
  1228. TUint iHandle;
  1229. TTime iTime;
  1230. TUint8 iEventData[EWsEventDataSize];
  1231. };
  1232. class RWsPointerCursor;
  1233. #line 1192
  1234. enum TPointerCursorMode
  1235. {
  1236. EPointerCursorNone,
  1237. EPointerCursorFixed,
  1238. EPointerCursorNormal,
  1239. EPointerCursorWindow,
  1240. EPointerCursorFirstMode=EPointerCursorNone,
  1241. EPointerCursorLastMode=EPointerCursorWindow,
  1242. };
  1243. #line 1229
  1244. enum TLongCaptureFlags
  1245. {
  1246. ELongCaptureShortEventImmediately=0x01,
  1247. ELongCaptureRepeatEvents=0x02,
  1248. ELongCaptureNormal=ELongCaptureShortEventImmediately,
  1249. ELongCaptureWaitShort=0,
  1250. };
  1251. class TIpcArgs;
  1252. class TReadDescriptorType;
  1253. class TWriteDescriptorType;
  1254. class CWindowGc;
  1255. class MWsClientClass
  1256. {
  1257. friend class CWindowGc;
  1258. public:
  1259. MWsClientClass();
  1260. MWsClientClass(RWsBuffer *aBuffer);
  1261. inline TInt WsHandle() const;
  1262. protected:
  1263. void Write(const TAny *aData, TInt aLength,const TAny *aData2, TInt aLength2,TUint aOpcode) const;
  1264. void Write(const TAny *aBuf, TInt aBufLen,TUint aOpcode) const;
  1265. void Write(TUint aOpcode) const;
  1266. void WriteInt(TInt aInt, TUint aOpcode) const;
  1267. void WriteRect(const TRect &aRect, TUint aOpcode) const;
  1268. void WritePoint(const TPoint &aPoint, TUint aOpcode) const;
  1269. void WriteSize(const TSize &aSize, TUint aOpcode) const;
  1270. TInt WriteReply(TUint aOpcode,const TIpcArgs* aIpcArgs=0 ) const;
  1271. TInt WriteReplyInt(TInt aInt, TUint aOpcode,const TIpcArgs* aIpcArgs=0 ) const;
  1272. TInt WriteReply(const TAny *aBuf, TInt aBufLen,TUint aOpcode,const TIpcArgs* aIpcArgs=0 ) const;
  1273. TInt WriteReply(const TAny *aBuf, TInt aBufLen,const TAny *aBuf2, TInt aBuflen2,TUint aOpcode,const TIpcArgs* aIpcArgs=0 ) const;
  1274. TInt WriteReplyP(const TWriteDescriptorType& aReplyPackage,TUint aOpcode) const;
  1275. TInt WriteReplyIntP(TInt aInt, const TWriteDescriptorType& aReplyPackage,TUint aOpcode) const;
  1276. TInt WriteReplyP(const TAny *aBuf, TInt aBufLen, const TWriteDescriptorType& aReplyPackage,TUint aOpcode) const;
  1277. TInt WriteReplyP(const TAny *aBuf, TInt aBufLen,const TAny *aBuf2, TInt aBuflen2, const TWriteDescriptorType& aReplyPackage,TUint aOpcode) const;
  1278. TInt WriteReplyByProvidingRemoteReadAccess(const TAny* aBuf, TInt aBufLen,const TReadDescriptorType& aRemoteReadBuffer,TUint aOpcode) const;
  1279. void AddToBitmapArray(const TInt aBitmapHandle)const;
  1280. protected:
  1281. TInt32 iWsHandle;
  1282. RWsBuffer *iBuffer;
  1283. };
  1284. class RWindowTreeNode;
  1285. class CWsScreenDevice;
  1286. class CWsBitmap;
  1287. class RAnimDll;
  1288. class RWsSpriteBase;
  1289. class RDirectScreenAccess;
  1290. class RSoundPlugIn;
  1291. class RWsSession : public MWsClientClass, public RSessionBase
  1292. #line 1339
  1293. {
  1294. friend class RWsBuffer;
  1295. friend class RWindowTreeNode;
  1296. friend class CWsScreenDevice;
  1297. friend class CWsBitmap;
  1298. friend class RAnimDll;
  1299. friend class RWsSpriteBase;
  1300. friend class RDirectScreenAccess;
  1301. friend class RSoundPlugIn;
  1302. public:
  1303. #line 1357
  1304. enum TComputeMode
  1305. {
  1306. EPriorityControlDisabled,
  1307. EPriorityControlComputeOn,
  1308. EPriorityControlComputeOff
  1309. };
  1310. enum {ESystemInfoArraySize=16};
  1311. enum TLoggingCommand
  1312. {
  1313. ELoggingEnable,
  1314. ELoggingDisable,
  1315. ELoggingStatusDump,
  1316. ELoggingHeapDump,
  1317. };
  1318. struct TWindowGroupChainInfo
  1319. {
  1320. TInt iId;
  1321. TInt iParentId;
  1322. };
  1323. struct SSystemInfo
  1324. {
  1325. TInt iInfo[ESystemInfoArraySize];
  1326. };
  1327. enum TCustomTextCursorAlignment
  1328. {
  1329. ECustomTextCursorAlignTop,
  1330. ECustomTextCursorAlignBaseline,
  1331. ECustomTextCursorAlignBottom
  1332. };
  1333. public:
  1334. __declspec(dllexport) RWsSession();
  1335. __declspec(dllexport) TInt Connect();
  1336. __declspec(dllexport) TInt Connect(RFs& aFileServer);
  1337. __declspec(dllexport) void Close();
  1338. __declspec(dllexport) TVersion Version();
  1339. __declspec(dllexport) TInt SetHotKey(THotKey aType, TUint aKeyCode, TUint aModifierMask, TUint aModifier);
  1340. __declspec(dllexport) TInt ClearHotKeys(THotKey aType);
  1341. __declspec(dllexport) TInt RestoreDefaultHotKey(THotKey aType);
  1342. __declspec(dllexport) void EventReady(TRequestStatus *aStat);
  1343. __declspec(dllexport) void EventReadyCancel();
  1344. __declspec(dllexport) void GetEvent(TWsEvent &aEvent);
  1345. __declspec(dllexport) void PurgePointerEvents();
  1346. __declspec(dllexport) void RedrawReady(TRequestStatus *aStat);
  1347. __declspec(dllexport) void RedrawReadyCancel();
  1348. __declspec(dllexport) void GetRedraw(TWsRedrawEvent &aEvent);
  1349. __declspec(dllexport) void PriorityKeyReady(TRequestStatus *aStat);
  1350. __declspec(dllexport) void PriorityKeyReadyCancel();
  1351. __declspec(dllexport) void GetPriorityKey(TWsPriorityKeyEvent &aEvent);
  1352. __declspec(dllexport) void Flush();
  1353. __declspec(dllexport) TBool SetAutoFlush(TBool aState);
  1354. __declspec(dllexport) TInt SetKeyboardRepeatRate(const TTimeIntervalMicroSeconds32 &aInitialTime, const TTimeIntervalMicroSeconds32 &aTime);
  1355. __declspec(dllexport) void GetKeyboardRepeatRate(TTimeIntervalMicroSeconds32 &aInitialTime, TTimeIntervalMicroSeconds32 &aTime);
  1356. __declspec(dllexport) void GetDoubleClickSettings(TTimeIntervalMicroSeconds32 &aInterval, TInt &aDistance);
  1357. __declspec(dllexport) TInt SetDoubleClick(const TTimeIntervalMicroSeconds32 &aInterval, TInt aDistance);
  1358. __declspec(dllexport) TInt NumWindowGroups() const;
  1359. __declspec(dllexport) TInt WindowGroupList(CArrayFixFlat<TInt> *aWindowList);
  1360. __declspec(dllexport) TInt WindowGroupList(RArray<TWindowGroupChainInfo> * aWindowList);
  1361. __declspec(dllexport) TInt NumWindowGroups(TInt aPriority) const;
  1362. __declspec(dllexport) TInt WindowGroupList(TInt aPriority, CArrayFixFlat<TInt> *aWindowList);
  1363. __declspec(dllexport) TInt WindowGroupList(TInt aPriority, RArray<TWindowGroupChainInfo> * aWindowList);
  1364. __declspec(dllexport) TInt GetFocusWindowGroup();
  1365. __declspec(dllexport) TInt GetDefaultOwningWindow();
  1366. __declspec(dllexport) TInt SetWindowGroupOrdinalPosition(TInt aIdentifier, TInt aPosition);
  1367. __declspec(dllexport) TInt GetWindowGroupClientThreadId(TInt aIdentifier, TThreadId &aThreadId);
  1368. __declspec(dllexport) TInt GetWindowGroupHandle(TInt aIdentifier);
  1369. __declspec(dllexport) TInt GetWindowGroupOrdinalPriority(TInt aIdentifier);
  1370. __declspec(dllexport) TInt SendEventToWindowGroup(TInt aIdentifier, const TWsEvent &aEvent);
  1371. __declspec(dllexport) TInt SendEventToAllWindowGroups(const TWsEvent &aEvent);
  1372. __declspec(dllexport) TInt SendEventToAllWindowGroups(TInt aPriority, const TWsEvent &aEvent);
  1373. __declspec(dllexport) TInt SendEventToOneWindowGroupsPerClient(const TWsEvent &aEvent);
  1374. __declspec(dllexport) TInt GetWindowGroupNameFromIdentifier(TInt aIdentifier, TDes &aWindowName);
  1375. __declspec(dllexport) TInt FindWindowGroupIdentifier(TInt aPreviousIdentifier,const TDesC& aMatch,TInt aOffset=0);
  1376. __declspec(dllexport) TInt FindWindowGroupIdentifier(TInt aPreviousIdentifier,TThreadId aThreadId);
  1377. __declspec(dllexport) TInt SendMessageToWindowGroup(TInt aIdentifier, TUid aUid, const TDesC8 &aParams);
  1378. __declspec(dllexport) TInt SendMessageToAllWindowGroups(TUid aUid, const TDesC8& aParams);
  1379. __declspec(dllexport) TInt SendMessageToAllWindowGroups(TInt aPriority, TUid aUid, const TDesC8& aParams);
  1380. __declspec(dllexport) TInt FetchMessage(TUid &aUid, TPtr8 &aParams, const TWsEvent& aMessageEvent);
  1381. __declspec(dllexport) void SetShadowVector(const TPoint &aVector);
  1382. __declspec(dllexport) TPoint ShadowVector() const;
  1383. __declspec(dllexport) void SetBackgroundColor(TRgb aColor);
  1384. __declspec(dllexport) TRgb GetBackgroundColor() const;
  1385. __declspec(dllexport) TInt SetSystemPointerCursor(const RWsPointerCursor &aPointerCursor,TInt aCursorNumber);
  1386. __declspec(dllexport) void ClearSystemPointerCursor(TInt aCursorNumber);
  1387. __declspec(dllexport) TInt ClaimSystemPointerCursorList();
  1388. __declspec(dllexport) void FreeSystemPointerCursorList();
  1389. __declspec(dllexport) TInt SetCustomTextCursor(TInt aIdentifier, const TArray<TSpriteMember>& aSpriteMemberArray, TUint aSpriteFlags, TCustomTextCursorAlignment aAlignment);
  1390. __declspec(dllexport) TInt ResourceCount();
  1391. __declspec(dllexport) void PasswordEntered();
  1392. __declspec(dllexport) void ComputeMode(TComputeMode aMode);
  1393. __declspec(dllexport) TInt HeapCount() const;
  1394. __declspec(dllexport) void MarkStart();
  1395. __declspec(dllexport) void CheckNum(TUint aCount);
  1396. __declspec(dllexport) void MarkEnd(TUint aCount);
  1397. __declspec(dllexport) void HeapSetFail(TInt aTAllocFail,TInt aValue);
  1398. __declspec(dllexport) TInt SetModifierState(TEventModifier aModifier,TModifierState aState);
  1399. __declspec(dllexport) TInt GetModifierState() const;
  1400. __declspec(dllexport) TInt RequestOffEvents(TBool aOn,RWindowTreeNode *aWin=0 );
  1401. __declspec(dllexport) TDisplayMode GetDefModeMaxNumColors(TInt& aColor,TInt& aGray) const;
  1402. __declspec(dllexport) TInt GetColorModeList(CArrayFixFlat<TInt> *aModeList) const;
  1403. __declspec(dllexport) void SetPointerCursorArea(const TRect& aArea);
  1404. __declspec(dllexport) void SetPointerCursorArea(TInt aScreenSizeMode,const TRect& aArea);
  1405. __declspec(dllexport) TRect PointerCursorArea() const;
  1406. __declspec(dllexport) TRect PointerCursorArea(TInt aScreenSizeMode) const;
  1407. __declspec(dllexport) void SetPointerCursorMode(TPointerCursorMode aMode);
  1408. __declspec(dllexport) TInt SetClientCursorMode(TPointerCursorMode aMode);
  1409. __declspec(dllexport) TPointerCursorMode PointerCursorMode() const;
  1410. __declspec(dllexport) void SetDefaultSystemPointerCursor(TInt aCursorNumber);
  1411. __declspec(dllexport) void ClearDefaultSystemPointerCursor();
  1412. __declspec(dllexport) TInt SetPointerCursorPosition(const TPoint& aPosition);
  1413. __declspec(dllexport) TPoint PointerCursorPosition() const;
  1414. __declspec(dllexport) void SetDefaultFadingParameters(TUint8 aBlackMap,TUint8 aWhiteMap);
  1415. __declspec(dllexport) void PrepareForSwitchOff();
  1416. __declspec(dllexport) void SetBufferSizeL(TInt aBufSize);
  1417. __declspec(dllexport) TInt SetSystemFaded(TBool aFaded);
  1418. __declspec(dllexport) TInt SetSystemFaded(TBool aFaded,TUint8 aBlackMap,TUint8 aWhiteMap);
  1419. __declspec(dllexport) TInt SetFocusScreen(TInt aScreenNumber);
  1420. __declspec(dllexport) TInt GetFocusScreen();
  1421. __declspec(dllexport) void ClearAllRedrawStores();
  1422. __declspec(dllexport) void SetRemoveKeyCode(TBool aRemove);
  1423. __declspec(dllexport) void SimulateXyInputType(TXYInputType aInputType);
  1424. __declspec(dllexport) void SimulateRawEvent(TRawEvent aEvent);
  1425. __declspec(dllexport) void SimulateKeyEvent(TKeyEvent aEvent);
  1426. __declspec(dllexport) void LogCommand(TLoggingCommand aCommand);
  1427. __declspec(dllexport) void LogMessage(const TLogMessageText &aMessage);
  1428. __declspec(dllexport) void SystemInfo(TInt &aSystemInfoNumber, SSystemInfo &aSystemInfo);
  1429. __declspec(dllexport) void TestWrite(TInt aHandle,TInt aOpcode,const TAny *aData, TInt aLength);
  1430. __declspec(dllexport) void TestWriteReply(TInt aHandle,TInt aOpcode,const TAny *aData, TInt aLength);
  1431. __declspec(dllexport) void TestWriteReplyP(TInt aHandle,TInt aOpcode,const TAny *aData,TInt aLength,TDes8 *aReplyPackage);
  1432. __declspec(dllexport) TInt TestWriteReplyByProvidingRemoteReadAccess(TInt aHandle,TInt aOpcode,const TDesC8& aData,const TDesC8& aRemoteReadBuffer);
  1433. __declspec(dllexport) TInt TestWriteReplyByProvidingRemoteReadAccess(TInt aHandle,TInt aOpcode,const TDesC8& aData,const TDesC16& aRemoteReadBuffer);
  1434. private:
  1435. TInt doWindowGroupList(TInt aPriority, CArrayFixFlat<TInt> * aWindowListId, TInt aNumOpcode, TInt aListOpcode);
  1436. TInt doWindowGroupList(TInt aPriority, RArray<TWindowGroupChainInfo> * aWindowListCh, TInt aNumOpcode, TInt aListOpcode);
  1437. TInt doSetHotKey(TInt aOpcode, TInt aType, TUint aKeycode, TUint aModifierMask, TUint aModifiers);
  1438. void doReadEvent(TRequestStatus *aStat, TInt aOpcode);
  1439. private:
  1440. void connectL();
  1441. TInt DoFlush(const TIpcArgs& aIpcArgs);
  1442. void DirectAcessActivation(TBool aIsNowActive);
  1443. };
  1444. class RWindowGroup;
  1445. class RWsSprite;
  1446. typedef TInt (*AnimCommand)(TPtr8 *aBufPtr,TAny *aPackage);
  1447. class RWindowTreeNode : public MWsClientClass
  1448. #line 1581
  1449. {
  1450. friend class RWindowGroup;
  1451. friend class RWindowBase;
  1452. friend class CWindowGc;
  1453. friend class RAnimDll;
  1454. friend class RWsSprite;
  1455. public:
  1456. enum TFadeControl
  1457. {
  1458. EFadeIncludeChildren=ETrue,
  1459. EFadeWindowOnly=EFalse,
  1460. };
  1461. protected:
  1462. RWindowTreeNode();
  1463. RWindowTreeNode(RWsSession &aWs);
  1464. public:
  1465. __declspec(dllexport) void Close();
  1466. __declspec(dllexport) void Destroy();
  1467. __declspec(dllexport) TUint32 Parent() const;
  1468. __declspec(dllexport) TUint32 PrevSibling() const;
  1469. __declspec(dllexport) TUint32 NextSibling() const;
  1470. __declspec(dllexport) TUint32 Child() const;
  1471. __declspec(dllexport) TInt OrdinalPriority() const;
  1472. __declspec(dllexport) TInt OrdinalPosition() const;
  1473. __declspec(dllexport) TInt FullOrdinalPosition() const;
  1474. __declspec(dllexport) void SetOrdinalPosition(TInt aPos);
  1475. __declspec(dllexport) void SetOrdinalPosition(TInt aPos,TInt aOrdinalPriority);
  1476. __declspec(dllexport) TInt WindowGroupId();
  1477. __declspec(dllexport) TInt SetPointerCursor(TInt aCursorNumber);
  1478. __declspec(dllexport) void SetCustomPointerCursor(const RWsPointerCursor &aPointerCursor);
  1479. __declspec(dllexport) TInt EnableOnEvents(TEventControl aCircumstances=EEventControlOnlyWithKeyboardFocus);
  1480. __declspec(dllexport) void DisableOnEvents();
  1481. __declspec(dllexport) TInt EnableGroupChangeEvents();
  1482. __declspec(dllexport) void DisableGroupChangeEvents();
  1483. __declspec(dllexport) TInt EnableFocusChangeEvents();
  1484. __declspec(dllexport) void DisableFocusChangeEvents();
  1485. __declspec(dllexport) TInt EnableGroupListChangeEvents();
  1486. __declspec(dllexport) void DisableGroupListChangeEvents();
  1487. __declspec(dllexport) TInt EnableVisibilityChangeEvents();
  1488. __declspec(dllexport) void DisableVisibilityChangeEvents();
  1489. __declspec(dllexport) TInt EnableErrorMessages(TEventControl aCircumstances);
  1490. __declspec(dllexport) void DisableErrorMessages();
  1491. __declspec(dllexport) TInt EnableModifierChangedEvents(TUint aModifierMask, TEventControl aCircumstances);
  1492. __declspec(dllexport) void DisableModifierChangedEvents();
  1493. __declspec(dllexport) void SetNonFading(TBool aNonFading);
  1494. __declspec(dllexport) void SetFaded(TBool aFaded,TFadeControl aIncludeChildren);
  1495. __declspec(dllexport) void SetFaded(TBool aFaded,TFadeControl aIncludeChildren,TUint8 aBlackMap,TUint8 aWhiteMap);
  1496. __declspec(dllexport) void ClearPointerCursor();
  1497. protected:
  1498. public: void __DbgTestInvariant() const; void __DbgTest(TAny *aPtr) const ;
  1499. };
  1500. class RWindowBase : public RWindowTreeNode
  1501. #line 1654
  1502. {
  1503. public:
  1504. enum TCaptureFlags
  1505. {
  1506. TCaptureFlagEnabled=0x01,
  1507. TCaptureFlagDragDrop=0x02,
  1508. TCaptureFlagAllGroups=0x04,
  1509. TCaptureDisabled=0,
  1510. TCaptureEnabled=TCaptureFlagEnabled,
  1511. TCaptureDragDrop=TCaptureFlagEnabled|TCaptureFlagDragDrop|TCaptureFlagAllGroups,
  1512. };
  1513. protected:
  1514. RWindowBase();
  1515. RWindowBase(RWsSession &aWs);
  1516. public:
  1517. __declspec(dllexport) void Activate();
  1518. __declspec(dllexport) void SetPosition(const TPoint &point);
  1519. __declspec(dllexport) TInt SetSizeErr(const TSize &size);
  1520. __declspec(dllexport) TInt SetExtentErr(const TPoint &point,const TSize &size);
  1521. __declspec(dllexport) TSize Size() const;
  1522. __declspec(dllexport) TPoint InquireOffset(const RWindowTreeNode &aWindow) const;
  1523. __declspec(dllexport) void PointerFilter(TUint32 aFilterMask, TUint32 aFilter);
  1524. __declspec(dllexport) void SetPointerGrab(TBool aState);
  1525. __declspec(dllexport) void ClaimPointerGrab(TBool aSendUpEvent=ETrue);
  1526. __declspec(dllexport) void SetPointerCapture(TInt aFlags);
  1527. __declspec(dllexport) void SetPointerCapturePriority(TInt aPriority);
  1528. __declspec(dllexport) TInt GetPointerCapturePriority() const;
  1529. __declspec(dllexport) void SetVisible(TBool aState);
  1530. __declspec(dllexport) void SetShadowHeight(TInt aHeight);
  1531. __declspec(dllexport) void SetShadowDisabled(TBool aState);
  1532. __declspec(dllexport) TPoint Position() const;
  1533. __declspec(dllexport) TPoint AbsPosition() const;
  1534. __declspec(dllexport) TInt SetCornerType(TCornerType aCornerType, TInt aCornerFlags=0);
  1535. __declspec(dllexport) TInt SetShape(const TRegion &aRegion);
  1536. __declspec(dllexport) TInt SetRequiredDisplayMode(TDisplayMode aMode);
  1537. __declspec(dllexport) TDisplayMode DisplayMode();
  1538. __declspec(dllexport) void EnableBackup(TUint aBackupType=EWindowBackupAreaBehind);
  1539. __declspec(dllexport) void RequestPointerRepeatEvent(TTimeIntervalMicroSeconds32 aTime,const TRect &aRect);
  1540. __declspec(dllexport) void CancelPointerRepeatEventRequest();
  1541. __declspec(dllexport) TInt AllocPointerMoveBuffer(TInt aMaxPoints, TUint aFlags);
  1542. __declspec(dllexport) void FreePointerMoveBuffer();
  1543. __declspec(dllexport) void EnablePointerMoveBuffer();
  1544. __declspec(dllexport) void DisablePointerMoveBuffer();
  1545. __declspec(dllexport) TInt RetrievePointerMoveBuffer(TDes8 &aBuf);
  1546. __declspec(dllexport) void DiscardPointerMoveBuffer();
  1547. __declspec(dllexport) TInt AddKeyRect(const TRect &aRect, TInt aScanCode, TBool aActivatedByPointerSwitchOn);
  1548. __declspec(dllexport) void RemoveAllKeyRects();
  1549. __declspec(dllexport) TInt PasswordWindow(TPasswordMode aPasswordMode);
  1550. __declspec(dllexport) void FadeBehind(TBool aFade);
  1551. __declspec(dllexport) TBool IsFaded();
  1552. __declspec(dllexport) TBool IsNonFading();
  1553. __declspec(dllexport) TInt MoveToGroup(TInt aIdentifier);
  1554. protected:
  1555. TInt construct(const RWindowTreeNode &parent,TUint32 aHandle, TInt aType, TDisplayMode aDisplayMode);
  1556. };
  1557. class RBlankWindow : public RWindowBase
  1558. #line 1735
  1559. {
  1560. public:
  1561. __declspec(dllexport) RBlankWindow();
  1562. __declspec(dllexport) RBlankWindow(RWsSession &aWs);
  1563. __declspec(dllexport) TInt Construct(const RWindowTreeNode &parent, TUint32 aHandle);
  1564. __declspec(dllexport) void SetColor(TRgb aColor);
  1565. __declspec(dllexport) void SetColor();
  1566. __declspec(dllexport) void SetSize(const TSize &size);
  1567. __declspec(dllexport) void SetExtent(const TPoint &point,const TSize &size);
  1568. };
  1569. class RDrawableWindow : public RWindowBase
  1570. #line 1757
  1571. {
  1572. protected:
  1573. RDrawableWindow();
  1574. RDrawableWindow(RWsSession &aWs);
  1575. public:
  1576. __declspec(dllexport) void Scroll(const TPoint &aOffset);
  1577. __declspec(dllexport) void Scroll(const TRect &aClipRect, const TPoint &aOffset);
  1578. __declspec(dllexport) void Scroll(const TPoint &aOffset, const TRect &aRect);
  1579. __declspec(dllexport) void Scroll(const TRect &aClipRect, const TPoint &aOffset, const TRect &aRect);
  1580. __declspec(dllexport) TRect GetDrawRect();
  1581. protected:
  1582. void SetDrawRect(const TRect &aRect);
  1583. private:
  1584. void doScroll(const TRect &aClipRect, const TPoint &aOffset, const TRect &aRect, TInt aOpcode);
  1585. TRect iDrawRect;
  1586. };
  1587. class RWindow : public RDrawableWindow
  1588. {
  1589. public:
  1590. __declspec(dllexport) RWindow();
  1591. __declspec(dllexport) RWindow(RWsSession &aWs);
  1592. __declspec(dllexport) TInt Construct(const RWindowTreeNode &parent,TUint32 aHandle);
  1593. __declspec(dllexport) void BeginRedraw();
  1594. __declspec(dllexport) void BeginRedraw(const TRect &aRect);
  1595. __declspec(dllexport) void EndRedraw();
  1596. __declspec(dllexport) void Invalidate();
  1597. __declspec(dllexport) void Invalidate(const TRect &aRect);
  1598. __declspec(dllexport) void GetInvalidRegion(RRegion &aRegion);
  1599. __declspec(dllexport) void SetBackgroundColor(TRgb aColor);
  1600. __declspec(dllexport) void SetBackgroundColor();
  1601. __declspec(dllexport) void SetSize(const TSize &size);
  1602. __declspec(dllexport) void SetExtent(const TPoint &point,const TSize &size);
  1603. __declspec(dllexport) void HandleTransparencyUpdate();
  1604. __declspec(dllexport) TInt SetTransparencyFactor(const TRgb& aTransparencyFactor);
  1605. __declspec(dllexport) TInt SetTransparencyBitmap(const CFbsBitmap& aTransparencyBitmap);
  1606. __declspec(dllexport) TInt SetTransparencyWsBitmap(const CWsBitmap& aTransparencyBitmap);
  1607. __declspec(dllexport) void SetNonTransparent();
  1608. __declspec(dllexport) void EnableRedrawStore(TBool aEnabled);
  1609. __declspec(dllexport) TInt SetTransparencyAlphaChannel();
  1610. __declspec(dllexport) TInt SetTransparentRegion(const TRegion& aRegion);
  1611. };
  1612. class RBackedUpWindow : public RDrawableWindow
  1613. #line 1823
  1614. {
  1615. public:
  1616. __declspec(dllexport) RBackedUpWindow();
  1617. __declspec(dllexport) RBackedUpWindow(RWsSession &aWs);
  1618. __declspec(dllexport) TInt Construct(const RWindowTreeNode &parent,TDisplayMode aDisplayMode, TUint32 aHandle);
  1619. __declspec(dllexport) TInt BitmapHandle();
  1620. __declspec(dllexport) void UpdateScreen();
  1621. __declspec(dllexport) void UpdateScreen(const TRegion &aRegion);
  1622. __declspec(dllexport) void UpdateBackupBitmap();
  1623. __declspec(dllexport) void MaintainBackup();
  1624. };
  1625. class RWindowGroup : public RWindowTreeNode
  1626. {
  1627. public:
  1628. __declspec(dllexport) RWindowGroup();
  1629. __declspec(dllexport) RWindowGroup(RWsSession &aWs);
  1630. __declspec(dllexport) TInt Construct(TUint32 aClientHandle);
  1631. __declspec(dllexport) TInt Construct(TUint32 aClientHandle,TBool aIsFocusable);
  1632. __declspec(dllexport) TInt ConstructChildApp(TInt aIdOfParentWindowGroup,TUint32 aClientHandle);
  1633. __declspec(dllexport) TInt ConstructChildApp(TInt aIdOfParentWindowGroup,TUint32 aClientHandle,TBool aIsFocusable);
  1634. __declspec(dllexport) void AllowProcessToCreateChildWindowGroups(TUid aProcessSID);
  1635. __declspec(dllexport) void EnableReceiptOfFocus(TBool aState);
  1636. __declspec(dllexport) void AutoForeground(TBool aState);
  1637. __declspec(dllexport) void SetOrdinalPriorityAdjust(TInt aAdjust);
  1638. __declspec(dllexport) TInt32 CaptureKey(TUint aKeycode, TUint aModifierMask, TUint aModifier);
  1639. __declspec(dllexport) TInt32 CaptureKey(TUint aKeycode, TUint aModifierMask, TUint aModifier, TInt aPriority);
  1640. __declspec(dllexport) void CancelCaptureKey(TInt32 aCaptureKey);
  1641. __declspec(dllexport) TInt32 CaptureKeyUpAndDowns(TUint aScanCode, TUint aModifierMask, TUint aModifier);
  1642. __declspec(dllexport) TInt32 CaptureKeyUpAndDowns(TUint aScanCode, TUint aModifierMask, TUint aModifier, TInt aPriority);
  1643. __declspec(dllexport) void CancelCaptureKeyUpAndDowns(TInt32 aCaptureKey);
  1644. __declspec(dllexport) TInt32 CaptureLongKey(TUint aInputKeyCode,TUint aOutputKeyCode,TUint aModifierMask,TUint aModifier
  1645. ,TInt aPriority,TUint aFlags);
  1646. __declspec(dllexport) TInt32 CaptureLongKey(TTimeIntervalMicroSeconds32 aRepeatTime,TUint aInputKeyCode,TUint aOutputKeyCode
  1647. ,TUint aModifierMask,TUint aModifier,TInt aPriority,TUint aFlags);
  1648. __declspec(dllexport) void CancelCaptureLongKey(TInt32 aCaptureKey);
  1649. __declspec(dllexport) TInt AddPriorityKey(TUint aKeycode, TUint aModifierMask, TUint aModifier);
  1650. __declspec(dllexport) void RemovePriorityKey(TUint aKeycode, TUint aModifierMask, TUint aModifier);
  1651. __declspec(dllexport) void SetTextCursor(RWindowBase &aWin, const TPoint &aPos, const TTextCursor &aCursor);
  1652. __declspec(dllexport) void SetTextCursor(RWindowBase &aWin, const TPoint &aPos, const TTextCursor &aCursor, const TRect &aClipRect);
  1653. __declspec(dllexport) void CancelTextCursor();
  1654. __declspec(dllexport) void SetOwningWindowGroup(TInt aIdentifier);
  1655. __declspec(dllexport) void DefaultOwningWindow();
  1656. __declspec(dllexport) TInt SetName(const TDesC &aName);
  1657. __declspec(dllexport) TInt Name(TDes &aWindowName) const;
  1658. __declspec(dllexport) TInt Identifier() const;
  1659. __declspec(dllexport) void DisableKeyClick(TBool aState);
  1660. __declspec(dllexport) TInt EnableScreenChangeEvents();
  1661. __declspec(dllexport) void DisableScreenChangeEvents();
  1662. __declspec(dllexport) void SimulatePointerEvent(TRawEvent aEvent);
  1663. private:
  1664. TInt32 doCaptureKey(TUint aKey, TUint aModifierMask, TUint aModifiers, TInt aPriority, TInt aOpcode);
  1665. void doCancelCaptureKey(TInt32 aCaptureKeyHandle, TInt aOpcode);
  1666. };
  1667. class CWsBitmap : public CFbsBitmap, public MWsClientClass
  1668. #line 1893
  1669. {
  1670. public:
  1671. __declspec(dllexport) CWsBitmap();
  1672. __declspec(dllexport) CWsBitmap(RWsSession &aWs);
  1673. __declspec(dllexport) ~CWsBitmap();
  1674. __declspec(dllexport) TInt Create(const TSize& aSizeInPixels,TDisplayMode aDispMode);
  1675. __declspec(dllexport) TInt Duplicate(TInt aHandle);
  1676. __declspec(dllexport) TInt Load(const TDesC& aFileName,TInt32 aId,TBool aShareIfLoaded=ETrue);
  1677. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  1678. __declspec(dllexport) void Reset();
  1679. private:
  1680. TInt createWsBitmap(TInt aErr);
  1681. };
  1682. class CWindowGc : public CBitmapContext, public MWsClientClass
  1683. #line 1933
  1684. {
  1685. friend class CWsScreenDevice;
  1686. public:
  1687. __declspec(dllexport) CWindowGc(CWsScreenDevice *aDevice);
  1688. __declspec(dllexport) virtual ~CWindowGc();
  1689. __declspec(dllexport) virtual TInt Construct();
  1690. __declspec(dllexport) virtual void Activate(RDrawableWindow &aDevice);
  1691. __declspec(dllexport) virtual void Deactivate();
  1692. __declspec(dllexport) virtual CGraphicsDevice* Device() const;
  1693. __declspec(dllexport) virtual void SetOrigin(const TPoint &aPoint=TPoint(0,0));
  1694. __declspec(dllexport) virtual void SetDrawMode(TDrawMode aDrawingMode);
  1695. __declspec(dllexport) virtual void SetClippingRect(const TRect& aRect);
  1696. __declspec(dllexport) virtual void CancelClippingRect();
  1697. __declspec(dllexport) virtual void Reset();
  1698. __declspec(dllexport) virtual void UseFont(const CFont *aFont);
  1699. __declspec(dllexport) virtual void DiscardFont();
  1700. __declspec(dllexport) virtual void SetUnderlineStyle(TFontUnderline aUnderlineStyle);
  1701. __declspec(dllexport) virtual void SetStrikethroughStyle(TFontStrikethrough aStrikethroughStyle);
  1702. __declspec(dllexport) virtual void SetWordJustification(TInt aExcessWidth,TInt aNumGaps);
  1703. __declspec(dllexport) virtual void SetCharJustification(TInt aExcessWidth,TInt aNumChars);
  1704. __declspec(dllexport) virtual void SetPenColor(const TRgb &aColor);
  1705. __declspec(dllexport) virtual void SetPenStyle(TPenStyle aPenStyle);
  1706. __declspec(dllexport) virtual void SetPenSize(const TSize& aSize);
  1707. __declspec(dllexport) virtual void SetBrushColor(const TRgb &aColor);
  1708. __declspec(dllexport) virtual void SetBrushStyle(TBrushStyle aBrushStyle);
  1709. __declspec(dllexport) virtual void SetBrushOrigin(const TPoint &aOrigin);
  1710. __declspec(dllexport) virtual void UseBrushPattern(const CFbsBitmap *aDevice);
  1711. __declspec(dllexport) virtual void DiscardBrushPattern();
  1712. __declspec(dllexport) virtual void MoveTo(const TPoint &aPoint);
  1713. __declspec(dllexport) virtual void MoveBy(const TPoint &aPoint);
  1714. __declspec(dllexport) virtual void Plot(const TPoint &aPoint);
  1715. __declspec(dllexport) virtual void DrawArc(const TRect &aRect,const TPoint &aStart,const TPoint &aEnd);
  1716. __declspec(dllexport) virtual void DrawLine(const TPoint &aPoint1,const TPoint &aPoint2);
  1717. __declspec(dllexport) virtual void DrawLineTo(const TPoint &aPoint);
  1718. __declspec(dllexport) virtual void DrawLineBy(const TPoint &aPoint);
  1719. __declspec(dllexport) virtual void DrawPolyLine(const CArrayFix<TPoint> *aPointList);
  1720. __declspec(dllexport) virtual void DrawPolyLine(const TPoint* aPointList,TInt aNumPoints);
  1721. __declspec(dllexport) virtual void DrawPie(const TRect &aRect,const TPoint &aStart,const TPoint &aEnd);
  1722. __declspec(dllexport) virtual void DrawEllipse(const TRect &aRect);
  1723. __declspec(dllexport) virtual void DrawRect(const TRect &aRect);
  1724. __declspec(dllexport) virtual void DrawRoundRect(const TRect &aRect,const TSize &aEllipse);
  1725. __declspec(dllexport) virtual TInt DrawPolygon(const CArrayFix<TPoint> *aPointList,TFillRule aFillRule=EAlternate);
  1726. __declspec(dllexport) virtual TInt DrawPolygon(const TPoint* aPointList,TInt aNumPoints,TFillRule aFillRule=EAlternate);
  1727. __declspec(dllexport) virtual void DrawBitmap(const TPoint &aTopLeft, const CFbsBitmap *aDevice);
  1728. __declspec(dllexport) virtual void DrawBitmap(const TRect &aDestRect, const CFbsBitmap *aDevice);
  1729. __declspec(dllexport) virtual void DrawBitmap(const TRect &aDestRect, const CFbsBitmap *aDevice, const TRect &aSourceRect);
  1730. __declspec(dllexport) virtual void DrawBitmapMasked(const TRect& aDestRect, const CFbsBitmap* aBitmap, const TRect& aSourceRect, const CFbsBitmap* aMaskBitmap, TBool aInvertMask);
  1731. __declspec(dllexport) virtual void DrawBitmapMasked(const TRect& aDestRect, const CWsBitmap* aBitmap, const TRect& aSourceRect, const CWsBitmap* aMaskBitmap, TBool aInvertMask);
  1732. __declspec(dllexport) virtual void DrawText(const TDesC &aBuf,const TPoint &aPos);
  1733. __declspec(dllexport) virtual void DrawText(const TDesC &aBuf,const TRect &aBox,TInt aBaselineOffset,TTextAlign aHoriz=ELeft,TInt aLeftMrg=0);
  1734. __declspec(dllexport) virtual void Clear();
  1735. __declspec(dllexport) virtual void Clear(const TRect &aRect);
  1736. __declspec(dllexport) virtual void CopyRect(const TPoint &anOffset,const TRect &aRect);
  1737. __declspec(dllexport) virtual void BitBlt(const TPoint &aPos, const CFbsBitmap *aBitmap);
  1738. __declspec(dllexport) virtual void BitBlt(const TPoint &aDestination, const CFbsBitmap *aBitmap, const TRect &aSource);
  1739. __declspec(dllexport) virtual void BitBltMasked(const TPoint& aPoint,const CFbsBitmap* aBitmap,const TRect& aSourceRect,const CFbsBitmap* aMaskBitmap,TBool aInvertMask);
  1740. __declspec(dllexport) virtual void BitBlt(const TPoint &aPoint, const CWsBitmap *aBitmap);
  1741. __declspec(dllexport) virtual void BitBlt(const TPoint &aDestination, const CWsBitmap *aBitmap, const TRect &aSource);
  1742. __declspec(dllexport) virtual void BitBltMasked(const TPoint& aPoint,const CWsBitmap *aBitmap,const TRect& aSourceRect,const CWsBitmap *aMaskBitmap,TBool aInvertMask);
  1743. __declspec(dllexport) virtual void MapColors(const TRect& aRect,const TRgb* aColors,TInt aNumPairs=2,TBool aMapForwards=ETrue);
  1744. __declspec(dllexport) virtual void DrawTextVertical(const TDesC& aText,const TPoint& aPos,TBool aUp);
  1745. __declspec(dllexport) virtual void DrawTextVertical(const TDesC& aText,const TRect& aBox,TInt aBaselineOffset,TBool aUp,TTextAlign aVert=ELeft,TInt aMargin=0);
  1746. __declspec(dllexport) virtual void SetDitherOrigin(const TPoint& aPoint);
  1747. __declspec(dllexport) virtual TInt SetClippingRegion(const TRegion &aRegion);
  1748. __declspec(dllexport) virtual void CancelClippingRegion();
  1749. __declspec(dllexport) virtual void SetOpaque(TBool aDrawOpaque=ETrue);
  1750. __declspec(dllexport) virtual void SetFaded(TBool aFaded);
  1751. __declspec(dllexport) virtual void SetFadingParameters(TUint8 aBlackMap,TUint8 aWhiteMap);
  1752. __declspec(dllexport) virtual TInt AlphaBlendBitmaps(const TPoint& aDestPt, const CFbsBitmap* aSrcBmp, const TRect& aSrcRect, const CFbsBitmap* aAlphaBmp, const TPoint& aAlphaPt);
  1753. __declspec(dllexport) virtual TInt AlphaBlendBitmaps(const TPoint& aDestPt, const CWsBitmap* aSrcBmp, const TRect& aSrcRect, const CWsBitmap* aAlphaBmp, const TPoint& aAlphaPt);
  1754. private:
  1755. __declspec(dllexport) void Reserved_CGraphicsContext_1();
  1756. __declspec(dllexport) void Reserved_CGraphicsContext_2();
  1757. __declspec(dllexport) void Reserved_CBitmapContext_1();
  1758. __declspec(dllexport) void Reserved_CBitmapContext_2();
  1759. __declspec(dllexport) void Reserved_CBitmapContext_3();
  1760. __declspec(dllexport) virtual void Reserved_CWindowGc_1();
  1761. __declspec(dllexport) virtual void Reserved_CWindowGc_2();
  1762. __declspec(dllexport) virtual void Reserved_CWindowGc_3();
  1763. __declspec(dllexport) virtual void Reserved_CWindowGc_4();
  1764. __declspec(dllexport) virtual void Reserved_CWindowGc_5();
  1765. private:
  1766. TRgb Color(TInt aOpcode)const;
  1767. void SetJustification(TInt aExcessWidth,TInt aNumGaps, TInt aOpcode);
  1768. void DrawArcOrPie(const TRect &aRect,const TPoint &aStart,const TPoint &aEnd, TInt aOpcode);
  1769. void doDrawPolyLine(const CArrayFix<TPoint> *aPointArray, const TPoint* aPointList,TInt aNumPoints);
  1770. TInt doDrawPolygon(const CArrayFix<TPoint> *aPointArray,const TPoint* aPointList,TInt aNumPoints,TFillRule aFillRule);
  1771. void WriteTextPos(TInt aOpcode,TInt aOpcodePtr,const TPoint &aPos,const TDesC &aBuf) const;
  1772. void WriteTextCommand(TAny *aCmd, TInt aLen,const TDesC &aBuf,TInt aOpcode,TInt aOpcodePtr) const;
  1773. private:
  1774. CFbsFont *iFont;
  1775. CWsScreenDevice *iDevice;
  1776. };
  1777. class CWsScreenDevice : public CBitmapDevice, public MWsClientClass
  1778. #line 2077
  1779. {
  1780. public:
  1781. enum TSpriteInCompare
  1782. {
  1783. ERemoveSprite=0,
  1784. EIncludeSprite=1,
  1785. };
  1786. public:
  1787. __declspec(dllexport) CWsScreenDevice();
  1788. __declspec(dllexport) CWsScreenDevice(RWsSession &aWs);
  1789. __declspec(dllexport) ~CWsScreenDevice();
  1790. __declspec(dllexport) TInt Construct();
  1791. __declspec(dllexport) TInt Construct( TInt aDefaultScreenNumber ) ;
  1792. __declspec(dllexport) TDisplayMode DisplayMode() const;
  1793. __declspec(dllexport) TSize SizeInPixels() const;
  1794. __declspec(dllexport) TSize SizeInTwips() const;
  1795. __declspec(dllexport) TInt HorizontalTwipsToPixels(TInt aTwips) const;
  1796. __declspec(dllexport) TInt VerticalTwipsToPixels(TInt aTwips) const;
  1797. __declspec(dllexport) TInt HorizontalPixelsToTwips(TInt aPixels) const;
  1798. __declspec(dllexport) TInt VerticalPixelsToTwips(TInt aPixels) const;
  1799. __declspec(dllexport) TRect PointerRect() const;
  1800. __declspec(dllexport) TInt CreateContext(CGraphicsContext *&aGc);
  1801. inline TInt CreateContext(CWindowGc*& aGc);
  1802. __declspec(dllexport) virtual TInt GetNearestFontInTwips(CFont*& aFont,const TFontSpec& aFontSpec);
  1803. __declspec(dllexport) virtual TInt GetNearestFontToDesignHeightInTwips(CFont*& aFont,const TFontSpec& aFontSpec);
  1804. __declspec(dllexport) virtual TInt GetNearestFontToMaxHeightInTwips(CFont*& aFont,const TFontSpec& aFontSpec,TInt aMaxHeight);
  1805. __declspec(dllexport) TInt NumTypefaces() const;
  1806. __declspec(dllexport) void TypefaceSupport(TTypefaceSupport& aTypefaceSupport,TInt aTypefaceIndex) const;
  1807. __declspec(dllexport) TInt FontHeightInTwips(TInt aTypefaceIndex,TInt aHeightIndex) const;
  1808. __declspec(dllexport) void GetPixel(TRgb& aColor,const TPoint& aPixel) const;
  1809. __declspec(dllexport) void GetScanLine(TDes8& aScanLine,const TPoint& aStartPixel,TInt aPixelLength, TDisplayMode aDispMode) const;
  1810. __declspec(dllexport) TInt AddFile(const TDesC& aName,TInt& aId);
  1811. __declspec(dllexport) void RemoveFile(TInt aId=0);
  1812. __declspec(dllexport) virtual TInt GetNearestFontInPixels(CFont*& aFont,const TFontSpec& aFontSpec);
  1813. __declspec(dllexport) virtual TInt GetNearestFontToDesignHeightInPixels(CFont*& aFont,const TFontSpec& aFontSpec);
  1814. __declspec(dllexport) virtual TInt GetNearestFontToMaxHeightInPixels(CFont*& aFont,const TFontSpec& aFontSpec,TInt aMaxHeight);
  1815. __declspec(dllexport) TInt FontHeightInPixels(TInt aTypefaceIndex,TInt aHeightIndex) const;
  1816. __declspec(dllexport) void ReleaseFont(CFont* aFont);
  1817. __declspec(dllexport) void PaletteAttributes(TBool& aModifiable,TInt& aNumEntries) const;
  1818. __declspec(dllexport) void SetPalette(CPalette* aPalette);
  1819. __declspec(dllexport) TInt GetPalette(CPalette*& aPalette) const;
  1820. __declspec(dllexport) TInt SetCustomPalette(const CPalette* aPalette);
  1821. __declspec(dllexport) TInt GetFontById(CFont*& aFont,TUid aUid,const TAlgStyle& aAlgStyle);
  1822. __declspec(dllexport) TBool RectCompare(const TRect &aRect1,const TRect &aRect2);
  1823. __declspec(dllexport) TBool RectCompare(const TRect& aRect1,const TRect &aRect2,TUint aFlags) const;
  1824. __declspec(dllexport) TInt CopyScreenToBitmap(const CFbsBitmap *aBitmap) const;
  1825. __declspec(dllexport) TInt CopyScreenToBitmap(const CFbsBitmap *aBitmap, const TRect &aRect) const;
  1826. __declspec(dllexport) void SetScreenSizeAndRotation(const TPixelsTwipsAndRotation &aSizeAndRotation);
  1827. __declspec(dllexport) void GetDefaultScreenSizeAndRotation(TPixelsTwipsAndRotation &aSizeAndRotation) const;
  1828. __declspec(dllexport) void SetScreenSizeAndRotation(const TPixelsAndRotation &aSizeAndRotation);
  1829. __declspec(dllexport) void GetDefaultScreenSizeAndRotation(TPixelsAndRotation &aSizeAndRotation) const;
  1830. __declspec(dllexport) TScreenModeEnforcement ScreenModeEnforcement() const;
  1831. __declspec(dllexport) void SetScreenModeEnforcement(TScreenModeEnforcement aMode) const;
  1832. __declspec(dllexport) void GetScreenModeSizeAndRotation(TInt aMode, TPixelsTwipsAndRotation &aSizeAndRotation) const;
  1833. __declspec(dllexport) void GetScreenModeSizeAndRotation(TInt aMode, TPixelsAndRotation &aSizeAndRotation) const;
  1834. __declspec(dllexport) void SetCurrentRotations(TInt aMode, CFbsBitGc::TGraphicsOrientation aRotation) const;
  1835. __declspec(dllexport) TInt GetRotationsList(TInt aMode, CArrayFixFlat<TInt> *aRotationList) const;
  1836. __declspec(dllexport) TInt NumScreenModes() const;
  1837. __declspec(dllexport) void SetScreenMode(TInt aMode);
  1838. __declspec(dllexport) TInt CurrentScreenMode() const;
  1839. __declspec(dllexport) void SetAppScreenMode(TInt aMode);
  1840. __declspec(dllexport) TPoint GetDefaultScreenModeOrigin() const;
  1841. __declspec(dllexport) TPoint GetScreenModeOrigin(TInt aMode) const;
  1842. __declspec(dllexport) TSize GetCurrentScreenModeScale() const;
  1843. __declspec(dllexport) TSize GetScreenModeScale(TInt aMode) const;
  1844. __declspec(dllexport) TPoint GetCurrentScreenModeScaledOrigin() const;
  1845. __declspec(dllexport) TPoint GetScreenModeScaledOrigin(TInt aMode) const;
  1846. __declspec(dllexport) TInt GetScreenSizeModeList(RArray<TInt> * aModeList);
  1847. __declspec(dllexport) TDisplayMode GetScreenModeDisplayMode(const TInt &aMode) const;
  1848. __declspec(dllexport) TSizeMode GetCurrentScreenModeAttributes() const;
  1849. __declspec(dllexport) void SetCurrentScreenModeAttributes(const TSizeMode &aModeAtt);
  1850. __declspec(dllexport) TInt GetScreenNumber() const;
  1851. private:
  1852. CFbsTypefaceStore* iTypefaceStore;
  1853. TSize iPhysicalScreenSizeInTwips;
  1854. TSize iDisplaySizeInPixels;
  1855. friend class CWindowGc;
  1856. };
  1857. class RWsSpriteBase : public MWsClientClass
  1858. #line 2190
  1859. {
  1860. protected:
  1861. __declspec(dllexport) RWsSpriteBase();
  1862. __declspec(dllexport) RWsSpriteBase(RWsSession &aWs);
  1863. public:
  1864. __declspec(dllexport) TInt Activate();
  1865. __declspec(dllexport) TInt AppendMember(const TSpriteMember &aMemberData);
  1866. __declspec(dllexport) void UpdateMember(TInt aIndex);
  1867. __declspec(dllexport) TInt UpdateMember(TInt aIndex, const TSpriteMember &aMemberData);
  1868. __declspec(dllexport) void Close();
  1869. };
  1870. class RWsSprite : public RWsSpriteBase
  1871. {
  1872. public:
  1873. __declspec(dllexport) RWsSprite();
  1874. __declspec(dllexport) RWsSprite(RWsSession &aWs);
  1875. __declspec(dllexport) TInt Construct(RWindowTreeNode &aWindow, const TPoint &aPos, TInt aFlags);
  1876. __declspec(dllexport) void SetPosition(const TPoint &aPos);
  1877. };
  1878. class RWsPointerCursor : public RWsSpriteBase
  1879. #line 2242
  1880. {
  1881. friend class RWindowTreeNode;
  1882. friend class RWsSession;
  1883. public:
  1884. __declspec(dllexport) RWsPointerCursor();
  1885. __declspec(dllexport) RWsPointerCursor(RWsSession &aWs);
  1886. __declspec(dllexport) TInt Construct(TInt aFlags);
  1887. };
  1888. class RAnim;
  1889. class RAnimDll : public MWsClientClass
  1890. #line 2266
  1891. {
  1892. public:
  1893. __declspec(dllexport) RAnimDll();
  1894. __declspec(dllexport) virtual ~RAnimDll();
  1895. __declspec(dllexport) RAnimDll(RWsSession &aWs);
  1896. __declspec(dllexport) TInt Load(const TDesC &aFileName);
  1897. __declspec(dllexport) void Destroy();
  1898. __declspec(dllexport) virtual void Close();
  1899. private:
  1900. TInt CommandReply(TInt aHandle, TInt aOpcode, const TIpcArgs* aIpcArgs=0 );
  1901. TInt CommandReply(TInt aHandle, TInt aOpcode, const TDesC8& aArgs, const TIpcArgs* aIpcArgs=0 );
  1902. void Command(TInt aHandle, TInt aOpcode, const TPtrC8 &aArgs);
  1903. void Command(TInt aHandle, TInt aOpcode);
  1904. void AsyncCommandReply(TRequestStatus& aStatus, TInt aOpcode, TIpcArgs& aIpcArgs);
  1905. TInt CreateInstance(TInt32& aHandle, const MWsClientClass &aDevice, TInt aType, const TDesC8 &aArgs, TInt aOpcode, const TIpcArgs* aIpcArgs);
  1906. void DestroyInstance(TInt aHandle);
  1907. private:
  1908. friend class RAnim;
  1909. };
  1910. class RAnim
  1911. {
  1912. public:
  1913. __declspec(dllexport) virtual ~RAnim();
  1914. __declspec(dllexport) virtual void Close();
  1915. __declspec(dllexport) void Destroy();
  1916. protected:
  1917. __declspec(dllexport) RAnim();
  1918. __declspec(dllexport) RAnim(RAnimDll &aDll);
  1919. __declspec(dllexport) TInt Construct(const RWindowBase &aDevice, TInt aType, const TDesC8 &aParams);
  1920. __declspec(dllexport) TInt Construct(const RWindowBase &aDevice, TInt aType, const TDesC8 &aParams, const TIpcArgs& aIpcArgs);
  1921. __declspec(dllexport) TInt Construct(const RWsSprite &aDevice, TInt aType, const TDesC8 &aParams);
  1922. __declspec(dllexport) TInt Construct(const RWsSprite &aDevice, TInt aType, const TDesC8 &aParams, const TIpcArgs& aIpcArgs);
  1923. __declspec(dllexport) TInt CommandReply(TInt aOpcode);
  1924. __declspec(dllexport) TInt CommandReply(TInt aOpcode, const TPtrC8 &aArgs);
  1925. __declspec(dllexport) TInt CommandReply(TInt aOpcode, const TDesC8& aArgs, const TIpcArgs& aIpcArgs);
  1926. __declspec(dllexport) void Command(TInt aOpcode, const TPtrC8 &aArgs);
  1927. __declspec(dllexport) void Command(TInt aOpcode);
  1928. __declspec(dllexport) void AsyncCommandReply(TRequestStatus& aRequestStatus,TInt aOpcode, const TIpcArgs& aIpcArgs);
  1929. private:
  1930. TInt32 iHandle;
  1931. RAnimDll *iAnimDll;
  1932. };
  1933. class CDsaMsgQueue;
  1934. class RDirectScreenAccess : public MWsClientClass
  1935. #line 2330
  1936. {
  1937. public:
  1938. #line 2341
  1939. enum TTerminationReasons
  1940. {
  1941. ETerminateCancel,
  1942. ETerminateRegion,
  1943. ETerminateScreenMode,
  1944. ETerminateRotation,
  1945. };
  1946. enum TPriority
  1947. {
  1948. EPriorityVeryHigh=2000,
  1949. };
  1950. public:
  1951. __declspec(dllexport) RDirectScreenAccess();
  1952. __declspec(dllexport) RDirectScreenAccess(RWsSession& aWs);
  1953. __declspec(dllexport) TInt Construct();
  1954. __declspec(dllexport) TInt Request(RRegion*& aRegion,TRequestStatus& aStatus,const RWindowBase& aWindow);
  1955. __declspec(dllexport) void Completed();
  1956. __declspec(dllexport) void Cancel();
  1957. __declspec(dllexport) void Close();
  1958. private:
  1959. RWsSession* iWs;
  1960. CDsaMsgQueue* iMsgQueue;
  1961. RThread iWsThread;
  1962. TRequestStatus* iDummyRequest;
  1963. };
  1964. class MAbortDirectScreenAccess
  1965. {
  1966. public:
  1967. #line 2404
  1968. virtual void AbortNow(RDirectScreenAccess::TTerminationReasons aReason)=0;
  1969. };
  1970. class MDirectScreenAccess : public MAbortDirectScreenAccess
  1971. #line 2419
  1972. {
  1973. public:
  1974. #line 2433
  1975. virtual void Restart(RDirectScreenAccess::TTerminationReasons aReason)=0;
  1976. };
  1977. class CDirectScreenAccess : public CActive
  1978. #line 2454
  1979. {
  1980. public:
  1981. __declspec(dllexport) static CDirectScreenAccess* NewL(RWsSession& aWs,CWsScreenDevice& aScreenDevice,RWindowBase& aWin,MDirectScreenAccess& aAbort);
  1982. ~CDirectScreenAccess();
  1983. __declspec(dllexport) void StartL();
  1984. inline CFbsBitGc* Gc();
  1985. inline CFbsScreenDevice*& ScreenDevice();
  1986. inline RRegion* DrawingRegion();
  1987. private:
  1988. enum TFlags
  1989. {
  1990. EDirectCheckModeChange=0x1,
  1991. EDirectCheckSizeModeChange=0x2,
  1992. };
  1993. private:
  1994. inline CDirectScreenAccess(RWsSession& aWs,CWsScreenDevice* aScreenDevice,RWindowBase& aWindow,MDirectScreenAccess& aAbort);
  1995. void ConstructL(RWsSession& aWs);
  1996. void CreateScreenObjectsL(TDisplayMode aCurrentMode);
  1997. void UpdateSizeAndRotation(CFbsBitGc* aGc);
  1998. static TInt Restart(TAny* aDirect);
  1999. void Restart();
  2000. void DoCancel();
  2001. void RunL();
  2002. private:
  2003. CFbsBitGc* iGc;
  2004. CFbsScreenDevice* iScreenDevice;
  2005. RRegion* iDrawingRegion;
  2006. RWindowBase& iWindow;
  2007. CWsScreenDevice* iWsScreenDevice;
  2008. MDirectScreenAccess& iAbort;
  2009. RDirectScreenAccess iDirectAccess;
  2010. RDirectScreenAccess::TTerminationReasons iReason;
  2011. CIdle* iRestart;
  2012. TSize iScreenSize;
  2013. TBool iAborting;
  2014. TUint iFlags;
  2015. TInt iScreenNumber;
  2016. };
  2017. class RSoundPlugIn : public MWsClientClass
  2018. {
  2019. public:
  2020. enum
  2021. {
  2022. ESoundWrongPlugIn=KMinTInt
  2023. };
  2024. public:
  2025. __declspec(dllexport) RSoundPlugIn();
  2026. __declspec(dllexport) RSoundPlugIn(RWsSession &aWs);
  2027. __declspec(dllexport) TInt Construct(TUid aUid=TUid::Null() );
  2028. __declspec(dllexport) void Close();
  2029. __declspec(dllexport) void Destroy();
  2030. __declspec(dllexport) TBool IsLoaded(TBool& aIsChangeable);
  2031. __declspec(dllexport) TInt Unload();
  2032. __declspec(dllexport) TInt Load(const TDesC &aFileName);
  2033. __declspec(dllexport) void SetKeyClick(TBool aEnabled);
  2034. __declspec(dllexport) void SetPenClick(TBool aEnabled);
  2035. __declspec(dllexport) TBool KeyClickEnabled();
  2036. __declspec(dllexport) TBool PenClickEnabled();
  2037. __declspec(dllexport) TInt CommandReply(TInt aOpcode, const TPtrC8 &aArgs);
  2038. };
  2039. inline TInt MWsClientClass::WsHandle() const
  2040. {return(iWsHandle);}
  2041. inline TInt CWsScreenDevice::CreateContext(CWindowGc *&aGc)
  2042. #line 2545
  2043. {return(CreateContext((CGraphicsContext *&)aGc));}
  2044. inline TUint TWsRedrawEvent::Handle() const
  2045. {return(iHandle);}
  2046. inline TRect TWsRedrawEvent::Rect() const
  2047. {return(iRect);}
  2048. inline TPointerEvent *TWsEvent::Pointer() const
  2049. {return((TPointerEvent *)&iEventData);}
  2050. inline TKeyEvent *TWsEvent::Key() const
  2051. {return((TKeyEvent *)&iEventData);}
  2052. inline TWsVisibilityChangedEvent* TWsEvent::VisibilityChanged()
  2053. { return reinterpret_cast<TWsVisibilityChangedEvent*>(iEventData); }
  2054. inline const TWsVisibilityChangedEvent* TWsEvent::VisibilityChanged() const
  2055. { return reinterpret_cast<const TWsVisibilityChangedEvent*>(iEventData); }
  2056. inline TModifiersChangedEvent *TWsEvent::ModifiersChanged() const
  2057. {return((TModifiersChangedEvent *)&iEventData);}
  2058. inline TWsErrorMessage *TWsEvent::ErrorMessage() const
  2059. {return((TWsErrorMessage *)&iEventData);}
  2060. inline TUint8 *TWsEvent::EventData() const
  2061. #line 2627
  2062. {return((TUint8 *)&iEventData);}
  2063. inline TInt TWsEvent::Type() const
  2064. {return(iType);}
  2065. inline TUint TWsEvent::Handle() const
  2066. {return(iHandle);}
  2067. inline TTime TWsEvent::Time() const
  2068. {return(iTime);}
  2069. inline void TWsEvent::SetType(TInt aType)
  2070. {iType=aType;}
  2071. inline void TWsEvent::SetHandle(TUint aHandle)
  2072. {iHandle=aHandle;}
  2073. inline void TWsEvent::SetTimeNow()
  2074. {iTime.UniversalTime();}
  2075. inline TInt *TWsEvent::Int() const
  2076. { return (TInt*)&iEventData; }
  2077. inline TUint TWsPriorityKeyEvent::Handle() const
  2078. {return(iHandle);}
  2079. inline TKeyEvent *TWsPriorityKeyEvent::Key() const
  2080. {return((TKeyEvent *)&iEventData);}
  2081. inline void TWsPriorityKeyEvent::SetHandle(TUint aHandle)
  2082. {iHandle=aHandle;}
  2083. inline CDirectScreenAccess::CDirectScreenAccess(RWsSession& aWs,CWsScreenDevice* aScreenDevice,RWindowBase& aWindow,MDirectScreenAccess& aAbort)
  2084. :CActive(RDirectScreenAccess::EPriorityVeryHigh), iWindow(aWindow), iAbort(aAbort), iDirectAccess(aWs)
  2085. {iWsScreenDevice=aScreenDevice;}
  2086. inline CFbsBitGc* CDirectScreenAccess::Gc()
  2087. #line 2713
  2088. { return iGc; }
  2089. inline CFbsScreenDevice*& CDirectScreenAccess::ScreenDevice()
  2090. { return iScreenDevice; }
  2091. inline RRegion* CDirectScreenAccess::DrawingRegion()
  2092. #line 2737
  2093. { return iDrawingRegion; }
  2094. inline TSizeMode::TSizeMode(TSize& aSize) :
  2095. iOrigin(0, 0), iScreenSize(aSize)
  2096. {}
  2097. inline TInt TSizeMode::ScaledCord(TInt aOrigin,TInt aScale)
  2098. {return (aOrigin+aScale-1)/aScale;}
  2099. inline TPoint TSizeMode::ScaledOrigin()
  2100. {return TPoint(ScaledCord(iOrigin.iX,iScreenScale.iWidth),ScaledCord(iOrigin.iY,iScreenScale.iHeight));}
  2101. #line 18 "C:\Symbian\9.1\S60_3rd\epoc32\include\coecntrl.h" /* stack depth 3 */
  2102. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\gulalign.h" /* stack depth 4 */
  2103. #line 25
  2104. enum TGulHAlignment
  2105. {
  2106. EHLeft=CGraphicsContext::ELeft,
  2107. EHCenter=CGraphicsContext::ECenter,
  2108. EHRight=CGraphicsContext::ERight
  2109. };
  2110. enum TGulVAlignment
  2111. {
  2112. EVTop=0x00,
  2113. EVCenter=0x10,
  2114. EVBottom=0x20
  2115. };
  2116. enum TGulAlignmentValue
  2117. {
  2118. EHLeftVTop=EHLeft|EVTop,
  2119. EHLeftVCenter=EHLeft|EVCenter,
  2120. EHLeftVBottom=EHLeft|EVBottom,
  2121. EHCenterVTop=EHCenter|EVTop,
  2122. EHCenterVCenter=EHCenter|EVCenter,
  2123. EHCenterVBottom=EHCenter|EVBottom,
  2124. EHRightVTop=EHRight|EVTop,
  2125. EHRightVCenter=EHRight|EVCenter,
  2126. EHRightVBottom=EHRight|EVBottom
  2127. };
  2128. class TGulAlignment
  2129. {
  2130. private:
  2131. enum {EHMask=0x03, EVMask=0x30};
  2132. public:
  2133. inline TGulAlignment();
  2134. inline TGulAlignment(TGulAlignmentValue aValue);
  2135. inline TGulAlignment(CGraphicsContext::TTextAlign aHAlign, TGulVAlignment aVAlign = EVTop);
  2136. inline operator TGulAlignmentValue() const;
  2137. inline TGulVAlignment VAlignment() const;
  2138. inline TGulHAlignment HAlignment() const;
  2139. inline CGraphicsContext::TTextAlign TextAlign() const;
  2140. __declspec(dllexport) void SetVAlignment(TGulVAlignment aVAlign);
  2141. __declspec(dllexport) void SetHAlignment(TGulHAlignment aHAlign);
  2142. __declspec(dllexport) void SetHAlignment(CGraphicsContext::TTextAlign aHAlign);
  2143. __declspec(dllexport) TPoint InnerTopLeft(const TRect& aOuter,const TSize& aInnerSize) const;
  2144. __declspec(dllexport) TRect InnerRect(const TRect& aOuter,const TSize& aInnerSize) const;
  2145. private:
  2146. TGulAlignmentValue iValue;
  2147. };
  2148. inline TGulAlignment::TGulAlignment()
  2149. {};
  2150. inline TGulAlignment::TGulAlignment(TGulAlignmentValue aValue)
  2151. {iValue=aValue;}
  2152. inline TGulAlignment::TGulAlignment(CGraphicsContext::TTextAlign aHAlign, TGulVAlignment aVAlign)
  2153. { iValue = static_cast<TGulAlignmentValue>(((TGulHAlignment)aHAlign) |aVAlign); }
  2154. inline TGulAlignment::operator TGulAlignmentValue() const
  2155. {return(iValue);}
  2156. inline TGulVAlignment TGulAlignment::VAlignment() const
  2157. {return((TGulVAlignment)(iValue&EVMask));}
  2158. inline TGulHAlignment TGulAlignment::HAlignment() const
  2159. {return((TGulHAlignment)(iValue&EHMask));}
  2160. inline CGraphicsContext::TTextAlign TGulAlignment::TextAlign() const
  2161. {return((CGraphicsContext::TTextAlign)(HAlignment()));}
  2162. #line 22 "C:\Symbian\9.1\S60_3rd\epoc32\include\coecntrl.h" /* stack depth 3 */
  2163. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\coedef.h" /* stack depth 4 */
  2164. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\guldef.h" /* stack depth 5 */
  2165. #line 13
  2166. enum TGulAdjacent
  2167. {
  2168. EGulAdjNone =0x00,
  2169. EGulAdjTop =0x01,
  2170. EGulAdjBottom =0x02,
  2171. EGulAdjLeft =0x04,
  2172. EGulAdjRight =0x08
  2173. };
  2174. #line 10 "C:\Symbian\9.1\S60_3rd\epoc32\include\coedef.h" /* stack depth 4 */
  2175. #line 19
  2176. enum TKeyResponse
  2177. {
  2178. EKeyWasNotConsumed,
  2179. EKeyWasConsumed
  2180. };
  2181. #line 34
  2182. enum TDrawNow
  2183. {
  2184. ENoDrawNow,
  2185. EDrawNow
  2186. };
  2187. enum TCoeWinPriority
  2188. {
  2189. ECoeWinPriorityNeverAtFront =-1000,
  2190. ECoeWinPriorityLow =-750,
  2191. ECoeWinPriorityNormal =0,
  2192. ECoeWinPriorityMedium =500,
  2193. ECoeWinPriorityHigh =750,
  2194. ECoeWinPriorityFep =900,
  2195. ECoeWinPriorityAlwaysAtFront =1000
  2196. };
  2197. const TInt KUidValueCoeColorSchemeChangeEvent =0x100056C4;
  2198. const TInt KUidValueCoeZoomChangeEvent          =0x100057C3;
  2199. const TInt KUidValueCoeFontChangeEvent          =0x100057C4;
  2200. const TUint KUidFepFrameworkRepository=0x10272618;
  2201. enum
  2202. {
  2203. ERepositoryKeyMask_DefaultSetting =0x00001000,
  2204. ERepositoryKeyMask_DynamicSetting =0x00002000,
  2205. ERepositoryKeyMask_FepId =0x00000001,
  2206. ERepositoryKeyMask_OnState =0x00000002,
  2207. ERepositoryKeyMask_OnKeyData =0x00000004,
  2208. ERepositoryKeyMask_OffKeyData =0x00000008,
  2209. ERepositoryKey_DefaultFepId =ERepositoryKeyMask_DefaultSetting|ERepositoryKeyMask_FepId,
  2210. ERepositoryKey_DefaultOnState =ERepositoryKeyMask_DefaultSetting|ERepositoryKeyMask_OnState,
  2211. ERepositoryKey_DefaultOnKeyData =ERepositoryKeyMask_DefaultSetting|ERepositoryKeyMask_OnKeyData,
  2212. ERepositoryKey_DefaultOffKeyData =ERepositoryKeyMask_DefaultSetting|ERepositoryKeyMask_OffKeyData,
  2213. ERepositoryKey_DynamicFepId =ERepositoryKeyMask_DynamicSetting|ERepositoryKeyMask_FepId,
  2214. ERepositoryKey_DynamicOnState =ERepositoryKeyMask_DynamicSetting|ERepositoryKeyMask_OnState,
  2215. ERepositoryKey_DynamicOnKeyData =ERepositoryKeyMask_DynamicSetting|ERepositoryKeyMask_OnKeyData,
  2216. ERepositoryKey_DynamicOffKeyData =ERepositoryKeyMask_DynamicSetting|ERepositoryKeyMask_OffKeyData
  2217. };
  2218. #line 26 "C:\Symbian\9.1\S60_3rd\epoc32\include\coecntrl.h" /* stack depth 3 */
  2219. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\coecobs.h" /* stack depth 4 */
  2220. #line 11
  2221. class CCoeControl;
  2222. class MCoeControlObserver
  2223. {
  2224. public:
  2225. enum TCoeEvent
  2226. {
  2227. EEventRequestExit,
  2228. EEventRequestCancel,
  2229. EEventRequestFocus,
  2230. EEventPrepareFocusTransition,
  2231. EEventStateChanged,
  2232. EEventInteractionRefused
  2233. };
  2234. public:
  2235. #line 63
  2236. virtual void HandleControlEventL(CCoeControl* aControl,TCoeEvent aEventType)=0;
  2237. protected:
  2238.     __declspec(dllexport) MCoeControlObserver();
  2239. private:
  2240.     __declspec(dllexport) virtual void MCoeControlObserver_Reserved1();
  2241.     __declspec(dllexport) virtual void MCoeControlObserver_Reserved2();
  2242. private:
  2243.     TInt iMCoeControlObserver_Reserved1;
  2244. };
  2245. #line 30 "C:\Symbian\9.1\S60_3rd\epoc32\include\coecntrl.h" /* stack depth 3 */
  2246. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\coehelp.h" /* stack depth 4 */
  2247. #line 17
  2248. typedef TBuf<30> TCoeContextName;
  2249. class TCoeHelpContext
  2250. #line 30
  2251. {
  2252. public:
  2253. __declspec(dllexport) TCoeHelpContext();
  2254. __declspec(dllexport) TCoeHelpContext(TUid aMajor,const TDesC& aContext);
  2255. __declspec(dllexport) TBool IsNull() const;
  2256. __declspec(dllexport) TBool operator==(const TCoeHelpContext& aContext) const;
  2257. __declspec(dllexport) TBool operator!=(const TCoeHelpContext& aContext) const;
  2258. public:
  2259. TUid iMajor;
  2260. TCoeContextName iContext;
  2261. private:
  2262.     TInt iTCoeHelpContext_Reserved1;
  2263. };
  2264. #line 34 "C:\Symbian\9.1\S60_3rd\epoc32\include\coecntrl.h" /* stack depth 3 */
  2265. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\coeinput.h" /* stack depth 4 */
  2266. #line 14
  2267. class MCoeFepAwareTextEditor;
  2268. class MCoeCaptionRetrieverForFep;
  2269. class MObjectProvider;
  2270. class TCoeInputCapabilities
  2271. {
  2272. public:
  2273. enum
  2274. {
  2275. ENone =0,
  2276. EWesternNumericIntegerPositive =0x00000001,
  2277. EWesternNumericIntegerNegative =0x00000002,
  2278. EWesternNumericReal =0x00000004,
  2279. EWesternAlphabetic =0x00000008,
  2280. EJapaneseHiragana =0x00000010,
  2281. EJapaneseKatakanaHalfWidth =0x00000020,
  2282. EJapaneseKatakanaFullWidth =0x00000040,
  2283. EDialableCharacters =0x00000080,
  2284. ESecretText =0x00000100,
  2285. EAutoSentenceCase =0x00000200,
  2286. ENonPredictive =0x00000400,
  2287. EAllText =0x01000000,
  2288. ENavigation =0x02000000
  2289. };
  2290. class MCoeFepSpecificExtensions;
  2291. public:
  2292. __declspec(dllexport) TCoeInputCapabilities();
  2293. __declspec(dllexport) TCoeInputCapabilities(TUint aCapabilities);
  2294. __declspec(dllexport) TCoeInputCapabilities(TUint aCapabilities, MCoeFepAwareTextEditor* aFepAwareTextEditor, MCoeCaptionRetrieverForFep* aCaptionRetrieverForFep);
  2295. __declspec(dllexport) TCoeInputCapabilities(TUint aCapabilities, MCoeFepAwareTextEditor* aFepAwareTextEditor, MCoeCaptionRetrieverForFep* aCaptionRetrieverForFep, TUid aFepUid, MCoeFepSpecificExtensions* aFepSpecificExtensions);
  2296. __declspec(dllexport) TCoeInputCapabilities(const TCoeInputCapabilities& aAnother);
  2297. __declspec(dllexport) TCoeInputCapabilities& operator=(const TCoeInputCapabilities& aAnother);
  2298. __declspec(dllexport) TBool operator==(const TCoeInputCapabilities& aAnother) const;
  2299. __declspec(dllexport) TBool operator!=(const TCoeInputCapabilities& aAnother) const;
  2300. __declspec(dllexport) void MergeWith(const TCoeInputCapabilities& aAnother);
  2301. __declspec(dllexport) void SetCapabilities(TUint aCapabilities);
  2302. __declspec(dllexport) TUint Capabilities() const;
  2303. __declspec(dllexport) TBool IsNone() const;
  2304. __declspec(dllexport) TBool SupportsWesternNumericIntegerPositive() const;
  2305. __declspec(dllexport) TBool SupportsWesternNumericIntegerNegative() const;
  2306. __declspec(dllexport) TBool SupportsWesternNumericReal() const;
  2307. __declspec(dllexport) TBool SupportsWesternAlphabetic() const;
  2308. __declspec(dllexport) TBool SupportsJapaneseHiragana() const;
  2309. __declspec(dllexport) TBool SupportsJapaneseKatakanaHalfWidth() const;
  2310. __declspec(dllexport) TBool SupportsJapaneseKatakanaFullWidth() const;
  2311. __declspec(dllexport) TBool SupportsDialableCharacters() const;
  2312. __declspec(dllexport) TBool SupportsSecretText() const;
  2313. __declspec(dllexport) TBool SupportsAutoSentenceCase() const;
  2314. __declspec(dllexport) TBool SupportsNonPredictive() const;
  2315. __declspec(dllexport) TBool SupportsAllText() const;
  2316. __declspec(dllexport) TBool SupportsNavigation() const;
  2317. __declspec(dllexport) MCoeFepAwareTextEditor* FepAwareTextEditor() const;
  2318. __declspec(dllexport) MCoeCaptionRetrieverForFep* CaptionRetrieverForFep() const;
  2319. __declspec(dllexport) MCoeFepSpecificExtensions* FepSpecificExtensions(TUid aFepUid) const;
  2320.     __declspec(dllexport) MObjectProvider* ObjectProvider() const;
  2321.     __declspec(dllexport) void SetObjectProvider(MObjectProvider* aObjectProvider);
  2322. private:
  2323. TUint iCapabilities;
  2324. MCoeFepAwareTextEditor* iFepAwareTextEditor;
  2325. MCoeCaptionRetrieverForFep* iCaptionRetrieverForFep;
  2326. TUint iFepUid;
  2327. MCoeFepSpecificExtensions* iFepSpecificExtensions;
  2328.     MObjectProvider* iObjectProvider;
  2329.     TAny* iSpareForFutureUse[5];
  2330. };
  2331. #line 38 "C:\Symbian\9.1\S60_3rd\epoc32\include\coecntrl.h" /* stack depth 3 */
  2332. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\coemop.h" /* stack depth 4 */
  2333. #line 24
  2334. class TTypeUid : public TUid
  2335. #line 43
  2336. {
  2337. public:
  2338. class Ptr
  2339. {
  2340. friend class TTypeUid;
  2341. private:
  2342. explicit inline Ptr(TAny* aPtr)
  2343. : iPtr(aPtr)
  2344. {}
  2345. public:
  2346. inline TAny* Pointer() const
  2347. {return iPtr;}
  2348. private:
  2349. TAny* iPtr;
  2350. };
  2351. public:
  2352. inline TTypeUid(TInt aUid)
  2353. { iUid = aUid; }
  2354. inline static Ptr Null()
  2355. { return Ptr(0 ); }
  2356. template <class T> inline Ptr MakePtr(T* aT) const
  2357. { (void)((iUid == T::ETypeId)||(User::Invariant(),0)) ; return Ptr(aT); }
  2358. };
  2359. class MObjectProvider
  2360. #line 106
  2361. {
  2362. public:
  2363. template<class T>
  2364. T* MopGetObject(T*& aPtr)
  2365. #line 119
  2366. { return (aPtr=(T*)MopGetById(T::ETypeId)); }
  2367. template<class T>
  2368. T*  MopGetObjectNoChaining(T*& aPtr)
  2369. #line 133
  2370. { return (aPtr=(T*)MopGetByIdNoChaining(T::ETypeId)); }
  2371. private:
  2372. #line 145
  2373. virtual TTypeUid::Ptr MopSupplyObject(TTypeUid aId) = 0;
  2374. protected:
  2375. __declspec(dllexport) MObjectProvider();
  2376. private:
  2377. __declspec(dllexport) virtual MObjectProvider* MopNext();
  2378. __declspec(dllexport) virtual void MObjectProvider_Reserved1();
  2379. __declspec(dllexport) virtual void MObjectProvider_Reserved2();
  2380. private:
  2381. __declspec(dllexport) TAny* MopGetById(TTypeUid aId);
  2382. __declspec(dllexport) TAny* MopGetByIdNoChaining(TTypeUid aId);
  2383. private:
  2384. TInt iMObjectProvider_Reserved1;
  2385. };
  2386. #line 42 "C:\Symbian\9.1\S60_3rd\epoc32\include\coecntrl.h" /* stack depth 3 */
  2387. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\coemain.h" /* stack depth 4 */
  2388. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\barsc.h" /* stack depth 5 */
  2389. #line 12
  2390. class RResourceFileImpl;
  2391. #line 34
  2392. class RResourceFile
  2393. {
  2394. public:
  2395. __declspec(dllexport) RResourceFile();
  2396. __declspec(dllexport) void Close();
  2397. __declspec(dllexport) void OpenL(RFs &aFs,const TDesC &aName);
  2398. __declspec(dllexport) TUidType UidType() const;
  2399. __declspec(dllexport) void ReadL(TDes8 &aDes,TInt aResourceId) const;
  2400. __declspec(dllexport) HBufC8 *AllocReadL(TInt aResourceId) const;
  2401. __declspec(dllexport) HBufC8 *AllocReadLC(TInt aResourceId) const;
  2402. __declspec(dllexport) void ConfirmSignatureL(TInt aSignature);
  2403. __declspec(dllexport) void ConfirmSignatureL();
  2404. __declspec(dllexport) TInt SignatureL() const;
  2405. __declspec(dllexport) TBool OwnsResourceId(TInt aResourceId) const;
  2406. __declspec(dllexport) TBool OwnsResourceIdL(TInt aResourceId) const;
  2407. __declspec(dllexport) void OpenL(RFs& aFs, const TDesC& aName, TUint aFileOffset, TInt aFileSize);
  2408. inline TInt Offset() const;
  2409. private:
  2410. void DoOpenL(RFs& aFs, const TDesC& aName, TUint aFileOffset, TInt aFileSize);
  2411. __declspec(dllexport) TInt Offset2() const;
  2412. RResourceFileImpl* Impl();
  2413. const RResourceFileImpl* Impl() const;
  2414. private:
  2415. enum
  2416. {
  2417. KRscFileSize = 24
  2418. };
  2419. TUint8 iImpl[KRscFileSize];
  2420. };
  2421. #line 72
  2422. inline TInt RResourceFile::Offset() const
  2423. {
  2424. return Offset2();
  2425. }
  2426. #line 18 "C:\Symbian\9.1\S60_3rd\epoc32\include\coemain.h" /* stack depth 4 */
  2427. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\badesca.h" /* stack depth 5 */
  2428. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\bamdesca.h" /* stack depth 6 */
  2429. #line 19
  2430. class MDesC8Array
  2431. #line 28
  2432.     {
  2433. public:
  2434.     virtual ~MDesC8Array() {}
  2435.     virtual TInt MdcaCount() const =0;
  2436. #line 48
  2437.     virtual TPtrC8 MdcaPoint(TInt aIndex) const =0;
  2438.     };
  2439. class MDesC16Array
  2440. #line 61
  2441.     {
  2442. public:
  2443.     virtual ~MDesC16Array() {}
  2444.     virtual TInt MdcaCount() const =0;
  2445. #line 81
  2446.     virtual TPtrC16 MdcaPoint(TInt aIndex) const =0;
  2447.     };
  2448. #line 14 "C:\Symbian\9.1\S60_3rd\epoc32\include\badesca.h" /* stack depth 5 */
  2449. #line 22
  2450. class CDesC8Array : public CArrayFixBase, public MDesC8Array
  2451. {
  2452. protected:
  2453. __declspec(dllexport) CDesC8Array(TBufRep aRep,TInt aGranularity);
  2454. public:
  2455.     __declspec(dllexport) ~CDesC8Array();
  2456. __declspec(dllexport) void AppendL(const TDesC8& aPtr);
  2457. __declspec(dllexport) void InsertL(TInt aPos,const TDesC8& aPtr);
  2458. __declspec(dllexport) TInt InsertIsqL(const TDesC8& aPtr,TKeyCmpText aTextComparisonType=ECmpFolded);
  2459. __declspec(dllexport) TInt InsertIsqAllowDuplicatesL(const TDesC8& aPtr,TKeyCmpText aTextComparisonType=ECmpFolded);
  2460. __declspec(dllexport) void Sort(TKeyCmpText aTextComparisonType=ECmpFolded);
  2461. __declspec(dllexport) TInt Find(const TDesC8& aPtr,TInt& aPos,TKeyCmpText aTextComparisonType=ECmpFolded) const;
  2462. __declspec(dllexport) TInt FindIsq(const TDesC8& aPtr,TInt& aPos,TKeyCmpText aTextComparisonType=ECmpFolded) const;
  2463. __declspec(dllexport) void Delete(TInt aPos);
  2464. __declspec(dllexport) void Delete(TInt aIndex,TInt aCount);
  2465. __declspec(dllexport) void Reset();
  2466. inline TPtrC8 operator[](TInt aIndex) const;
  2467.     __declspec(dllexport) TInt MdcaCount() const;
  2468. __declspec(dllexport) TPtrC8 MdcaPoint(TInt aIndex) const;
  2469. };
  2470. inline TPtrC8 CDesC8Array::operator[](TInt aIndex) const
  2471. { return(MdcaPoint(aIndex)); }
  2472. class CDesC8ArrayFlat : public CDesC8Array
  2473. {
  2474. public:
  2475. __declspec(dllexport) CDesC8ArrayFlat(TInt aGranularity);
  2476.     __declspec(dllexport) ~CDesC8ArrayFlat();
  2477. };
  2478. class CDesC8ArraySeg : public CDesC8Array
  2479. {
  2480. public:
  2481. __declspec(dllexport) CDesC8ArraySeg(TInt aGranularity);
  2482.     __declspec(dllexport) ~CDesC8ArraySeg();
  2483. };
  2484. class CDesC16Array : public CArrayFixBase, public MDesC16Array
  2485. #line 93
  2486. {
  2487. protected:
  2488. __declspec(dllexport) CDesC16Array(TBufRep aRep,TInt aGranularity);
  2489. public:
  2490.     __declspec(dllexport) ~CDesC16Array();
  2491. __declspec(dllexport) void AppendL(const TDesC16& aPtr);
  2492. __declspec(dllexport) void InsertL(TInt aPos,const TDesC16& aPtr);
  2493. __declspec(dllexport) TInt InsertIsqL(const TDesC16& aPtr,TKeyCmpText aTextComparisonType=ECmpFolded);
  2494. __declspec(dllexport) TInt InsertIsqAllowDuplicatesL(const TDesC16& aPtr,TKeyCmpText aTextComparisonType=ECmpFolded);
  2495. __declspec(dllexport) void Sort(TKeyCmpText aTextComparisonType=ECmpFolded);
  2496. __declspec(dllexport) TInt Find(const TDesC16& aPtr,TInt& aPos,TKeyCmpText aTextComparisonType=ECmpFolded) const;
  2497. __declspec(dllexport) TInt FindIsq(const TDesC16& aPtr,TInt& aPos,TKeyCmpText aTextComparisonType=ECmpFolded) const;
  2498. __declspec(dllexport) void Delete(TInt aPos);
  2499. __declspec(dllexport) void Delete(TInt aIndex,TInt aCount);
  2500. __declspec(dllexport) void Reset();
  2501. inline TPtrC16 operator[](TInt aIndex) const;
  2502.     __declspec(dllexport) TInt MdcaCount() const;
  2503. __declspec(dllexport) TPtrC16 MdcaPoint(TInt aIndex) const;
  2504. };
  2505. inline TPtrC16 CDesC16Array::operator[](TInt aIndex) const
  2506. #line 129
  2507.  { return(MdcaPoint(aIndex)); }
  2508. class CDesC16ArrayFlat : public CDesC16Array
  2509. {
  2510. public:
  2511. __declspec(dllexport) CDesC16ArrayFlat(TInt aGranularity);
  2512.     __declspec(dllexport) ~CDesC16ArrayFlat();
  2513. };
  2514. class CDesC16ArraySeg : public CDesC16Array
  2515. {
  2516. public:
  2517. __declspec(dllexport) CDesC16ArraySeg(TInt aGranularity);
  2518.     __declspec(dllexport) ~CDesC16ArraySeg();
  2519. };
  2520. class CPtrC8Array : public CArrayFixFlat<TPtrC8>, public MDesC8Array
  2521. {
  2522. public:
  2523. __declspec(dllexport) CPtrC8Array(TInt aGranularity);
  2524. __declspec(dllexport) ~CPtrC8Array();
  2525. __declspec(dllexport) void CopyL(const MDesC8Array& aArray);
  2526.     inline void operator=(const MDesC8Array& aArray);
  2527.     __declspec(dllexport) TInt MdcaCount() const;
  2528.     __declspec(dllexport) TPtrC8 MdcaPoint(TInt aIndex) const;
  2529. };
  2530. class CPtrC16Array : public CArrayFixFlat<TPtrC16>, public MDesC16Array
  2531. {
  2532. public:
  2533. __declspec(dllexport) CPtrC16Array(TInt aGranularity);
  2534. __declspec(dllexport) ~CPtrC16Array();
  2535. __declspec(dllexport) void CopyL(const MDesC16Array& aArray);
  2536.     inline void operator=(const MDesC16Array& aArray);
  2537.     __declspec(dllexport) TInt MdcaCount() const;
  2538.     __declspec(dllexport) TPtrC16 MdcaPoint(TInt aIndex) const;
  2539. };
  2540. inline void CPtrC8Array::operator=(const MDesC8Array& aArray)
  2541. #line 212
  2542. {CopyL(aArray);}
  2543. inline void CPtrC16Array::operator=(const MDesC16Array& aArray)
  2544. #line 225
  2545. {CopyL(aArray);}
  2546. #line 237
  2547. typedef CDesC16Array     CDesCArray;
  2548. #line 246
  2549. typedef CDesC16ArrayFlat CDesCArrayFlat;
  2550. #line 255
  2551. typedef CDesC16ArraySeg  CDesCArraySeg;
  2552. #line 270
  2553. typedef CPtrC16Array CPtrCArray;
  2554. #line 22 "C:\Symbian\9.1\S60_3rd\epoc32\include\coemain.h" /* stack depth 4 */
  2555. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\basched.h" /* stack depth 5 */
  2556. #line 25
  2557. const TInt KErrExtended=(-1000);
  2558. const TInt KErrExtendedWithText=(-1001);
  2559. const TInt KLeaveWithoutAlert=(-1002);
  2560. const TInt KLeaveExit=(-1003);
  2561. struct SExtendedError
  2562. {
  2563. TUid iComponent;
  2564. TInt iErrorNumber;
  2565. TBool iInformation;
  2566. };
  2567. class CBaErrorHandler;
  2568. class CBaActiveScheduler : public CActiveScheduler
  2569. {
  2570. public:
  2571. __declspec(dllexport) static void LeaveNoAlert();
  2572. public:
  2573. __declspec(dllexport) static void Exit();
  2574. __declspec(dllexport) static void LeaveForAlert(TUid aComponent,TInt aErrorNumber);
  2575. __declspec(dllexport) static void LeaveForInfoPrint(TUid aComponent,TInt aErrorNumber);
  2576. __declspec(dllexport) static void LeaveForErrorHandler(const CBaErrorHandler *aHandler);
  2577. __declspec(dllexport) static const SExtendedError& ExtendedError();
  2578. __declspec(dllexport) static void DisplayExtendedError(TUid aComponent,TInt aErrorNumber);
  2579. __declspec(dllexport) virtual void DisplayError(TInt aError) const;
  2580. public:
  2581. __declspec(dllexport) void Error(TInt aError) const;
  2582. private:
  2583. __declspec(dllexport) virtual void Reserved_1();
  2584. __declspec(dllexport) virtual void Reserved_2();
  2585. static void ExtendedLeave(TUid aComponent,TInt aErrorNumber,TBool aLeaveForInfoPrint);
  2586. protected:
  2587. SExtendedError iExtendedError;
  2588. };
  2589. #line 26 "C:\Symbian\9.1\S60_3rd\epoc32\include\coemain.h" /* stack depth 4 */
  2590. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\coetextdrawer.h" /* stack depth 5 */
  2591. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\gulutil.h" /* stack depth 6 */
  2592. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\gulbordr.h" /* stack depth 7 */
  2593. #line 22
  2594. class TGulBorder
  2595. #line 38
  2596.     {
  2597. public:
  2598. class TColors
  2599. #line 53
  2600. {
  2601. public:
  2602. __declspec(dllexport) TColors();
  2603. public:
  2604. TRgb iLine;
  2605. TRgb iBack;
  2606. TRgb iLight;
  2607. TRgb iMidlight;
  2608. TRgb iMid;
  2609. TRgb iDark;
  2610. TRgb iInternalBack;
  2611. };
  2612. public:
  2613. enum TOutlineStyle
  2614. {
  2615. EWithOutline=0x01,
  2616. EDottedOutline=0x02
  2617. };
  2618. enum TInlineStyle
  2619. {
  2620. EWithInline=0x04
  2621. };
  2622. enum T3DStyle
  2623. {
  2624. EFlat=0x10,
  2625. ESunken=0x20,
  2626. ERaised=0x40
  2627. };
  2628. enum TConstructionStyle
  2629. {
  2630. EOneStep=0x100,
  2631. ETwoStep=0x200,
  2632. EThreeStep=0x400,
  2633. EInvertedTwoStep=0x800
  2634. };
  2635. #line 153
  2636. enum TThickness
  2637. {
  2638. EAddOnePixel=0x1000,
  2639. EAddTwoPixels=0x2000,
  2640. EAddFourPixels=0x4000
  2641. };
  2642. enum TRounding
  2643. {
  2644. EAddOneRoundingPixel=0x10000,
  2645. EAddTwoRoundingPixels=0x20000,
  2646. EAddFourRoundingPixels=0x40000
  2647. };
  2648. private:
  2649. enum TNull
  2650. {
  2651. ENoBorder=0x00
  2652. };
  2653. enum TLegacyStyle
  2654. {
  2655. EShallow=EAddOnePixel,
  2656. EDeep=EAddTwoPixels,
  2657. EThick=EAddFourPixels,
  2658. EHorizontal=0x100000,
  2659. EWithOverlap=0x200000,
  2660. EGray=0x400000,
  2661. EBlack=0x80000
  2662. };
  2663. enum TLogicalStyle
  2664. {
  2665. ELogical=0x800000
  2666. };
  2667. public:
  2668. enum TLogicalFamily
  2669. {
  2670. EWindowFamily=ELogical|0x1,
  2671. EContainerFamily=ELogical|0x2,
  2672. EControlFamily=ELogical|0x3
  2673. };
  2674. public:
  2675. enum TBorderType
  2676. {
  2677. ENone=ENoBorder,
  2678. ESingleGray=EWithOutline|EGray,
  2679. ESingleBlack=EWithOutline|EBlack,
  2680. ESingleDotted=EWithOutline|EDottedOutline,
  2681. EShallowRaised=ERaised|EOneStep|EAddOnePixel,
  2682. EShallowSunken=ESunken|EOneStep|EAddOnePixel,
  2683. EDeepRaised=EWithOutline|ERaised|EOneStep|EAddTwoPixels,
  2684. EDeepRaisedWithOutline=EWithOutline|ERaised|EOneStep|EAddTwoPixels,
  2685. EDeepSunken=EWithOutline|ESunken|EOneStep|EAddTwoPixels,
  2686. EDeepSunkenWithOutline=EWithOutline|ESunken|EOneStep|EAddTwoPixels,
  2687. EThickDeepRaisedWithOutline=EWithOutline|ERaised|EOneStep|EAddOnePixel|EAddTwoPixels,
  2688. EVerticalBar=ERaised|EOneStep|EAddTwoPixels|EWithOverlap,
  2689. EHorizontalBar=ERaised|EOneStep|EAddTwoPixels|EHorizontal|EWithOverlap
  2690. };
  2691. enum TLogicalType
  2692. {
  2693. EWindow=EWindowFamily|ERaised,
  2694. EFlatContainer=EContainerFamily|EFlat,
  2695. ERaisedContainer=EContainerFamily|ERaised,
  2696. ESunkenContainer=EContainerFamily|ESunken,
  2697. EFlatControl=EControlFamily|EFlat,
  2698. ERaisedControl=EControlFamily|ERaised,
  2699. ESunkenControl=EControlFamily|ESunken,
  2700. EFocusedRaisedControl=EControlFamily|ERaised|0x100,
  2701. EFocusedSunkenControl=EControlFamily|ESunken|0x100
  2702. };
  2703. public:
  2704.     __declspec(dllexport) TGulBorder();
  2705.     __declspec(dllexport) TGulBorder(TBorderType aType);
  2706.     __declspec(dllexport) TGulBorder(TBorderType aType,TGulAdjacent aAdjacent);
  2707. __declspec(dllexport) TGulBorder(TInt aType);
  2708.     __declspec(dllexport) TGulBorder(TInt aType,TGulAdjacent aAdjacent);
  2709. __declspec(dllexport) void Draw(CGraphicsContext& aGc,const TRect& aRect,const TColors& aBorderColors) const;
  2710.     __declspec(dllexport) void Draw(CGraphicsContext& aGc,const TRect& aRect) const;
  2711. __declspec(dllexport) TRect InnerRect(const TRect& aOuterRect) const;
  2712.     __declspec(dllexport) TRect OuterRect(const TRect& aInnerRect) const;
  2713. __declspec(dllexport) void SetType(TInt aType);
  2714. __declspec(dllexport) void SetAdjacent(TInt aAdjacent);
  2715. __declspec(dllexport) TSize SizeDelta() const;
  2716.     __declspec(dllexport) TMargins Margins() const;
  2717. __declspec(dllexport) TBool HasBorder() const;
  2718. __declspec(dllexport) TInt Adjacent() const;
  2719. __declspec(dllexport) TInt Type() const;
  2720. public:
  2721. __declspec(dllexport) TInt Thickness() const;
  2722. __declspec(dllexport) TInt Rounding() const;
  2723. private:
  2724. TBool IsSunken() const;
  2725. TInt Depth() const;
  2726. void DrawOutline(CGraphicsContext& aGc,const TRect& aRect,TRgb aColor) const;
  2727. void DrawRectOutline(CGraphicsContext& aGc,const TRect& aRect) const;
  2728. void DrawInline(CGraphicsContext& aGc,const TRect& aRect,TRgb aColor) const;
  2729. TMargins OutlineMargins() const;
  2730. TMargins BorderMargins() const;
  2731. TMargins InlineMargins() const;
  2732. TRect OutlineInnerRect(const TRect& aOuterRect) const;
  2733. TRect BorderInnerRect(const TRect& aOuterRect) const;
  2734. TInt BorderRounding() const;
  2735. TInt InlineRounding() const;
  2736. void DrawOneStep(CGraphicsContext& aGc,const TRect& aRect,TRgb aMidlight,TRgb aMid) const;
  2737. void DrawTwoStep(CGraphicsContext& aGc,const TRect& aRect,TRgb aLight,TRgb aMidlight,TRgb aMid,TRgb aDark) const;
  2738. void DrawInvertedTwoStep(CGraphicsContext& aGc,const TRect& aRect,TRgb aLight,TRgb aMidlight,TRgb aMid,TRgb aDark) const;
  2739. void DrawThreeStep(CGraphicsContext& aGc,const TRect& aRect,TRgb aBack,TRgb aLight,TRgb aMidlight,TRgb aMid,TRgb aDark) const;
  2740. void DrawTopLeft(CGraphicsContext& aGc,const TRect& aRect,TRgb aColor,const TInt aRounding) const;
  2741. void DrawRoundedTopLeft(CGraphicsContext& aGc,const TRect& aRect,const TInt aRounding) const;
  2742. void DrawBottomRight(CGraphicsContext& aGc,const TRect& aRect,TRgb aColor,const TInt aRounding) const;
  2743. void DrawRoundedBottomRight(CGraphicsContext& aGc,const TRect& aRect,const TInt aRounding) const;
  2744. void DrawRoundedCorner(CGraphicsContext& aGc,const TPoint& aStart,const TInt aRoundedLength, const TBool aUp, const TBool aRight) const;
  2745. TInt RoundingMargin(const TInt aRoundedLength) const;
  2746. inline TInt InternalType() const;
  2747. void TranslateLegacyTypes();
  2748. private:
  2749.     TInt iType;
  2750.     };
  2751. class MGulLogicalBorder
  2752. {
  2753. public:
  2754. virtual void Draw(const TGulBorder& aBorder,CGraphicsContext& aGc, const TRect& aRect, const TGulBorder::TColors& aBorderColors) const=0;
  2755. virtual TMargins Margins(const TGulBorder& aBorder) const=0;
  2756. private:
  2757. __declspec(dllexport) virtual void MGulLogicalBorderReserved();
  2758. };
  2759. class GulTls
  2760. {
  2761. public:
  2762. __declspec(dllexport) static void SetLogicalBorder(MGulLogicalBorder* aLogicalBorder);
  2763. __declspec(dllexport) static const MGulLogicalBorder* LogicalBorder();
  2764. };
  2765. #line 12 "C:\Symbian\9.1\S60_3rd\epoc32\include\gulutil.h" /* stack depth 6 */
  2766. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\gulftflg.hrh" /* stack depth 7 */
  2767. #line 13 "C:\Symbian\9.1\S60_3rd\epoc32\include\gulutil.h" /* stack depth 6 */
  2768. const TUint KTextUtilClipEndChar=0x2026;
  2769. const TUint KColumnListSeparator='t';
  2770. class CFont;
  2771. class CFbsFont;
  2772. class CWsScreenDevice;
  2773. class TResourceReader;
  2774. class CColorArray;
  2775. class CGraphicsDevice;
  2776. class RWsSession;
  2777. class CColorList;
  2778. template <class T> class CArrayFix;
  2779. class TMargins8
  2780. {
  2781. public :
  2782. TInt8 iLeft;
  2783. TInt8 iRight;
  2784. TInt8 iTop;
  2785. TInt8 iBottom;
  2786. public :
  2787. __declspec(dllexport) TMargins8();
  2788. __declspec(dllexport) void SetAllValuesTo(TInt aCommonValue);
  2789.     __declspec(dllexport) TRect InnerRect(const TRect& aOuterRect) const;
  2790.     __declspec(dllexport) TRect OuterRect(const TRect& aInnerRect) const;
  2791. __declspec(dllexport) TSize SizeDelta() const;
  2792. };
  2793. class DrawUtils
  2794. {
  2795. public:
  2796. __declspec(dllexport) static void DrawText(CGraphicsContext& aGc,const TDesC& aString,const TRect& aBox,TInt aBaseLineOffset,
  2797. CGraphicsContext::TTextAlign aHoriz,TInt aMargin,const CFont* aFont);
  2798.     __declspec(dllexport) static void DrawBetweenRects(CGraphicsContext& aGc,const TRect& aOuterRect,const TRect& aInnerRect);
  2799.     __declspec(dllexport) static void ClearBetweenRects(CGraphicsContext& aGc,const TRect& aOuterRect,const TRect& aInnerRect);
  2800. };
  2801. class TextUtils
  2802. {
  2803. public: