WP6FileStructure.h
Go to the documentation of this file.
00001 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
00002 /* libwpd
00003  * Version: MPL 2.0 / LGPLv2.1+
00004  *
00005  * This Source Code Form is subject to the terms of the Mozilla Public
00006  * License, v. 2.0. If a copy of the MPL was not distributed with this
00007  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
00008  *
00009  * Major Contributor(s):
00010  * Copyright (C) 2002 William Lachance (wrlach@gmail.com)
00011  * Copyright (C) 2002-2003 Marc Maurer (uwog@uwog.net)
00012  *
00013  * For minor contributions see the git repository.
00014  *
00015  * Alternatively, the contents of this file may be used under the terms
00016  * of the GNU Lesser General Public License Version 2.1 or later
00017  * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
00018  * applicable instead of those above.
00019  *
00020  * For further information visit http://libwpd.sourceforge.net
00021  */
00022 
00023 /* "This product is not manufactured, approved, or supported by
00024  * Corel Corporation or Corel Corporation Limited."
00025  */
00026 
00027 #ifndef WP6FILESTRUCTURE_H
00028 #define WP6FILESTRUCTURE_H
00029 
00030 #include "libwpd_internal.h"
00031 
00032 // size of the fixed length functiongroups 0xF0 to 0xFF
00033 extern uint8_t WP6_FIXED_LENGTH_FUNCTION_GROUP_SIZE[16];
00034 
00035 /* standard sizes */
00036 #define WP6_NUM_LIST_LEVELS 8
00037 
00038 /* header defines */
00039 #define WP6_HEADER_DOCUMENT_SIZE_OFFSET 20
00040 #define WP6_HEADER_INDEX_HEADER_POINTER_OFFSET 14
00041 
00042 #define WP6_EXPECTED_MAJOR_VERSION 2
00043 #define WP6_DOCUMENT_FILE_TYPE 10
00044 
00045 /* index header information */
00046 
00047 #define WP6_INDEX_HEADER_NUM_INDICES_POSITION 2
00048 #define WP6_INDEX_HEADER_INDICES_POSITION 14
00049 #define WP6_INDEX_HEADER_ELEMENT_CHILD_PACKET_BIT 1
00050 
00051 #define WP6_INDEX_HEADER_DOCUMENT_SETTINGS_DESCRIPTOR_POOL 0x02
00052 #define WP6_INDEX_HEADER_GENERAL_WORDPERFECT_TEXT 0x08
00053 #define WP6_INDEX_HEADER_NEXT_TOTAL_PAGE_COUNT_DESCRIPTOR_POOL 0x10
00054 #define WP6_INDEX_HEADER_COMMENT_ANNOTATION 0x1B
00055 #define WP6_INDEX_HEADER_PRINTER_SELECTION_DESCRIPTOR_POOL 0x23
00056 #define WP6_INDEX_HEADER_INITIAL_FONT 0x25
00057 #define WP6_INDEX_HEADER_SYLE_DATA_DESCRIPTOR_POOL 0x30
00058 #define WP6_INDEX_HEADER_SHARED_PERSONAL_FILE_DATES_DESCRIPTOR_POOL 0x34
00059 #define WP6_INDEX_HEADER_GRAPHICS_FILENAME 0x40
00060 #define WP6_INDEX_HEADER_GRAPHICS_BOX_STYLE 0x41
00061 #define WP6_INDEX_HEADER_FILL_STYLE 0x43
00062 #define WP6_INDEX_HEADER_CHECK_AS_YOU_GO_DESCRIPTOR_POOL 0x4E
00063 #define WP6_INDEX_HEADER_DESIRED_FONT_DESCRIPTOR_POOL 0x55
00064 #define WP6_INDEX_HEADER_PREFIX_TIME_STAMP_DESCRIPTOR_POOL 0x5E
00065 #define WP6_INDEX_HEADER_TABLE_STYLE 0x69
00066 #define WP6_INDEX_HEADER_GRAPHICS_CACHED_FILE_DATA 0x6F
00067 #define WP6_INDEX_HEADER_UNDO_INFORMATION_DESCRIPTOR_POOL 0x77 /* WordPerfect 6.1 */
00068 #define WP6_INDEX_HEADER_WORLD_WIDE_WEB_DESCRIPTOR_POOL 0x6D
00069 
00070 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY 0x12
00071 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_AUTHOR 5
00072 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_SUBJECT 46
00073 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_PUBLISHER 33
00074 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_CATEGORY 10
00075 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_KEYWORDS 26
00076 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_LANGUAGE 27
00077 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_ABSTRACT 1
00078 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_DESCRIPTIVE_NAME 17
00079 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_DESCRIPTIVE_TYPE 18
00080 
00081 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_CREATION_DATE 0x0E
00082 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_DATE_COMPLETED 0x0F
00083 
00084 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_ACCOUNT 2
00085 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_ADDRESS 3
00086 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_ATTACHMENTS 4
00087 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_AUTHORIZATION 6
00088 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_BILL_TO 7
00089 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_BLIND_COPY 8
00090 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_CARBON_COPY 9
00091 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_CHECKED_BY 11
00092 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_CLIENT 12
00093 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_COMMENTS 13
00094 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_DEPARTMENT 16
00095 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_DESTINATION 19
00096 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_DISPOSITION 20
00097 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_DIVISION 21
00098 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_DOCUMENT_NUMBER 22
00099 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_EDITOR 23
00100 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_FORWARD_TO 24
00101 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_GROUP 25
00102 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_MAIL_STOP 28
00103 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_MATTER 29
00104 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_OFFICE 30
00105 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_OWNER 31
00106 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_PROJECT 32
00107 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_PURPOSE 34
00108 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_RECEIVED_FROM 35
00109 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_RECORDED_BY 36
00110 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_RECORDED_DATE 37
00111 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_REFERENCE 38
00112 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_REVISION_DATE 39 /* unused and blank */
00113 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_REVISION_NOTES 40
00114 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_REVISION_NUMBER 41
00115 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_SECTION 42
00116 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_SECURITY 43
00117 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_SOURCE 44
00118 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_STATUS 45
00119 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_TELEPHONE_NUMBER 47
00120 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_TYPIST 48
00121 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_VERSION_DATE 49
00122 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_VERSION_NOTES 50
00123 #define WP6_INDEX_HEADER_EXTENDED_DOCUMENT_SUMMARY_VERSION_NUMBER 51
00124 
00125 #define WP6_INDEX_HEADER_OUTLINE_STYLE 0x31
00126 #define WP6_INDEX_HEADER_OUTLINE_STYLE_ARABIC_NUMBERING 0
00127 #define WP6_INDEX_HEADER_OUTLINE_STYLE_LOWERCASE_NUMBERING 1
00128 #define WP6_INDEX_HEADER_OUTLINE_STYLE_UPPERCASE_NUMBERING 2
00129 #define WP6_INDEX_HEADER_OUTLINE_STYLE_LOWERCASE_ROMAN_NUMBERING 3
00130 #define WP6_INDEX_HEADER_OUTLINE_STYLE_UPPERCASE_ROMAN_NUMBERING 4
00131 
00132 #define WP6_VARIABLE_GROUP_PREFIX_ID_BIT 128 /* bit 7 */
00133 
00134 /* Main function group list  */
00135 
00136 #define WP6_TOP_SOFT_SPACE 0x80
00137 #define WP6_TOP_HARD_SPACE 0x81
00138 #define WP6_TOP_SOFT_HYPHEN_IN_LINE 0x82
00139 #define WP6_TOP_SOFT_HYPHEN_AT_EOL 0x83
00140 #define WP6_TOP_HARD_HYPHEN 0x84
00141 #define WP6_TOP_AUTO_HYPHEN 0x85
00142 #define WP6_TOP_DORMANT_HARD_RETURN 0x87
00143 
00144 #define WP6_TOP_DELETABLE_HARD_EOP 0xB4
00145 #define WP6_TOP_DELETABLE_HARD_EOC_AT_EOP 0xB5
00146 #define WP6_TOP_DELETABLE_HARD_EOC 0xB6
00147 #define WP6_TOP_DELETABLE_HARD_EOL_AT_EOC_AT_EOP 0xB7
00148 #define WP6_TOP_DELETABLE_HARD_EOL_AT_EOC 0xB8
00149 #define WP6_TOP_DELETABLE_HARD_EOL 0xB9
00150 #define WP6_TOP_DELETABLE_SOFT_EOL_AT_EOC_AT_EOP 0xBA
00151 #define WP6_TOP_DELETABLE_SOFT_EOL_AT_EOC 0xBB
00152 #define WP6_TOP_DELETABLE_SOFT_EOL 0xBC
00153 
00154 #define WP6_TOP_TABLE_OFF_AT_EOC_AT_EOP 0xBD
00155 #define WP6_TOP_TABLE_OFF_AT_EOC 0xBE
00156 #define WP6_TOP_TABLE_OFF 0xBF
00157 #define WP6_TOP_TABLE_ROW_AT_HARD_EOP 0xC0
00158 #define WP6_TOP_TABLE_ROW_AT_HARD_EOC_AT_HARD_EOP 0xC1
00159 #define WP6_TOP_TABLE_ROW_AT_HARD_EOC 0xC2
00160 #define WP6_TOP_TABLE_ROW_AT_EOC_AT_EOP 0xC3
00161 #define WP6_TOP_TABLE_ROW_AT_EOC 0xC4
00162 #define WP6_TOP_TABLE_ROW 0xC5
00163 #define WP6_TOP_TABLE_CELL 0xC6
00164 
00165 #define WP6_TOP_HARD_EOP 0xC7
00166 #define WP6_TOP_HARD_EOC_AT_EOP 0xC8
00167 #define WP6_TOP_HARD_EOC 0xC9
00168 #define WP6_TOP_HARD_EOL_AT_EOC_AT_EOP 0xCA
00169 #define WP6_TOP_HARD_EOL_AT_EOC 0xCB
00170 #define WP6_TOP_HARD_EOL 0xCC
00171 #define WP6_TOP_SOFT_EOL_AT_EOC_AT_EOP 0xCD
00172 #define WP6_TOP_SOFT_EOL_AT_EOC 0xCE
00173 #define WP6_TOP_SOFT_EOL 0xCF
00174 
00175 #define WP6_TOP_EOL_GROUP 0xD0
00176 #define WP6_TOP_PAGE_GROUP 0xD1
00177 #define WP6_TOP_COLUMN_GROUP 0xD2
00178 #define WP6_TOP_PARAGRAPH_GROUP 0xD3
00179 #define WP6_TOP_CHARACTER_GROUP 0xD4
00180 #define WP6_TOP_CROSSREFERENCE_GROUP 0xD5
00181 #define WP6_TOP_HEADER_FOOTER_GROUP 0xD6
00182 #define WP6_TOP_FOOTNOTE_ENDNOTE_GROUP 0xD7
00183 #define WP6_TOP_SET_NUMBER_GROUP 0xD8
00184 #define WP6_TOP_NUMBERING_METHOD_GROUP 0xD9
00185 #define WP6_TOP_DISPLAY_NUMBER_REFERENCE_GROUP 0xDA
00186 #define WP6_TOP_INCREMENT_NUMBER_GROUP 0xDB
00187 #define WP6_TOP_DECREMENT_NUMBER_GROUP 0xDC
00188 #define WP6_TOP_STYLE_GROUP 0xDD
00189 #define WP6_TOP_MERGE_GROUP 0xDE
00190 #define WP6_TOP_BOX_GROUP 0xDF
00191 #define WP6_TOP_TAB_GROUP 0xE0
00192 #define WP6_TOP_PLATFORM_GROUP 0xE1
00193 #define WP6_TOP_FORMATTER_GROUP 0xE2
00194 
00195 #define WP6_TOP_EXTENDED_CHARACTER 0xF0
00196 #define WP6_TOP_UNDO_GROUP 0xF1
00197 #define WP6_TOP_ATTRIBUTE_ON 0xF2
00198 #define WP6_TOP_ATTRIBUTE_OFF 0xF3
00199 #define WP6_TOP_HIGHLIGHT_ON 0xFB
00200 #define WP6_TOP_HIGHLIGHT_OFF 0xFC
00201 
00202 /* Page Group */
00203 #define WP6_PAGE_GROUP_TOP_MARGIN_SET 0x00
00204 #define WP6_PAGE_GROUP_BOTTOM_MARGIN_SET 0x01
00205 #define WP6_PAGE_GROUP_SUPPRESS_PAGE_CHARACTERISTICS 0x02
00206 #define WP6_PAGE_GROUP_PAGE_NUMBER_POSITION 0x03
00207 #define WP6_PAGE_GROUP_FORM 0x11
00208 
00209 // breaking style here so our symbols aren't (as) ridiculously long
00210 #define WP6_PAGE_GROUP_SUPPRESS_PAGE_NUMBER 1
00211 #define WP6_PAGE_GROUP_SUPPRESS_CURRENT_PAGE_NUMBERING_AND_PRINT_NUMBER_AT_BOTTOM_CENTER 2
00212 #define WP6_PAGE_GROUP_SUPPRESS_HEADER_A 4
00213 #define WP6_PAGE_GROUP_SUPPRESS_HEADER_B 8
00214 #define WP6_PAGE_GROUP_SUPPRESS_FOOTER_A 16
00215 #define WP6_PAGE_GROUP_SUPPRESS_FOOTER_B 32
00216 #define WP6_PAGE_GROUP_SUPPRESS_WATERMARK_A 64
00217 #define WP6_PAGE_GROUP_SUPPRESS_WATERMARK_B 128
00218 
00219 /* EOL Group */
00220 #define WP6_EOL_GROUP_SOFT_EOL 0x01
00221 #define WP6_EOL_GROUP_SOFT_EOC 0x02
00222 #define WP6_EOL_GROUP_SOFT_EOC_AT_EOP 0x03
00223 #define WP6_EOL_GROUP_HARD_EOL 0x04
00224 #define WP6_EOL_GROUP_HARD_EOL_AT_EOC 0x05
00225 #define WP6_EOL_GROUP_HARD_EOL_AT_EOP 0x06
00226 #define WP6_EOL_GROUP_HARD_EOC 0x07
00227 #define WP6_EOL_GROUP_HARD_EOC_AT_EOP 0x08
00228 #define WP6_EOL_GROUP_HARD_EOP 0x09
00229 #define WP6_EOL_GROUP_TABLE_CELL 0x0A
00230 #define WP6_EOL_GROUP_TABLE_ROW_AND_CELL 0x0B
00231 #define WP6_EOL_GROUP_TABLE_ROW_AT_EOC 0x0C
00232 #define WP6_EOL_GROUP_TABLE_ROW_AT_EOP 0x0D
00233 #define WP6_EOL_GROUP_TABLE_ROW_AT_HARD_EOC 0x0E
00234 #define WP6_EOL_GROUP_TABLE_ROW_AT_HARD_EOC_AT_HARD_EOP 0x0F
00235 #define WP6_EOL_GROUP_TABLE_ROW_AT_HARD_EOP 0x10
00236 #define WP6_EOL_GROUP_TABLE_OFF 0x11
00237 #define WP6_EOL_GROUP_TABLE_OFF_AT_EOC 0x12
00238 #define WP6_EOL_GROUP_TABLE_OFF_AT_EOC_AT_EOP 0x13
00239 #define WP6_EOL_GROUP_DELETABLE_SOFT_EOL 0x14
00240 #define WP6_EOL_GROUP_DELETABLE_SOFT_EOC 0x15
00241 #define WP6_EOL_GROUP_DELETABLE_SOFT_EOC_AT_EOP 0x16
00242 #define WP6_EOL_GROUP_DELETABLE_HARD_EOL 0x17
00243 #define WP6_EOL_GROUP_DELETABLE_HARD_EOL_AT_EOC 0x18
00244 #define WP6_EOL_GROUP_DELETABLE_HARD_EOL_AT_EOP 0x19
00245 #define WP6_EOL_GROUP_DELETABLE_HARD_EOC 0x1A
00246 #define WP6_EOL_GROUP_DELETABLE_HARD_EOC_AT_EOP 0x1B
00247 #define WP6_EOL_GROUP_DELETABLE_HARD_EOP 0x1C
00248 #define WP6_EOL_GROUP_ROW_INFORMATION 128
00249 #define WP6_EOL_GROUP_ROW_INFORMATION_SIZE 5
00250 #define WP6_EOL_GROUP_CELL_FORMULA 129 // cell_formula size is variable
00251 #define WP6_EOL_GROUP_TOP_GUTTER_SPACING 130
00252 #define WP6_EOL_GROUP_TOP_GUTTER_SPACING_SIZE 4
00253 #define WP6_EOL_GROUP_BOTTOM_GUTTER_SPACING 131
00254 #define WP6_EOL_GROUP_BOTTOM_GUTTER_SPACING_SIZE 4
00255 #define WP6_EOL_GROUP_CELL_INFORMATION 132
00256 #define WP6_EOL_GROUP_CELL_INFORMATION_SIZE 9
00257 #define WP6_EOL_GROUP_CELL_SPANNING_INFORMATION 133
00258 #define WP6_EOL_GROUP_CELL_SPANNING_INFORMATION_SIZE 4
00259 #define WP6_EOL_GROUP_CELL_FILL_COLORS 134
00260 #define WP6_EOL_GROUP_CELL_FILL_COLORS_SIZE 10
00261 #define WP6_EOL_GROUP_CELL_LINE_COLOR 135
00262 #define WP6_EOL_GROUP_CELL_LINE_COLOR_SIZE 6
00263 #define WP6_EOL_GROUP_CELL_NUMBER_TYPE 136
00264 #define WP6_EOL_GROUP_CELL_NUMBER_TYPE_SIZE 6
00265 #define WP6_EOL_GROUP_CELL_FLOATING_POINT_NUMBER 137
00266 #define WP6_EOL_GROUP_CELL_FLOATING_POINT_NUMBER_SIZE 11
00267 #define WP6_EOL_GROUP_CELL_PREFIX_FLAG 139
00268 #define WP6_EOL_GROUP_CELL_PREFIX_FLAG_SIZE 3
00269 #define WP6_EOL_GROUP_CELL_RECALCULATION_ERROR_NUMBER 140
00270 #define WP6_EOL_GROUP_CELL_RECALCULATION_ERROR_NUMBER_SIZE 3
00271 #define WP6_EOL_GROUP_DONT_END_A_PARAGRAPH_STYLE_FOR_THIS_HARD_RETURN 141
00272 #define WP6_EOL_GROUP_DONT_END_A_PARAGRAPH_STYLE_FOR_THIS_HARD_RETURN_SIZE 1
00273 
00274 /* Style Group */
00275 #define WP6_STYLE_GROUP_PARASTYLE_BEGIN_ON_PART1 0x04
00276 #define WP6_STYLE_GROUP_PARASTYLE_BEGIN_OFF_PART1 0x05
00277 #define WP6_STYLE_GROUP_PARASTYLE_BEGIN_ON_PART2 0x06
00278 #define WP6_STYLE_GROUP_PARASTYLE_BEGIN_OFF_PART2 0x07
00279 #define WP6_STYLE_GROUP_PARASTYLE_END_ON 0x08
00280 #define WP6_STYLE_GROUP_PARASTYLE_END_OFF 0x09
00281 #define WP6_STYLE_GROUP_GLOBAL_ON 0x0A
00282 #define WP6_STYLE_GROUP_GLOBAL_OFF 0x0B
00283 
00284 #define WP6_SYSTEM_STYLE_FOOTNOTE 36
00285 #define WP6_SYSTEM_STYLE_ENDNOTE 37
00286 
00287 /* Paragraph Group */
00288 #define WP6_PARAGRAPH_GROUP_LINE_SPACING 0x01
00289 #define WP6_PARAGRAPH_GROUP_TAB_SET 0x04
00290 #define WP6_PARAGRAPH_GROUP_JUSTIFICATION 0x05
00291 #define WP6_PARAGRAPH_GROUP_SPACING_AFTER_PARAGRAPH 0x0A
00292 #define WP6_PARAGRAPH_GROUP_INDENT_FIRST_LINE_OF_PARAGRAPH 0x0B
00293 #define WP6_PARAGRAPH_GROUP_LEFT_MARGIN_ADJUSTMENT 0x0C
00294 #define WP6_PARAGRAPH_GROUP_RIGHT_MARGIN_ADJUSTMENT 0x0D
00295 #define WP6_PARAGRAPH_GROUP_OUTLINE_DEFINE 0x0E
00296 #define WP6_PARAGRAPH_GROUP_OUTLINE_DEFINE_BULLETED_NUMBERING 0
00297 #define WP6_PARAGRAPH_GROUP_OUTLINE_DEFINE_ARABIC_NUMBERING 256
00298 #define WP6_PARAGRAPH_GROUP_OUTLINE_DEFINE_LOWERCASE_NUMBERING 3
00299 #define WP6_PARAGRAPH_GROUP_OUTLINE_DEFINE_LOWERCASE_ROMAN_NUMBERING 769
00300 
00301 #define WP6_PARAGRAPH_JUSTIFICATION_LEFT 0x00
00302 #define WP6_PARAGRAPH_JUSTIFICATION_FULL 0x01
00303 #define WP6_PARAGRAPH_JUSTIFICATION_CENTER 0x02
00304 #define WP6_PARAGRAPH_JUSTIFICATION_RIGHT 0x03
00305 #define WP6_PARAGRAPH_JUSTIFICATION_FULL_ALL_LINES 0x04
00306 #define WP6_PARAGRAPH_JUSTIFICATION_RESERVED 0x05
00307 
00308 /* Character Group */
00309 #define WP6_CHARACTER_GROUP_SET_ALIGNMENT_CHARACTER 0x00
00310 #define WP6_CHARACTER_GROUP_COLOR 0x18
00311 #define WP6_CHARACTER_GROUP_CHARACTER_SHADING_CHANGE 0x19
00312 #define WP6_CHARACTER_GROUP_FONT_FACE_CHANGE 0x1A
00313 #define WP6_CHARACTER_GROUP_FONT_SIZE_CHANGE 0x1B
00314 #define WP6_CHARACTER_GROUP_COMMENT 0x1D
00315 #define WP6_CHARACTER_GROUP_SET_DOT_LEADER_CHARACTERS 0x1E
00316 #define WP6_CHARACTER_GROUP_PARAGRAPH_NUMBER_ON 0x32
00317 #define WP6_CHARACTER_GROUP_PARAGRAPH_NUMBER_OFF 0x33
00318 #define WP6_CHARACTER_GROUP_TABLE_DEFINITION_ON 0x2A
00319 #define WP6_CHARACTER_GROUP_TABLE_DEFINITION_OFF 0x2B
00320 #define WP6_CHARACTER_GROUP_TABLE_COLUMN 0x2C
00321 
00322 /* Footnote/endnote Group */
00323 #define WP6_FOOTNOTE_ENDNOTE_GROUP_FOOTNOTE_ON 0x00
00324 #define WP6_FOOTNOTE_ENDNOTE_GROUP_ENDNOTE_ON 0x02
00325 #define WP6_FOOTNOTE_ENDNOTE_GROUP_FOOTNOTE_OFF 0x01
00326 #define WP6_FOOTNOTE_ENDNOTE_GROUP_ENDNOTE_OFF 0x03
00327 
00328 /* Header/footer Group */
00329 #define WP6_HEADER_FOOTER_GROUP_HEADER_A 0x00
00330 #define WP6_HEADER_FOOTER_GROUP_HEADER_B 0x01
00331 #define WP6_HEADER_FOOTER_GROUP_FOOTER_A 0x02
00332 #define WP6_HEADER_FOOTER_GROUP_FOOTER_B 0x03
00333 #define WP6_HEADER_FOOTER_GROUP_WATERMARK_A 0x04
00334 #define WP6_HEADER_FOOTER_GROUP_WATERMARK_B 0x05
00335 
00336 #define WP6_HEADER_FOOTER_GROUP_ODD_BIT 0x01
00337 #define WP6_HEADER_FOOTER_GROUP_EVEN_BIT 0x02
00338 
00339 /* Set Number Functions */
00340 #define WP6_SET_NUMBER_GROUP_SET_USER_DEFINED_COUNTER 0x00
00341 #define WP6_SET_NUMBER_GROUP_SET_BOX_NUMBER 0x01
00342 #define WP6_SET_NUMBER_GROUP_SET_PAGE_NUMBER 0x02
00343 #define WP6_SET_NUMBER_GROUP_SET_SECONDARY_PAGE_NUMBER 0x03
00344 #define WP6_SET_NUMBER_GROUP_SET_CHAPTER_NUMBER 0x04
00345 #define WP6_SET_NUMBER_GROUP_SET_VOLUME_NUMBER 0x05
00346 #define WP6_SET_NUMBER_GROUP_SET_PARAGRAPH_NUMBER 0x06
00347 #define WP6_SET_NUMBER_GROUP_SET_FOOTNOTE_NUMBER 0x07
00348 #define WP6_SET_NUMBER_GROUP_SET_ENDNOTE_NUMBER 0x08
00349 #define WP6_SET_NUMBER_GROUP_SET_LINE_NUMBER 0x09
00350 
00351 /* Numbering Functions */
00352 
00353 #define WP6_NUMBERING_METHOD_GROUP_SET_USER_DEFINED_COUNTER_NUMBERING_MODE 0x00
00354 #define WP6_NUMBERING_METHOD_GROUP_SET_BOX_NUMBERING_MODE 0x01
00355 #define WP6_NUMBERING_METHOD_GROUP_SET_PAGE_NUMBERING_MODE 0x02
00356 #define WP6_NUMBERING_METHOD_GROUP_SET_SECONDARY_PAGE_NUMBERING_MODE 0x03
00357 #define WP6_NUMBERING_METHOD_GROUP_SET_CHAPTER_NUMBERING_MODE 0x04
00358 #define WP6_NUMBERING_METHOD_GROUP_SET_VOLUME_NUMBERING_MODE 0x05
00359 #define WP6_NUMBERING_METHOD_GROUP_SET_PARAGRAPH_NUMBERING_MODE 0x06
00360 #define WP6_NUMBERING_METHOD_GROUP_SET_FOOTNOTE_NUMBERING_MODE 0x07
00361 #define WP6_NUMBERING_METHOD_GROUP_SET_ENDNOTE_NUMBERING_MODE 0x08
00362 #define WP6_NUMBERING_METHOD_GROUP_SET_LINE_NUMBERING_MODE 0x09
00363 
00364 #define WP6_NUMBERING_METHOD_GROUP_PAGE_NUMBERING_ARABIC 0
00365 #define WP6_NUMBERING_METHOD_GROUP_PAGE_NUMBERING_LOWERCASE 1
00366 #define WP6_NUMBERING_METHOD_GROUP_PAGE_NUMBERING_UPPERCASE 2
00367 #define WP6_NUMBERING_METHOD_GROUP_PAGE_NUMBERING_LOWERCASE_ROMAN 3
00368 #define WP6_NUMBERING_METHOD_GROUP_PAGE_NUMBERING_UPPERCASE_ROMAN 4
00369 
00370 /* Display Number Functions */
00371 
00372 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_USER_DEFINED_NUMBER_DISPLAY_ON 0x00
00373 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_USER_DEFINED_NUMBER_DISPLAY_OFF 0x01
00374 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_BOX_NUMBER_DISPLAY_ON 0x02
00375 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_BOX_NUMBER_DISPLAY_OFF 0x03
00376 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_PAGE_NUMBER_DISPLAY_ON 0x04
00377 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_PAGE_NUMBER_DISPLAY_OFF 0x05
00378 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_SECONDARY_PAGE_NUMBER_DISPLAY_ON 0x06
00379 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_SECONDARY_PAGE_NUMBER_DISPLAY_OFF 0x07
00380 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_CHAPTER_NUMBER_DISPLAY_ON 0x08
00381 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_CHAPTER_NUMBER_DISPLAY_OFF 0x09
00382 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_VOLUME_NUMBER_DISPLAY_ON 0x0A
00383 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_VOLUME_NUMBER_DISPLAY_OFF 0x0B
00384 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_PARAGRAPH_NUMBER_DISPLAY_ON 0x0C
00385 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_PARAGRAPH_NUMBER_DISPLAY_OFF 0x0D
00386 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_FOOTNOTE_NUMBER_DISPLAY_ON 0x0E
00387 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_FOOTNOTE_NUMBER_DISPLAY_OFF 0x0F
00388 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_ENDNOTE_NUMBER_DISPLAY_ON 0x10
00389 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_ENDNOTE_NUMBER_DISPLAY_OFF 0x11
00390 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_LINE_NUMBER_DISPLAY_ON 0x12
00391 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_LINE_NUMBER_DISPLAY_OFF 0x13
00392 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_TOTAL_NUMBER_OF_PAGES_DISPLAY_ON 0x14
00393 #define WP6_DISPLAY_NUMBER_REFERENCE_GROUP_TOTAL_NUMBER_OF_PAGES_DISPLAY_OFF 0x15
00394 
00395 /* Increment Number Functions */
00396 
00397 #define WP6_INCREMENT_NUMBER_GROUP_INCREMENT_USER_DEFINED_NUMBER 0x00
00398 #define WP6_INCREMENT_NUMBER_GROUP_INCREMENT_BOX_NUMBER 0x01
00399 #define WP6_INCREMENT_NUMBER_GROUP_INCREMENT_PAGE_NUMBER 0x02
00400 #define WP6_INCREMENT_NUMBER_GROUP_INCREMENT_SECONDARY_PAGE_NUMBER 0x03
00401 #define WP6_INCREMENT_NUMBER_GROUP_INCREMENT_CHAPTER_NUMBER 0x04
00402 #define WP6_INCREMENT_NUMBER_GROUP_INCREMENT_VOLUME_NUMBER 0x05
00403 #define WP6_INCREMENT_NUMBER_GROUP_INCREMENT_PARAGRAPH_NUMBER 0x06
00404 #define WP6_INCREMENT_NUMBER_GROUP_INCREMENT_FOOTNOTE_NUMBER 0x07
00405 #define WP6_INCREMENT_NUMBER_GROUP_INCREMENT_ENDNOTE_NUMBER 0x08
00406 #define WP6_INCREMENT_NUMBER_GROUP_INCREMENT_LINE_NUMBER 0x09
00407 
00408 /* Decrement Number Functions */
00409 
00410 #define WP6_DECREMENT_NUMBER_GROUP_DECREMENT_USER_DEFINED_NUMBER 0x00
00411 #define WP6_DECREMENT_NUMBER_GROUP_DECREMENT_BOX_NUMBER 0x01
00412 #define WP6_DECREMENT_NUMBER_GROUP_DECREMENT_PAGE_NUMBER 0x02
00413 #define WP6_DECREMENT_NUMBER_GROUP_DECREMENT_SECONDARY_PAGE_NUMBER 0x03
00414 #define WP6_DECREMENT_NUMBER_GROUP_DECREMENT_CHAPTER_NUMBER 0x04
00415 #define WP6_DECREMENT_NUMBER_GROUP_DECREMENT_VOLUME_NUMBER 0x05
00416 #define WP6_DECREMENT_NUMBER_GROUP_DECREMENT_PARAGRAPH_NUMBER_0x06
00417 #define WP6_DECREMENT_NUMBER_GROUP_DECREMENT_FOOTNOTE_NUMBER 0x07
00418 #define WP6_DECREMENT_NUMBER_GROUP_DECREMENT_ENDNOTE_NUMBER 0x08
00419 #define WP6_DECREMENT_NUMBER_GROUP_DECREMENT_LINE_NUMBER 0x09
00420 
00421 /* Column Group */
00422 #define WP6_COLUMN_GROUP_LEFT_MARGIN_SET 0
00423 #define WP6_COLUMN_GROUP_RIGHT_MARGIN_SET 1
00424 
00425 #define WP6_COLUMN_TYPE_NEWSPAPER 0x00
00426 #define WP6_COLUMN_TYPE_NEWSPAPER_VERTICAL_BALANCE 0x01
00427 #define WP6_COLUMN_TYPE_PARALLEL 0x02
00428 #define WP6_COLUMN_TYPE_PARALLEL_PROTECT 0x03
00429 
00430 /* Attribute Group */
00431 #define WP6_ATTRIBUTE_EXTRA_LARGE 0
00432 #define WP6_ATTRIBUTE_VERY_LARGE 1
00433 #define WP6_ATTRIBUTE_LARGE 2
00434 #define WP6_ATTRIBUTE_SMALL_PRINT 3
00435 #define WP6_ATTRIBUTE_FINE_PRINT 4
00436 #define WP6_ATTRIBUTE_SUPERSCRIPT 5
00437 #define WP6_ATTRIBUTE_SUBSCRIPT 6
00438 #define WP6_ATTRIBUTE_OUTLINE 7
00439 #define WP6_ATTRIBUTE_ITALICS 8
00440 #define WP6_ATTRIBUTE_SHADOW 9
00441 #define WP6_ATTRIBUTE_REDLINE 10
00442 #define WP6_ATTRIBUTE_DOUBLE_UNDERLINE 11
00443 #define WP6_ATTRIBUTE_BOLD 12
00444 #define WP6_ATTRIBUTE_STRIKE_OUT 13
00445 #define WP6_ATTRIBUTE_UNDERLINE 14
00446 #define WP6_ATTRIBUTE_SMALL_CAPS 15
00447 #define WP6_ATTRIBUTE_BLINK 16
00448 
00449 /* Box Group */
00450 #define WP6_BOX_GROUP_CHARACTER_ANCHORED_BOX 0x00
00451 #define WP6_BOX_GROUP_PARAGRAPH_ANCHORED_BOX 0x01
00452 #define WP6_BOX_GROUP_PAGE_ANCHORED_BOX 0x02
00453 #define WP6_BOX_GROUP_GRAPHICS_RULE 0x03
00454 
00455 #define WP6_BOX_GROUP_BOX_COUNTER_DATA_BIT 0x8000
00456 #define WP6_BOX_GROUP_BOX_POSITIONING_DATA_BIT 0x4000
00457 #define WP6_BOX_GROUP_BOX_CONTENT_DATA_BIT 0x2000
00458 #define WP6_BOX_GROUP_BOX_CAPTION_DATA_BIT 0x1000
00459 #define WP6_BOX_GROUP_BOX_BORDER_DATA_BIT 0x0800
00460 #define WP6_BOX_GROUP_BOX_FILL_DATA_BIT 0x0400
00461 #define WP6_BOX_GROUP_BOX_BOX_WRAPPING_DATA_BIT 0x0200
00462 #define WP6_BOX_GROUP_BOX_BOX_HYPERTEXT_WRAPPING_DATA_BIT 0x0100
00463 #define WP6_BOX_GROUP_BOX_HTML_BIT 0x0080
00464 #define WP6_BOX_GROUP_BOX_GROUPING_DATA_BIT 0x0040
00465 #define WP6_BOX_GROUP_BOX_DRAW_OBJECT_DATA_BIT 0x0020
00466 
00467 /* Tab Group */
00468 // these elements are defined in terms of bits 3-8 of the tab group
00469 #define WP6_TAB_GROUP_BACK_TAB 0x00
00470 #define WP6_TAB_GROUP_TABLE_TAB 0x01
00471 #define WP6_TAB_GROUP_LEFT_TAB 0x02
00472 #define WP6_TAB_GROUP_BAR_TAB 0x04
00473 #define WP6_TAB_GROUP_LEFT_INDENT 0x06
00474 #define WP6_TAB_GROUP_LEFT_RIGHT_INDENT 0x07
00475 #define WP6_TAB_GROUP_CENTER_ON_MARGINS 0x08
00476 #define WP6_TAB_GROUP_CENTER_ON_CURRENT_POSITION 0x09
00477 #define WP6_TAB_GROUP_CENTER_TAB 0x0A
00478 #define WP6_TAB_GROUP_FLUSH_RIGHT 0x10
00479 #define WP6_TAB_GROUP_RIGHT_TAB 0x12
00480 #define WP6_TAB_GROUP_DECIMAL_TAB 0x1A
00481 
00482 /* Platform Group */
00483 #define WP6_PLATFORM_GROUP_DYNAMIC_DATA_EXCHANGE_START 0x00
00484 #define WP6_PLATFORM_GROUP_DYNAMIC_DATA_EXCHANGE_END 0x01
00485 #define WP6_PLATFORM_GROUP_PUBLISH_DATA_START 0x02
00486 #define WP6_PLATFORM_GROUP_PUBLISH_DATA_END 0x03
00487 #define WP6_PLATFORM_GROUP_SUBSCRIBE_DATA_START 0x04
00488 #define WP6_PLATFORM_GROUP_SUBSCRIBE_DATA_END 0x05
00489 #define WP6_PLATFORM_GROUP_SUBTITLE_MARK 0x06
00490 #define WP6_PLATFORM_GROUP_SUBTITLE_TEXT 0x07
00491 #define WP6_PLATFORM_GROUP_SUBTITLE_OPTION 0x08
00492 #define WP6_PLATFORM_GROUP_SUBTITLE_TEXT_OPTIONS 0x09
00493 #define WP6_PLATFORM_GROUP_SUPPRESS_SUBTITLE Ox0A
00494 #define WP6_PLATFORM_GROUP_THIRD_PARTY 0x0B
00495 #define WP6_PLATFORM_GROUP_PEN_FOREGROUND_COLOR_32BIT 0x0C
00496 #define WP6_PLATFORM_GROUP_PEN_FOREGROUND_COLOR_64BIT 0x0D
00497 #define WP6_PLATFORM_GROUP_PEN_BACKGROUND_COLOR_32BIT 0x0E
00498 #define WP6_PLATFORM_GROUP_PEN_BACKGROUND_COLOR_64BIT 0x0F
00499 #define WP6_PLATFORM_GROUP_PEN_STYLE 0x10
00500 #define WP6_PLATFORM_GROUP_PEN_PATTERN 0x11
00501 #define WP6_PLATFORM_GROUP_PEN_SIZE_16BIT 0x12
00502 #define WP6_PLATFORM_GROUP_PEN_SIZE_32BIT 0x13
00503 #define WP6_PLATFORM_GROUP_BRUSH_GRADIENT_32BIT 0x14
00504 #define WP6_PLATFORM_GROUP_BRUSH_GRADIENT_64BIT 0x15
00505 #define WP6_PLATFORM_GROUP_BRUSH_FOREGROUND_COLOR_32BIT 0x16
00506 #define WP6_PLATFORM_GROUP_BRUSH_FOREGROUND_COLOR_64BIT 0x17
00507 #define WP6_PLATFORM_GROUP_BRUSH_BACKGROUND_COLOR_32BIT 0x18
00508 #define WP6_PLATFORM_GROUP_BRUSH_BACKGROUND_COLOR_64BIT 0x19
00509 #define WP6_PLATFORM_GROUP_BRUSH_PATTERN 0x1A
00510 #define WP6_PLATFORM_GROUP_MISCELLANEOUS_ATTRIBUTES 0x1B
00511 #define WP6_PLATFORM_GROUP_PRESENTATIONS_SLIDE_OPTIONS 0x1C
00512 #define WP6_PLATFORM_GROUP_PRESENTATIONS_ORGANIZATION_CHART_NODE_OPTIONS 0x1D
00513 #define WP6_PLATFORM_GROUP_HIDE_FOR_CONVERSIONS 0x1E
00514 #define WP6_PLATFORM_GROUP_HIDE_OFF_FOR_CONVERSIONS 0x1F
00515 #define WP6_PLATFORM_GROUP_SGML_START_TAG 0x20
00516 #define WP6_PLATFORM_GROUP_SGML_START_TAG_END 0x21
00517 #define WP6_PLATFORM_GROUP_SGML_END_TAG 0x22
00518 #define WP6_PLATFORM_GROUP_SGML_END_TAG_END 0x23
00519 #define WP6_PLATFORM_GROUP_SGML_CHARACTER_REFERENCE 0x24
00520 #define WP6_PLATFORM_GROUP_SGML_END_CHARACTER_REFERENCE 0x25
00521 #define WP6_PLATFORM_GROUP_SGML_ENTITY_REFERENCE 0x26
00522 #define WP6_PLATFORM_GROUP_SGML_END_ENTITY_REFERENCE 0x27
00523 #define WP6_PLATFORM_GROUP_SGML_IGNORE_ON 0x28
00524 #define WP6_PLATFORM_GROUP_SGML_IGNORE_OFF 0x29
00525 #define WP6_PLATFORM_GROUP_SGML_MARKED_SECTION_ON 0x2A
00526 #define WP6_PLATFORM_GROUP_SGML_MARKED_SECTION_OFF 0x2B
00527 #define WP6_PLATFORM_GROUP_SGML_PROCESSING_INSTRUCTION_ON 0x2C
00528 #define WP6_PLATFORM_GROUP_SGML_PROCESSING_INSTRUCTION_OFF 0x2D
00529 
00530 /* Set number group */
00531 #define WP6_SET_NUMBER_GROUP_SET_PAGE_NUMBER 0x02
00532 
00533 /* Extended Character */
00534 #define WP6_MULTINATIONAL_CHARACTER_SET 1
00535 #define WP6_PHONETIC_SYMBOL_CHARACTER_SET 2
00536 #define WP6_BOX_DRAWING_CHARACTER_SET 3
00537 #define WP6_TYPOGRAPHIC_SYMBOL_CHARACTER_SET 4
00538 #define WP6_ICONIC_SYMBOL_CHARACTER_SET 5
00539 #define WP6_MATH_SCIENTIFIC_CHARACTER_SET 6
00540 #define WP6_MATH_SCIENTIFIC_EXTENDED_CHARACTER_SET 7
00541 #define WP6_GREEK_CHARACTER_SET 8
00542 #define WP6_HEBREW_CHARACTER_SET 9
00543 #define WP6_CYRILLIC_CHARACTER_SET 10
00544 #define WP6_JAPANESE_CHARACTER_SET 11
00545 #define WP6_TIBETAN_CHARACTER_SET 12
00546 #define WP6_ARABIC_CHARACTER_SET 13
00547 #define WP6_ARABIC_SCRIPT_CHARACTER_SET 14
00548 
00549 /* Undo Group */
00550 #define WP6_UNDO_GROUP_INVALID_TEXT_START 0
00551 #define WP6_UNDO_GROUP_INVALID_TEXT_END 1
00552 #define WP6_UNDO_GROUP_VALID_TEXT_START 2
00553 #define WP6_UNDO_GROUP_VALID_TEXT_END 3
00554 
00555 #endif /* WP6FILESTRUCTURE_H */
00556 /* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */