27 #ifndef LIBWPD_INTERNAL_H
28 #define LIBWPD_INTERNAL_H
33 #include <librevenge/librevenge.h>
34 #include <librevenge-stream/librevenge-stream.h>
42 #define LIBWPD_MIN min
43 #define LIBWPD_MAX max
45 #define LIBWPD_MIN std::min
46 #define LIBWPD_MAX std::max
49 #define WPD_CHECK_FILE_ERROR(v) if (v==EOF) { WPD_DEBUG_MSG(("X_CheckFileError: %d\n", __LINE__)); throw FileException(); }
50 #define WPD_CHECK_FILE_SEEK_ERROR(v) if (v) { WPD_DEBUG_MSG(("X_CheckFileSeekError: %d\n", __LINE__)); throw FileException(); }
51 #define WPD_CHECK_FILE_READ_ERROR(v,num_elements) if (v != num_elements) { WPD_DEBUG_MSG(("X_CheckFileReadElementError: %d\n", __LINE__)); throw FileException(); }
53 #define DELETEP(m) if (m) { delete m; m = 0; }
56 #define WPD_DEBUG_MSG(M) printf M
58 #define WPD_DEBUG_MSG(M)
61 #define WPD_NUM_ELEMENTS(array) sizeof(array)/sizeof(array[0])
66 unsigned short readU16(librevenge::RVNGInputStream *input,
WPXEncryption *encryption,
bool bigendian=
false);
67 signed short readS16(librevenge::RVNGInputStream *input,
WPXEncryption *encryption,
bool bigendian=
false);
68 unsigned readU32(librevenge::RVNGInputStream *input,
WPXEncryption *encryption,
bool bigendian=
false);
73 void appendUCS4(librevenge::RVNGString &str,
unsigned ucs4);
78 const unsigned **chars);
81 const unsigned **chars);
114 #define WPX_EXTRA_LARGE_BIT 1
115 #define WPX_VERY_LARGE_BIT 2
116 #define WPX_LARGE_BIT 4
117 #define WPX_SMALL_PRINT_BIT 8
118 #define WPX_FINE_PRINT_BIT 16
119 #define WPX_SUPERSCRIPT_BIT 32
120 #define WPX_SUBSCRIPT_BIT 64
121 #define WPX_OUTLINE_BIT 128
122 #define WPX_ITALICS_BIT 256
123 #define WPX_SHADOW_BIT 512
124 #define WPX_REDLINE_BIT 1024
125 #define WPX_DOUBLE_UNDERLINE_BIT 2048
126 #define WPX_BOLD_BIT 4096
127 #define WPX_STRIKEOUT_BIT 8192
128 #define WPX_UNDERLINE_BIT 16384
129 #define WPX_SMALL_CAPS_BIT 32768
130 #define WPX_BLINK_BIT 65536
131 #define WPX_REVERSEVIDEO_BIT 131072
134 #define WPX_PARAGRAPH_JUSTIFICATION_LEFT 0x00
135 #define WPX_PARAGRAPH_JUSTIFICATION_FULL 0x01
136 #define WPX_PARAGRAPH_JUSTIFICATION_CENTER 0x02
137 #define WPX_PARAGRAPH_JUSTIFICATION_RIGHT 0x03
138 #define WPX_PARAGRAPH_JUSTIFICATION_FULL_ALL_LINES 0x04
139 #define WPX_PARAGRAPH_JUSTIFICATION_DECIMAL_ALIGNED 0x05
142 #define WPX_TABLE_POSITION_ALIGN_WITH_LEFT_MARGIN 0x00
143 #define WPX_TABLE_POSITION_ALIGN_WITH_RIGHT_MARGIN 0x01
144 #define WPX_TABLE_POSITION_CENTER_BETWEEN_MARGINS 0x02
145 #define WPX_TABLE_POSITION_FULL 0x03
146 #define WPX_TABLE_POSITION_ABSOLUTE_FROM_LEFT_MARGIN 0x04
155 #define WPX_PAGE_BREAK 0x00
156 #define WPX_SOFT_PAGE_BREAK 0x01
157 #define WPX_COLUMN_BREAK 0x02
160 #define WPX_LEFT 0x00
161 #define WPX_RIGHT 0x01
162 #define WPX_CENTER 0x02
164 #define WPX_BOTTOM 0x04
169 _RGBSColor(
unsigned char r,
unsigned char g,
unsigned char b,
unsigned char s);
170 _RGBSColor(
unsigned short red,
unsigned short green,
unsigned short blue);
WPXNumberingType
Definition: libwpd_internal.h:92
Definition: libwpd_internal.h:95
double m_leftGutter
Definition: libwpd_internal.h:184
Definition: libwpd_internal.h:109
unsigned char readU8(librevenge::RVNGInputStream *input, WPXEncryption *encryption)
Definition: libwpd_internal.cpp:86
Definition: libwpd_internal.h:91
Definition: libwpd_internal.h:98
Definition: libwpd_internal.h:97
unsigned m_leaderCharacter
Definition: libwpd_internal.h:202
Definition: libwpd_internal.h:100
WPXHeaderFooterInternalType
Definition: libwpd_internal.h:95
unsigned short readU16(librevenge::RVNGInputStream *input, WPXEncryption *encryption, bool bigendian=false)
Definition: libwpd_internal.cpp:99
int extendedCharacterWP5ToUCS4(unsigned char character, unsigned char characterSet, const unsigned **chars)
Definition: libwpd_internal.cpp:1000
Definition: libwpd_internal.h:96
Definition: libwpd_internal.h:95
unsigned char m_alignment
Definition: libwpd_internal.h:193
librevenge::RVNGString readCString(librevenge::RVNGInputStream *input, WPXEncryption *encryption)
Definition: libwpd_internal.cpp:166
WPXTextColumnType
Definition: libwpd_internal.h:109
const unsigned char WPX_TABLE_CELL_BOTTOM_BORDER_OFF
Definition: libwpd_internal.h:152
Definition: libwpd_internal.h:109
double m_position
Definition: libwpd_internal.h:200
unsigned char m_g
Definition: libwpd_internal.h:174
double m_rightGutter
Definition: libwpd_internal.h:185
Definition: libwpd_internal.h:93
WPXHeaderFooterOccurrence
Definition: libwpd_internal.h:96
_RGBSColor()
Definition: libwpd_internal.cpp:1174
librevenge::RVNGString _numberingTypeToString(WPXNumberingType t)
Definition: libwpd_internal.cpp:1305
Definition: libwpd_internal.h:94
Definition: libwpd_internal.h:228
_WPXColumnDefinition()
Definition: libwpd_internal.cpp:1198
WPXTabAlignment m_alignment
Definition: libwpd_internal.h:201
Definition: libwpd_internal.h:102
Definition: libwpd_internal.h:106
WPXFileType
Definition: libwpd_internal.h:91
int appleWorldScriptToUCS4(unsigned short character, const unsigned **chars)
Definition: libwpd_internal.cpp:1391
WPXSubDocumentType
Definition: libwpd_internal.h:111
double wpuToFontPointSize(const unsigned short wpuNumber)
Definition: libwpd_internal.cpp:1161
Definition: libwpd_internal.h:101
Definition: libwpd_internal.h:91
WPXTabAlignment
Definition: libwpd_internal.h:106
Definition: libwpd_internal.h:95
Definition: libwpd_internal.h:167
Definition: libwpd_internal.h:111
unsigned short fixedPointToWPUs(const unsigned fixedPointNumber)
Definition: libwpd_internal.cpp:1146
_WPXTabStop()
Definition: libwpd_internal.cpp:1190
int _extractNumericValueFromRoman(const char romanChar)
Definition: libwpd_internal.cpp:1212
Definition: libwpd_internal.h:232
Definition: libwpd_internal.h:96
Definition: libwpd_internal.h:92
Definition: libwpd_internal.h:99
Definition: libwpd_internal.h:92
Definition: libwpd_internal.h:105
signed short readS16(librevenge::RVNGInputStream *input, WPXEncryption *encryption, bool bigendian=false)
Definition: libwpd_internal.cpp:114
Definition: libwpd_internal.h:212
Definition: libwpd_internal.h:106
Definition: libwpd_internal.h:197
int extendedCharacterWP6ToUCS4(unsigned char character, unsigned char characterSet, const unsigned **chars)
Definition: libwpd_internal.cpp:642
Definition: libwpd_internal.h:111
Definition: libwpd_internal.h:96
Definition: libwpd_internal.h:92
Definition: libwpd_internal.h:216
Definition: libwpd_internal.h:92
Definition: libwpd_internal.h:224
Definition: libwpd_internal.h:105
Definition: libwpd_internal.h:107
int _extractDisplayReferenceNumberFromBuf(const librevenge::RVNGString &buf, const WPXNumberingType listType)
Definition: libwpd_internal.cpp:1239
librevenge::RVNGString doubleToString(const double value)
Definition: libwpd_internal.cpp:1367
WPXFormOrientation
Definition: libwpd_internal.h:105
Definition: libwpd_internal.h:98
Definition: libwpd_internal.h:97
unsigned char m_r
Definition: libwpd_internal.h:173
Definition: libwpd_internal.h:107
const unsigned macRomanCharacterMap[]
Definition: libwpd_internal.cpp:1335
double m_width
Definition: libwpd_internal.h:183
Definition: libwpd_internal.h:92
unsigned char m_leaderNumSpaces
Definition: libwpd_internal.h:203
Definition: libwpd_internal.h:109
const unsigned char WPX_TABLE_CELL_TOP_BORDER_OFF
Definition: libwpd_internal.h:151
double fixedPointToDouble(const unsigned fixedPointNumber)
Definition: libwpd_internal.cpp:1154
WPXVerticalAlignment
Definition: libwpd_internal.h:107
Definition: libwpd_internal.h:106
Definition: libwpd_internal.h:100
Definition: libwpd_internal.h:106
Definition: libwpd_internal.h:111
Definition: libwpd_internal.h:106
Definition: WPXEncryption.h:33
unsigned m_attributes
Definition: libwpd_internal.h:192
Definition: libwpd_internal.h:99
Definition: libwpd_internal.h:96
Definition: libwpd_internal.h:220
Definition: libwpd_internal.h:91
WPXPageNumberPosition
Definition: libwpd_internal.h:97
Definition: libwpd_internal.h:91
Definition: libwpd_internal.h:97
void appendUCS4(librevenge::RVNGString &str, unsigned ucs4)
Definition: libwpd_internal.cpp:134
unsigned readU32(librevenge::RVNGInputStream *input, WPXEncryption *encryption, bool bigendian=false)
Definition: libwpd_internal.cpp:119
Definition: libwpd_internal.h:107
unsigned char m_b
Definition: libwpd_internal.h:175
const unsigned char WPX_TABLE_CELL_RIGHT_BORDER_OFF
Definition: libwpd_internal.h:150
unsigned char m_s
Definition: libwpd_internal.h:176
Definition: libwpd_internal.h:93
Definition: libwpd_internal.h:208
Definition: libwpd_internal.h:95
_WPXColumnProperties()
Definition: libwpd_internal.cpp:1205
const unsigned char WPX_TABLE_CELL_LEFT_BORDER_OFF
Definition: libwpd_internal.h:149
Definition: libwpd_internal.h:180
WPXHeaderFooterType
Definition: libwpd_internal.h:94
librevenge::RVNGString readPascalString(librevenge::RVNGInputStream *input, WPXEncryption *encryption)
Definition: libwpd_internal.cpp:145
Definition: libwpd_internal.h:109
int extendedCharacterWP42ToUCS4(unsigned char character, const unsigned **chars)
Definition: libwpd_internal.cpp:1133
Definition: libwpd_internal.h:95
WPXNumberingType _extractWPXNumberingTypeFromBuf(const librevenge::RVNGString &buf, const WPXNumberingType putativeWPXNumberingType)
Definition: libwpd_internal.cpp:1285
Definition: libwpd_internal.h:107
Definition: libwpd_internal.h:111
Definition: libwpd_internal.h:189
WPXNoteType
Definition: libwpd_internal.h:93
Definition: libwpd_internal.h:94
Definition: libwpd_internal.h:111