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 #ifndef WP6CHARACTERGROUP_H
00027 #define WP6CHARACTERGROUP_H
00028
00029 #include "WP6VariableLengthGroup.h"
00030
00031 class WP6CharacterGroup_SetAlignmentCharacterSubGroup: public WP6VariableLengthGroup_SubGroup
00032 {
00033 public:
00034 WP6CharacterGroup_SetAlignmentCharacterSubGroup(WPXInputStream *input);
00035 virtual void parse(WP6Listener *listener, const uint8_t numPrefixIDs, uint16_t const *prefixIDs) const;
00036
00037 private:
00038 uint8_t m_character;
00039 uint8_t m_characterSet;
00040 };
00041
00042 class WP6CharacterGroup_ColorSubGroup: public WP6VariableLengthGroup_SubGroup
00043 {
00044 public:
00045 WP6CharacterGroup_ColorSubGroup(WPXInputStream *input);
00046 virtual void parse(WP6Listener *listener, const uint8_t numPrefixIDs, uint16_t const *prefixIDs) const;
00047
00048 private:
00049 uint8_t m_red;
00050 uint8_t m_green;
00051 uint8_t m_blue;
00052 };
00053
00054 class WP6CharacterGroup_CharacterShadingChangeSubGroup: public WP6VariableLengthGroup_SubGroup
00055 {
00056 public:
00057 WP6CharacterGroup_CharacterShadingChangeSubGroup(WPXInputStream *input);
00058 virtual void parse(WP6Listener *listener, const uint8_t numPrefixIDs, uint16_t const *prefixIDs) const;
00059
00060 private:
00061 uint8_t m_shading;
00062 };
00063
00064 class WP6CharacterGroup_FontFaceChangeSubGroup : public WP6VariableLengthGroup_SubGroup
00065 {
00066 public:
00067 WP6CharacterGroup_FontFaceChangeSubGroup(WPXInputStream *input);
00068 virtual void parse(WP6Listener *listener, const uint8_t numPrefixIDs, uint16_t const *prefixIDs) const;
00069
00070 private:
00071 uint16_t m_oldMatchedPointSize;
00072 uint16_t m_hash;
00073 uint16_t m_matchedFontIndex;
00074 uint16_t m_matchedFontPointSize;
00075 };
00076
00077 class WP6CharacterGroup_SetDotLeaderCharactersSubGroup: public WP6VariableLengthGroup_SubGroup
00078 {
00079 public:
00080 WP6CharacterGroup_SetDotLeaderCharactersSubGroup(WPXInputStream *input);
00081 virtual void parse(WP6Listener *listener, const uint8_t numPrefixIDs, uint16_t const *prefixIDs) const;
00082
00083 private:
00084 uint8_t m_character;
00085 uint8_t m_characterSet;
00086 uint8_t m_numberOfSpaces;
00087 };
00088
00089 class WP6CharacterGroup_ParagraphNumberOnSubGroup : public WP6VariableLengthGroup_SubGroup
00090 {
00091 public:
00092 WP6CharacterGroup_ParagraphNumberOnSubGroup(WPXInputStream *input);
00093 virtual void parse(WP6Listener *listener, const uint8_t numPrefixIDs, uint16_t const *prefixIDs) const;
00094
00095 private:
00096 uint16_t m_outlineHash;
00097 uint8_t m_level;
00098 uint8_t m_flag;
00099 };
00100
00101 class WP6CharacterGroup_TableDefinitionOnSubGroup : public WP6VariableLengthGroup_SubGroup
00102 {
00103 public:
00104 WP6CharacterGroup_TableDefinitionOnSubGroup(WPXInputStream *input);
00105 virtual void parse(WP6Listener *listener, const uint8_t numPrefixIDs, uint16_t const *prefixIDs) const;
00106
00107 private:
00108 uint8_t m_flags;
00109 uint8_t m_position;
00110 uint16_t m_leftOffset;
00111 };
00112
00113 class WP6CharacterGroup_TableDefinitionOffSubGroup : public WP6VariableLengthGroup_SubGroup
00114 {
00115 public:
00116 WP6CharacterGroup_TableDefinitionOffSubGroup(WPXInputStream *input);
00117 virtual void parse(WP6Listener *listener, const uint8_t numPrefixIDs, uint16_t const *prefixIDs) const;
00118
00119 private:
00120
00121 };
00122
00123 class WP6CharacterGroup_TableColumnSubGroup : public WP6VariableLengthGroup_SubGroup
00124 {
00125 public:
00126 WP6CharacterGroup_TableColumnSubGroup(WPXInputStream *input);
00127 virtual void parse(WP6Listener *listener, const uint8_t numPrefixIDs, uint16_t const *prefixIDs) const;
00128
00129 private:
00130 uint8_t m_flags;
00131 uint16_t m_width;
00132 uint16_t m_leftGutter;
00133 uint16_t m_rigthGutter;
00134 uint32_t m_attributes;
00135 uint8_t m_alignment;
00136 uint16_t m_absPosFromRight;
00137 uint16_t m_numberType;
00138 uint8_t m_currencyIndex;
00139 };
00140
00141 class WP6CharacterGroup : public WP6VariableLengthGroup
00142 {
00143 public:
00144 WP6CharacterGroup(WPXInputStream *input);
00145 virtual ~WP6CharacterGroup();
00146 virtual void _readContents(WPXInputStream *input);
00147 virtual void parse(WP6Listener *listener);
00148
00149 private:
00150 WP6VariableLengthGroup_SubGroup *m_subGroupData;
00151
00152 };
00153
00154 #endif