00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108 #ifndef INC_RECH_TEXT
00109 #define INC_RECH_TEXT
00110
00111 class TextStory;
00112
00113
00114
00115
00116
00117
00118
00119
00120
00121
00122
00123
00124
00125 class TextObjRecordHandler : public CamelotRecordHandler
00126 {
00127
00128 CC_DECLARE_DYNAMIC(TextObjRecordHandler);
00129
00130 public:
00131 TextObjRecordHandler() { pLastInsertedTextStory = NULL; };
00132 ~TextObjRecordHandler() {};
00133
00134
00135 public:
00136 UINT32* GetTagList();
00137 BOOL HandleRecord(CXaraFileRecord* pCXaraFileRecord);
00138
00139 virtual BOOL BeginImport();
00140
00141 private:
00142 BOOL ReadTextStorySimple(CXaraFileRecord *pCXaraFileRecord);
00143 BOOL ReadTextStoryComplex(CXaraFileRecord *pCXaraFileRecord);
00144
00145 BOOL ReadTextStorySimpleStartLeft(CXaraFileRecord *pCXaraFileRecord);
00146 BOOL ReadTextStorySimpleStartRight(CXaraFileRecord *pCXaraFileRecord);
00147 BOOL ReadTextStorySimpleEndLeft(CXaraFileRecord *pCXaraFileRecord);
00148 BOOL ReadTextStorySimpleEndRight(CXaraFileRecord *pCXaraFileRecord);
00149 BOOL ReadTextStoryComplexStartLeft(CXaraFileRecord *pCXaraFileRecord);
00150 BOOL ReadTextStoryComplexStartRight(CXaraFileRecord *pCXaraFileRecord);
00151 BOOL ReadTextStoryComplexEndLeft(CXaraFileRecord *pCXaraFileRecord);
00152 BOOL ReadTextStoryComplexEndRight(CXaraFileRecord *pCXaraFileRecord);
00153 BOOL ReadTextStoryWordWrapInfo(CXaraFileRecord *pCXaraFileRecord);
00154 BOOL ReadTextStoryIndentInfo(CXaraFileRecord *pCXaraFileRecord);
00155
00156 BOOL ReadTextLine(CXaraFileRecord *pCXaraFileRecord);
00157 BOOL ReadTextString(CXaraFileRecord *pCXaraFileRecord);
00158 BOOL ReadTextChar(CXaraFileRecord *pCXaraFileRecord);
00159 BOOL ReadTextEOL(CXaraFileRecord *pCXaraFileRecord);
00160 BOOL ReadTextKernCode(CXaraFileRecord *pCXaraFileRecord);
00161 BOOL ReadTextTab(CXaraFileRecord *pCXaraFileRecord);
00162 BOOL ReadTextCaret(CXaraFileRecord *PCXaraFileRecord);
00163 BOOL ReadTextLineInfo(CXaraFileRecord *pCXaraFileRecord);
00164 BOOL ReadTextInvalid(CXaraFileRecord *pCXaraFileRecord);
00165
00166 BOOL ReadAutoKern ( CXaraFileRecord *pCXaraFileRecord,
00167 TextStory *pStory );
00168
00169
00170 BOOL InsertTextStoryNode(TextStory* pTextStory);
00171 TextStory* pLastInsertedTextStory;
00172
00173 #ifdef XAR_TREE_DIALOG
00174 public:
00175 void GetRecordDescriptionText(CXaraFileRecord* pCXaraFileRecord, StringBase *pStr);
00176 void DescribeStorySimple(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00177 void DescribeStoryComplex(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00178 void DescribeStorySimpleStartLeft(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00179 void DescribeStorySimpleStartRight(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00180 void DescribeStorySimpleEndLeft(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00181 void DescribeStorySimpleEndRight(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00182 void DescribeStoryComplexStartLeft(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00183 void DescribeStoryComplexStartRight(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00184 void DescribeStoryComplexEndLeft(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00185 void DescribeStoryComplexEndRight(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00186 void DescribeStoryWordWrapInfo(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00187 void DescribeStoryIndentInfo(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00188 void DescribeLine(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00189 void DescribeString(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00190 void DescribeChar(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00191 void DescribeEOL(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00192 void DescribeKern(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00193 void DescribeCaret(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00194 void DescribeLineInfo(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00195 void DescribeInvalid(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00196 #endif
00197 };
00198
00199
00200
00201
00202
00203
00204
00205
00206
00207
00208
00209
00210 class TextAttrRecordHandler : public CamelotRecordHandler
00211 {
00212
00213 CC_DECLARE_DYNAMIC(TextAttrRecordHandler);
00214
00215 public:
00216 TextAttrRecordHandler() {};
00217 ~TextAttrRecordHandler() {};
00218
00219
00220 public:
00221 UINT32* GetTagList();
00222 BOOL HandleRecord(CXaraFileRecord* pCXaraFileRecord);
00223
00224 private:
00225 BOOL ReadTextStoryVanilla(CXaraFileRecord *pCXaraFileRecord);
00226 BOOL ReadTextString(CXaraFileRecord *pCXaraFileRecord);
00227 BOOL ReadTextKern(CXaraFileRecord *pCXaraFileRecord);
00228 BOOL ReadTextCaret(CXaraFileRecord *PCXaraFileRecord);
00229 BOOL ReadTextLineSpaceRatio(CXaraFileRecord *pCXaraFileRecord);
00230 BOOL ReadTextLineSpaceAbsolute(CXaraFileRecord *pCXaraFileRecord);
00231 BOOL ReadTextJustificationLeft(CXaraFileRecord *pCXaraFileRecord);
00232 BOOL ReadTextJustificationCentre(CXaraFileRecord *pCXaraFileRecord);
00233 BOOL ReadTextJustificationRight(CXaraFileRecord *pCXaraFileRecord);
00234 BOOL ReadTextJustificationFull(CXaraFileRecord *pCXaraFileRecord);
00235 BOOL ReadTextFontSize(CXaraFileRecord *pCXaraFileRecord);
00236 BOOL ReadTextFontTypeface(CXaraFileRecord *pCXaraFileRecord);
00237 BOOL ReadTextBoldOn(CXaraFileRecord *pCXaraFileRecord);
00238 BOOL ReadTextBoldOff(CXaraFileRecord *pCXaraFileRecord);
00239 BOOL ReadTextItalicOn(CXaraFileRecord *pCXaraFileRecord);
00240 BOOL ReadTextItalicOff(CXaraFileRecord *pCXaraFileRecord);
00241 BOOL ReadTextUnderlineOn(CXaraFileRecord *pCXaraFileRecord);
00242 BOOL ReadTextUnderlineOff(CXaraFileRecord *pCXaraFileRecord);
00243 BOOL ReadTextScriptOn(CXaraFileRecord *pCXaraFileRecord);
00244 BOOL ReadTextScriptOff(CXaraFileRecord *pCXaraFileRecord);
00245 BOOL ReadTextSuperscriptOn(CXaraFileRecord *pCXaraFileRecord);
00246 BOOL ReadTextSubscriptOn(CXaraFileRecord *pCXaraFileRecord);
00247 BOOL ReadTextTracking(CXaraFileRecord *pCXaraFileRecord);
00248 BOOL ReadTextAspectRatio(CXaraFileRecord *pCXaraFileRecord);
00249 BOOL ReadTextBaseline(CXaraFileRecord *pCXaraFileRecord);
00250 BOOL ReadTextLeftIndent(CXaraFileRecord *pCXaraFileRecord);
00251 BOOL ReadTextRightIndent(CXaraFileRecord *pCXaraFileRecord);
00252 BOOL ReadTextFirstIndent(CXaraFileRecord *pCXaraFileRecord);
00253 BOOL ReadTextRuler(CXaraFileRecord *pCXaraFileRecord);
00254 BOOL ReadTextInvalid(CXaraFileRecord *pCXaraFileRecord);
00255
00256 #ifdef XAR_TREE_DIALOG
00257 public:
00258 void GetRecordDescriptionText(CXaraFileRecord* pCXaraFileRecord, StringBase *pStr);
00259 void DescribeLineSpaceRatio(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00260 void DescribeLineSpaceAbsolute(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00261 void DescribeJustificationLeft(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00262 void DescribeJustificationCentre(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00263 void DescribeJustificationRight(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00264 void DescribeJustificationFull(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00265 void DescribeFontSize(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00266 void DescribeFontTypeface(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00267 void DescribeBoldOn(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00268 void DescribeBoldOff(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00269 void DescribeItalicOn(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00270 void DescribeItalicOff(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00271 void DescribeUnderlineOn(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00272 void DescribeUnderlineOff(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00273 void DescribeScriptOn(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00274 void DescribeScriptOff(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00275 void DescribeSuperscriptOn(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00276 void DescribeSubscriptOn(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00277 void DescribeTracking(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00278 void DescribeAspectRatio(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00279 void DescribeBaseline(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00280 void DescribeInvalid(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00281 #endif
00282
00283 };
00284
00285
00286
00287
00288
00289
00290
00291
00292
00293
00294
00295
00296 class FontDefRecordHandler : public CamelotRecordHandler
00297 {
00298
00299 CC_DECLARE_DYNAMIC(FontDefRecordHandler);
00300
00301 public:
00302 FontDefRecordHandler() {};
00303 ~FontDefRecordHandler() {};
00304
00305
00306 public:
00307 UINT32* GetTagList();
00308 BOOL HandleRecord(CXaraFileRecord* pCXaraFileRecord);
00309
00310 #ifdef XAR_TREE_DIALOG
00311 public:
00312 void GetRecordDescriptionText(CXaraFileRecord* pCXaraFileRecord, StringBase *pStr);
00313 void DescribeFontDefTrueType(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00314 void DescribeFontDefATM(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00315 void DescribeFontDefInvalid(CXaraFileRecord *pCXaraFileRecord, StringBase *pStr);
00316 #endif
00317 };
00318
00319 #endif