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

Symbian

开发平台:

C/C++

  1.         HBufC*   iTitle;
  2.     };
  3. #line 4 "C:\gbtukmanpf01\NOK124\Courses\S60\05300-S60_C++_Introduction\Working\LabCode\Lab_05304-s2.cb1\starter\src\S60UIExampleInitialView.cpp" /* stack depth 0 */
  4. #line 1 "C:\gbtukmanpf01\NOK124\Courses\S60\05300-S60_C++_Introduction\Working\LabCode\Lab_05304-s2.cb1\starter\inc\S60UIExampleModel.h" /* stack depth 1 */
  5. #line 18
  6. class THighScore
  7.     {
  8.     public:
  9.         TInt      iScore;
  10.         TBufC<20> iName;
  11.     };
  12. #line 32
  13. class CS60UIExampleModel : public CBase
  14.     {
  15.     public:
  16.         static CS60UIExampleModel* CS60UIExampleModel::NewL();
  17.         static CS60UIExampleModel* CS60UIExampleModel::NewLC();
  18.         void ConstructL();
  19.         virtual ~CS60UIExampleModel();
  20.     public:
  21.         TBool IsGameStarted() const  { return iGameStarted; }
  22.         TBool IsGamePaused() const   { return iGamePaused; }
  23.         void GameStart()    { iGameStarted = ETrue; iLevel = 1; iScore = 0; }
  24.         void GameStop()     { iGameStarted = EFalse; }
  25.         void GamePause()    { iGamePaused = ETrue; }
  26.         void GameContinue() { iGameStarted = ETrue; iGamePaused = EFalse; }
  27.         TInt LevelNumber()               { return iLevel; }
  28.         void SetLevelNumber(TInt aLevel) { iLevel = aLevel; }
  29.         TInt Score()               { return iScore; }
  30.         void SetScore(TInt aScore) { iScore = aScore; }
  31.         RArray<THighScore> * HighScoreArray() { return &iHighScores; }
  32.         void InsertInHighScoresL(TDesC& aName, TInt aScore);
  33.     private:
  34.         TBool iGameStarted;
  35.         TBool iGamePaused;
  36.         TInt iLevel;
  37.         TInt iScore;
  38.         RArray<THighScore>  iHighScores;
  39.     };
  40. #line 5 "C:\gbtukmanpf01\NOK124\Courses\S60\05300-S60_C++_Introduction\Working\LabCode\Lab_05304-s2.cb1\starter\src\S60UIExampleInitialView.cpp" /* stack depth 0 */
  41. #line 1 "C:\gbtukmanpf01\NOK124\Courses\S60\05300-S60_C++_Introduction\Working\LabCode\Lab_05304-s2.cb1\starter\inc\S60UIExample.hrh" /* stack depth 1 */
  42. enum TS60UIExampleCommandIds
  43.     {
  44.     ES60UIExampleStartGame = 1,
  45.     ES60UIExampleContinueGame,
  46.     ES60UIExamplePauseGame,
  47.     ES60UIExampleStopGame,
  48.     ES60UIExampleWeapon,
  49.     ES60UIExampleHighscores
  50.     };
  51. enum TS60UIExampleViewNumber
  52.     {
  53.     ES60UIExampleInitialViewId = 1,
  54.     ES60UIExamplePlayViewId,
  55.     ES60UIExampleHighScoreViewId,
  56.     ES60UIExampleSettingsViewId
  57.     };
  58. #line 6 "C:\gbtukmanpf01\NOK124\Courses\S60\05300-S60_C++_Introduction\Working\LabCode\Lab_05304-s2.cb1\starter\src\S60UIExampleInitialView.cpp" /* stack depth 0 */
  59. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\aknviewappui.h" /* stack depth 1 */
  60. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\aknappui.h" /* stack depth 2 */
  61. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikappui.h" /* stack depth 3 */
  62. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\apadef.h" /* stack depth 4 */
  63. #line 18
  64. const TUint KApaCommandLetterOpen='O';
  65. const TUint KApaCommandLetterCreate='C';
  66. const TUint KApaCommandLetterRun='R';
  67. const TUint KApaCommandLetterBackground='B';
  68. const TUint KApaCommandLetterViewActivate='V';
  69. const TUint KApaCommandLetterRunWithoutViews='W';
  70. enum TApaCommand
  71. {
  72. EApaCommandOpen,
  73. EApaCommandCreate,
  74. EApaCommandRun,
  75. EApaCommandBackground,
  76. EApaCommandViewActivate,
  77. EApaCommandRunWithoutViews
  78. };
  79. const TInt KApaMaxAppCaption=0x100;
  80. #line 82
  81. typedef TBuf<KApaMaxAppCaption> TApaAppCaption;
  82. const TInt KApaMaxCommandLine=0x100;
  83. typedef TBuf<KApaMaxCommandLine> TApaCommandLine;
  84. const TInt KApaMaxAppFileName=0x10;
  85. typedef TBuf<KApaMaxAppFileName> TApaAppFileName;
  86. const TInt KApaMaxAppGroupName=0x10;
  87. #line 118
  88. typedef TBuf<KApaMaxAppGroupName> TApaAppGroupName;
  89. const TInt KAppUidValue8 = 0x1000006c;
  90. const TUid KUidApp8={KAppUidValue8};
  91. #line 141
  92. const TInt KAppUidValue16 = 0x100039CE;
  93. const TUid KUidApp16={KAppUidValue16};
  94. const TUid KUidAppDllDoc8={268435565};
  95. const TUid KUidAppDllDoc16={0x10003A12};
  96. const TUid KUidPictureTypeDoor8={268435537};
  97. const TUid KUidPictureTypeDoor16={0x10003A33};
  98. const TUid KUidSecurityStream8={268435661};
  99. const TUid KUidSecurityStream16={0x10003A40};
  100. const TUid KUidAppIdentifierStream8={268435593};
  101. const TUid KUidAppIdentifierStream16={0x10003A34};
  102. #line 272
  103. const TUid KUidFileEmbeddedApplicationInterfaceUid={0x101f8c96};
  104. #line 12 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikappui.h" /* stack depth 3 */
  105. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\baerrhan.h" /* stack depth 4 */
  106. #line 31
  107. const TInt KUidBaflErrorHandlerValue8=0x10000257;
  108. const TUid KUidBaflErrorHandler8={KUidBaflErrorHandlerValue8};
  109. const TInt KUidBaflErrorHandlerValue16=0x10003A13;
  110. const TUid KUidBaflErrorHandler16={KUidBaflErrorHandlerValue16};
  111. enum TErrorHandlerResponse
  112. {
  113. EErrorNotHandled,
  114. ENoDisplay,
  115. EAlertDisplay,
  116. EInfoDisplay
  117. };
  118. class CBaErrorHandler : public CBase
  119. {
  120. public:
  121. virtual TErrorHandlerResponse HandleError(TDes& aErrorText,TDes& aContextText)=0;
  122. inline static TErrorHandlerResponse CallBack(TInt aErrorNumber,TDes& aErrorText,TDes& aContextText);
  123. };
  124. inline TErrorHandlerResponse CBaErrorHandler::CallBack(TInt aErrorNumber,TDes& aErrorText,TDes& aContextText)
  125. {
  126. return((CBaErrorHandler*)(aErrorNumber))->HandleError(aErrorText,aContextText);
  127. }
  128. #line 15 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikappui.h" /* stack depth 3 */
  129. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikaufty.h" /* stack depth 4 */
  130. #line 17
  131. class CEikHotKeyTable;
  132. class CEikMenuBar;
  133. class CEikMenuPane;
  134. class CEikCommandButton;
  135. class CEikToolBar;
  136. class CEikButtonGroupContainer;
  137. class CEikAppUi;
  138. class CEikonEnv;
  139. class CEikStatusPane;
  140. class MEikAppUiFactory
  141. : public MObjectProvider
  142. {
  143. public:
  144. virtual void CreateResourceIndependentFurnitureL(CEikAppUi* aAppUi) =0;
  145. virtual TRect ClientRect() = 0;
  146. virtual void ReadAppInfoResourceL(TInt aResourceFileOffset,CEikAppUi* aAppUi) = 0;
  147. virtual void LaunchPopupMenuL(
  148. TInt aResourceId,
  149. const TPoint& aTargetPos,
  150. TPopupTargetPosType aTargetType,
  151. const CEikHotKeyTable* aHotKeyTable,
  152. CEikAppUi* aAppUi) = 0;
  153. virtual void DoLaunchPopupL(TInt aResourceId,const TPoint& aTargetPos, const CEikHotKeyTable* aHotKeyTable,
  154. TPopupTargetPosType aTargetType,CEikAppUi* aAppUi) = 0;
  155.     virtual void ClosePopup(CEikAppUi* aAppUi) = 0;
  156. virtual void StopDisplayingMenuBar() = 0;
  157. virtual void HandleSideBarMenuL(TInt aResourceId,const TPoint& aPos,
  158. const CEikHotKeyTable* aHotKeyTable,CEikAppUi* aAppUi) = 0;
  159. virtual void CreateHotKeyControlL(TInt aResourceId, CEikAppUi* aAppUi) = 0;
  160. virtual CEikMenuBar* MenuBar() const = 0;
  161. virtual CEikMenuBar* SwapMenuBar(CEikMenuBar* aMenu) = 0;
  162. virtual CEikMenuPane* Popup() const = 0;
  163. virtual CEikButtonGroupContainer* ToolBar() const = 0;
  164. virtual CEikButtonGroupContainer* SwapButtonGroup(CEikButtonGroupContainer* aNewGroup) = 0;
  165. virtual CEikToolBar* ToolBand() const = 0;
  166. virtual CEikToolBar* TitleBand() const = 0;
  167. virtual CEikStatusPane* StatusPane() const = 0;
  168. virtual CEikButtonGroupContainer* Cba() const = 0;
  169. inline CEikToolBar* SwapToolBand(CEikToolBar* aToolBand);
  170. inline CEikToolBar* SwapTitleBand(CEikToolBar* aTitleBand);
  171. virtual CEikCommandButton*  CreateStandardTabButtonL() const = 0;
  172. virtual void CreateEmbeddedL(CEikonEnv& aEikonEnv) = 0;
  173. virtual void DestroyEmbedded(CEikonEnv& aEikonEnv) = 0;
  174. virtual void HandleResourceChangeL(TInt aType) = 0;
  175. protected:
  176. enum TToolBarType
  177. {
  178. EBand,
  179. ETitle
  180. };
  181. private:
  182. virtual CEikToolBar* SwapToolBar(CEikToolBar* aToolBar,TToolBarType aType) = 0;
  183. };
  184. inline CEikToolBar* MEikAppUiFactory::SwapToolBand(CEikToolBar* aToolBand)
  185. {return SwapToolBar(aToolBand,EBand);}
  186. inline CEikToolBar* MEikAppUiFactory::SwapTitleBand(CEikToolBar* aTitleBand)
  187. {return SwapToolBar(aTitleBand,ETitle);}
  188. #line 16 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikappui.h" /* stack depth 3 */
  189. class CEikDocument;
  190. class CEikApplication;
  191. class CEikAppUiExtra;
  192. class MApaEmbeddedDocObserver;
  193. struct SExtendedError;
  194. class CApaCommandLine;
  195. class CEikAppUi : public CCoeAppUi, public MEikMenuObserver, public MCoeMessageObserver
  196. , public MObjectProvider
  197. #line 56
  198. {
  199. public:
  200. __declspec(dllexport) ~CEikAppUi();
  201. __declspec(dllexport) CEikAppUi();
  202. public:
  203. __declspec(dllexport) virtual void ConstructL();
  204. __declspec(dllexport) virtual void HandleModelChangeL();
  205. __declspec(dllexport) void LaunchPopupMenuL(TInt aResourceId,const TPoint& aTargetPos,TPopupTargetPosType aTargetType,const CEikHotKeyTable* aHotKeyTable=0 );
  206. inline CEikAppUi* ContainerAppUi() const;
  207. __declspec(dllexport) void SetDocument(CEikDocument* aDocument);
  208. __declspec(dllexport) void SetEmbeddedDocInfo(MApaEmbeddedDocObserver* aObserver,TBool aReadOnly);
  209. __declspec(dllexport) virtual TBool ProcessCommandParametersL(TApaCommand aCommand,TFileName& aDocumentName,const TDesC8& aTail);
  210. __declspec(dllexport) virtual TBool ProcessCommandParametersL(CApaCommandLine& aCommandLine);
  211. __declspec(dllexport) CEikDocument* Document() const;
  212. __declspec(dllexport) CEikApplication* Application() const;
  213. __declspec(dllexport) TRect ClientRect() const;
  214. __declspec(dllexport) virtual TRect ApplicationRect() const;
  215. __declspec(dllexport) virtual void StopDisplayingMenuBar();
  216. __declspec(dllexport) TBool FadeWhenInBackground();
  217. __declspec(dllexport) virtual void SetFadedL(TBool aFaded);
  218. inline void SetFaded(TBool aFaded);
  219. public:
  220. virtual __declspec(dllexport) void ReportResourceChangedToAppL(TInt aType);
  221. __declspec(dllexport) virtual void HandleCommandL(TInt aCommand);
  222. __declspec(dllexport) virtual void ProcessMessageL(TUid aUid,const TDesC8& aParams);
  223. __declspec(dllexport) virtual void OpenFileL(const TDesC& aFileName);
  224. __declspec(dllexport) virtual void CreateFileL(const TDesC& aFileName);
  225. __declspec(dllexport) virtual TErrorHandlerResponse HandleError(TInt aError,const SExtendedError& aExtErr,TDes& aErrorText,TDes& aContextText);
  226. __declspec(dllexport) virtual void HandleResourceChangeL(TInt aType);
  227. public:
  228. __declspec(dllexport) void PrepareToExit();
  229. protected:
  230. __declspec(dllexport) void BaseConstructL(TInt aAppUiFlags=0);
  231. __declspec(dllexport) void ReadAppInfoResourceL(TInt aResourceFileOffset=0);
  232. __declspec(dllexport) void CreateHotKeyControlL(TInt aResourceId);
  233. __declspec(dllexport) void SetDocChanged();
  234. __declspec(dllexport) void SaveAnyChangesL();
  235. __declspec(dllexport) virtual void Exit();
  236. __declspec(dllexport) void SaveL();
  237. __declspec(dllexport) void ClosePopup();
  238. __declspec(dllexport) TBool ProcessCommandParametersL(TApaCommand aCommand,TFileName& aDocumentName);
  239. protected:
  240. __declspec(dllexport) void HandleSideBarMenuL(TInt aResourceId,const TPoint& aPos,TInt aModifiers,const CEikHotKeyTable* aTable);
  241. protected:
  242. __declspec(dllexport) void HandleApplicationSpecificEventL(TInt aType,const TWsEvent& aEvent);
  243. __declspec(dllexport) void HandleForegroundEventL(TBool aForeground);
  244. __declspec(dllexport) void HandleWsEventL(const TWsEvent& aEvent, CCoeControl* aDestination);
  245. __declspec(dllexport) void HandleSystemEventL(const TWsEvent& aEvent);
  246. __declspec(dllexport) void HandleScreenDeviceChangedL();
  247. protected:
  248. __declspec(dllexport) void ProcessCommandL(TInt aCommand);
  249. private:
  250. __declspec(dllexport) void SetEmphasis(CCoeControl* aMenuWindow,TBool aEmphasis);
  251. protected:
  252. __declspec(dllexport) MCoeMessageObserver::TMessageResponse HandleMessageL(TUint32 aClientHandleOfTargetWindowGroup, TUid aMessageUid, const TDesC8& aMessageParameters);
  253. protected:
  254. __declspec(dllexport) virtual TTypeUid::Ptr MopSupplyObject(TTypeUid aId);
  255. __declspec(dllexport) virtual MObjectProvider* MopNext();
  256. private:
  257. private:
  258. __declspec(dllexport) virtual TBool ValidFileType(TUid aFileUid) const;
  259. __declspec(dllexport) virtual void Reserved_3();
  260. __declspec(dllexport) virtual void Reserved_4();
  261. public:
  262. __declspec(dllexport) TLanguage ApplicationLanguageL() const;
  263. public:
  264. enum
  265. {
  266. EStandardApp = 0x00,
  267. ENoAppResourceFile = 0x01,
  268. ENonStandardResourceFile= 0x02,
  269. ENoScreenFurniture = 0x04,
  270. ELastReservedEikAppUiFlag = 0x8000
  271. };
  272. public:
  273. __declspec(dllexport) void ReportResourceChangedToAppStackL(CEikAppUi* aTopApp, TInt aEventId);
  274. private:
  275. void CreateResourceIndependentFurnitureL();
  276. TBool ValidFileExistsL(const TDesC& aFileName);
  277. protected:
  278. CEikDocument* iDocument;
  279. CEikAppUi* iContainerAppUi;
  280. MApaEmbeddedDocObserver* iDoorObserver;
  281. TBool iEmbeddedAndReadOnly;
  282. TInt iFlags;
  283. private:
  284. enum
  285. {
  286. EEmbedded = 0x01
  287. };
  288. private:
  289. CEikAppUiExtra* iAppUiExtra;
  290. };
  291. inline CEikAppUi* CEikAppUi::ContainerAppUi() const
  292. { return iContainerAppUi; }
  293. #line 24 "C:\Symbian\9.1\S60_3rd\epoc32\include\aknappui.h" /* stack depth 2 */
  294. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\Eikspane.h" /* stack depth 3 */
  295. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikspmod.h" /* stack depth 4 */
  296. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\uikon.hrh" /* stack depth 5 */
  297. #line 20
  298. enum TEikAppResourceFileStandardOffset
  299. {
  300. ESignatureResourceOffset=1,
  301. EDefaultNameResourceOffset,
  302. EAppInfoResourceOffset
  303. };
  304. #line 14 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikspmod.h" /* stack depth 4 */
  305. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eiksrvc.h" /* stack depth 5 */
  306. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eiksrvs.h" /* stack depth 6 */
  307. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 7 */
  308. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\apaflrec.h" /* stack depth 8 */
  309. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\apaid.h" /* stack depth 9 */
  310. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\apmstd.h" /* stack depth 10 */
  311. #line 17
  312. const TInt KMaxDataTypeLength=256;
  313. class RReadStream;
  314. class RWriteStream;
  315. #line 31
  316. typedef TInt32 TDataTypePriority;
  317. const TInt32 KDataTypePriorityUserSpecified=KMaxTInt16;
  318. #line 46
  319. const TInt32 KDataTypePrioritySystem = 0xFFF9;
  320. #line 55
  321. const TInt32 KDataTypeUnTrustedPriorityThreshold=KMaxTInt16;
  322. #line 64
  323. const TInt32 KDataTypePriorityHigh=10000;
  324. #line 73
  325. const TInt32 KDataTypePriorityNormal=0;
  326. #line 82
  327. const TInt32 KDataTypePriorityLow=-10000;
  328. #line 91
  329. const TInt32 KDataTypePriorityLastResort=-20000;
  330. const TInt32 KDataTypePriorityNotSupported=KMinTInt16;
  331. class TDataType
  332. #line 110
  333. {
  334. public:
  335. __declspec(dllexport) TDataType();
  336. __declspec(dllexport) TDataType(const TDataType& aDataType);
  337. __declspec(dllexport) TDataType(const TDesC8& aDataType);
  338. __declspec(dllexport) TDataType(TUid aUid);
  339. __declspec(dllexport) TInt operator==(const TDataType& aDataType) const;
  340. __declspec(dllexport) TInt operator!=(const TDataType& aDataType) const;
  341. __declspec(dllexport) TBool IsNative() const;
  342. __declspec(dllexport) TBuf<KMaxDataTypeLength> Des() const;
  343. __declspec(dllexport) TPtrC8 Des8() const;
  344. __declspec(dllexport) TUid Uid() const;
  345. __declspec(dllexport) void InternalizeL(RReadStream& aReadStream);
  346. __declspec(dllexport) void ExternalizeL(RWriteStream& aWriteStream) const;
  347. private:
  348. void ParseDes();
  349. private:
  350. TBuf8<KMaxDataTypeLength> iDataType;
  351. TUid iUid;
  352. };
  353. #line 142
  354. const static TLitC8<sizeof( "X-Epoc-Url/")> KEpocUrlDataTypeHeader={sizeof( "X-Epoc-Url/")-1, "X-Epoc-Url/"} ;
  355. class TDataTypeWithPriority
  356. #line 159
  357. {
  358. public:
  359. __declspec(dllexport) TDataTypeWithPriority();
  360. __declspec(dllexport) TDataTypeWithPriority(const TDataType& aDataType, TDataTypePriority aPriority);
  361. __declspec(dllexport) void InternalizeL(RReadStream& aReadStream);
  362. __declspec(dllexport) void ExternalizeL(RWriteStream& aWriteStream) const;
  363. public:
  364. TDataType iDataType;
  365. TDataTypePriority iPriority;
  366. };
  367. #line 16 "C:\Symbian\9.1\S60_3rd\epoc32\include\apaid.h" /* stack depth 9 */
  368. class TApaAppIdentifier;
  369. class TApaAppEntry;
  370. class CApaAppFinder;
  371. class RReadStream;
  372. class RWriteStream;
  373. class RFs;
  374. class TApaAppIdentifier
  375. #line 49
  376. {
  377. public:
  378. __declspec(dllexport) TApaAppIdentifier();
  379. __declspec(dllexport) TApaAppIdentifier(TUid aAppUidType,const TFileName& aDllName);
  380. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream)const;
  381. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  382. public:
  383. TUid iAppUid;
  384. TFileName iFullName;
  385. private:
  386. TInt iTApaAppIdentifier_Reserved1;
  387. };
  388. class TApaAppEntry
  389. #line 78
  390. {
  391. public:
  392. __declspec(dllexport) TApaAppEntry();
  393. __declspec(dllexport) TApaAppEntry(const TUidType& aAppUidType,const TFileName& aDllName);
  394. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream)const;
  395. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  396. public:
  397. TUidType iUidType;
  398. TFileName iFullName;
  399. private:
  400. TInt iTApaAppEntry_Reserved1;
  401. };
  402. class TApaAppInfo
  403. #line 109
  404. {
  405. public:
  406. __declspec(dllexport) TApaAppInfo();
  407. __declspec(dllexport) TApaAppInfo(TUid aAppUid,const TFileName& aDllName,const TApaAppCaption& aCaption);
  408. __declspec(dllexport) TApaAppInfo(TUid aAppUid,const TFileName& aDllName,const TApaAppCaption& aCaption,const TApaAppCaption& aShortCaption);
  409. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream)const;
  410. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  411. public:
  412. TUid iUid;
  413. TFileName iFullName;
  414. TApaAppCaption iCaption;
  415. TApaAppCaption iShortCaption;
  416. private:
  417. TInt iTApaAppInfo_Reserved1;
  418. };
  419. class TApaAppViewInfo
  420. #line 146
  421. {
  422. public:
  423. __declspec(dllexport) TApaAppViewInfo();
  424. __declspec(dllexport) TApaAppViewInfo(TUid aViewUid,const TApaAppCaption& aViewCaption,TInt aScreenMode);
  425. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream)const;
  426. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  427. public:
  428. TUid iUid;
  429. TApaAppCaption iViewCaption;
  430. TInt iScreenMode;
  431. private:
  432. TInt iTApaAppViewInfo_Reserved1;
  433. };
  434. #line 171
  435. typedef CArrayFixFlat<TApaAppViewInfo> CApaAppViewArray;
  436. class TApaAppCapability
  437. {
  438. public:
  439. __declspec(dllexport) static void CopyCapability(TDes8& aDest,const TDesC8& aSource);
  440. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  441. __declspec(dllexport) void Internalize7_0L(RReadStream& aStream);
  442. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream) const;
  443. private:
  444. __declspec(dllexport) void Externalize7_0L(RWriteStream& aStream) const;
  445. void DoInternalizeL(RReadStream& aStream, TBool& aLaunchInBackground, TApaAppGroupName& aGroupName);
  446. public:
  447. enum TEmbeddability {
  448. ENotEmbeddable=0,
  449. EEmbeddable=1,
  450. EEmbeddableOnly=2,
  451. EEmbeddableUiOrStandAlone=5,
  452. EEmbeddableUiNotStandAlone=6 };
  453. enum TCapabilityAttribute
  454. {
  455. EBuiltAsDll = 0x00000001,
  456. EControlPanelItem = 0x00000002,
  457. ENonNative = 0x00000004
  458. };
  459. public:
  460. TEmbeddability iEmbeddability;
  461. TBool iSupportsNewFile;
  462. TBool iAppIsHidden;
  463. TBool iLaunchInBackground;
  464. TApaAppGroupName iGroupName;
  465. TUint iAttributes;
  466. private:
  467. enum { EVersion=4 };
  468. private:
  469. TInt iTApaAppCapability_Reserved1;
  470. };
  471. typedef TPckgBuf<TApaAppCapability> TApaAppCapabilityBuf;
  472. class TApaEmbeddabilityFilter
  473. {
  474. public:
  475. __declspec(dllexport) TApaEmbeddabilityFilter();
  476. __declspec(dllexport) void AddEmbeddability(TApaAppCapability::TEmbeddability aEmbeddability);
  477. __declspec(dllexport) TBool MatchesEmbeddability(TApaAppCapability::TEmbeddability aEmbeddability) const;
  478. private:
  479. TUint iEmbeddabilityFlags;
  480. private:
  481. TInt iTApaEmbeddabilityFilter_Reserved1;
  482. };
  483. class CApaAppFinder : public CBase
  484. {
  485. public:
  486. virtual void FindAllAppsL()=0;
  487. virtual TBool NextL(TApaAppEntry& aEntry)=0;
  488. virtual TFileName FindAppL(const TDesC& aFileName,TUid aFileUid)=0;
  489. #line 282
  490. virtual TFileName DefaultAppInfoFileName()const=0;
  491. protected:
  492. __declspec(dllexport) CApaAppFinder();
  493. private:
  494. __declspec(dllexport) virtual void CApaAppFinder_Reserved1();
  495. __declspec(dllexport) virtual void CApaAppFinder_Reserved2();
  496. };
  497. const TUid KOpenServiceUid = { 0x10208DCA };
  498. #line 310
  499. class TApaAppServiceInfo
  500. {
  501. public:
  502. TApaAppServiceInfo();
  503. TApaAppServiceInfo(TUid aUid, CArrayFixFlat<TDataTypeWithPriority> * aDataTypes,
  504. HBufC8* aOpaqueData);
  505. void ExternalizeL(RWriteStream& aStream) const;
  506. void InternalizeL(RReadStream& aStream);
  507. void Release();
  508. CArrayFixFlat<TDataTypeWithPriority>& DataTypes();
  509. __declspec(dllexport) TUid Uid() const;
  510. __declspec(dllexport) const CArrayFixFlat<TDataTypeWithPriority>& DataTypes() const;
  511. __declspec(dllexport) const TDesC8& OpaqueData() const;
  512. private:
  513. TUid iUid;
  514. CArrayFixFlat<TDataTypeWithPriority> * iDataTypes;
  515. HBufC8* iOpaqueData;
  516. TInt iTApaAppServiceInfo;
  517. };
  518. #line 338
  519. class CApaAppServiceInfoArray : public CBase
  520. {
  521. protected:
  522. CApaAppServiceInfoArray();
  523. public:
  524. virtual TArray<TApaAppServiceInfo> Array()=0;
  525. private:
  526. __declspec(dllexport) virtual void CApaAppServiceInfoArray_Reserved1();
  527. __declspec(dllexport) virtual void CApaAppServiceInfoArray_Reserved2();
  528. private:
  529. TInt iCApaAppServiceInfoArray_Reserved1;
  530. };
  531. #line 13 "C:\Symbian\9.1\S60_3rd\epoc32\include\apaflrec.h" /* stack depth 8 */
  532. class MApaAppStarter;
  533. class CApaAppLocator;
  534. class CApaFileRecognizer;
  535. class CApaFileRecognizerType;
  536. class CFileRecognizerExtension;
  537. class TApaAppEntry;
  538. class CApaCommandLine;
  539. class RFs;
  540. #line 44
  541. const TInt KFileRecognizerUidValue8=0x1000013E;
  542. const TUid KUidFileRecognizer8={KFileRecognizerUidValue8};
  543. const TUid KUidFileRecognizer16={0x10003A37};
  544. class CApaAppLocator : public CBase
  545. {
  546. public:
  547. virtual TInt GetAppEntryByUid(TApaAppEntry& aAppEntry,TUid aAppUid)=0;
  548. virtual TInt GetAppCapabilityByUid(TDes8& aCapabilityBuf,TUid aAppUid)=0;
  549. };
  550. class CApaFileRecognizer : public CBase
  551. {
  552. public:
  553. __declspec(dllexport) CApaFileRecognizerType* RecognizeFileL(const TDesC& aFullFileName,const TUidType* aUidType=0 );
  554. __declspec(dllexport) CApaAppLocator* AppLocator() const;
  555. __declspec(dllexport) ~CApaFileRecognizer();
  556. protected:
  557. __declspec(dllexport) CApaFileRecognizer(RFs& aFs);
  558. __declspec(dllexport) void AddFileRecognizerType(CApaFileRecognizerType* aFileRecognizerType);
  559. __declspec(dllexport) TInt RemoveFileRecognizerType(const CApaFileRecognizerType* aFileRecognizerType);
  560. __declspec(dllexport) void SetAppLocator(CApaAppLocator* aAppLocator);
  561. static inline void SetAppStarter(CApaFileRecognizerType* aRecognizer,MApaAppStarter* aAppStarter);
  562. __declspec(dllexport) void DestroyRecognizerList();
  563. protected:
  564. RFs& iFs;
  565. CApaAppLocator* iAppLocator;
  566. private:
  567. CApaFileRecognizerType *iFileRecognizerList;
  568. };
  569. class MApaAppStarter
  570. {
  571. public:
  572. virtual TThreadId StartAppL(const CApaCommandLine& aCommandLine)=0;
  573. protected:
  574. __declspec(dllexport) MApaAppStarter();
  575. private:
  576. __declspec(dllexport) virtual void MApaAppStarter_Reserved1();
  577. __declspec(dllexport) virtual void MApaAppStarter_Reserved2();
  578. private:
  579. TInt iMApaAppStarter_Reserved1;
  580. };
  581. class CApaFileRecognizerType : public CBase
  582. {
  583. public:
  584. enum TRecognizedType {EProgram,EDoc,EOtherFile,ENotRecognized};
  585. public:
  586. virtual TThreadId RunL(TApaCommand aCommand,const TDesC* aDocFileName=0 ,const TDesC8* aTailEnd=0 ) const=0;
  587. inline TUid AppUid()const;
  588. inline TUid TypeUid()const;
  589. inline TRecognizedType Type()const;
  590. __declspec(dllexport) void Capability(TDes8& aCapabilityBuf)const;
  591. __declspec(dllexport) void Lock();
  592. __declspec(dllexport) void Unlock();
  593. protected:
  594. __declspec(dllexport) CApaFileRecognizerType();
  595. __declspec(dllexport) ~CApaFileRecognizerType();
  596. __declspec(dllexport) TThreadId AppRunL(const CApaCommandLine& aCommandLine) const;
  597. private:
  598. inline void SetAppStarter(MApaAppStarter* aAppStarter);
  599. virtual TRecognizedType DoRecognizeFileL(RFs& aFs,TUidType aUidType)=0;
  600. TRecognizedType RecognizeFileL(RFs& aFs,const TDesC& aFullFileName,TUidType aUidType);
  601. TBool Locked()const;
  602. __declspec(dllexport) virtual void Reserved_1();
  603. public:
  604. __declspec(dllexport) static CApaFileRecognizerType* CreateFileRecognizerL(TUid aImplUid);
  605. protected:
  606. CApaFileRecognizer* iFileRecognizer;
  607. MApaAppStarter* iAppStarter;
  608. HBufC* iFullFileName;
  609. TUid iFileType;
  610. TUid iAppUid;
  611. TRecognizedType iRecognizedType;
  612. TApaAppCapabilityBuf* iCapabilityBuf;
  613. private:
  614. CApaFileRecognizerType* iNext;
  615. TInt iLock;
  616. CFileRecognizerExtension* iFileRecognizerExtn;
  617. private:
  618. friend class CApaFileRecognizer;
  619. };
  620. inline void CApaFileRecognizer::SetAppStarter(CApaFileRecognizerType* aRecognizer,MApaAppStarter* aAppStarter)
  621. { aRecognizer->SetAppStarter(aAppStarter); }
  622. inline void CApaFileRecognizerType::SetAppStarter(MApaAppStarter* aAppStarter)
  623. { iAppStarter = aAppStarter; }
  624. inline TUid CApaFileRecognizerType::AppUid() const
  625. { return iAppUid; }
  626. inline TUid CApaFileRecognizerType::TypeUid() const
  627. { return iFileType; }
  628. inline CApaFileRecognizerType::TRecognizedType CApaFileRecognizerType::Type()const
  629. { return iRecognizedType; }
  630. #line 14 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 7 */
  631. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\apacmdln.h" /* stack depth 8 */
  632. #line 26
  633. class CApaCommandLine : public CBase
  634. #line 43
  635. {
  636. public:
  637. __declspec(dllexport) static CApaCommandLine* NewL();
  638. __declspec(dllexport) static CApaCommandLine* NewLC();
  639. __declspec(dllexport) ~CApaCommandLine();
  640. #line 66
  641. __declspec(dllexport) void SetProcessEnvironmentL(RProcess& aProcess) const;
  642. __declspec(dllexport) static TInt GetCommandLineFromProcessEnvironment(CApaCommandLine*& aCommandLine);
  643. __declspec(dllexport) void GetIpcArgsLC(TIpcArgs& aIpcArgs) const;
  644. __declspec(dllexport) void ConstructCmdLineFromMessageL(const RMessage2& aMessage);
  645. __declspec(dllexport) void SetDocumentNameL(const TDesC& aDocName);
  646. __declspec(dllexport) TPtrC DocumentName() const;
  647. __declspec(dllexport) void SetExecutableNameL(const TDesC& aAppName);
  648. __declspec(dllexport) TPtrC ExecutableName() const;
  649. __declspec(dllexport) void SetOpaqueDataL(const TDesC8& aOpaqueData);
  650. __declspec(dllexport) TPtrC8 OpaqueData() const;
  651. __declspec(dllexport) void SetTailEndL(const TDesC8& aTailEnd);
  652. __declspec(dllexport) TPtrC8 TailEnd() const;
  653. __declspec(dllexport) void SetCommandL(TApaCommand aCommand);
  654. __declspec(dllexport) TApaCommand Command() const;
  655. __declspec(dllexport) void SetParentProcessId(TProcessId aProcessId);
  656. __declspec(dllexport) TProcessId ParentProcessId() const;
  657. __declspec(dllexport) void SetFileByHandleL(const RFile& aFile);
  658. __declspec(dllexport) void GetFileByHandleL(RFile& aFile) const;
  659. public:
  660. __declspec(dllexport) void SetServerNotRequiredL();
  661. __declspec(dllexport) void SetServerRequiredL(TUint aServerDifferentiator);
  662. __declspec(dllexport) TUint ServerRequired() const;
  663. __declspec(dllexport) void SetDefaultScreenL(TInt aDefaultScreenNumber);
  664. __declspec(dllexport) TInt DefaultScreen() const;
  665. __declspec(dllexport) TBool IsDefaultScreenSet() const;
  666. __declspec(dllexport) void SetParentWindowGroupID(TInt aParentWindowGroupID);
  667. __declspec(dllexport) TInt ParentWindowGroupID() const;
  668. __declspec(dllexport) void SetDebugMemFailL(TInt aDebugMemFail);
  669. __declspec(dllexport) TInt DebugMemFail() const;
  670. __declspec(dllexport) void SetAppStartupInstrumentationEventIdBaseL(TInt aEventIdBase);
  671. __declspec(dllexport) TInt AppStartupInstrumentationEventIdBase() const;
  672. __declspec(dllexport) static TInt EnvironmentSlotForPublicUse(TInt aIndex);
  673. private:
  674. struct SOption
  675. {
  676. const TDesC* iToken;
  677. TInt* iResult;
  678. TRadix iRadix;
  679. HBufC8* iHBufC8Result;
  680. };
  681. private:
  682. CApaCommandLine();
  683. void SetServerDifferentiatorL(TUint aServerDifferentiator);
  684. void ExternalizeL(RWriteStream& aStream) const;
  685. void InternalizeL(RReadStream& aStream);
  686. HBufC8* StreamableAttributesLC() const;
  687. void GetCommandLineFromProcessEnvironmentL();
  688. TInt Parse(const TDesC& aCmdLine);
  689. TPtrC StripQuotes(const TDesC& aDes) const;
  690. #line 153
  691. private:
  692. enum
  693. {
  694. EEnvironmentSlotUnused=0,
  695. EEnvironmentSlotMain=1,
  696. EEnvironmentSlotFsSession=2,
  697. EEnvironmentSlotFile=3,
  698. EFirstEnvironmentSlotForPublicUse=8,
  699. ENumberOfEnvironmentSlotsForPublicUse=4
  700. };
  701. enum
  702. {
  703. EIpcSlotMain=0,
  704. EIpcSlotFsSession=1,
  705. EIpcSlotFile=2
  706. };
  707. public:
  708. enum
  709. {
  710. EIpcFirstFreeSlot=3
  711. };
  712. private:
  713. HBufC* iDocumentName;
  714. HBufC* iExecutableName;
  715. HBufC8* iOpaqueData;
  716. HBufC8* iTailEnd;
  717. TApaCommand iCommand;
  718. TUint iServerDifferentiator;
  719. TInt iDefaultScreenNumber;
  720. TInt iParentWindowGroupID;
  721. TInt iDebugMemFail;
  722. TInt iAppStartupInstrumentationEventIdBase;
  723. RFile iFile;
  724. TProcessId iParentProcessId;
  725. };
  726. #line 15 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 7 */
  727. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\gulcolor.h" /* stack depth 8 */
  728. #line 33
  729. enum TLogicalColor
  730. {
  731. EColorWindowBackground,
  732. EColorWindowText,
  733. EColorControlBackground,
  734. EColorControlText,
  735. EColorControlSurroundBackground,
  736. EColorControlSurroundText,
  737. EColorControlHighlightBackground,
  738. EColorControlHighlightText,
  739. EColorControlDimmedBackground,
  740. EColorControlDimmedText,
  741. EColorControlDimmedHighlightBackground,
  742. EColorControlDimmedHighlightText,
  743. EColorDialogBackground,
  744. EColorDialogText,
  745. EColorDialogTitle,
  746. EColorDialogTitlePressed,
  747. EColorDialogTitleText,
  748. EColorDialogTitleTextPressed,
  749. EColorMenubarBackground,
  750. EColorMenubarText,
  751. EColorMenubarTitleBackground,
  752. EColorMenubarTitleText,
  753. EColorMenuPaneBackground,
  754. EColorMenuPaneText,
  755. EColorMenuPaneHighlight,
  756. EColorMenuPaneTextHighlight,
  757. EColorMenuPaneDimmedHighlight,
  758. EColorMenuPaneDimmedText,
  759. EColorMenuPaneDimmedTextHighlight,
  760. EColorButtonFaceClear,
  761. EColorButtonFaceSet,
  762. EColorButtonFaceSetPressed,
  763. EColorButtonFaceClearPressed,
  764. EColorButtonText,
  765. EColorButtonTextPressed,
  766. EColorButtonTextDimmed,
  767. EColorMsgWinForeground,
  768. EColorMsgWinBackground,
  769. EColorScrollBarBorder,
  770. EColorScrollBarShaft,
  771. EColorScrollBarShaftDimmed,
  772. EColorScrollBarShaftPressed,
  773. EColorScrollBarNoShaftOrThumb,
  774. EColorScrollButtonIcon,
  775. EColorScrollButtonIconPressed,
  776. EColorScrollButtonIconDimmed,
  777. EColorScrollButtonThumbBackground,
  778. EColorScrollButtonThumbBackgroundPressed,
  779. EColorScrollThumbDimmed,
  780. EColorScrollThumbEdge,
  781. EColorToolbarBackground,
  782. EColorToolbarText,
  783. EColorStatusPaneBackground,
  784. EColorStatusPaneText,
  785. EColorLabelText,
  786. EColorLabelTextEmphasis,
  787. EColorLabelDimmedText,
  788. EColorLabelHighlightPartialEmphasis,
  789. EColorLabelHighlightFullEmphasis,
  790. EColorNumberOfLogicalColors
  791. };
  792. class RReadStream;
  793. class RWriteStream;
  794. class CColorArray;
  795. class CColorList : public CBase
  796. #line 184
  797. {
  798. public:
  799. __declspec(dllexport) static CColorList* NewL(CArrayFix<TRgb> * aColors);
  800. __declspec(dllexport) ~CColorList();
  801. __declspec(dllexport) TRgb Color(TLogicalColor aColor) const;
  802. __declspec(dllexport) TInt Count() const;
  803. __declspec(dllexport) TRgb Color(TUid aApp,TInt aColor) const;
  804. __declspec(dllexport) CColorArray* ColorArray(TUid aApp) const;
  805. __declspec(dllexport) TBool ContainsColorArray(TUid aApp) const;
  806. __declspec(dllexport) void SetColor(TLogicalColor aLogicalColor,TRgb aColor);
  807. __declspec(dllexport) void AddColorArrayL(TUid aApp,CColorArray* aArray);
  808. __declspec(dllexport) void DeleteColorArray(TUid aApp);
  809. public:
  810. __declspec(dllexport) static CColorList* NewLC();
  811. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  812. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream) const;
  813. __declspec(dllexport) void MergeL(const CColorList& aList);
  814. private:
  815. CColorList(CArrayFix<TRgb> * aColors);
  816. TInt Find(TUid aApp) const;
  817. private:
  818. class TAppColorList
  819. {
  820. public:
  821. inline TAppColorList(TUid aApp,CColorArray* aColorArray);
  822. public:
  823. TUid iApp;
  824. CColorArray* iColorArray;
  825. };
  826. private:
  827. CArrayFix<TRgb> * iEikColors;
  828. CArrayFix<TAppColorList> * iAppColors;
  829. };
  830. class CColorArray : public CBase
  831. {
  832. public:
  833. __declspec(dllexport) static CColorArray* NewL();
  834. __declspec(dllexport) static CColorArray* NewLC();
  835. __declspec(dllexport) ~CColorArray();
  836. __declspec(dllexport) TRgb Color(TInt aLogicalColor) const;
  837. __declspec(dllexport) void SetColor(TInt aLogicalColor,TRgb aColor);
  838. __declspec(dllexport) TBool Contains(TInt aLogicalColor) const;
  839. __declspec(dllexport) TInt Count() const;
  840. __declspec(dllexport) void Reset();
  841. __declspec(dllexport) void AddL(TInt aLogicalColor,TRgb aColor);
  842. __declspec(dllexport) void Remove(TInt aLogicalColor);
  843. public:
  844. static CColorArray* NewLC(const CColorArray& aArray);
  845. public:
  846. void InternalizeL(RReadStream& aStream);
  847. void ExternalizeL(RWriteStream& aStream) const;
  848. private:
  849. CColorArray();
  850. void ConstructL();
  851. TInt Find(TInt aLogicalColor) const;
  852. private:
  853. class TColor
  854. {
  855. public:
  856. inline TColor();
  857. inline TColor(TRgb aColor,TInt aLogicalColor);
  858. public:
  859. void InternalizeL(RReadStream& aStream);
  860. void ExternalizeL(RWriteStream& aStream) const;
  861. public:
  862. TRgb iColor;
  863. TInt iLogicalColor;
  864. };
  865. CArrayFixFlat<TColor> iColors;
  866. };
  867. #line 18 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 7 */
  868. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikdgfty.h" /* stack depth 8 */
  869. #line 13
  870. class MEikFindAndReplaceDlgObserver;
  871. class CCoeControl;
  872. class CEikEmbeddableAppList;
  873. class CGraphicsDevice;
  874. class CApaDoor;
  875. class CApaDocument;
  876. class TCharFormat;
  877. class TCharFormatMask;
  878. class TRgb;
  879. class CEikGlobalTextEditor;
  880. struct SEdwinFindModel;
  881. class CParaFormat;
  882. class TParaFormatMask;
  883. class CPrintSetup;
  884. class MEikCDlgDialogFactory
  885. {
  886. public:
  887. virtual TBool RunCharMapDlgLD(CCoeControl* aControl) = 0;
  888. virtual TBool RunFontDlgLD( TCharFormat& aFormat,
  889. TCharFormatMask& aAttribChangedMask,
  890. TCharFormatMask& aUndeterminedMask,
  891. TDesC& aTextSelection,
  892. TInt aFonts,
  893. CGraphicsDevice* aGraphicsDevice,
  894. TInt aFontControlFlags,
  895. const TRgb aBackGroundColor) = 0;
  896. virtual TBool RunInsertObjectDlgLD( CEikEmbeddableAppList* aList,
  897. TInt& aChoice) = 0;
  898. virtual TBool RunObjectInfoDlgLD(const TDesC& aCaption) = 0;
  899. virtual TBool RunFormatObjectDlgLD( CApaDoor& aDoor,
  900. CApaDocument& aDoc,
  901. const TSize& aDefaultIconSize) = 0;
  902. virtual TBool RunEdwinFindDlgLD(SEdwinFindModel* aModel,
  903. CDesCArray* aFindList) = 0;
  904. virtual TBool RunEdwinReplaceDlgLD( SEdwinFindModel* aModel,
  905. CDesCArray* aFindList,
  906. CDesCArray* aReplaceList) = 0;
  907. virtual void RunEdwinFindAndReplaceDlgLD(MEikFindAndReplaceDlgObserver& aObserver,
  908. SEdwinFindModel& aModel, TBool aFindOnly, TRect aEdwinRect)=0;
  909. virtual TBool RunEdwinReplaceOptionDlgLD( CEikGlobalTextEditor* aEdwin,
  910. SEdwinFindModel* aModel) = 0;
  911. virtual TBool RunAlignDlgLD( CParaFormat* aFormat,
  912. TParaFormatMask& aAttribChangedMask,
  913. TParaFormatMask& aUndeterminedMask) = 0;
  914. virtual TBool RunBorderDlgLD( CParaFormat* aFormat,
  915. TParaFormatMask& aAttribChangedMask,
  916. TParaFormatMask& aUndeterminedMask) = 0;
  917. virtual TBool RunSpaceDlgLD( CParaFormat* aFormat,
  918. TParaFormatMask& aAttribChangedMask,
  919. TParaFormatMask& aUndeterminedMask) = 0;
  920. virtual TBool RunTabsDlgLD( CParaFormat* aFormat,
  921. TParaFormatMask& aAttribChangedMask,
  922. TParaFormatMask& aUndeterminedMask,
  923. const TInt aPageWidth) = 0;
  924. virtual TBool RunIndentDlgLD( CParaFormat* aFormat,
  925. TParaFormatMask& aAttribChangedMask,
  926. TParaFormatMask& aUndeterminedMask,
  927. const TInt aPageWidth) = 0;
  928. protected:
  929. __declspec(dllexport) MEikCDlgDialogFactory();
  930. private:
  931. __declspec(dllexport) virtual void MEikCDlgDialogFactory_Reserved1();
  932. __declspec(dllexport) virtual void MEikCDlgDialogFactory_Reserved2();
  933. private:
  934. TInt iMEikCDlgDialogFactory;
  935. };
  936. class MEikPrintDialogFactory
  937. {
  938. public:
  939. virtual TBool RunPaginateDlgLD( CEikGlobalTextEditor* aEditor,
  940. CPrintSetup* aPrintSetup,
  941. CArrayFix<TInt> * aCharsPerPage) = 0;
  942. virtual CPrintSetup* NewDefaultPrintSetupL() = 0;
  943. protected:
  944. __declspec(dllexport) MEikPrintDialogFactory();
  945. private:
  946. __declspec(dllexport) virtual void MEikPrintDialogFactory_Reserved1();
  947. __declspec(dllexport) virtual void MEikPrintDialogFactory_Reserved2();
  948. private:
  949. TInt iMEikPrintDialogFactory;
  950. };
  951. class MEikFileDialogFactory
  952. {
  953. public:
  954. virtual TBool RunFileSaveAsDlgLD( TDes* aFileName,
  955. TBool* aUseNewFile,
  956. TInt aTitleId,
  957. TBool aAppendExtension) = 0;
  958. virtual TBool RunScreenCaptureDlgLD(TDes* aFileName,
  959. TBool& aSaveAsMonochromeImage,
  960. TInt aTitleId) = 0;
  961. protected:
  962. __declspec(dllexport) MEikFileDialogFactory();
  963. private:
  964. __declspec(dllexport) virtual void MEikFileDialogFactory_Reserved1();
  965. __declspec(dllexport) virtual void MEikFileDialogFactory_Reserved2();
  966. private:
  967. TInt iMEikFileDialogFactory;
  968. };
  969. #line 19 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 7 */
  970. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eiklibry.h" /* stack depth 8 */
  971. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikfctry.h" /* stack depth 9 */
  972. #line 13
  973. class CCoeControl;
  974. enum
  975. {
  976. EEikControlHasEars=0x01,
  977. EEikControlIsNonFocusing=0x02,
  978. EEikControlHasExtraAscent=0x04,
  979. EEikControlIsNonEditInPlace=0x08
  980. };
  981. struct SEikControlInfo
  982.     {
  983.     CCoeControl* iControl;
  984. TInt iTrailerTextId;
  985.     TInt iFlags;
  986.     };
  987. class EikControlFactory
  988. {
  989. public:
  990.     __declspec(dllexport) static SEikControlInfo CreateByTypeL(TInt aControlType);
  991. };
  992. #line 18 "C:\Symbian\9.1\S60_3rd\epoc32\include\eiklibry.h" /* stack depth 8 */
  993. typedef SEikControlInfo (*TCreateByTypeFunction)(TInt);
  994. class CEikLibrary : public CBase
  995. {
  996. public:
  997. virtual void InitializeL() = 0;
  998. virtual CArrayFix<TFileName> * ResourceFileArrayL() const = 0;
  999. virtual CArrayFix<TCreateByTypeFunction> * ControlFactoryArrayL() const = 0;
  1000. __declspec(dllexport) virtual void PostAppUiInitializeL();
  1001. };
  1002. class CEikLibrary2 : public CEikLibrary
  1003. {
  1004. public:
  1005. __declspec(dllexport) virtual ~CEikLibrary2();
  1006. __declspec(dllexport) static CEikLibrary2* LoadLibraryL(TUid aImplementationUid);
  1007. private:
  1008. TUid iDtrkey;
  1009. };
  1010. #line 21 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 7 */
  1011. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikamnt.h" /* stack depth 8 */
  1012. #line 11
  1013. class CGulIcon;
  1014. class MEikAutoMenuObserver;
  1015. class CEikAutoMenuTitle : public CBase
  1016. #line 25
  1017. {
  1018. public:
  1019. enum TTitlePos
  1020. {
  1021. EStart,
  1022. EEnd
  1023. };
  1024. enum { ENominalTextLength=40 };
  1025. public:
  1026. __declspec(dllexport) static CEikAutoMenuTitle* NewLC(TTitlePos aPos,const TDesC& aText,MEikAutoMenuObserver& aMenuObserver,
  1027. TInt aMenuPaneResourceId=0,CGulIcon* aIcon=0 );
  1028. __declspec(dllexport) ~CEikAutoMenuTitle();
  1029. private:
  1030. CEikAutoMenuTitle(TTitlePos aPos,const TDesC& aText,MEikAutoMenuObserver& aMenuObserver,
  1031. TInt aMenuPaneResourceId,CGulIcon* aIcon);
  1032. public:
  1033. TTitlePos iPos;
  1034. TBuf<ENominalTextLength> iText;
  1035. MEikAutoMenuObserver& iMenuObserver;
  1036. TInt iMenuPaneResourceId;
  1037. CGulIcon* iIcon;
  1038. };
  1039. class CEikAutoMenuTitleArray : public CArrayPtrFlat<CEikAutoMenuTitle>
  1040. #line 67
  1041. {
  1042. public:
  1043. CEikAutoMenuTitleArray();
  1044. ~CEikAutoMenuTitleArray();
  1045. };
  1046. #line 22 "C:\Symbian\9.1\S60_3rd\epoc32\include\eikenv.h" /* stack depth 7 */
  1047. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\lafmain.h" /* stack depth 8 */
  1048. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\frmtlay.h" /* stack depth 9 */
  1049. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\txtfrmat.h" /* stack depth 10 */
  1050. #line 15
  1051. class TTabStop;
  1052. class TParaBorder;
  1053. class TBullet;
  1054. class TParaBorderArray;
  1055. class CParaFormat;
  1056. class TParaFormatMask;
  1057. class TFontPresentation;
  1058. class TCharFormat;
  1059. class TCharFormatMask;
  1060. #line 53
  1061. class TLogicalRgb : public TRgb
  1062. {
  1063. public:
  1064. enum
  1065. {
  1066. ESystemSelectionForegroundIndex = 252,
  1067. ESystemSelectionBackgroundIndex = 253,
  1068. ESystemForegroundIndex = 254,
  1069. ESystemBackgroundIndex = 255
  1070. };
  1071. enum TSystemColor
  1072. {
  1073. ESystemSelectionForegroundColor = ESystemSelectionForegroundIndex << 24,
  1074. ESystemSelectionBackgroundColor = ESystemSelectionBackgroundIndex << 24,
  1075. ESystemForegroundColor = ESystemForegroundIndex << 24,
  1076. ESystemBackgroundColor = (ESystemBackgroundIndex << 24) | 0xFFFFFF
  1077. };
  1078. TLogicalRgb() :
  1079. iValue2(0)
  1080. {
  1081. }
  1082. TLogicalRgb(TUint32 aValue):
  1083. iValue2(aValue & 0xFF000000)
  1084. {
  1085. SetInternal((TUint32)aValue | 0xFF000000);
  1086. }
  1087. TLogicalRgb(TSystemColor aValue) :
  1088. iValue2((TUint32)aValue & 0xFF000000)
  1089. {
  1090. SetInternal((TUint32)aValue | 0xFF000000);
  1091. }
  1092. TLogicalRgb(const TRgb& aRgb) :
  1093. TRgb(aRgb),
  1094. iValue2(0)
  1095. {
  1096. }
  1097. TUint SystemColorIndex() const
  1098. {
  1099. return iValue2 >> 24;
  1100. }
  1101. void SetSystemColorIndex(TUint aIndex)
  1102. {
  1103. iValue2 = aIndex << 24;
  1104. }
  1105. private:
  1106. TUint32 iValue2;
  1107. };
  1108. enum TTextFormatAttribute
  1109. {
  1110. EAttParaLanguage,
  1111. EAttFillColor,
  1112. EAttLeftMargin,
  1113. EAttRightMargin,
  1114. EAttIndent,
  1115. EAttAlignment,
  1116. EAttVerticalAlignment,
  1117. EAttLineSpacing,
  1118. EAttLineSpacingControl,
  1119. EAttSpaceBefore,
  1120. EAttSpaceAfter,
  1121. EAttKeepTogether,
  1122. EAttKeepWithNext,
  1123. EAttStartNewPage,
  1124. EAttWidowOrphan,
  1125. EAttWrap,
  1126. EAttBorderMargin,
  1127. EAttTopBorder,
  1128. EAttBottomBorder,
  1129. EAttLeftBorder,
  1130. EAttRightBorder,
  1131. EAttBullet,
  1132. EAttDefaultTabWidth,
  1133. EAttTabStop,
  1134. EAttCharLanguage,
  1135. EAttColor,
  1136. EAttFontHighlightColor,
  1137. EAttFontHighlightStyle,
  1138. EAttFontHeight,
  1139. EAttFontPosture,
  1140. EAttFontStrokeWeight,
  1141. EAttFontPrintPos,
  1142. EAttFontUnderline,
  1143. EAttFontStrikethrough,
  1144. EAttFontTypeface,
  1145. EAttFontPictureAlignment,
  1146. EAttFontHiddenText,
  1147. ETextFormatAttributeCount
  1148. };
  1149. enum {EVariableLengthValue = 0};
  1150. const TInt KMaxStyleName = 0x20;
  1151. const TInt KMaxParaAttributes = EAttTabStop;
  1152. const TInt KMaxCharAttributes = EAttFontHiddenText - KMaxParaAttributes;
  1153. const TInt KTabNotFound = -1;
  1154. #line 258
  1155. class TTabStop
  1156. {
  1157. public:
  1158. enum TTabType
  1159. {
  1160. ENullTab,
  1161. ELeftTab,
  1162. ECenteredTab,
  1163. ERightTab
  1164. };
  1165. public:
  1166. __declspec(dllexport) TTabStop();
  1167. __declspec(dllexport) TTabStop(const TTabStop& aTabStop);
  1168. __declspec(dllexport) TTabStop& operator=(const TTabStop& aTabStop);
  1169. __declspec(dllexport) TBool operator==(const TTabStop& aTabStop) const;
  1170. inline TBool operator!=(const TTabStop& aTabStop) const;
  1171. public:
  1172. TUint32 iTwipsPosition;
  1173. TTabType iType;
  1174. };
  1175. #line 300
  1176. class TParaBorder
  1177. {
  1178. public:
  1179. enum TLineStyle
  1180. {
  1181. ENullLineStyle,
  1182. ESolid,
  1183. EDouble,
  1184. EDotted,
  1185. EDashed,
  1186. EDotDash,
  1187. EDotDotDash
  1188. };
  1189. __declspec(dllexport) TParaBorder();
  1190. __declspec(dllexport) TBool operator==(const TParaBorder& aParaBorder) const;
  1191. inline TBool operator!=(const TParaBorder& aParaBorder) const;
  1192. public:
  1193. TLineStyle iLineStyle;
  1194. TInt iThickness;
  1195. TLogicalRgb iColor;
  1196. TBool iAutoColor;
  1197. };
  1198. #line 347
  1199. class TParaBorderArray
  1200. {
  1201. public:
  1202. TParaBorder iBorder[4];
  1203. };
  1204. #line 366
  1205. class TBullet
  1206. {
  1207. public:
  1208. __declspec(dllexport) TBullet();
  1209. __declspec(dllexport) TBool operator ==(const TBullet& aBullet) const;
  1210. inline TBool operator !=(const TBullet& aBullet) const;
  1211. enum TStyle
  1212. {
  1213. ENullStyle,
  1214. EBulletStyle,
  1215. EArabicNumberStyle,
  1216. ESmallRomanNumberStyle,
  1217. ECapitalRomanNumberStyle,
  1218. ESmallLetterStyle,
  1219. ECapitalLetterStyle
  1220. };
  1221. enum TAlignment
  1222. {
  1223. ELeftAlign,
  1224. ECenterAlign,
  1225. ERightAlign
  1226. };
  1227. TChar iCharacterCode;
  1228. TUint iHeightInTwips;
  1229. TTypeface iTypeface;
  1230. TBool iHangingIndent;
  1231. TLogicalRgb iColor;
  1232. TStyle iStyle;
  1233. TInt iStartNumber;
  1234. TAlignment iAlignment;
  1235. };
  1236. #line 429
  1237. class CParaFormat: public CBase
  1238. {
  1239. public:
  1240. enum
  1241. {
  1242. EMaxParaBorder = 4
  1243. };
  1244. enum TParaBorderSide
  1245. {
  1246. EParaBorderTop,
  1247. EParaBorderBottom,
  1248. EParaBorderLeft,
  1249. EParaBorderRight
  1250. };
  1251. enum TLineSpacingControl
  1252. {
  1253. ELineSpacingAtLeastInTwips,
  1254. ELineSpacingExactlyInTwips,
  1255. ELineSpacingAtLeastInPixels,
  1256. ELineSpacingExactlyInPixels
  1257. };
  1258. enum TAlignment
  1259. {
  1260. ELeftAlign,
  1261. ETopAlign = ELeftAlign,
  1262. ECenterAlign,
  1263. ERightAlign,
  1264. EBottomAlign = ERightAlign,
  1265. EJustifiedAlign,
  1266. EUnspecifiedAlign,
  1267. ECustomAlign,
  1268. EAbsoluteLeftAlign,
  1269. EAbsoluteRightAlign
  1270. };
  1271. enum TParaFormatGetMode
  1272. {
  1273. EAllAttributes,
  1274. EFixedAttributes
  1275. };
  1276. __declspec(dllexport) static CParaFormat* NewL();
  1277. __declspec(dllexport) static CParaFormat* NewLC();
  1278. __declspec(dllexport) static CParaFormat* NewL(const CParaFormat& aFormat);
  1279. __declspec(dllexport) CParaFormat();
  1280. __declspec(dllexport) ~CParaFormat();
  1281. __declspec(dllexport) void ResetNonDestructive();
  1282. __declspec(dllexport) void Reset();
  1283. __declspec(dllexport) void CopyL(const CParaFormat& aFormat, const TParaFormatMask& aMask);
  1284. __declspec(dllexport) void CopyL(const CParaFormat& aFormat);
  1285. __declspec(dllexport) void Strip();
  1286. __declspec(dllexport) TBool IsEqual(const CParaFormat& aFormat, const TParaFormatMask& aMask) const;
  1287. __declspec(dllexport) TBool IsEqual(const CParaFormat& aFormat) const;
  1288. __declspec(dllexport) void StoreTabL(const TTabStop& aTabStop);
  1289. __declspec(dllexport) void RemoveTab(TInt aTabTwipsPosition);
  1290. inline void RemoveAllTabs();
  1291. __declspec(dllexport) const TTabStop TabStop(TInt aTabIndex) const;
  1292. inline TInt TabCount() const;
  1293. __declspec(dllexport) TInt LocateTab(TInt aTabTwipsPosition) const;
  1294. __declspec(dllexport) void SetParaBorderL(TParaBorderSide aSide, const TParaBorder& aBorder);
  1295. __declspec(dllexport) void RemoveAllBorders();
  1296. __declspec(dllexport) const TParaBorder ParaBorder(TParaBorderSide aSide) const;
  1297. inline TBool BordersPresent() const { return iParaBorderArray != 0 ;}
  1298.     inline TParaBorder* ParaBorderPtr(TParaBorderSide aSide)
  1299. { return iParaBorderArray ? &iParaBorderArray->iBorder[aSide] : 0 ; }
  1300. __declspec(dllexport) TBool AllBordersEqual(const CParaFormat& aFormat) const;
  1301. __declspec(dllexport) TBool IsBorderEqual(TParaBorderSide aSide, const CParaFormat& aFormat) const;
  1302. private:
  1303. CParaFormat(const CParaFormat& aFormat);
  1304. void CreateTabListL();
  1305. enum
  1306. {
  1307. ETabStoreGranularity = 2
  1308. };
  1309. CParaFormat& operator=(const CParaFormat& aParaFormat);
  1310. private:
  1311. CArrayFixFlat<TTabStop> * iTabList;
  1312. TParaBorderArray* iParaBorderArray;
  1313. public:
  1314. TLogicalRgb iFillColor;
  1315. TInt32 iLanguage;
  1316. TInt32 iLeftMarginInTwips;
  1317. TInt32 iRightMarginInTwips;
  1318. TInt32 iIndentInTwips;
  1319. TAlignment iHorizontalAlignment;
  1320. TAlignment iVerticalAlignment;
  1321. TInt32 iLineSpacingInTwips;
  1322. TLineSpacingControl iLineSpacingControl;
  1323. TInt32 iSpaceBeforeInTwips;
  1324. TInt32 iSpaceAfterInTwips;
  1325. TBool iKeepTogether;
  1326. TBool iKeepWithNext;
  1327. TBool iStartNewPage;
  1328. TBool iWidowOrphan;
  1329. TBool iWrap;
  1330. TInt32 iBorderMarginInTwips;
  1331. TBullet* iBullet;
  1332. TUint32 iDefaultTabWidthInTwips;
  1333. };
  1334. #line 632
  1335. class TParaFormatMask
  1336. {
  1337. public:
  1338. inline TParaFormatMask();
  1339. inline void SetAttrib(TTextFormatAttribute aAttribute);
  1340. inline void ClearAttrib(TTextFormatAttribute aAttribute);
  1341. __declspec(dllexport) void SetAll();
  1342. __declspec(dllexport) void ClearAll();
  1343. inline TBool AttribIsSet(TTextFormatAttribute aAttribute) const;
  1344. inline TBool IsNull() const;
  1345. __declspec(dllexport) TBool operator==(const TParaFormatMask& aMask) const;
  1346. inline TBool operator!=(const TParaFormatMask& aMask) const;
  1347. private:
  1348. TUint32 iGuard;
  1349. };
  1350. #line 658
  1351. class TFontPresentation
  1352. {
  1353. public:
  1354. enum TFontHighlightStyle
  1355. {
  1356. EFontHighlightNone,
  1357. EFontHighlightNormal,
  1358. EFontHighlightRounded,
  1359. EFontHighlightShadow,
  1360. EFontHighlightNoMatchesIndicator,
  1361. EFontHighlightFirstCustomStyle = 128,
  1362. EFontHighlightLastCustomStyle = 255
  1363. };
  1364. enum TAlignment
  1365. {
  1366. EAlignTop,
  1367. EAlignBottom,
  1368. EAlignCentered,
  1369. EAlignBaseLine
  1370. };
  1371. __declspec(dllexport) TFontPresentation();
  1372. __declspec(dllexport) TBool IsEqual(const TFontPresentation& aFontPresentation, const TCharFormatMask& aMask) const;
  1373. public:
  1374. TLogicalRgb iTextColor;
  1375. TLogicalRgb iHighlightColor;
  1376. TFontHighlightStyle iHighlightStyle;
  1377. TFontStrikethrough iStrikethrough;
  1378. TFontUnderline iUnderline;
  1379. TBool iHiddenText;
  1380. TAlignment iPictureAlignment;
  1381. };
  1382. #line 743
  1383. class TCharFormat
  1384. {
  1385. public:
  1386. __declspec(dllexport) TCharFormat();
  1387. __declspec(dllexport) TCharFormat(const TDesC &aTypefaceName, TInt aHeight);
  1388. __declspec(dllexport) TBool IsEqual(const TCharFormat& aFormat, const TCharFormatMask& aMask) const;
  1389. __declspec(dllexport) TBool IsEqual(const TCharFormat& aFormat) const;
  1390. public:
  1391. TInt32 iLanguage;
  1392. TFontPresentation iFontPresentation;
  1393. TFontSpec iFontSpec;
  1394. };
  1395. #line 779
  1396. class TCharFormatMask
  1397. {
  1398. public:
  1399. inline TCharFormatMask();
  1400. inline void SetAttrib(TTextFormatAttribute aAttribute);
  1401. inline void ClearAttrib(TTextFormatAttribute aAttribute);
  1402. inline TBool AttribIsSet(TTextFormatAttribute aAttribute) const;
  1403. __declspec(dllexport) void SetAll();
  1404. __declspec(dllexport) void ClearAll();
  1405. inline TBool IsNull()const;
  1406. __declspec(dllexport) TBool operator==(const TCharFormatMask& aMask) const;
  1407. inline TBool operator!=(const TCharFormatMask& aMask) const;
  1408. private:
  1409. TUint32 iGuard;
  1410. };
  1411. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\txtfrmat.inl" /* stack depth 11 */
  1412. TBool TTabStop::operator!=(const TTabStop& aTabStop)const
  1413. {return !(*this==aTabStop);}
  1414. TBool TParaBorder::operator!=(const TParaBorder& aParaBorder)const
  1415. {return !(*this==aParaBorder);}
  1416. TBool TBullet::operator!=(const TBullet& aBullet)const
  1417. {return !(*this==aBullet);}
  1418. void CParaFormat::RemoveAllTabs()
  1419. {
  1420. if (iTabList)
  1421. {
  1422. delete iTabList;
  1423. iTabList = 0 ;
  1424. }
  1425. }
  1426. TInt CParaFormat::TabCount()const
  1427. {return (iTabList)?iTabList->Count():0;}
  1428. TParaFormatMask::TParaFormatMask()
  1429. :iGuard(0)
  1430. {}
  1431. void TParaFormatMask::SetAttrib(TTextFormatAttribute aAttribute)
  1432. {iGuard|=(1<<aAttribute);}
  1433. void TParaFormatMask::ClearAttrib(TTextFormatAttribute aAttribute)
  1434. {iGuard&=~(1<<aAttribute);}
  1435. TBool TParaFormatMask::AttribIsSet(TTextFormatAttribute aAttribute)const
  1436. {return (iGuard&(1<<aAttribute));}
  1437. TBool TParaFormatMask::IsNull()const
  1438. {return !iGuard;}
  1439. TBool TParaFormatMask::operator!=(const TParaFormatMask& aMask)const
  1440. {return !(*this==aMask);}
  1441. TCharFormatMask::TCharFormatMask()
  1442. :iGuard(0)
  1443. {}
  1444. void TCharFormatMask::SetAttrib(TTextFormatAttribute aAttribute)
  1445. {iGuard|=(1<<((aAttribute-KMaxParaAttributes)-1));}
  1446. void TCharFormatMask::ClearAttrib(TTextFormatAttribute aAttribute)
  1447. {iGuard&=~(1<<((aAttribute-KMaxParaAttributes)-1));}
  1448. TBool TCharFormatMask::AttribIsSet(TTextFormatAttribute aAttribute)const
  1449. {return iGuard&(1<<((aAttribute-KMaxParaAttributes)-1));}
  1450. TBool TCharFormatMask::IsNull()const
  1451. {return !iGuard;}
  1452. TBool TCharFormatMask::operator!=(const TCharFormatMask& aMask)const
  1453. {return !(*this==aMask);}
  1454. #line 796 "C:\Symbian\9.1\S60_3rd\epoc32\include\txtfrmat.h" /* stack depth 10 */
  1455. #line 12 "C:\Symbian\9.1\S60_3rd\epoc32\include\frmtlay.h" /* stack depth 9 */
  1456. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\txtetext.h" /* stack depth 10 */
  1457. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\fldset.h" /* stack depth 11 */
  1458. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\fldinfo.h" /* stack depth 12 */
  1459. #line 13
  1460. class TFindFieldInfo
  1461. #line 23
  1462. {
  1463. public:
  1464. __declspec(dllexport) TBool operator==(const TFindFieldInfo& aInfo)const;
  1465. __declspec(dllexport) TBool operator!=(const TFindFieldInfo& aInfo)const;
  1466. public:
  1467. TInt iFieldCountInRange;
  1468. TInt iFirstFieldPos;
  1469. TInt iFirstFieldLen;
  1470. };
  1471. #line 11 "C:\Symbian\9.1\S60_3rd\epoc32\include\fldset.h" /* stack depth 11 */
  1472. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\fldbase.h" /* stack depth 12 */
  1473. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32stor.h" /* stack depth 13 */
  1474. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32share.h" /* stack depth 14 */
  1475. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32buf.h" /* stack depth 15 */
  1476. #line 17
  1477. enum TStreamLocation
  1478. {EStreamBeginning,
  1479. EStreamMark,
  1480. EStreamEnd};
  1481. #line 46
  1482. class TStreamPos
  1483. {
  1484. public:
  1485. TStreamPos() {}
  1486. inline TStreamPos(TInt anOffset);
  1487. inline TBool operator==(TStreamPos aPos) const;
  1488. inline TBool operator!=(TStreamPos aPos) const;
  1489. inline TBool operator<(TStreamPos aPos) const;
  1490. inline TBool operator<=(TStreamPos aPos) const;
  1491. inline TBool operator>(TStreamPos aPos) const;
  1492. inline TBool operator>=(TStreamPos aPos) const;
  1493. inline TInt operator-(TStreamPos aPos) const;
  1494. inline TStreamPos operator+(TInt anOffset) const;
  1495. inline TStreamPos operator-(TInt anOffset) const;
  1496. inline TStreamPos& operator+=(TInt anOffset);
  1497. inline TStreamPos& operator-=(TInt anOffset);
  1498. inline TInt Offset() const;
  1499. private:
  1500. TInt iOff;
  1501. };
  1502. inline TStreamPos operator+(TInt anOffset,TStreamPos aPos);
  1503. #line 98
  1504. class TStreamTransfer
  1505. {
  1506. public:
  1507. enum TUnlimited {EUnlimited};
  1508. public:
  1509. #line 115
  1510. TStreamTransfer() {}
  1511. inline TStreamTransfer(TInt aMaxLength);
  1512. inline TStreamTransfer(TUnlimited);
  1513. inline TBool operator==(TInt aLength) const;
  1514. inline TBool operator>(TInt aLength) const;
  1515. inline TStreamTransfer operator-(TInt aLength) const;
  1516. inline TInt operator[](TInt aMaxLength) const;
  1517. inline TStreamTransfer& operator-=(TInt aLength);
  1518. inline TInt Left() const;
  1519. private:
  1520. TInt iVal;
  1521. private:
  1522. __declspec(dllexport) static void __DbgChkNonNegative(TInt aLength);
  1523. };
  1524. inline TBool operator==(TInt aLength,TStreamTransfer aTransfer);
  1525. inline TBool operator<(TInt aLength,TStreamTransfer aTransfer);
  1526. #line 146
  1527. class MStreamInput;
  1528. class MStreamOutput;
  1529. #line 184
  1530. class MStreamBuf
  1531. {
  1532. public:
  1533. enum TRead {ERead=0x01};
  1534. enum TWrite {EWrite=0x02};
  1535. #line 208
  1536. typedef TInt TMark;
  1537. public:
  1538. __declspec(dllexport) void Close();
  1539. inline void Release();
  1540. __declspec(dllexport) TInt Synch();
  1541. inline void SynchL();
  1542. __declspec(dllexport) void PushL();
  1543. inline TInt ReadL(TAny* aPtr,TInt aMaxLength);
  1544. __declspec(dllexport) TInt Read(TDes8& aDes,TRequestStatus& aStatus);
  1545. __declspec(dllexport) TInt Read(TDes8& aDes,TInt aMaxLength,TRequestStatus& aStatus);
  1546. __declspec(dllexport) TInt ReadL(TDes8& aDes,TRequestStatus& aStatus);
  1547. inline TInt ReadL(TDes8& aDes,TInt aMaxLength,TRequestStatus& aStatus);
  1548. inline TStreamTransfer ReadL(MStreamInput& anInput,TStreamTransfer aTransfer);
  1549. __declspec(dllexport) TInt ReadL(MStreamInput& anInput,TInt aMaxLength);
  1550. inline void ReadL(MStreamInput& anInput);
  1551. inline void WriteL(const TAny* aPtr,TInt aLength);
  1552. __declspec(dllexport) TInt Write(const TDesC8& aDes,TRequestStatus& aStatus);
  1553. __declspec(dllexport) TInt Write(const TDesC8& aDes,TInt aMaxLength,TRequestStatus& aStatus);
  1554. __declspec(dllexport) TInt WriteL(const TDesC8& aDes,TRequestStatus& aStatus);
  1555. inline TInt WriteL(const TDesC8& aDes,TInt aMaxLength,TRequestStatus& aStatus);
  1556. inline TStreamTransfer WriteL(MStreamOutput& anOutput,TStreamTransfer aTransfer);
  1557. __declspec(dllexport) TInt WriteL(MStreamOutput& anOutput,TInt aMaxLength);
  1558. inline void WriteL(MStreamOutput& anOutput);
  1559. inline void SeekL(TMark aMark,TStreamPos aPos);
  1560. inline TStreamPos SeekL(TMark aMark,TStreamLocation aLocation,TInt anOffset=0);
  1561. inline TStreamPos SeekL(TRead,TStreamLocation aLocation,TInt anOffset=0);
  1562. inline TStreamPos SeekL(TWrite,TStreamLocation aLocation,TInt anOffset=0);
  1563. inline TStreamPos SeekL(TRead,TInt anOffset);
  1564. inline TStreamPos SeekL(TWrite,TInt anOffset);
  1565. inline TStreamPos TellL(TRead) const;
  1566. inline TStreamPos TellL(TWrite) const;
  1567. inline TInt SizeL() const;
  1568. protected:
  1569. MStreamBuf() {}
  1570. private:
  1571. MStreamBuf(const MStreamBuf&);
  1572. MStreamBuf& operator=(const MStreamBuf&);
  1573. virtual __declspec(dllexport) void DoRelease();
  1574. virtual __declspec(dllexport) void DoSynchL();
  1575. virtual __declspec(dllexport) TInt DoReadL(TAny* aPtr,TInt aMaxLength);
  1576. virtual __declspec(dllexport) TInt DoReadL(TDes8& aDes,TInt aMaxLength,TRequestStatus& aStatus);
  1577. virtual __declspec(dllexport) TStreamTransfer DoReadL(MStreamInput& anInput,TStreamTransfer aTransfer);
  1578. virtual __declspec(dllexport) void DoWriteL(const TAny* aPtr,TInt aLength);
  1579. virtual __declspec(dllexport) TInt DoWriteL(const TDesC8& aDes,TInt aMaxLength,TRequestStatus& aStatus);
  1580. virtual __declspec(dllexport) TStreamTransfer DoWriteL(MStreamOutput& anOutput,TStreamTransfer aTransfer);
  1581. virtual __declspec(dllexport) TStreamPos DoSeekL(TMark aMark,TStreamLocation aLocation,TInt anOffset);
  1582. };
  1583. #line 276
  1584. class MStreamInput
  1585. {
  1586. public:
  1587. #line 291
  1588. virtual TInt PushL(const TAny* aPtr,TInt aMaxLength)=0;
  1589. #line 306
  1590. virtual TStreamTransfer ReadFromL(MStreamBuf& aSource,TStreamTransfer aTransfer)=0;
  1591. };
  1592. #line 323
  1593. class MStreamOutput
  1594. {
  1595. public:
  1596. #line 338
  1597. virtual TInt PullL(TAny* aPtr,TInt aMaxLength)=0;
  1598. #line 353
  1599. virtual TStreamTransfer WriteToL(MStreamBuf& aSink,TStreamTransfer aTransfer)=0;
  1600. };
  1601. #line 375
  1602. class TStreamBuf : public MStreamBuf
  1603. {
  1604. protected:
  1605. #line 391
  1606. typedef TInt TArea;
  1607. protected:
  1608. __declspec(dllexport) TStreamBuf();
  1609. __declspec(dllexport) void SetBuf(TArea anArea,TUint8* aPtr,TUint8* anEnd);
  1610. __declspec(dllexport) void SetPtr(TArea anArea,TUint8* aPtr);
  1611. __declspec(dllexport) void SetEnd(TArea anArea,TUint8* anEnd);
  1612. __declspec(dllexport) TUint8* Ptr(TArea anArea) const;
  1613. __declspec(dllexport) TUint8* End(TArea anArea) const;
  1614. __declspec(dllexport) TInt Avail(TArea anArea) const;
  1615. __declspec(dllexport) TInt DoReadL(TAny* aPtr,TInt aMaxLength);
  1616. __declspec(dllexport) TStreamTransfer DoReadL(MStreamInput& anInput,TStreamTransfer aTransfer);
  1617. __declspec(dllexport) void DoWriteL(const TAny* aPtr,TInt aLength);
  1618. __declspec(dllexport) TStreamTransfer DoWriteL(MStreamOutput& anOutput,TStreamTransfer aTransfer);
  1619. inline void SetBuf(TRead,TUint8* aPtr,TUint8* anEnd);
  1620. inline void SetBuf(TWrite,TUint8* aPtr,TUint8* anEnd);
  1621. inline void SetPtr(TRead,TUint8* aPtr);
  1622. inline void SetPtr(TWrite,TUint8* aPtr);
  1623. inline void SetEnd(TRead,TUint8* anEnd);
  1624. inline void SetEnd(TWrite,TUint8* anEnd);
  1625. inline TUint8* Ptr(TRead) const;
  1626. inline TUint8* Ptr(TWrite) const;
  1627. inline TUint8* End(TRead) const;
  1628. inline TUint8* End(TWrite) const;
  1629. inline TInt Avail(TRead) const;
  1630. inline TInt Avail(TWrite) const;
  1631. private:
  1632. #line 429
  1633. virtual TInt UnderflowL(TInt aMaxLength)=0;
  1634. virtual void OverflowL()=0;
  1635. private:
  1636. TUint8* iRPtr;
  1637. TUint8* iREnd;
  1638. TUint8* iWPtr;
  1639. TUint8* iWEnd;
  1640. };
  1641. #line 454
  1642. class TStreamFilter : public MStreamBuf
  1643. {
  1644. public:
  1645. enum {EAttached=0x10};
  1646. protected:
  1647. __declspec(dllexport) TStreamFilter();
  1648. inline void Set(MStreamBuf* aHost,TInt aMode);
  1649. inline void Committed();
  1650. inline TBool IsCommitted() const;
  1651. __declspec(dllexport) void EmitL(const TAny* aPtr,TInt aLength);
  1652. __declspec(dllexport) void DoRelease();
  1653. __declspec(dllexport) void DoSynchL();
  1654. __declspec(dllexport) TInt DoReadL(TAny* aPtr,TInt aMaxLength);
  1655. __declspec(dllexport) void DoWriteL(const TAny* aPtr,TInt aLength);
  1656. private:
  1657. virtual TInt Capacity(TInt aMaxLength)=0;
  1658. #line 488
  1659. virtual TInt FilterL(TAny* aPtr,TInt aMaxLength,const TUint8*& aFrom,const TUint8* anEnd)=0;
  1660. private:
  1661. MStreamBuf* iHost;
  1662. TInt iMode;
  1663. private:
  1664. friend class TFilterInput;
  1665. friend class TFilterOutput;
  1666. private:
  1667. __declspec(dllexport) static void __DbgChkMode(TInt aMode);
  1668. };
  1669. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32buf.inl" /* stack depth 16 */
  1670. inline TStreamPos::TStreamPos(TInt anOffset)
  1671. : iOff(anOffset)
  1672. {}
  1673. inline TBool TStreamPos::operator==(TStreamPos aPos) const
  1674. {return iOff==aPos.iOff;}
  1675. inline TBool TStreamPos::operator!=(TStreamPos aPos) const
  1676. {return iOff!=aPos.iOff;}
  1677. inline TBool TStreamPos::operator<(TStreamPos aPos) const
  1678. {return iOff<aPos.iOff;}
  1679. inline TBool TStreamPos::operator<=(TStreamPos aPos) const
  1680. {return iOff<=aPos.iOff;}
  1681. inline TBool TStreamPos::operator>(TStreamPos aPos) const
  1682. {return iOff>aPos.iOff;}
  1683. inline TBool TStreamPos::operator>=(TStreamPos aPos) const
  1684. {return iOff>=aPos.iOff;}
  1685. inline TInt TStreamPos::operator-(TStreamPos aPos) const
  1686. {return iOff-aPos.iOff;}
  1687. inline TStreamPos TStreamPos::operator+(TInt anOffset) const
  1688. {return TStreamPos(iOff+anOffset);}
  1689. inline TStreamPos TStreamPos::operator-(TInt anOffset) const
  1690. {return TStreamPos(iOff-anOffset);}
  1691. inline TStreamPos& TStreamPos::operator+=(TInt anOffset)
  1692. {iOff+=anOffset;return *this;}
  1693. inline TStreamPos& TStreamPos::operator-=(TInt anOffset)
  1694. {iOff-=anOffset;return *this;}
  1695. inline TInt TStreamPos::Offset() const
  1696. {return iOff;}
  1697. inline TStreamPos operator+(TInt anOffset,TStreamPos aPos)
  1698. {return aPos+anOffset;}
  1699. inline TStreamTransfer::TStreamTransfer(TInt aMaxLength)
  1700. : iVal(aMaxLength)
  1701. {
  1702. __DbgChkNonNegative(aMaxLength);
  1703. }
  1704. inline TStreamTransfer::TStreamTransfer(TUnlimited)
  1705. : iVal(-1)
  1706. #line 124
  1707. {}
  1708. inline TBool TStreamTransfer::operator==(TInt aLength) const
  1709. {
  1710. __DbgChkNonNegative(aLength);
  1711. return iVal==aLength;
  1712. }
  1713. inline TBool TStreamTransfer::operator>(TInt aLength) const
  1714. {
  1715. __DbgChkNonNegative(aLength);
  1716. return TUint(iVal)>TUint(aLength);
  1717. }
  1718. inline TStreamTransfer TStreamTransfer::operator-(TInt aLength) const
  1719. #line 161
  1720. {
  1721. __DbgChkNonNegative(aLength);
  1722. return iVal<0?*this:TStreamTransfer(iVal-aLength);
  1723. }
  1724. inline TInt TStreamTransfer::operator[](TInt aMaxLength) const
  1725. {return *this>aMaxLength?aMaxLength:iVal;}
  1726. inline TStreamTransfer& TStreamTransfer::operator-=(TInt aLength)
  1727. #line 184
  1728. {
  1729. __DbgChkNonNegative(aLength);
  1730. if (iVal>=0)
  1731. {
  1732. iVal-=aLength;
  1733. __DbgChkNonNegative(iVal);
  1734. }
  1735. return *this;
  1736. }
  1737. inline TInt TStreamTransfer::Left() const
  1738. {
  1739. __DbgChkNonNegative(iVal);
  1740. return iVal;
  1741. }
  1742. inline TBool operator==(TInt aLength,TStreamTransfer aTransfer)
  1743. {return aTransfer==aLength;}
  1744. inline TBool operator<(TInt aLength,TStreamTransfer aTransfer)
  1745. {return aTransfer>aLength;}
  1746. inline void MStreamBuf::Release()
  1747. #line 223
  1748. {DoRelease();}
  1749. inline void MStreamBuf::SynchL()
  1750. {DoSynchL();}
  1751. inline TInt MStreamBuf::ReadL(TAny* aPtr,TInt aMaxLength)
  1752. #line 244
  1753. {return DoReadL(aPtr,aMaxLength);}
  1754. inline TInt MStreamBuf::ReadL(TDes8& aDes,TInt aMaxLength,TRequestStatus& aStatus)
  1755. #line 261
  1756. {return DoReadL(aDes,aMaxLength,aStatus);}
  1757. inline TStreamTransfer MStreamBuf::ReadL(MStreamInput& anInput,TStreamTransfer aTransfer)
  1758. #line 271
  1759. {return DoReadL(anInput,aTransfer);}
  1760. inline void MStreamBuf::ReadL(MStreamInput& anInput)
  1761. #line 281
  1762. {DoReadL(anInput,TStreamTransfer(TStreamTransfer::EUnlimited) );}
  1763. inline void MStreamBuf::WriteL(const TAny* aPtr,TInt aLength)
  1764. #line 292
  1765. {DoWriteL(aPtr,aLength);}
  1766. inline TInt MStreamBuf::WriteL(const TDesC8& aDes,TInt aMaxLength,TRequestStatus& aStatus)
  1767. #line 310
  1768. {return DoWriteL(aDes,aMaxLength,aStatus);}
  1769. inline TStreamTransfer MStreamBuf::WriteL(MStreamOutput& anOutput,TStreamTransfer aTransfer)
  1770. #line 321
  1771. {return DoWriteL(anOutput,aTransfer);}
  1772. inline void MStreamBuf::WriteL(MStreamOutput& anOutput)
  1773. #line 332
  1774. {DoWriteL(anOutput,TStreamTransfer(TStreamTransfer::EUnlimited) );}
  1775. inline void MStreamBuf::SeekL(TMark aMark,TStreamPos aPos)
  1776. #line 346
  1777. {DoSeekL(aMark,EStreamBeginning,aPos.Offset());}
  1778. inline TStreamPos MStreamBuf::SeekL(TMark aMark,TStreamLocation aLocation,TInt anOffset)
  1779. #line 372
  1780. {return DoSeekL(aMark,aLocation,anOffset);}
  1781. inline TStreamPos MStreamBuf::SeekL(TRead,TStreamLocation aLocation,TInt anOffset)
  1782. #line 394
  1783. {return DoSeekL(ERead,aLocation,anOffset);}
  1784. inline TStreamPos MStreamBuf::SeekL(TWrite,TStreamLocation aLocation,TInt anOffset)
  1785. #line 416
  1786. {return DoSeekL(EWrite,aLocation,anOffset);}
  1787. inline TStreamPos MStreamBuf::SeekL(TRead,TInt anOffset)
  1788. #line 429
  1789. {return DoSeekL(ERead,EStreamMark,anOffset);}
  1790. inline TStreamPos MStreamBuf::SeekL(TWrite,TInt anOffset)
  1791. #line 442
  1792. {return DoSeekL(EWrite,EStreamMark,anOffset);}
  1793. inline TStreamPos MStreamBuf::TellL(TRead) const
  1794. {return (const_cast<MStreamBuf*>(this)) ->DoSeekL(ERead,EStreamMark,0);}
  1795. inline TStreamPos MStreamBuf::TellL(TWrite) const
  1796. {return (const_cast<MStreamBuf*>(this)) ->DoSeekL(EWrite,EStreamMark,0);}
  1797. inline TInt MStreamBuf::SizeL() const
  1798. {return (const_cast<MStreamBuf*>(this)) ->DoSeekL(0,EStreamEnd,0).Offset();}
  1799. inline void TStreamBuf::SetBuf(TRead,TUint8* aPtr,TUint8* anEnd)
  1800. #line 478
  1801. {iRPtr=aPtr;iREnd=anEnd;}
  1802. inline void TStreamBuf::SetBuf(TWrite,TUint8* aPtr,TUint8* anEnd)
  1803. #line 489
  1804. {iWPtr=aPtr;iWEnd=anEnd;}
  1805. inline void TStreamBuf::SetPtr(TRead,TUint8* aPtr)
  1806. {iRPtr=aPtr;}
  1807. inline void TStreamBuf::SetPtr(TWrite,TUint8* aPtr)
  1808. {iWPtr=aPtr;}
  1809. inline void TStreamBuf::SetEnd(TRead,TUint8* anEnd)
  1810. {iREnd=anEnd;}
  1811. inline void TStreamBuf::SetEnd(TWrite,TUint8* anEnd)
  1812. {iWEnd=anEnd;}
  1813. inline TUint8* TStreamBuf::Ptr(TRead) const
  1814. {return iRPtr;}
  1815. inline TUint8* TStreamBuf::Ptr(TWrite) const
  1816. {return iWPtr;}
  1817. inline TUint8* TStreamBuf::End(TRead) const
  1818. {return iREnd;}
  1819. inline TUint8* TStreamBuf::End(TWrite) const
  1820. {return iWEnd;}
  1821. inline TInt TStreamBuf::Avail(TRead) const
  1822. {return iREnd-iRPtr;}
  1823. inline TInt TStreamBuf::Avail(TWrite) const
  1824. {return iWEnd-iWPtr;}
  1825. inline void TStreamFilter::Set(MStreamBuf* aHost,TInt aMode)
  1826. #line 577
  1827. {
  1828. __DbgChkMode(aMode);
  1829. iHost=aHost;iMode=aMode;
  1830. }
  1831. inline void TStreamFilter::Committed()
  1832. {iMode&=~EWrite;}
  1833. inline TBool TStreamFilter::IsCommitted() const
  1834. {return iHost==0 ||!(iMode&EWrite);}
  1835. #line 499 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32buf.h" /* stack depth 15 */
  1836. #line 8 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32share.h" /* stack depth 14 */
  1837. class TStreamExchange;
  1838. #line 29
  1839. class TStreamMark
  1840. {
  1841. public:
  1842. inline TStreamMark();
  1843. inline TStreamMark(TStreamPos aPos);
  1844. inline TStreamMark& operator=(TStreamPos aPos);
  1845. inline operator TStreamMark*();
  1846. inline operator const TStreamMark*() const;
  1847. inline TBool operator==(const TStreamMark& aMark) const;
  1848. inline TBool operator==(const TStreamMark* aPtr) const;
  1849. inline TBool operator!=(const TStreamMark& aMark) const;
  1850. inline TBool operator!=(const TStreamMark* aPtr) const;
  1851. inline TBool IsEmpty() const;
  1852. inline void Clear();
  1853. inline TStreamPos Position() const;
  1854. inline TBool IsWith(TStreamExchange& aHost) const;
  1855. inline TBool RelatesTo(TStreamExchange& aHost) const;
  1856. inline void Withdraw(TStreamExchange& aHost);
  1857. inline void ExtractL(TStreamExchange& aHost);
  1858. inline TInt ReadL(TStreamExchange& aHost,TAny* aPtr,TInt aMaxLength);
  1859. __declspec(dllexport) TInt ReadL(TStreamExchange& aHost,TDes8& aDes,TRequestStatus& aStatus);
  1860. inline TInt ReadL(TStreamExchange& aHost,TDes8& aDes,TInt aMaxLength,TRequestStatus& aStatus);
  1861. inline TStreamTransfer ReadL(TStreamExchange& aHost,MStreamInput& anInput,TStreamTransfer aTransfer);
  1862. inline TInt ReadL(TStreamExchange& aHost,MStreamInput& anInput,TInt aMaxLength);
  1863. inline void ReadL(TStreamExchange& aHost,MStreamInput& anInput);
  1864. inline void WriteL(TStreamExchange& aHost,const TAny* aPtr,TInt aLength);
  1865. __declspec(dllexport) TInt WriteL(TStreamExchange& aHost,const TDesC8& aDes,TRequestStatus& aStatus);
  1866. inline TInt WriteL(TStreamExchange& aHost,const TDesC8& aDes,TInt aMaxLength,TRequestStatus& aStatus);
  1867. inline TStreamTransfer WriteL(TStreamExchange& aHost,MStreamOutput& anOutput,TStreamTransfer aTransfer);
  1868. inline TInt WriteL(TStreamExchange& aHost,MStreamOutput& anOutput,TInt aMaxLength);
  1869. inline void WriteL(TStreamExchange& aHost,MStreamOutput& anOutput);
  1870. inline void SeekL(TStreamExchange& aHost,TStreamPos aPos);
  1871. inline TStreamPos SeekL(TStreamExchange& aHost,TStreamLocation aLocation,TInt anOffset=0);
  1872. inline TStreamPos SeekL(TStreamExchange& aHost,TInt anOffset);
  1873. inline TStreamPos TellL(TStreamExchange& aHost) const;
  1874. private:
  1875. TStreamMark(const TStreamMark&);
  1876. TStreamMark& operator=(const TStreamMark&);
  1877. private:
  1878. TStreamPos iPos;
  1879. private:
  1880. inline TBool IsTracking(TStreamMark*const& aRef) const;
  1881. inline void Track(TStreamMark*const& aRef);
  1882. private:
  1883. friend class TStreamExchange;
  1884. private:
  1885. __declspec(dllexport) static void __DbgChkPos(TStreamPos aPos);
  1886. };
  1887. #line 106
  1888. class TStreamExchange
  1889. {
  1890. public:
  1891. inline TStreamExchange();
  1892. inline TStreamExchange(MStreamBuf* aHost);
  1893. inline void Share(MStreamBuf* aHost);
  1894. inline TBool IsActive() const;
  1895. __declspec(dllexport) MStreamBuf* Host();
  1896. __declspec(dllexport) MStreamBuf* HostL();
  1897. __declspec(dllexport) void Release();
  1898. __declspec(dllexport) TInt SizeL() const;
  1899. private:
  1900. #line 132
  1901. typedef MStreamBuf::TMark TMark;
  1902. private:
  1903. TStreamExchange(const TStreamExchange&);
  1904. TStreamExchange& operator=(const TStreamExchange&);
  1905. __declspec(dllexport) TBool RefersTo(const TStreamMark& aMark);
  1906. __declspec(dllexport) void Drop(const TStreamMark& aMark);
  1907. __declspec(dllexport) void GetL(TStreamMark& aMark);
  1908. __declspec(dllexport) TInt DoReadL(TAny* aPtr,TInt aMaxLength,TStreamMark& aMark);
  1909. __declspec(dllexport) TInt DoReadL(TDes8& aDes,TInt aMaxLength,TRequestStatus& aStatus,TStreamMark& aMark);
  1910. __declspec(dllexport) TStreamTransfer DoReadL(MStreamInput& anInput,TStreamTransfer aTransfer,TStreamMark& aMark);
  1911. __declspec(dllexport) void DoWriteL(const TAny* aPtr,TInt aLength,TStreamMark& aMark);
  1912. __declspec(dllexport) TInt DoWriteL(const TDesC8& aDes,TInt aMaxLength,TRequestStatus& aStatus,TStreamMark& aMark);
  1913. __declspec(dllexport) TStreamTransfer DoWriteL(MStreamOutput& anOutput,TStreamTransfer aTransfer,TStreamMark& aMark);
  1914. __declspec(dllexport) TStreamPos DoSeekL(TStreamMark& aMark,TStreamLocation aLocation,TInt anOffset);
  1915. void PrepareForReadingL(TStreamMark& aMark);
  1916. void PrepareForWritingL(TStreamMark& aMark);
  1917. TInt PrepareAndReadL(TAny* aPtr,TInt aMaxLength,TStreamMark& aMark);
  1918. TInt PrepareAndReadL(TDes8& aDes,TInt aMaxLength,TRequestStatus& aStatus,TStreamMark& aMark);
  1919. TStreamTransfer PrepareAndReadL(MStreamInput& anInput,TStreamTransfer aTransfer,TStreamMark& aMark);
  1920. void PrepareAndWriteL(const TAny* aPtr,TInt aLength,TStreamMark& aMark);
  1921. TInt PrepareAndWriteL(const TDesC8& aDes,TInt aMaxLength,TRequestStatus& aStatus,TStreamMark& aMark);
  1922. TStreamTransfer PrepareAndWriteL(MStreamOutput& anOutput,TStreamTransfer aTransfer,TStreamMark& aMark);
  1923. TStreamPos MarkSeekL(TStreamMark& aMark,TStreamLocation aLocation,TInt anOffset);
  1924. inline MStreamBuf& BufL() const;
  1925. inline MStreamBuf& Buf() const;
  1926. private:
  1927. MStreamBuf* iHost;
  1928. TStreamMark* iRMrk;
  1929. TStreamMark* iWMrk;
  1930. private:
  1931. friend class TStreamMark;
  1932. };
  1933. #line 197
  1934. class RShareBuf : public MStreamBuf
  1935. {
  1936. public:
  1937. __declspec(dllexport) RShareBuf();
  1938. __declspec(dllexport) void Open(TStreamExchange& aHost,TStreamPos aPos,TInt aMode=ERead|EWrite);
  1939. inline void Open(TStreamExchange& aHost,TInt aMode=ERead|EWrite);
  1940. protected:
  1941. __declspec(dllexport) void DoRelease();
  1942. __declspec(dllexport) TInt DoReadL(TAny* aPtr,TInt aMaxLength);
  1943. __declspec(dllexport) TInt DoReadL(TDes8& aDes,TInt aMaxLength,TRequestStatus& aStatus);
  1944. __declspec(dllexport) TStreamTransfer DoReadL(MStreamInput& anInput,TStreamTransfer aTransfer);
  1945. __declspec(dllexport) void DoWriteL(const TAny* aPtr,TInt aLength);
  1946. __declspec(dllexport) TInt DoWriteL(const TDesC8& aDes,TInt aMaxLength,TRequestStatus& aStatus);
  1947. __declspec(dllexport) TStreamTransfer DoWriteL(MStreamOutput& anOutput,TStreamTransfer aTransfer);
  1948. __declspec(dllexport) TStreamPos DoSeekL(TMark aMark,TStreamLocation aLocation,TInt anOffset);
  1949. private:
  1950. inline TStreamExchange& Host() const;
  1951. private:
  1952. TStreamExchange* iHost;
  1953. TStreamMark iRMark;
  1954. TStreamMark iWMark;
  1955. };
  1956. #line 233
  1957. class RShareReadStream : public RReadStream
  1958. {
  1959. public:
  1960. RShareReadStream() {}
  1961. __declspec(dllexport) RShareReadStream(TStreamExchange& aHost,TStreamPos aPos=TStreamPos(0) );
  1962. __declspec(dllexport) void Open(TStreamExchange& aHost,TStreamPos aPos=TStreamPos(0) );
  1963. private:
  1964. RShareBuf iSource;
  1965. };
  1966. #line 261
  1967. class RShareWriteStream : public RWriteStream
  1968. {
  1969. public:
  1970. RShareWriteStream() {}
  1971. inline RShareWriteStream(const MExternalizer<TStreamRef>& anExter);
  1972. __declspec(dllexport) RShareWriteStream(TStreamExchange& aHost,TStreamPos aPos=TStreamPos(0) );
  1973. __declspec(dllexport) void Open(TStreamExchange& aHost,TStreamPos aPos=TStreamPos(0) );
  1974. private:
  1975. RShareBuf iSink;
  1976. };
  1977. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32share.inl" /* stack depth 15 */
  1978. inline TStreamMark::TStreamMark()
  1979. : iPos(TStreamPos(0) -1)
  1980. {}
  1981. inline TStreamMark::TStreamMark(TStreamPos aPos)
  1982. : iPos(aPos)
  1983. {
  1984. __DbgChkPos(aPos);
  1985. }
  1986. inline TStreamMark& TStreamMark::operator=(TStreamPos aPos)
  1987. {
  1988. __DbgChkPos(aPos);
  1989. iPos=aPos;
  1990. return *this;
  1991. }
  1992. inline TStreamMark::operator TStreamMark*()
  1993. {return this;}
  1994. inline TStreamMark::operator const TStreamMark*() const
  1995. {return this;}
  1996. inline TBool TStreamMark::operator==(const TStreamMark& aMark) const
  1997. {return this==&aMark;}
  1998. inline TBool TStreamMark::operator==(const TStreamMark* aPtr) const
  1999. {return this==aPtr;}
  2000. inline TBool TStreamMark::operator!=(const TStreamMark& aMark) const
  2001. {return this!=&aMark;}
  2002. inline TBool TStreamMark::operator!=(const TStreamMark* aPtr) const
  2003. {return this!=aPtr;}
  2004. inline TBool TStreamMark::IsEmpty() const
  2005. {return iPos<TStreamPos(0) ;}
  2006. inline void TStreamMark::Clear()
  2007. {iPos=TStreamPos(0) -1;}
  2008. inline TStreamPos TStreamMark::Position() const
  2009. {
  2010. __DbgChkPos(iPos);
  2011. return iPos;
  2012. }
  2013. inline TBool TStreamMark::IsWith(TStreamExchange& aHost) const
  2014. {return aHost.RefersTo(*this);}
  2015. inline TBool TStreamMark::RelatesTo(TStreamExchange& aHost) const
  2016. #line 104
  2017. {return iPos>=TStreamPos(0) ||aHost.RefersTo(*this);}
  2018. inline void TStreamMark::Withdraw(TStreamExchange& aHost)
  2019. {aHost.Drop(*this);}
  2020. inline void TStreamMark::ExtractL(TStreamExchange& aHost)
  2021. {aHost.GetL(*this);}
  2022. inline TInt TStreamMark::ReadL(TStreamExchange& aHost,TAny* aPtr,TInt aMaxLength)
  2023. {return aHost.DoReadL(aPtr,aMaxLength,*this);}
  2024. inline TInt TStreamMark::ReadL(TStreamExchange& aHost,TDes8& aDes,TInt aMaxLength,TRequestStatus& aStatus)
  2025. #line 139
  2026. {return aHost.DoReadL(aDes,aMaxLength,aStatus,*this);}
  2027. inline TStreamTransfer TStreamMark::ReadL(TStreamExchange& aHost,MStreamInput& anInput,TStreamTransfer aTransfer)
  2028. {return aHost.DoReadL(anInput,aTransfer,*this);}
  2029. inline TInt TStreamMark::ReadL(TStreamExchange& aHost,MStreamInput& anInput,TInt aMaxLength)
  2030. {return aMaxLength-aHost.DoReadL(anInput,TStreamTransfer(aMaxLength),*this).Left();}
  2031. inline void TStreamMark::ReadL(TStreamExchange& aHost,MStreamInput& anInput)
  2032. {aHost.DoReadL(anInput,TStreamTransfer(TStreamTransfer::EUnlimited) ,*this);}
  2033. inline void TStreamMark::WriteL(TStreamExchange& aHost,const TAny* aPtr,TInt aLength)
  2034. {aHost.DoWriteL(aPtr,aLength,*this);}
  2035. inline TInt TStreamMark::WriteL(TStreamExchange& aHost,const TDesC8& aDes,TInt aMaxLength,TRequestStatus& aStatus)
  2036. #line 189
  2037. {return aHost.DoWriteL(aDes,aMaxLength,aStatus,*this);}
  2038. inline TStreamTransfer TStreamMark::WriteL(TStreamExchange& aHost,MStreamOutput& anOutput,TStreamTransfer aTransfer)
  2039. {return aHost.DoWriteL(anOutput,aTransfer,*this);}
  2040. inline TInt TStreamMark::WriteL(TStreamExchange& aHost,MStreamOutput& anOutput,TInt aMaxLength)
  2041. {return aMaxLength-aHost.DoWriteL(anOutput,TStreamTransfer(aMaxLength),*this).Left();}
  2042. inline void TStreamMark::WriteL(TStreamExchange& aHost,MStreamOutput& anOutput)
  2043. {aHost.DoWriteL(anOutput,TStreamTransfer(TStreamTransfer::EUnlimited) ,*this);}
  2044. inline void TStreamMark::SeekL(TStreamExchange& aHost,TStreamPos aPos)
  2045. {aHost.DoSeekL(*this,EStreamBeginning,aPos.Offset());}
  2046. inline TStreamPos TStreamMark::SeekL(TStreamExchange& aHost,TStreamLocation aLocation,TInt anOffset)
  2047. #line 233
  2048. {return aHost.DoSeekL(*this,aLocation,anOffset);}
  2049. inline TStreamPos TStreamMark::SeekL(TStreamExchange& aHost,TInt anOffset)
  2050. {return aHost.DoSeekL(*this,EStreamMark,anOffset);}
  2051. inline TStreamPos TStreamMark::TellL(TStreamExchange& aHost) const
  2052. {return aHost.DoSeekL((const_cast<TStreamMark&>(*this)) ,EStreamMark,0);}
  2053. inline TStreamExchange::TStreamExchange()
  2054. : iHost(0 ),iRMrk(0 ),iWMrk(0 )
  2055. {}
  2056. inline TStreamExchange::TStreamExchange(MStreamBuf* aHost)
  2057. : iHost(aHost),iRMrk(0 ),iWMrk(0 )
  2058. {}
  2059. inline void TStreamExchange::Share(MStreamBuf* aHost)
  2060. {iHost=aHost;}
  2061. inline TBool TStreamExchange::IsActive() const
  2062. {return iHost!=0 ;}
  2063. inline void RShareBuf::Open(TStreamExchange& aHost,TInt aMode)
  2064. #line 289
  2065. {Open(aHost,TStreamPos(0) ,aMode);}
  2066. inline RShareWriteStream::RShareWriteStream(const MExternalizer<TStreamRef>& anExter)
  2067. : RWriteStream(anExter)
  2068. {}
  2069. #line 277 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32share.h" /* stack depth 14 */
  2070. #line 11 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32stor.h" /* stack depth 13 */
  2071. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32page.h" /* stack depth 14 */
  2072. #line 12
  2073. const TInt KPoolPageSize=512;
  2074. const TUint32 KNullPageRefValue=0;
  2075. #line 23
  2076. class TPageRef
  2077. {
  2078. public:
  2079. inline TPageRef() {}
  2080. inline TPageRef(TUint32 aValue);
  2081. inline TBool operator==(TPageRef aRef) const;
  2082. inline TBool operator!=(TPageRef aRef) const;
  2083. inline void ExternalizeL(RWriteStream& aStream) const;
  2084. inline void InternalizeL(RReadStream& aStream);
  2085. inline TUint32 Value() const;
  2086. private:
  2087. TUint32 iVal;
  2088. };
  2089. class MPagePool;
  2090. typedef void (*TPageAbandonFunction)(MPagePool& aPool);
  2091. enum TPageReclamation
  2092. {EPageDeleteOnly,
  2093. EPageReclaimable};
  2094. enum TPageChange
  2095. {EPageNoChange,
  2096. EPageDirty,
  2097. EPageUpdate,
  2098. EPageAbandon=-1};
  2099. #line 92
  2100. class MPagePool
  2101. {
  2102. public:
  2103. __declspec(dllexport) void PushL();
  2104. inline void Pop();
  2105. virtual TPageAbandonFunction AcquireL()=0;
  2106. virtual TAny* AllocL()=0;
  2107. virtual TAny* LockL(TPageRef aRef)=0;
  2108. virtual TPageRef AssignL(const TAny* aPage,TPageReclamation aReclamation=EPageDeleteOnly)=0;
  2109. virtual void UpdateL(const TAny* aPage)=0;
  2110. virtual void Unlock(const TAny* aPage,TPageChange aChange=EPageNoChange)=0;
  2111. __declspec(dllexport) void Delete(TPageRef aRef);
  2112. __declspec(dllexport) void DeleteL(TPageRef aRef);
  2113. protected:
  2114. virtual void DoDeleteL(TPageRef aRef)=0;
  2115. };
  2116. #line 140
  2117. class CMemPagePool : public CBase,public MPagePool
  2118. {
  2119. public:
  2120. __declspec(dllexport) static CMemPagePool* NewL();
  2121. __declspec(dllexport) static CMemPagePool* NewLC();
  2122. __declspec(dllexport) CMemPagePool();
  2123. __declspec(dllexport) ~CMemPagePool();
  2124. __declspec(dllexport) TPageAbandonFunction AcquireL();
  2125. __declspec(dllexport) TAny* AllocL();
  2126. __declspec(dllexport) TAny* LockL(TPageRef aRef);
  2127. __declspec(dllexport) TPageRef AssignL(const TAny* aPage,TPageReclamation aReclamation=EPageDeleteOnly);
  2128. __declspec(dllexport) void UpdateL(const TAny* aPage);
  2129. __declspec(dllexport) void Unlock(const TAny* aPage,TPageChange aChange=EPageNoChange);
  2130. protected:
  2131. __declspec(dllexport) void DoDeleteL(TPageRef aRef);
  2132. private:
  2133. TAny*& PageL(TPageRef aRef);
  2134. static void DoAbandon(MPagePool& aPool);
  2135. private:
  2136. CArrayFixSeg<TAny*> iPages;
  2137. };
  2138. class TCachePage;
  2139. struct SCachePage;
  2140. class TCachePagePool;
  2141. #line 179
  2142. class CPageCache : public CBase
  2143. {
  2144. public:
  2145. enum {EDefaultPages=20};
  2146. #line 206
  2147. public:
  2148. __declspec(dllexport) static CPageCache* NewL(TInt aPages=EDefaultPages);
  2149. __declspec(dllexport) static CPageCache* NewLC(TInt aPages=EDefaultPages);
  2150. __declspec(dllexport) CPageCache();
  2151. __declspec(dllexport) void ConstructL(TInt aPages=EDefaultPages);
  2152. __declspec(dllexport) ~CPageCache();
  2153. private:
  2154. TCachePage* Find(TCachePagePool* aPool,TPageRef aRef);
  2155. private:
  2156. SCachePage* iPages;
  2157. SCachePage* iEnd;
  2158. TDblQue<TCachePage> iFree;
  2159. private:
  2160. friend class TCachePagePool;
  2161. };
  2162. #line 241
  2163. class TCachePagePool : public MPagePool
  2164. {
  2165. public:
  2166. inline void Set(CPageCache& aCache);
  2167. __declspec(dllexport) TPageAbandonFunction AcquireL();
  2168. __declspec(dllexport) TAny* AllocL();
  2169. __declspec(dllexport) TAny* LockL(TPageRef aRef);
  2170. __declspec(dllexport) TPageRef AssignL(const TAny* aPage,TPageReclamation aReclamation=EPageDeleteOnly);
  2171. __declspec(dllexport) void UpdateL(const TAny* aPage);
  2172. __declspec(dllexport) void Unlock(const TAny* aPage,TPageChange aChange=EPageNoChange);
  2173. __declspec(dllexport) TInt Flush();
  2174. __declspec(dllexport) void FlushL();
  2175. __declspec(dllexport) void Purge();
  2176. protected:
  2177. inline TCachePagePool();
  2178. inline TCachePagePool(CPageCache& aCache);
  2179. __declspec(dllexport) void DoDeleteL(TPageRef aRef);
  2180. private:
  2181. virtual TPageRef ExtendL(const TAny* aPage,TPageReclamation aReclamation)=0;
  2182. virtual void WriteL(TPageRef aRef,const TAny* aPage,TPageChange aChange)=0;
  2183. virtual void ReadL(TPageRef aRef,TAny* aPage)=0;
  2184. static void DoAbandon(MPagePool& aPool);
  2185. static TCachePage* DoAllocL(CPageCache& aCache);
  2186. private:
  2187. CPageCache* iCache;
  2188. };
  2189. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32page.inl" /* stack depth 15 */
  2190. inline TPageRef::TPageRef(TUint32 aValue)
  2191. : iVal(aValue)
  2192. {}
  2193. inline TBool TPageRef::operator==(TPageRef aRef) const
  2194. {return iVal==aRef.iVal;}
  2195. inline TBool TPageRef::operator!=(TPageRef aRef) const
  2196. {return iVal!=aRef.iVal;}
  2197. inline void TPageRef::ExternalizeL(RWriteStream& aStream) const
  2198. {aStream<<iVal;}
  2199. inline void TPageRef::InternalizeL(RReadStream& aStream)
  2200. {aStream>>iVal;}
  2201. inline TUint32 TPageRef::Value() const
  2202. {return iVal;}
  2203. inline void MPagePool::Pop()
  2204. {CleanupStack::Pop();}
  2205. #line 68
  2206. inline void TCachePagePool::Set(CPageCache& aCache)
  2207. {iCache=&aCache;}
  2208. inline TCachePagePool::TCachePagePool()
  2209. : iCache(0 )
  2210. {}
  2211. inline TCachePagePool::TCachePagePool(CPageCache& aCache)
  2212. : iCache(&aCache)
  2213. {}
  2214. #line 271 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32page.h" /* stack depth 14 */
  2215. #line 14 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32stor.h" /* stack depth 13 */
  2216. class MIncrementalCollector;
  2217. class CStreamStore : public CBase
  2218. {
  2219. public:
  2220. inline TStreamId ExtendL();
  2221. __declspec(dllexport) void Delete(TStreamId anId);
  2222. __declspec(dllexport) void DeleteL(TStreamId anId);
  2223. __declspec(dllexport) TInt Commit();
  2224. inline void CommitL();
  2225. __declspec(dllexport) void Revert();
  2226. inline void RevertL();
  2227. __declspec(dllexport) TInt ReclaimL();
  2228. __declspec(dllexport) TInt CompactL();
  2229. private:
  2230. virtual __declspec(dllexport) TStreamId DoExtendL();
  2231. virtual __declspec(dllexport) void DoDeleteL(TStreamId anId);
  2232. #line 52
  2233. virtual MStreamBuf* DoReadL(TStreamId anId) const=0;
  2234. #line 61
  2235. virtual MStreamBuf* DoCreateL(TStreamId& anId)=0;
  2236. virtual __declspec(dllexport) MStreamBuf* DoWriteL(TStreamId anId);
  2237. virtual __declspec(dllexport) MStreamBuf* DoReplaceL(TStreamId anId);
  2238. virtual __declspec(dllexport) void DoCommitL();
  2239. virtual __declspec(dllexport) void DoRevertL();
  2240. virtual __declspec(dllexport) MIncrementalCollector* DoReclaimL();
  2241. virtual __declspec(dllexport) MIncrementalCollector* DoCompactL();
  2242. private:
  2243. friend class RStoreReadStream;
  2244. friend class RStoreWriteStream;
  2245. friend class RStoreReclaim;
  2246. };
  2247. #line 86
  2248. class CPersistentStore : public CStreamStore
  2249. {
  2250. public:
  2251. inline TStreamId Root() const;
  2252. inline void SetRootL(TStreamId anId);
  2253. protected:
  2254. inline CPersistentStore();
  2255. private:
  2256. virtual __declspec(dllexport) void DoSetRootL(TStreamId anId);
  2257. protected:
  2258. TStreamId iRoot;
  2259. };
  2260. #line 123
  2261. class RStoreReclaim
  2262. {
  2263. public:
  2264. inline RStoreReclaim();
  2265. __declspec(dllexport) void OpenL(CStreamStore& aStore,TInt& aCount);
  2266. __declspec(dllexport) void OpenLC(CStreamStore& aStore,TInt& aCount);
  2267. __declspec(dllexport) void CompactL(CStreamStore& aStore,TInt& aCount);
  2268. __declspec(dllexport) void CompactLC(CStreamStore& aStore,TInt& aCount);
  2269. inline void Close();
  2270. __declspec(dllexport) void Release();
  2271. __declspec(dllexport) void ResetL(TInt& aCount);
  2272. __declspec(dllexport) void NextL(TInt& aStep);
  2273. __declspec(dllexport) void Next(TPckgBuf<TInt>& aStep,TRequestStatus& aStatus);
  2274. __declspec(dllexport) void NextL(TPckgBuf<TInt>& aStep,TRequestStatus& aStatus);
  2275. __declspec(dllexport) TInt Next(TInt& aStep);
  2276. inline TInt Available() const;
  2277. private:
  2278. MIncrementalCollector* iCol;
  2279. TPckgBuf<TInt> iAvail;
  2280. };
  2281. #line 162
  2282. class CEmbeddedStore : public CPersistentStore
  2283. {
  2284. public:
  2285. __declspec(dllexport) static CEmbeddedStore* FromL(RReadStream& aHost);
  2286. __declspec(dllexport) static CEmbeddedStore* FromLC(RReadStream& aHost);
  2287. __declspec(dllexport) static CEmbeddedStore* NewL(RWriteStream& aHost);
  2288. __declspec(dllexport) static CEmbeddedStore* NewLC(RWriteStream& aHost);
  2289. inline static TStreamPos Position(TStreamId anId);
  2290. __declspec(dllexport) void Detach();
  2291. inline void Reattach(MStreamBuf* aHost);
  2292. inline MStreamBuf* Host() const;
  2293. inline TStreamPos Start() const;
  2294. __declspec(dllexport) CEmbeddedStore(MStreamBuf* aHost);
  2295. __declspec(dllexport) void MarshalL(RReadStream& aStream);
  2296. __declspec(dllexport) void ConstructL(RWriteStream& aStream);
  2297. __declspec(dllexport) ~CEmbeddedStore();
  2298. protected:
  2299. __declspec(dllexport) MStreamBuf* DoReadL(TStreamId anId) const;
  2300. __declspec(dllexport) MStreamBuf* DoCreateL(TStreamId& anId);
  2301. private:
  2302. __declspec(dllexport) void DoSetRootL(TStreamId anId);
  2303. __declspec(dllexport) void DoCommitL();
  2304. static CEmbeddedStore* DoNewLC(MStreamBuf* aHost);
  2305. private:
  2306. TStreamExchange iHost;
  2307. TStreamPos iStart;
  2308. };
  2309. #line 218
  2310. class CDictionaryStore : public CBase
  2311. {
  2312. public:
  2313. __declspec(dllexport) TBool IsNullL() const;
  2314. __declspec(dllexport) TBool IsPresentL(TUid aUid) const;
  2315. __declspec(dllexport) void Remove(TUid aUid);
  2316. __declspec(dllexport) void RemoveL(TUid aUid);
  2317. __declspec(dllexport) TInt Commit();
  2318. __declspec(dllexport) void CommitL();
  2319. __declspec(dllexport) void Revert();
  2320. __declspec(dllexport) void RevertL();
  2321. __declspec(dllexport) ~CDictionaryStore();
  2322. protected:
  2323. __declspec(dllexport) void ConstructL();
  2324. private:
  2325. CStreamDictionary* DictionaryL() const;
  2326. MStreamBuf* GetSourceL(TUid aUid) const;
  2327. MStreamBuf* GetSinkL(TUid aUid);
  2328. protected:
  2329. CPersistentStore* iStore;
  2330. private:
  2331. CStreamDictionary* iDictionary;
  2332. TBool iDictionaryHasChanged;
  2333. private:
  2334. friend class RDictionaryReadStream;
  2335. friend class RDictionaryWriteStream;
  2336. friend class HDictionaryStoreBuf;
  2337. };
  2338. const TInt KDictionaryCommitThreshold = 1024;
  2339. #line 261
  2340. class RDictionaryReadStream : public RReadStream
  2341. {
  2342. public:
  2343. __declspec(dllexport) void OpenL(const CDictionaryStore& aDictStore,TUid aUid);
  2344. __declspec(dllexport) void OpenLC(const CDictionaryStore& aDictStore,TUid aUid);
  2345. };
  2346. #line 275
  2347. class RDictionaryWriteStream : public RWriteStream
  2348. {
  2349. public:
  2350. RDictionaryWriteStream() {}
  2351. inline RDictionaryWriteStream(const MExternalizer<TStreamRef>& anExter);
  2352. __declspec(dllexport) void AssignL(CDictionaryStore& aDictStore,TUid aUid);
  2353. __declspec(dllexport) void AssignLC(CDictionaryStore& aDictStore,TUid aUid);
  2354. };
  2355. #line 293
  2356. class TStorePagePoolToken
  2357. {
  2358. public:
  2359. enum TEmpty
  2360. {EEmpty};
  2361. public:
  2362. TStorePagePoolToken() {}
  2363. inline TStorePagePoolToken(TEmpty);
  2364. inline void Touch();
  2365. inline TBool HasAvailable() const;
  2366. inline TBool IsEmpty() const;
  2367. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream) const;
  2368. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  2369. private:
  2370. inline TStorePagePoolToken(TStreamId aHead,TPageRef anAvail);
  2371. private:
  2372. TStreamId iHead;
  2373. TPageRef iAvail;
  2374. private:
  2375. friend class RStorePagePool;
  2376. };
  2377. #line 354
  2378. class RStorePagePool : public TCachePagePool
  2379. {
  2380. friend class StorePagePool;
  2381. public:
  2382. __declspec(dllexport) RStorePagePool();
  2383. __declspec(dllexport) RStorePagePool(CPageCache& aCache);
  2384. __declspec(dllexport) RStorePagePool(CStreamStore& aStore);
  2385. __declspec(dllexport) RStorePagePool(CStreamStore& aStore,const TStorePagePoolToken& aToken);
  2386. __declspec(dllexport) void Create(CStreamStore& aStore);
  2387. __declspec(dllexport) void Open(CStreamStore& aStore,const TStorePagePoolToken& aToken);
  2388. __declspec(dllexport) TStorePagePoolToken Token() const;
  2389. __declspec(dllexport) void Close();
  2390. inline void Release();
  2391. inline TBool IsDirty() const;
  2392. inline void MarkCurrent();
  2393. inline void MarkDirty();
  2394. inline TBool HasAvailable() const;
  2395. inline void Discard();
  2396. inline TBool IsEmpty() const;
  2397. __declspec(dllexport) TBool ReclaimL();
  2398. __declspec(dllexport) void ReclaimAllL();
  2399. protected:
  2400. __declspec(dllexport) TPageRef ExtendL(const TAny* aPage,TPageReclamation aReclamation);
  2401. __declspec(dllexport) void WriteL(TPageRef aRef,const TAny* aPage,TPageChange aChange);
  2402. __declspec(dllexport) void ReadL(TPageRef aRef,TAny* aPage);
  2403. __declspec(dllexport) void DoDeleteL(TPageRef aRef);
  2404. private:
  2405. inline void CacheDeleteL(TPageRef aRef);
  2406. private:
  2407. CStreamStore* iStore;
  2408. TStreamId iHead;
  2409. TPageRef iAvail;
  2410. TBool iDirty;
  2411. };
  2412. #line 413
  2413. class MIncrementalCollector
  2414. {
  2415. public:
  2416. inline void Close();
  2417. inline void Release();
  2418. inline void ResetL(TInt& aCount);
  2419. inline void NextL(TInt& aStep,TInt& aTotal);
  2420. inline void NextL(TPckgBuf<TInt>& aStep,TRequestStatus& aStatus,TPckgBuf<TInt>& aTotal);
  2421. protected:
  2422. #line 431
  2423. MIncrementalCollector() {}
  2424. private:
  2425. #line 441
  2426. MIncrementalCollector(const MIncrementalCollector&);
  2427. MIncrementalCollector& operator=(const MIncrementalCollector&);
  2428. virtual __declspec(dllexport) void DoRelease();
  2429. virtual void DoResetL(TInt& aCount)=0;
  2430. #line 466
  2431. virtual void DoNextL(TInt& aStep,TInt& aTotal)=0;
  2432. virtual __declspec(dllexport) void DoNextL(TPckgBuf<TInt>& aStep,TRequestStatus& aStatus,TPckgBuf<TInt>& aTotal);
  2433. };
  2434. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32stor.inl" /* stack depth 14 */
  2435. inline TStreamId CStreamStore::ExtendL()
  2436. {return DoExtendL();}
  2437. inline void CStreamStore::CommitL()
  2438. {DoCommitL();}
  2439. inline void CStreamStore::RevertL()
  2440. {DoRevertL();}
  2441. inline CPersistentStore::CPersistentStore()
  2442. {}
  2443. inline TStreamId CPersistentStore::Root() const
  2444. {return iRoot;}
  2445. inline void CPersistentStore::SetRootL(TStreamId anId)
  2446. {DoSetRootL(anId);}
  2447. inline RStoreReclaim::RStoreReclaim()
  2448. : iCol(0 )
  2449. {}
  2450. inline void RStoreReclaim::Close()
  2451. #line 62
  2452. {Release();}
  2453. inline TInt RStoreReclaim::Available() const
  2454. {return (const_cast<TPckgBuf<TInt>&>(iAvail)) ();}
  2455. inline TStreamPos CEmbeddedStore::Position(TStreamId anId)
  2456. {return TStreamPos(anId.Value());}
  2457. inline void CEmbeddedStore::Reattach(MStreamBuf* aHost)
  2458. {iHost.Share(aHost);}
  2459. inline MStreamBuf* CEmbeddedStore::Host() const
  2460. {return (const_cast<TStreamExchange&>(iHost)) .Host();}
  2461. inline TStreamPos CEmbeddedStore::Start() const
  2462. {return iStart;}
  2463. inline RDictionaryWriteStream::RDictionaryWriteStream(const MExternalizer<TStreamRef>& anExter)
  2464. : RWriteStream(anExter)
  2465. {}
  2466. inline TStorePagePoolToken::TStorePagePoolToken(TEmpty)
  2467. : iHead(TStreamId(KNullStreamIdValue) ),iAvail(TPageRef(KNullPageRefValue) )
  2468. {}
  2469. inline void TStorePagePoolToken::Touch()
  2470. {iAvail=TPageRef(KNullPageRefValue) ;}
  2471. inline TBool TStorePagePoolToken::HasAvailable() const
  2472. {return iAvail!=TPageRef(KNullPageRefValue) ;}
  2473. inline TBool TStorePagePoolToken::IsEmpty() const
  2474. {return iHead==TStreamId(KNullStreamIdValue) ;}
  2475. inline void RStorePagePool::Release()
  2476. {Purge();iStore=0 ;}
  2477. inline TBool RStorePagePool::IsDirty() const
  2478. {return iDirty;}
  2479. inline void RStorePagePool::MarkCurrent()
  2480. {iDirty=EFalse;}
  2481. inline void RStorePagePool::MarkDirty()
  2482. {iDirty=ETrue;}
  2483. inline TBool RStorePagePool::HasAvailable() const
  2484. {return iAvail!=TPageRef(KNullPageRefValue) ;}
  2485. inline void RStorePagePool::Discard()
  2486. {iAvail=TPageRef(KNullPageRefValue) ;}
  2487. inline TBool RStorePagePool::IsEmpty() const
  2488. {return iHead==TStreamId(KNullStreamIdValue) ;}
  2489. inline void MIncrementalCollector::Close()
  2490. {DoRelease();}
  2491. inline void MIncrementalCollector::Release()
  2492. {DoRelease();}
  2493. inline void MIncrementalCollector::ResetL(TInt& aCount)
  2494. {DoResetL(aCount);}
  2495. inline void MIncrementalCollector::NextL(TInt& aStep,TInt& aTotal)
  2496. #line 198
  2497. {DoNextL(aStep,aTotal);}
  2498. inline void MIncrementalCollector::NextL(TPckgBuf<TInt>& aStep,TRequestStatus& aStatus,TPckgBuf<TInt>& aTotal)
  2499. #line 217
  2500. {DoNextL(aStep,aStatus,aTotal);}
  2501. #line 470 "C:\Symbian\9.1\S60_3rd\epoc32\include\s32stor.h" /* stack depth 13 */
  2502. #line 11 "C:\Symbian\9.1\S60_3rd\epoc32\include\fldbase.h" /* stack depth 12 */
  2503. class CTextField;
  2504. class MTextFieldFactory;
  2505. class CTextField : public CBase
  2506. #line 34
  2507. {
  2508. public:
  2509. __declspec(dllexport) virtual TStreamId StoreL(CStreamStore& aStore)const;
  2510. __declspec(dllexport) virtual void RestoreL(const CStreamStore& aStore,TStreamId aId);
  2511. __declspec(dllexport) virtual void ExternalizeL(RWriteStream& aStream)const;
  2512. virtual void InternalizeL(RReadStream& aStream)=0;
  2513. #line 54
  2514. virtual TInt Value(TPtr& aValueText)=0;
  2515. virtual TUid Type()const=0;
  2516. };
  2517. class MTextFieldFactory
  2518. #line 90
  2519. {
  2520. public:
  2521. virtual CTextField* NewFieldL(TUid aFieldType)=0;
  2522. };
  2523. #line 12 "C:\Symbian\9.1\S60_3rd\epoc32\include\fldset.h" /* stack depth 11 */
  2524. #line 1 "C:\Symbian\9.1\S60_3rd\epoc32\include\fldbltin.h" /* stack depth 12 */
  2525. #line 14
  2526. class MFieldPageNumInfo;
  2527. class MFieldNumPagesInfo;
  2528. class MFieldFileNameInfo;
  2529. class CDateTimeField;
  2530. class CPageNumField;
  2531. class CNumPagesField;
  2532. class CFileNameField;
  2533. class TRomanNumeral;
  2534. class RReadStream;
  2535. class RWriteStream;
  2536. #line 39
  2537. class MFieldPageNumInfo
  2538. {
  2539. public:
  2540. virtual TInt UpdateFieldPageNum()const=0;
  2541. };
  2542. #line 60
  2543. class MFieldNumPagesInfo
  2544. {
  2545. public:
  2546. virtual TInt UpdateFieldNumPages()const=0;
  2547. };
  2548. #line 83
  2549. class MFieldFileNameInfo
  2550. {
  2551. public:
  2552. #line 96
  2553. virtual TInt UpdateFieldFileName(TPtr& aValueText)const=0;
  2554. };
  2555. #line 111
  2556. class CDateTimeField : public CTextField
  2557. {
  2558. public:
  2559. __declspec(dllexport) CDateTimeField();
  2560. __declspec(dllexport) void SetFormat(const TDesC& aFormat);
  2561. __declspec(dllexport) virtual TInt Value(TPtr& aValueText);
  2562. __declspec(dllexport) virtual void InternalizeL(RReadStream& aStream);
  2563. __declspec(dllexport) virtual void ExternalizeL(RWriteStream& aStream)const;
  2564. __declspec(dllexport) const TDesC& FormatString()const;
  2565. __declspec(dllexport) TUid Type()const;
  2566. protected:
  2567. TBuf<64> iFormatString;
  2568. };
  2569. #line 140
  2570. class CPageFieldBase : public CTextField
  2571. {
  2572. public:
  2573. enum TNumberStyle {
  2574. EArabic,
  2575. ERomanUpper,
  2576. ERomanLower,
  2577. EAlphabeticUpper,
  2578. EAlphabeticLower
  2579. };
  2580. public:
  2581. inline void SetNumberStyle(TNumberStyle aStyle) { iStyle = aStyle; }
  2582. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  2583. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream)const;
  2584. __declspec(dllexport) TNumberStyle NumberStyle()const;
  2585. protected:
  2586. TInt InsertValue(TPtr& aValueText,TInt aValue);
  2587. protected:
  2588. TNumberStyle iStyle;
  2589. };
  2590. #line 184
  2591. class CPageNumField : public CPageFieldBase
  2592. {
  2593. public:
  2594. inline void SetPageNumInfo(MFieldPageNumInfo* aInfo) { iPageNumInfo=aInfo; }
  2595. __declspec(dllexport) TInt Value(TPtr& aValueText);
  2596. __declspec(dllexport) TUid Type()const;
  2597. protected:
  2598. MFieldPageNumInfo* iPageNumInfo;
  2599. };
  2600. #line 210
  2601. class CNumPagesField : public CPageFieldBase
  2602. {
  2603. public:
  2604. inline void SetNumPagesInfo(MFieldNumPagesInfo* aInfo) { iNumPagesInfo=aInfo; }
  2605. __declspec(dllexport) TInt Value(TPtr& aValueText);
  2606. __declspec(dllexport) TUid Type()const;
  2607. protected:
  2608. MFieldNumPagesInfo* iNumPagesInfo;
  2609. };
  2610. #line 238
  2611. class CFileNameField : public CTextField
  2612. {
  2613. public:
  2614. inline void SetFileNameInfo(MFieldFileNameInfo* aInfo) { iFileNameInfo=aInfo; }
  2615. __declspec(dllexport) virtual TStreamId StoreL(CStreamStore& aStore)const;
  2616. __declspec(dllexport) virtual void RestoreL(const CStreamStore& aStore,TStreamId aId);
  2617. __declspec(dllexport) virtual TInt Value(TPtr& aValueText);
  2618. inline virtual void InternalizeL(RReadStream& ) {};
  2619. __declspec(dllexport) TUid Type()const;
  2620. protected:
  2621. MFieldFileNameInfo* iFileNameInfo;
  2622. };
  2623. #line 13 "C:\Symbian\9.1\S60_3rd\epoc32\include\fldset.h" /* stack depth 11 */
  2624. class CTextFieldSet;
  2625. class RReadStream;
  2626. class RWriteStream;
  2627. class TTextFieldEntry;
  2628. class CStreamStore;
  2629. class CStoreMap;
  2630. class TRollbackInfo;
  2631. const TInt KFieldArrayGranularity=1;
  2632. class CTextFieldSet : public CBase
  2633. {
  2634. public:
  2635. enum {ENoPasteLimit=-1};
  2636. public:
  2637. __declspec(dllexport) static CTextFieldSet* NewL(TInt aDocumentLength=0);
  2638. __declspec(dllexport) static CTextFieldSet* NewL(const MTextFieldFactory* aFactory,const CStreamStore& aStore,TStreamId aStreamId);
  2639. __declspec(dllexport) ~CTextFieldSet();
  2640. __declspec(dllexport) void SetFieldFactory(MTextFieldFactory* aFactory);
  2641. __declspec(dllexport) MTextFieldFactory* FieldFactory()const;
  2642. __declspec(dllexport) void Reset();
  2643. __declspec(dllexport) TStreamId StoreL(CStreamStore& aStore)const;
  2644. __declspec(dllexport) void RestoreL(const CStreamStore& aFieldStore,TStreamId aStreamId);
  2645. __declspec(dllexport) void StoreFieldsL(CStreamStore& aStore,CStoreMap& aMap)const;
  2646. __declspec(dllexport) void RestoreFieldsL(const CStreamStore& aFieldStore);
  2647. __declspec(dllexport) void InternalizeL(RReadStream& aStream);
  2648. __declspec(dllexport) void ExternalizeL(RWriteStream& aStream)const;
  2649. __declspec(dllexport) TStreamId CopyToStoreL(CStreamStore& aStore,TInt aPos,TInt aLength)const;
  2650. __declspec(dllexport) void CopyComponentsL(CStreamStore& aStore,CStoreMap& aMap,TInt aPos,TInt aLength)const;
  2651. __declspec(dllexport) void CopyToStreamL(RWriteStream& aStream,TInt aPos,TInt aLength)const;
  2652. __declspec(dllexport) void PasteFromStoreL(const CStreamStore& aFieldStore,TStreamId aStreamId,TInt aPos,TInt aMaxLen=ENoPasteLimit);
  2653. __declspec(dllexport) void PasteComponentsL(const CStreamStore& aFieldStore,TInt aPos);
  2654. __declspec(dllexport) void PasteFromStreamL(RReadStream& aStream,TInt aPos,TInt aMaxLen=ENoPasteLimit);
  2655. __declspec(dllexport) CTextField* NewFieldL(TUid aFieldType);
  2656. __declspec(dllexport) TInt InsertFieldL(TInt aPos,CTextField* aField,TUid aFieldType);
  2657. __declspec(dllexport) TInt RemoveField(TInt aPos);
  2658. __declspec(dllexport) TInt NewFieldValueL(HBufC*& aBuf, TInt aPos);
  2659. __declspec(dllexport) void NotifyInsertion(TInt aPos, TInt aNumberAdded);
  2660. __declspec(dllexport) void NotifyDeletion(TInt aPos, TInt aNumberRemoved);
  2661. __declspec(dllexport) void NotifyFieldUpdate(TInt aPos, TInt aNewFieldValueLength);
  2662. __declspec(dllexport) TInt FieldCount() const;
  2663. __declspec(dllexport) TInt CharCount() const;
  2664. __declspec(dllexport) TBool FindFields(TInt aPos) const;
  2665. __declspec(dllexport) TBool FindFields(TFindFieldInfo& aInfo,TInt aPos,TInt aRange=0) const;
  2666. __declspec(dllexport) const CTextField* TextField(TInt aPos)const;
  2667. __declspec(dllexport) void RollbackPaste();
  2668. protected:
  2669. CTextFieldSet();
  2670. void ConstructL(TInt aDocumentLength);
  2671. void ConstructL(const CStreamStore& aFieldStore,TStreamId aStreamId);
  2672. private:
  2673. void StoreFieldsL(CStreamStore& aStore,CStoreMap& aMap,CArrayFixSeg<TTextFieldEntry> * aArray)const;
  2674. void DoRestoreL(const CStreamStore& aFieldStore,TStreamId aStreamId);
  2675. void DoRestoreFieldsL(CArrayFixSeg<TTextFieldEntry> * aArray,const CStreamStore& aFieldStore,TInt aStartIndex=0);
  2676. void InternalizeL(CArrayFixSeg<TTextFieldEntry> * aArray,RReadStream& aStream);
  2677. void ExternalizeL(RWriteStream& aStream,CArrayFixSeg<TTextFieldEntry> * aArray)const;
  2678. void DoPasteL(CArrayFixSeg<TTextFieldEntry> * aSourceArray,TInt aPos);
  2679. void AddInitialFieldEntryL(CArrayFixSeg<TTextFieldEntry> * aArray,TInt aDocumentLength);
  2680. void InsertEntryL(TInt aIndex,TTextFieldEntry& aEntry);
  2681. void InsertEntryL(TInt aIndex,TTextFieldEntry& aEntry,CArrayFixSeg<TTextFieldEntry> * aArray);
  2682. void AppendEntryL(TTextFieldEntry& aEntry);
  2683. void AppendEntryL(TTextFieldEntry& aEntry,CArrayFixSeg<TTextFieldEntry> * aArray);
  2684. void CopyToArrayL(CArrayFixSeg<TTextFieldEntry> * aArray,TInt aPos,TInt aLength)const;
  2685. TBool InField(const TInt aPos, TInt& anIndex, TInt& anOffset) const;
  2686. void DeleteFieldEntry(TInt anIndex);
  2687. void DeleteFieldEntry(CArrayFixSeg<TTextFieldEntry> * aArray,TInt anIndex);
  2688. TTextFieldEntry SplitEntry(TInt aIndex,TInt aOffset,TInt aRange)const;
  2689. TInt EntryLen(const TTextFieldEntry& aEntry)const;
  2690. TInt EntryLen(TInt aIndex)const;
  2691. void RecordRollbackInfoL(TInt aPastePos);
  2692. private:
  2693. MTextFieldFactory* iFieldFactory;
  2694. CArrayFixSeg<TTextFieldEntry> * iFieldArray;
  2695. TRollbackInfo* iRollbackInfo;
  2696. public: void __DbgTestInvariant() const; void __DbgTest(TAny *aPtr) const ;
  2697. };
  2698. class TFieldMapExternalizer : public MExternalizer<TStreamRef>
  2699. {
  2700. private:
  2701. friend class CPlainText;
  2702. friend class CTextFieldSet;
  2703. private:
  2704. __declspec(dllexport) TFieldMapExternalizer(const CStoreMap& aMap);
  2705. __declspec(dllexport) void ExternalizeL(const TStreamRef& anObject,RWriteStream& aStream) const;
  2706. private:
  2707. const CStoreMap* iMap;
  2708. };
  2709. #line 11 "C:\Symbian\9.1\S60_3rd\epoc32\include\txtetext.h" /* stack depth 10 */
  2710. class CParaFormatLayer;
  2711. class CCharFormatLayer;
  2712. class MTextFieldFactory;
  2713. class CTextFieldSet;
  2714. class CTextField;
  2715. class TFindFieldInfo;
  2716. class CInlineEditData;
  2717. class MFepInlineTextFormatRetriever;
  2718. class TCharFormat;
  2719. class CEditableTextOptionalData;
  2720. class RFs;
  2721. const TUid KPlainTextFieldDataUid = {268435555};
  2722. const TUid KEditableTextUid = {268450334};
  2723. const TUid KPlainTextCharacterDataUid = {268450341};
  2724. const TUid KClipboardUidTypePlainText = {268450333};
  2725. const TUid KUidRichText = {271013233};
  2726. const TInt KMaxFieldBufferSize=0x14;
  2727. #line 64
  2728. class CEditableText : public CBase
  2729. {
  2730. public:
  2731. __declspec(dllexport) ~CEditableText();
  2732. __declspec(dllexport) TStreamId StoreL(CStreamStore& aStore) const;
  2733. __declspec(dllexport) void RestoreL(const CStreamStore& aStore,TStreamId aStreamId);
  2734. virtual void ExternalizeL(RWriteStream& aStream) const;
  2735. virtual void InternalizeL(RReadStream& aStream);
  2736. #line 82
  2737. virtual void StoreComponentsL(CStreamStore& aStore,CStoreMap& aMap) const = 0;
  2738. virtual void RestoreComponentsL(const CStreamStore& aStore) = 0;
  2739. virtual void Reset() = 0;
  2740. virtual void InsertL(TInt aInsertPos,const TChar& aChar) = 0;
  2741. virtual void InsertL(TInt aInsertPos,const TDesC& aBuf) = 0;
  2742. #line 121
  2743. virtual TBool DeleteL(TInt aPos,TInt aLength) = 0;
  2744. #line 132
  2745.   virtual TPtrC Read(TInt aStartPos) const = 0;
  2746. #line 142
  2747. virtual TPtrC Read(TInt aStartPos,TInt aLength) const = 0;
  2748. #line 153
  2749.   virtual void Extract(TDes& aBuf,TInt aPos=0) const = 0;
  2750. #line 163
  2751. virtual void Extract(TDes& aBuf,TInt aPos,TInt aLength) const = 0;
  2752. #line 172
  2753. virtual void CopyToStoreL(CStreamStore& aStore,CStreamDictionary& aDictionary,TInt aPos,TInt aLength) const = 0;
  2754. #line 181
  2755. virtual TInt PasteFromStoreL(const CStreamStore& aStore,const CStreamDictionary& aDictionary,TInt aPos) = 0;
  2756. virtual TInt WordCount() const = 0;
  2757. virtual TInt ParagraphCount() const = 0;
  2758. virtual TInt DocumentLength() const = 0;
  2759. virtual TInt ToParagraphStart(TInt& aPos) const = 0;
  2760. inline TBool HasChanged() const;
  2761. #line 226
  2762. virtual void GetWordInfo(TInt aCurrentPos,TInt& aStartPos,TInt& aLength,
  2763.  TBool aPictureIsDelimiter,TBool aPunctuationIsDelimiter) const = 0;
  2764. __declspec(dllexport) virtual TInt ScanWords(TInt& aPos,TUint& aScanMask) const;
  2765. __declspec(dllexport) virtual TInt ScanParas(TInt& aPos,TUint& aScanMask) const;
  2766. __declspec(dllexport) virtual void SetHasChanged(TBool aHasChanged);
  2767. __declspec(dllexport) void StartFepInlineEditL(TBool& aParagraphContainingStartPositionOfInlineTextHasChangedFormat,TInt& aNumberOfCharactersSuccessfullyDeleted,TInt& aNumberOfCharactersSuccessfullyInserted,TInt& aPositionOfInsertionPointInDocument,TInt aNewPositionOfInsertionPointInDocument,const TDesC& aInitialInlineText,TInt aPositionOfInlineTextInDocument,TInt aNumberOfCharactersToHide,MFepInlineTextFormatRetriever& aInlineTextFormatRetriever);
  2768. __declspec(dllexport) void UpdateFepInlineTextL(TBool& aParagraphContainingStartPositionOfInlineTextHasChangedFormat,TInt& aNumberOfCharactersSuccessfullyDeleted,TInt& aNumberOfCharactersSuccessfullyInserted,TInt& aPositionOfInsertionPointInDocument,TInt aNewPositionOfInsertionPointInDocument,const TDesC& aNewInlineText);
  2769. __declspec(dllexport) void CommitFepInlineEditL(TBool& aParagraphContainingStartPositionOfInlineTextHasChangedFormat,TInt& aNumberOfCharactersSuccessfullyDeleted,TInt& aNumberOfCharactersSuccessfullyInserted,TInt& aPositionOfInsertionPointInDocument,TInt aNewPositionOfInsertionPointInDocument);
  2770. __declspec(dllexport) void CancelFepInlineEdit(TBool& aParagraphContainingStartPositionOfInlineTextHasChangedFormat,TInt& aNumberOfCharactersSuccessfullyDeleted,TInt& aNumberOfCharactersSuccessfullyInserted,TInt& aPositionOfInsertionPointInDocument,TInt aNewPositionOfInsertionPointInDocument);
  2771. __declspec(dllexport) virtual void ExtendedInterface(TAny*& aInterface, TUid aInterfaceId);
  2772. enum TDocumentStorage
  2773. {
  2774. EFlatStorage,
  2775. ESegmentedStorage
  2776. };
  2777.   enum
  2778. {
  2779. EDefaultTextGranularity = 256
  2780. };
  2781. enum
  2782. {
  2783. ETabCharacter = 0x0009,
  2784. EPageBreak = 0x000C,
  2785. ESpace = 0x0020,
  2786. EApostrophe = 0x0027,
  2787. EHyphenMinus = 0x002D,
  2788. ENonBreakingSpace = 0x00A0,
  2789. EPotentialHyphen = 0x00AD,
  2790. EHyphen = 0x2010,
  2791. ENonBreakingHyphen = 0x2011,
  2792. ELeftSingleQuote = 0x2018,
  2793. ERightSingleQuote = 0x2019,
  2794. ELeftDoubleQuote = 0x201C,
  2795. ERightDoubleQuote = 0x201D,
  2796. EBullet = 0x2022,
  2797. EEllipsis = 0x2026,
  2798. ELineBreak = 0x2028,
  2799. EParagraphDelimiter = 0x2029,
  2800. EPictureCharacter = 0xFFFC,
  2801. EZeroWidthNoBreakSpace = 0xFEFF,
  2802. EByteOrderMark = 0xFEFF,
  2803. EReversedByteOrderMark = 0xFFFE
  2804. };
  2805. protected:
  2806. __declspec(dllexport) void OverrideFormatOfInlineTextIfApplicable(TPtrC& aView,TCharFormat& aFormat,TInt aStartPos) const;
  2807. TBool iHasChanged;
  2808. private:
  2809. void SetAndTransferOwnershipOfInlineEditDataL(CInlineEditData* aInlineEditData);
  2810. CInlineEditData* InlineEditData() const;
  2811. void DeleteInlineEditDataAndSetToNull();
  2812. TBool DeleteWithoutDestroyingFormatL(TInt aPos, TInt aLength);
  2813. CEditableTextOptionalData* iOptionalData;
  2814. };
  2815. #line 328
  2816. class TEtextComponentInfo
  2817. {
  2818. public:
  2819. __declspec(dllexport) TEtextComponentInfo();
  2820. __declspec(dllexport) TEtextComponentInfo(TInt aFieldCount,TInt aPictureCount,TInt aStyleCount);
  2821. public:
  2822. TInt iFieldCount;
  2823. TInt iPictureCount;
  2824. TInt iStyleCount;
  2825. };
  2826. #line 350
  2827. typedef CArrayFix<TInt> TPageTable;
  2828. #line 372
  2829. class CPlainText: public CEditableText
  2830. {
  2831. public:
  2832. enum TTextOrganisation
  2833. {
  2834. EOrganiseByParagraph,
  2835. EOrganiseByLine
  2836. };
  2837. enum
  2838. {
  2839. EScanBackwards = 0x01,
  2840. EScanStayIfBoundary = 0x02,
  2841. EScanToUnitStart = 0x04,
  2842. EScanToUnitEnd = 0x08,
  2843. EScanJoinDelimiters = 0x10,
  2844. EScanPictureIsDelimiter = 0x20,
  2845. EScanPunctuationIsDelimiter = 0x40
  2846. };
  2847. enum TScanDataEnd
  2848. {
  2849. EScanEndOfData = -1
  2850. };
  2851. class TImportExportParam
  2852. {
  2853. public:
  2854. TImportExportParam():
  2855. iOrganisation(EOrganiseByParagraph),
  2856. iMaxOutputChars(KMaxTInt),
  2857. iMaxInputChars(KMaxTInt),
  2858. iMaxLineLength(KMaxTInt),
  2859. iOutputInternal(0 ),
  2860. iInputInternal(0 ),
  2861. iForeignEncoding(0),
  2862. iGuessForeignEncoding(0 ),
  2863. iFileSession(0 ),
  2864. iReserved(0)
  2865. {
  2866. }
  2867. TTextOrganisation iOrganisation;
  2868. TInt iMaxOutputChars;
  2869. TInt iMaxInputChars;
  2870. TInt iMaxLineLength;
  2871. TBool iOutputInternal;
  2872. TBool iInputInternal;
  2873. TUint iForeignEncoding;
  2874. TBool iGuessForeignEncoding;
  2875. RFs* iFileSession;
  2876. TUint iReserved;
  2877. };
  2878.   class TImportExportResult
  2879. {
  2880. public:
  2881. TImportExportResult():
  2882. iOutputChars(0),
  2883. iInputChars(0),
  2884. iForeignEncoding(0),
  2885. iReserved(0)
  2886. {
  2887. }
  2888. TInt iOutputChars;
  2889. TInt iInputChars;
  2890. TUint iForeignEncoding;
  2891. TUint iReserved;
  2892. };
  2893. __declspec(dllexport) static CPlainText* NewL(TDocumentStorage aStorage = ESegmentedStorage,
  2894.  TInt aDefaultTextGranularity = EDefaultTextGranularity);
  2895. __declspec(dllexport) static CPlainText* NewL(const CStreamStore& aStore,TStreamId aStreamId,
  2896.  MTextFieldFactory* aFieldFactory = 0 ,
  2897.  TDocumentStorage aStorage = ESegmentedStorage);
  2898. __declspec(dllexport) virtual ~CPlainText();
  2899. __declspec(dllexport) virtual void StoreComponentsL(CStreamStore& aStore,CStoreMap& aMap) const;
  2900. __declspec(dllexport) virtual void RestoreComponentsL(const CStreamStore& aStore);
  2901. __declspec(dllexport) virtual void ExternalizeL(RWriteStream& aStream) const;
  2902. __declspec(dllexport) virtual void InternalizeL(RReadStream& aStream);
  2903. __declspec(dllexport) void ExternalizePlainTextL(RWriteStream& aStream) const;
  2904. __declspec(dllexport) void InternalizePlainTextL(RReadStream& aStream);
  2905. __declspec(dllexport) void ExternalizePlainTextNoLengthCountL(RWriteStream& aStream) const;
  2906. __declspec(dllexport) void InternalizePlainTextL(RReadStream& aStream,TInt aLength);
  2907. __declspec(dllexport) void ImportTextL(TInt aPos,RReadStream& aInput,TTextOrganisation aTextOrganisation,
  2908.   TInt aMaxOutputChars = KMaxTInt,TInt aMaxInputChars = KMaxTInt,
  2909.   TInt* aOutputChars = 0 ,TInt* aInputChars = 0 );
  2910. __declspec(dllexport) void ExportTextL(TInt aPos,RWriteStream& aOutput,TTextOrganisation aTextOrganisation,
  2911.   TInt aMaxOutputChars = KMaxTInt,TInt aMaxInputChars = KMaxTInt,
  2912.   TInt aMaxLineLength = KMaxTInt,
  2913.   TInt* aOutputChars = 0 ,TInt* aInputChars = 0 ) const;
  2914. __declspec(dllexport) virtual TInt ImportTextFileL(TInt aPos,const TDes& aFileName,TTextOrganisation aTextOrganisation);
  2915. __declspec(dllexport) virtual void ExportAsTextL(const TDes& aFileName,TTextOrganisation aTextOrganisation,
  2916. TInt aMaxLineLength) const;
  2917. __declspec(dllexport) void ImportTextL(TInt aPos,RReadStream& aInput,
  2918.   const TImportExportParam& aParam,TImportExportResult& aResult);
  2919. __declspec(dllexport) void ExportTextL(TInt aPos,RWriteStream& aOutput,
  2920.   const TImportExportParam& aParam,TImportExportResult& aResult) const;
  2921. __declspec(dllexport) void StoreFieldComponentsL(CStreamStore& aStore,CStoreMap& aMap) const;
  2922. __declspec(dllexport) void RestoreFieldComponentsL(const CStreamStore& aStore);
  2923. __declspec(dllexport) void ExternalizeFieldDataL(RWriteStream& aStream) const;
  2924. __declspec(dllexport) void InternalizeFieldDataL(RReadStream& aStream);
  2925. __declspec(dllexport) virtual void Reset();
  2926. __declspec(dllexport) virtual void InsertL(TInt aPos,const TChar& aChar);
  2927. __declspec(dllexport) virtual void InsertL(TInt aPos,const TDesC& aBuf);
  2928. __declspec(dllexport) virtual TBool DeleteL(TInt aPos,TInt aLength);
  2929. __declspec(dllexport) virtual TPtrC Read(TInt aStartPos) const;
  2930. __declspec(dllexport) virtual TPtrC Read(TInt aStartPos,TInt aLength) const;
  2931. __declspec(dllexport) virtual void Extract(TDes& aBuf,TInt aPos=0) const;
  2932. __declspec(dllexport) virtual void Extract(TDes& aBuf,TInt aPos,TInt aLength) const;
  2933. enum
  2934. {