1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #include <xmloff/txtprmap.hxx>
21 #include <xmloff/xmlnamespace.hxx>
22 #include <xmloff/xmltoken.hxx>
23 #include <xmloff/maptype.hxx>
24 #include <xmloff/xmltypes.hxx>
25 #include "txtprhdl.hxx"
26 #include <xmlsdtypes.hxx>
27 #include <sal/log.hxx>
28 #include <rtl/ref.hxx>
30 using namespace ::com::sun::star
;
31 using namespace ::com::sun::star::uno
;
32 using namespace ::xmloff::token
;
34 #define M_E_( a, p, l, t, c ) \
35 { a, sizeof(a)-1, XML_NAMESPACE_##p, XML_##l, t, c, SvtSaveOptions::ODFSVER_010, false }
37 #define M_EV_( a, p, l, t, c, v ) \
38 { a, sizeof(a)-1, XML_NAMESPACE_##p, XML_##l, t, c, v, false }
40 #define M_ED_( a, p, l, t, c ) \
41 { a, sizeof(a)-1, XML_NAMESPACE_##p, XML_##l, (t) | MID_FLAG_DEFAULT_ITEM_EXPORT, c, SvtSaveOptions::ODFSVER_010, false }
44 #define MT_E( a, p, l, t, c ) \
45 M_E_( a, p, l, (t|XML_TYPE_PROP_TEXT), c )
46 #define MT_ED( a, p, l, t, c ) \
47 M_ED_( a, p, l, (t|XML_TYPE_PROP_TEXT), c )
49 // paragraph properties
50 #define MP_E( a, p, l, t, c ) \
51 M_E_( a, p, l, (t|XML_TYPE_PROP_PARAGRAPH), c )
52 #define MP_ED( a, p, l, t, c ) \
53 M_ED_( a, p, l, (t|XML_TYPE_PROP_PARAGRAPH), c )
56 #define MG_E( a, p, l, t, c ) \
57 M_E_( a, p, l, (t|XML_TYPE_PROP_GRAPHIC), c )
58 #define MG_ED( a, p, l, t, c ) \
59 M_ED_( a, p, l, (t|XML_TYPE_PROP_GRAPHIC), c )
60 #define MG_EV( a, p, l, t, c, v ) \
61 M_EV_( a, p, l, (t|XML_TYPE_PROP_GRAPHIC), c, v )
64 #define MS_E( a, p, l, t, c ) \
65 M_E_( a, p, l, (t|XML_TYPE_PROP_SECTION), c )
68 #define MR_E( a, p, l, t, c ) \
69 M_E_( a, p, l, (t|XML_TYPE_PROP_RUBY), c )
70 #define MR_EV( a, p, l, t, c, v ) \
71 M_EV_( a, p, l, (t|XML_TYPE_PROP_RUBY), c, v )
74 #define MC_E( a, p, l, t, c ) \
75 M_E_( a, p, l, (t|XML_TYPE_PROP_TABLE_CELL), c )
77 #define MAP_ODF13(name,prefix,token,type,context) { name, sizeof(name)-1, prefix, token, type, context, SvtSaveOptions::ODFSVER_013, false }
79 // extensions import/export
80 #define MAP_EXT(name,prefix,token,type,context) { name, sizeof(name)-1, prefix, token, type, context, SvtSaveOptions::ODFSVER_FUTURE_EXTENDED, false }
81 // extensions import only
82 #define MAP_EXT_I(name,prefix,token,type,context) { name, sizeof(name)-1, prefix, token, type, context, SvtSaveOptions::ODFSVER_FUTURE_EXTENDED, true }
85 { nullptr, 0, 0, XML_TOKEN_INVALID, 0, 0, SvtSaveOptions::ODFSVER_010, false }
87 #define MAP_(name,prefix,token,type,context) { name, sizeof(name)-1, prefix, token, type, context, SvtSaveOptions::ODFSVER_010, false }
88 #define GMAP(name,prefix,token,type,context) MAP_(name,prefix,token,static_cast<sal_Int32>(type|XML_TYPE_PROP_GRAPHIC),context)
90 XMLPropertyMapEntry
const aXMLParaPropMap
[] =
92 // RES_UNKNOWNATR_CONTAINER
93 MP_E( "ParaUserDefinedAttributes", TEXT
, XMLNS
, XML_TYPE_ATTRIBUTE_CONTAINER
| MID_FLAG_SPECIAL_ITEM
, 0 ),
95 // fill attributes for paragraph backgrounds
96 // #i125045# moved to the front to be able to exclude these in lcl_txtprmap_getMap
97 // for TextPropMap::SHAPE_PARA to not have these double for Shapes (which already have these)
98 GMAP( "FillStyle", XML_NAMESPACE_DRAW
, XML_FILL
, XML_SW_TYPE_FILLSTYLE
, 0 ),
99 GMAP( "FillColor", XML_NAMESPACE_DRAW
, XML_FILL_COLOR
, XML_TYPE_COLOR
, 0 ),
100 GMAP( "FillColor2", XML_NAMESPACE_DRAW
, XML_SECONDARY_FILL_COLOR
, XML_TYPE_COLOR
, 0 ),
101 GMAP( "FillGradientName", XML_NAMESPACE_DRAW
, XML_FILL_GRADIENT_NAME
, XML_TYPE_STYLENAME
|MID_FLAG_NO_PROPERTY_IMPORT
, CTF_FILLGRADIENTNAME
),
102 GMAP( "FillGradientStepCount", XML_NAMESPACE_DRAW
, XML_GRADIENT_STEP_COUNT
, XML_TYPE_NUMBER16
, 0 ),
103 GMAP( "FillHatchName", XML_NAMESPACE_DRAW
, XML_FILL_HATCH_NAME
, XML_TYPE_STYLENAME
|MID_FLAG_NO_PROPERTY_IMPORT
, CTF_FILLHATCHNAME
),
104 GMAP( "FillBackground", XML_NAMESPACE_DRAW
, XML_FILL_HATCH_SOLID
, XML_TYPE_BOOL
, 0 ),
105 GMAP( "FillBitmapName", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_NAME
, XML_TYPE_STYLENAME
|MID_FLAG_NO_PROPERTY_IMPORT
, CTF_FILLBITMAPNAME
),
106 GMAP( "FillTransparence", XML_NAMESPACE_DRAW
, XML_OPACITY
, XML_TYPE_NEG_PERCENT16
|MID_FLAG_MULTI_PROPERTY
, 0 ), // exists in SW, too
107 GMAP( "FillTransparenceGradientName", XML_NAMESPACE_DRAW
, XML_OPACITY_NAME
, XML_TYPE_STYLENAME
|MID_FLAG_NO_PROPERTY_IMPORT
, CTF_FILLTRANSNAME
),
108 GMAP( "FillBitmapSizeX", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_WIDTH
, XML_SW_TYPE_FILLBITMAPSIZE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
109 GMAP( "FillBitmapLogicalSize", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_WIDTH
, XML_SW_TYPE_LOGICAL_SIZE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
110 GMAP( "FillBitmapSizeY", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_HEIGHT
, XML_SW_TYPE_FILLBITMAPSIZE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
111 GMAP( "FillBitmapLogicalSize", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_HEIGHT
, XML_SW_TYPE_LOGICAL_SIZE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
112 GMAP( "FillBitmapMode", XML_NAMESPACE_STYLE
,XML_REPEAT
, XML_SW_TYPE_BITMAP_MODE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
113 GMAP( "FillBitmapPositionOffsetX", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_REF_POINT_X
, XML_TYPE_PERCENT
, 0 ),
114 GMAP( "FillBitmapPositionOffsetY", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_REF_POINT_Y
, XML_TYPE_PERCENT
, 0 ),
115 GMAP( "FillBitmapRectanglePoint", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_REF_POINT
, XML_SW_TYPE_BITMAP_REFPOINT
, 0 ),
116 GMAP( "FillBitmapOffsetX", XML_NAMESPACE_DRAW
, XML_TILE_REPEAT_OFFSET
, XML_SW_TYPE_BITMAPREPOFFSETX
|MID_FLAG_MULTI_PROPERTY
, CTF_REPEAT_OFFSET_X
),
117 GMAP( "FillBitmapOffsetY", XML_NAMESPACE_DRAW
, XML_TILE_REPEAT_OFFSET
, XML_SW_TYPE_BITMAPREPOFFSETY
|MID_FLAG_MULTI_PROPERTY
, CTF_REPEAT_OFFSET_Y
),
120 // !!! DO NOT REORDER THE MARGINS !!!
121 MP_E( "ParaLeftMargin", FO
, MARGIN
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_PARAMARGINALL
),
122 MP_E( "ParaLeftMarginRelative", FO
, MARGIN
, XML_TYPE_PERCENT16
, CTF_PARAMARGINALL_REL
),
123 MP_E( "ParaLeftMargin", FO
, MARGIN_LEFT
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_PARALEFTMARGIN
),
124 MP_E( "ParaLeftMarginRelative", FO
, MARGIN_LEFT
, XML_TYPE_PERCENT16
, CTF_PARALEFTMARGIN_REL
),
125 MP_E( "ParaRightMargin", FO
, MARGIN_RIGHT
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_PARARIGHTMARGIN
),
126 MP_E( "ParaRightMarginRelative", FO
, MARGIN_RIGHT
, XML_TYPE_PERCENT16
, CTF_PARARIGHTMARGIN_REL
),
128 MP_E( "ParaTopMargin", FO
, MARGIN_TOP
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_PARATOPMARGIN
),
129 MP_E( "ParaTopMarginRelative", FO
, MARGIN_TOP
, XML_TYPE_PERCENT16
, CTF_PARATOPMARGIN_REL
),
130 MP_E( "ParaBottomMargin", FO
, MARGIN_BOTTOM
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_PARABOTTOMMARGIN
),
131 MP_E( "ParaBottomMarginRelative",FO
, MARGIN_BOTTOM
, XML_TYPE_PERCENT16
, CTF_PARABOTTOMMARGIN_REL
),
132 MAP_ODF13( "ParaContextMargin", XML_NAMESPACE_STYLE
, XML_CONTEXTUAL_SPACING
, XML_TYPE_BOOL
|XML_TYPE_PROP_PARAGRAPH
, 0 ), // ODF 1.3 OFFICE-3767 and was written by LO<=4.2
133 MAP_ODF13( "ParaContextMargin", XML_NAMESPACE_LO_EXT
, XML_CONTEXTUAL_SPACING
, XML_TYPE_BOOL
|XML_TYPE_PROP_PARAGRAPH
, 0 ), // extension namespace
134 // RES_CHRATR_CASEMAP
135 MT_E( "CharCaseMap", FO
, FONT_VARIANT
, XML_TYPE_TEXT_CASEMAP_VAR
, 0 ),
136 MT_E( "CharCaseMap", FO
, TEXT_TRANSFORM
, XML_TYPE_TEXT_CASEMAP
, 0 ),
138 MT_ED( "CharColor", FO
, COLOR
, XML_TYPE_COLORAUTO
|MID_FLAG_MERGE_PROPERTY
, 0 ),
139 MT_ED( "CharColor", STYLE
, USE_WINDOW_FONT_COLOR
, XML_TYPE_ISAUTOCOLOR
|MID_FLAG_MERGE_PROPERTY
, 0 ),
140 MAP_EXT_I("CharTransparence", XML_NAMESPACE_DRAW
, XML_OPACITY
, XML_TYPE_NEG_PERCENT16
| XML_TYPE_PROP_TEXT
, 0),
141 MAP_EXT("CharTransparence", XML_NAMESPACE_LO_EXT
, XML_OPACITY
, XML_TYPE_NEG_PERCENT16
| XML_TYPE_PROP_TEXT
, 0),
142 // RES_CHRATR_CONTOUR
143 MT_E( "CharContoured", STYLE
, TEXT_OUTLINE
, XML_TYPE_BOOL
, 0 ),
144 // RES_CHRATR_CROSSEDOUT
145 MT_E( "CharStrikeout", STYLE
, TEXT_LINE_THROUGH_STYLE
, XML_TYPE_TEXT_CROSSEDOUT_STYLE
|MID_FLAG_MERGE_PROPERTY
, 0),
146 MT_E( "CharStrikeout", STYLE
, TEXT_LINE_THROUGH_TYPE
, XML_TYPE_TEXT_CROSSEDOUT_TYPE
|MID_FLAG_MERGE_PROPERTY
, 0),
147 MT_E( "CharStrikeout", STYLE
, TEXT_LINE_THROUGH_WIDTH
, XML_TYPE_TEXT_CROSSEDOUT_WIDTH
|MID_FLAG_MERGE_PROPERTY
, 0),
148 MT_E( "CharStrikeout", STYLE
, TEXT_LINE_THROUGH_TEXT
, XML_TYPE_TEXT_CROSSEDOUT_TEXT
|MID_FLAG_MERGE_PROPERTY
, 0),
149 // RES_CHRATR_ESCAPEMENT
150 MT_E( "CharEscapement", STYLE
, TEXT_POSITION
, XML_TYPE_TEXT_ESCAPEMENT
|MID_FLAG_MERGE_ATTRIBUTE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
151 MT_E( "CharEscapementHeight", STYLE
, TEXT_POSITION
, XML_TYPE_TEXT_ESCAPEMENT_HEIGHT
|MID_FLAG_MERGE_ATTRIBUTE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
153 MT_ED( "CharFontName", STYLE
, FONT_NAME
, XML_TYPE_STRING
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTNAME
),
154 MT_ED( "CharFontName", FO
, FONT_FAMILY
, XML_TYPE_TEXT_FONTFAMILYNAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTFAMILYNAME
),
155 MT_ED( "CharFontStyleName",STYLE
, FONT_STYLE_NAME
, XML_TYPE_STRING
, CTF_FONTSTYLENAME
),
156 MT_ED( "CharFontFamily", STYLE
, FONT_FAMILY_GENERIC
,XML_TYPE_TEXT_FONTFAMILY
, CTF_FONTFAMILY
),
157 MT_ED( "CharFontPitch", STYLE
, FONT_PITCH
, XML_TYPE_TEXT_FONTPITCH
, CTF_FONTPITCH
),
158 MT_ED( "CharFontCharSet", STYLE
, FONT_CHARSET
, XML_TYPE_TEXT_FONTENCODING
, CTF_FONTCHARSET
),
159 // RES_CHRATR_FONTSIZE
160 MT_ED( "CharHeight", FO
, FONT_SIZE
, XML_TYPE_CHAR_HEIGHT
|MID_FLAG_MULTI_PROPERTY
, CTF_CHARHEIGHT
),
161 MT_ED( "CharPropHeight",FO
, FONT_SIZE
, XML_TYPE_CHAR_HEIGHT_PROP
|MID_FLAG_MULTI_PROPERTY
, CTF_CHARHEIGHT_REL
),
162 MT_ED( "CharDiffHeight",STYLE
,FONT_SIZE_REL
, XML_TYPE_CHAR_HEIGHT_DIFF
, CTF_CHARHEIGHT_DIFF
),
163 // RES_CHRATR_KERNING
164 MT_E( "CharKerning", FO
, LETTER_SPACING
, XML_TYPE_TEXT_KERNING
, 0 ),
165 // RES_CHRATR_LANGUAGE
166 MT_ED( "CharLocale", STYLE
, RFC_LANGUAGE_TAG
, XML_TYPE_CHAR_RFC_LANGUAGE_TAG
|MID_FLAG_MERGE_PROPERTY
, 0 ),
167 MT_ED( "CharLocale", FO
, LANGUAGE
, XML_TYPE_CHAR_LANGUAGE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
168 MT_ED( "CharLocale", FO
, SCRIPT
, XML_TYPE_CHAR_SCRIPT
|MID_FLAG_MERGE_PROPERTY
, 0 ),
169 MT_ED( "CharLocale", FO
, COUNTRY
, XML_TYPE_CHAR_COUNTRY
|MID_FLAG_MERGE_PROPERTY
, 0 ),
170 // RES_CHRATR_POSTURE
171 MT_E( "CharPosture", FO
, FONT_STYLE
, XML_TYPE_TEXT_POSTURE
, 0 ),
172 // RES_CHRATR_UNUSED1
173 // RES_CHRATR_SHADOWED
174 MT_E( "CharShadowed", FO
, TEXT_SHADOW
, XML_TYPE_TEXT_SHADOWED
, 0 ),
175 // RES_CHRATR_UNDERLINE
176 MT_E( "CharUnderline", STYLE
, TEXT_UNDERLINE_STYLE
, XML_TYPE_TEXT_UNDERLINE_STYLE
|MID_FLAG_MERGE_PROPERTY
, CTF_UNDERLINE
),
177 MT_E( "CharUnderline", STYLE
, TEXT_UNDERLINE_TYPE
, XML_TYPE_TEXT_UNDERLINE_TYPE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
178 MT_E( "CharUnderline", STYLE
, TEXT_UNDERLINE_WIDTH
, XML_TYPE_TEXT_UNDERLINE_WIDTH
|MID_FLAG_MERGE_PROPERTY
, 0 ),
179 MT_E( "CharUnderlineColor", STYLE
, TEXT_UNDERLINE_COLOR
, XML_TYPE_TEXT_UNDERLINE_COLOR
|MID_FLAG_MULTI_PROPERTY
, CTF_UNDERLINE_COLOR
),
180 MT_E( "CharUnderlineHasColor", STYLE
, TEXT_UNDERLINE_COLOR
, XML_TYPE_TEXT_UNDERLINE_HASCOLOR
|MID_FLAG_MERGE_ATTRIBUTE
, CTF_UNDERLINE_HASCOLOR
),
182 MT_E( "CharWeight", FO
, FONT_WEIGHT
, XML_TYPE_TEXT_WEIGHT
, 0 ),
184 { "Rsid", sizeof("Rsid")-1, XML_NAMESPACE_OFFICE_EXT
, XML_RSID
, XML_TYPE_HEX
|XML_TYPE_PROP_TEXT
, 0, SvtSaveOptions::ODFSVER_FUTURE_EXTENDED
, false },
186 { "ParRsid", sizeof("ParRsid")-1, XML_NAMESPACE_OFFICE_EXT
, XML_PARRSID
, XML_TYPE_HEX
|XML_TYPE_PROP_TEXT
, 0, SvtSaveOptions::ODFSVER_FUTURE_EXTENDED
, false },
187 // RES_CHRATR_WORDLINEMODE
188 MT_E( "CharWordMode", STYLE
, TEXT_UNDERLINE_MODE
, XML_TYPE_TEXT_LINE_MODE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
189 MT_E( "CharWordMode", STYLE
, TEXT_OVERLINE_MODE
, XML_TYPE_TEXT_LINE_MODE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
190 MT_E( "CharWordMode", STYLE
, TEXT_LINE_THROUGH_MODE
, XML_TYPE_TEXT_LINE_MODE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
191 // RES_CHRATR_AUTOKERN
192 MT_E( "CharAutoKerning", STYLE
, LETTER_KERNING
, XML_TYPE_BOOL
, 0 ),
194 MT_E( "CharFlash", STYLE
, TEXT_BLINKING
, XML_TYPE_BOOL
, 0 ),
195 // RES_CHRATR_NOHYPHEN
197 // RES_CHRATR_UNUSED2
198 // RES_CHRATR_BACKGROUND
199 MT_E( "CharBackColor", FO
, BACKGROUND_COLOR
, XML_TYPE_COLORTRANSPARENT
|MID_FLAG_MULTI_PROPERTY
, CTF_CHAR_BACKGROUND
),
200 MT_E( "CharBackTransparent", FO
, BACKGROUND_COLOR
, XML_TYPE_ISTRANSPARENT
|MID_FLAG_MERGE_ATTRIBUTE
, CTF_CHAR_BACKGROUND_TRANSPARENCY
),
201 MT_E( "CharBackColor", FO
, TEXT_BACKGROUND_COLOR
, XML_TYPE_COLOR
|MID_FLAG_SPECIAL_ITEM_EXPORT
, CTF_OLDTEXTBACKGROUND
),
202 // RES_CHRATR_CJK_FONT
203 MT_ED( "CharFontNameAsian", STYLE
, FONT_NAME_ASIAN
, XML_TYPE_STRING
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTNAME_CJK
),
204 MT_ED( "CharFontNameAsian", STYLE
, FONT_FAMILY_ASIAN
, XML_TYPE_TEXT_FONTFAMILYNAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTFAMILYNAME_CJK
),
205 MT_ED( "CharFontStyleNameAsian",STYLE
, FONT_STYLE_NAME_ASIAN
, XML_TYPE_STRING
, CTF_FONTSTYLENAME_CJK
),
206 MT_ED( "CharFontFamilyAsian", STYLE
, FONT_FAMILY_GENERIC_ASIAN
,XML_TYPE_TEXT_FONTFAMILY
, CTF_FONTFAMILY_CJK
),
207 MT_ED( "CharFontPitchAsian", STYLE
, FONT_PITCH_ASIAN
, XML_TYPE_TEXT_FONTPITCH
, CTF_FONTPITCH_CJK
),
208 MT_ED( "CharFontCharSetAsian", STYLE
, FONT_CHARSET_ASIAN
, XML_TYPE_TEXT_FONTENCODING
, CTF_FONTCHARSET_CJK
),
209 // RES_CHRATR_CJK_FONTSIZE
210 MT_ED( "CharHeightAsian", STYLE
, FONT_SIZE_ASIAN
, XML_TYPE_CHAR_HEIGHT
|MID_FLAG_MULTI_PROPERTY
, CTF_CHARHEIGHT_CJK
),
211 MT_ED( "CharPropHeightAsian",STYLE
, FONT_SIZE_ASIAN
, XML_TYPE_CHAR_HEIGHT_PROP
|MID_FLAG_MULTI_PROPERTY
, CTF_CHARHEIGHT_REL_CJK
),
212 MT_ED( "CharDiffHeightAsian",STYLE
,FONT_SIZE_REL_ASIAN
, XML_TYPE_CHAR_HEIGHT_DIFF
, CTF_CHARHEIGHT_DIFF_CJK
),
213 // RES_CHRATR_CJK_LANGUAGE
214 MT_ED( "CharLocaleAsian", STYLE
, RFC_LANGUAGE_TAG_ASIAN
, XML_TYPE_CHAR_RFC_LANGUAGE_TAG
|MID_FLAG_MERGE_PROPERTY
, 0 ),
215 MT_ED( "CharLocaleAsian", STYLE
, LANGUAGE_ASIAN
, XML_TYPE_CHAR_LANGUAGE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
216 MT_ED( "CharLocaleAsian", STYLE
, SCRIPT_ASIAN
, XML_TYPE_CHAR_SCRIPT
|MID_FLAG_MERGE_PROPERTY
, 0 ),
217 MT_ED( "CharLocaleAsian", STYLE
, COUNTRY_ASIAN
, XML_TYPE_CHAR_COUNTRY
|MID_FLAG_MERGE_PROPERTY
, 0 ),
218 // RES_CHRATR_CJK_POSTURE
219 MT_E( "CharPostureAsian", STYLE
, FONT_STYLE_ASIAN
, XML_TYPE_TEXT_POSTURE
, 0 ),
220 // RES_CHRATR_CJK_WEIGHT
221 MT_E( "CharWeightAsian", STYLE
, FONT_WEIGHT_ASIAN
, XML_TYPE_TEXT_WEIGHT
, 0 ),
222 // RES_CHRATR_CTL_FONT
223 MT_ED( "CharFontNameComplex", STYLE
, FONT_NAME_COMPLEX
, XML_TYPE_STRING
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTNAME_CTL
),
224 MT_ED( "CharFontNameComplex", STYLE
, FONT_FAMILY_COMPLEX
, XML_TYPE_TEXT_FONTFAMILYNAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTFAMILYNAME_CTL
),
225 MT_ED( "CharFontStyleNameComplex",STYLE
, FONT_STYLE_NAME_COMPLEX
, XML_TYPE_STRING
, CTF_FONTSTYLENAME_CTL
),
226 MT_ED( "CharFontFamilyComplex", STYLE
, FONT_FAMILY_GENERIC_COMPLEX
,XML_TYPE_TEXT_FONTFAMILY
, CTF_FONTFAMILY_CTL
),
227 MT_ED( "CharFontPitchComplex", STYLE
, FONT_PITCH_COMPLEX
, XML_TYPE_TEXT_FONTPITCH
, CTF_FONTPITCH_CTL
),
228 MT_ED( "CharFontCharSetComplex", STYLE
, FONT_CHARSET_COMPLEX
, XML_TYPE_TEXT_FONTENCODING
, CTF_FONTCHARSET_CTL
),
229 // RES_CHRATR_CTL_FONTSIZE
230 MT_ED( "CharHeightComplex", STYLE
, FONT_SIZE_COMPLEX
, XML_TYPE_CHAR_HEIGHT
|MID_FLAG_MULTI_PROPERTY
, CTF_CHARHEIGHT_CTL
),
231 MT_ED( "CharPropHeightComplex",STYLE
, FONT_SIZE_COMPLEX
, XML_TYPE_CHAR_HEIGHT_PROP
|MID_FLAG_MULTI_PROPERTY
, CTF_CHARHEIGHT_REL_CTL
),
232 MT_ED( "CharDiffHeightComplex",STYLE
,FONT_SIZE_REL_COMPLEX
, XML_TYPE_CHAR_HEIGHT_DIFF
, CTF_CHARHEIGHT_DIFF_CTL
),
233 // RES_CHRATR_CTL_LANGUAGE
234 MT_ED( "CharLocaleComplex", STYLE
, RFC_LANGUAGE_TAG_COMPLEX
, XML_TYPE_CHAR_RFC_LANGUAGE_TAG
|MID_FLAG_MERGE_PROPERTY
, 0 ),
235 MT_ED( "CharLocaleComplex", STYLE
, LANGUAGE_COMPLEX
, XML_TYPE_CHAR_LANGUAGE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
236 MT_ED( "CharLocaleComplex", STYLE
, SCRIPT_COMPLEX
, XML_TYPE_CHAR_SCRIPT
|MID_FLAG_MERGE_PROPERTY
, 0 ),
237 MT_ED( "CharLocaleComplex", STYLE
, COUNTRY_COMPLEX
, XML_TYPE_CHAR_COUNTRY
|MID_FLAG_MERGE_PROPERTY
, 0 ),
238 // RES_CHRATR_CTL_POSTURE
239 MT_E( "CharPostureComplex", STYLE
, FONT_STYLE_COMPLEX
, XML_TYPE_TEXT_POSTURE
, 0 ),
240 // RES_CHRATR_CTL_WEIGHT
241 MT_E( "CharWeightComplex", STYLE
, FONT_WEIGHT_COMPLEX
, XML_TYPE_TEXT_WEIGHT
, 0 ),
243 MT_E( "CharRotation", STYLE
, TEXT_ROTATION_ANGLE
, XML_TYPE_TEXT_ROTATION_ANGLE
, 0 ),
244 MT_E( "CharRotationIsFitToLine", STYLE
, TEXT_ROTATION_SCALE
, XML_TYPE_TEXT_ROTATION_SCALE
, 0 ),
245 // RES_CHRATR_EMPHASIS_MARK
246 MT_E( "CharEmphasis", STYLE
, TEXT_EMPHASIZE
, XML_TYPE_TEXT_EMPHASIZE
, 0 ),
247 // RES_CHRATR_TWO_LINES
248 MT_E( "CharCombineIsOn", STYLE
, TEXT_COMBINE
, XML_TYPE_TEXT_COMBINE
, 0 ),
249 MT_E( "CharCombinePrefix", STYLE
, TEXT_COMBINE_START_CHAR
, XML_TYPE_TEXT_COMBINECHAR
, 0 ),
250 MT_E( "CharCombineSuffix", STYLE
, TEXT_COMBINE_END_CHAR
, XML_TYPE_TEXT_COMBINECHAR
, 0 ),
252 MT_E( "CharScaleWidth", STYLE
, TEXT_SCALE
, XML_TYPE_PERCENT16
, 0 ),
254 MT_E( "CharRelief", STYLE
, FONT_RELIEF
, XML_TYPE_TEXT_FONT_RELIEF
, 0 ),
256 MT_E( "CharHidden", TEXT
, DISPLAY
, XML_TYPE_TEXT_HIDDEN_AS_DISPLAY
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_TEXT_DISPLAY
),
257 // RES_CHRATR_OVERLINE
258 MT_E( "CharOverline", STYLE
, TEXT_OVERLINE_STYLE
, XML_TYPE_TEXT_OVERLINE_STYLE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
259 MT_E( "CharOverline", STYLE
, TEXT_OVERLINE_TYPE
, XML_TYPE_TEXT_OVERLINE_TYPE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
260 MT_E( "CharOverline", STYLE
, TEXT_OVERLINE_WIDTH
, XML_TYPE_TEXT_OVERLINE_WIDTH
|MID_FLAG_MERGE_PROPERTY
, 0 ),
261 MT_E( "CharOverlineColor", STYLE
, TEXT_OVERLINE_COLOR
, XML_TYPE_TEXT_OVERLINE_COLOR
|MID_FLAG_MULTI_PROPERTY
, 0 ),
262 MT_E( "CharOverlineHasColor", STYLE
, TEXT_OVERLINE_COLOR
, XML_TYPE_TEXT_OVERLINE_HASCOLOR
|MID_FLAG_MERGE_ATTRIBUTE
, 0 ),
264 MAP_EXT( "CharLeftBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_LINE_WIDTH
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARALLBORDERWIDTH
),
265 MAP_EXT( "CharLeftBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_LINE_WIDTH_LEFT
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARLEFTBORDERWIDTH
),
266 MAP_EXT( "CharRightBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_LINE_WIDTH_RIGHT
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARRIGHTBORDERWIDTH
),
267 MAP_EXT( "CharTopBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_LINE_WIDTH_TOP
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARTOPBORDERWIDTH
),
268 MAP_EXT( "CharBottomBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_LINE_WIDTH_BOTTOM
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARBOTTOMBORDERWIDTH
),
269 MAP_EXT_I( "CharLeftBorder", XML_NAMESPACE_STYLE
, XML_BORDER_LINE_WIDTH
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARALLBORDERWIDTH
),
270 MAP_EXT_I( "CharLeftBorder", XML_NAMESPACE_STYLE
, XML_BORDER_LINE_WIDTH_LEFT
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARLEFTBORDERWIDTH
),
271 MAP_EXT_I( "CharRightBorder", XML_NAMESPACE_STYLE
, XML_BORDER_LINE_WIDTH_RIGHT
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARRIGHTBORDERWIDTH
),
272 MAP_EXT_I( "CharTopBorder", XML_NAMESPACE_STYLE
, XML_BORDER_LINE_WIDTH_TOP
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARTOPBORDERWIDTH
),
273 MAP_EXT_I( "CharBottomBorder", XML_NAMESPACE_STYLE
, XML_BORDER_LINE_WIDTH_BOTTOM
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARBOTTOMBORDERWIDTH
),
275 MAP_EXT( "CharLeftBorderDistance", XML_NAMESPACE_LO_EXT
, XML_PADDING
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARALLBORDERDISTANCE
),
276 MAP_EXT( "CharLeftBorderDistance", XML_NAMESPACE_LO_EXT
, XML_PADDING_LEFT
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARLEFTBORDERDISTANCE
),
277 MAP_EXT( "CharRightBorderDistance", XML_NAMESPACE_LO_EXT
, XML_PADDING_RIGHT
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARRIGHTBORDERDISTANCE
),
278 MAP_EXT( "CharTopBorderDistance", XML_NAMESPACE_LO_EXT
, XML_PADDING_TOP
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARTOPBORDERDISTANCE
),
279 MAP_EXT( "CharBottomBorderDistance",XML_NAMESPACE_LO_EXT
, XML_PADDING_BOTTOM
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARBOTTOMBORDERDISTANCE
),
280 MAP_EXT_I( "CharLeftBorderDistance", XML_NAMESPACE_FO
, XML_PADDING
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARALLBORDERDISTANCE
),
281 MAP_EXT_I( "CharLeftBorderDistance", XML_NAMESPACE_FO
, XML_PADDING_LEFT
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARLEFTBORDERDISTANCE
),
282 MAP_EXT_I( "CharRightBorderDistance", XML_NAMESPACE_FO
, XML_PADDING_RIGHT
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARRIGHTBORDERDISTANCE
),
283 MAP_EXT_I( "CharTopBorderDistance", XML_NAMESPACE_FO
, XML_PADDING_TOP
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARTOPBORDERDISTANCE
),
284 MAP_EXT_I( "CharBottomBorderDistance",XML_NAMESPACE_FO
, XML_PADDING_BOTTOM
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARBOTTOMBORDERDISTANCE
),
286 MAP_EXT( "CharLeftBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARALLBORDER
),
287 MAP_EXT( "CharLeftBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_LEFT
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARLEFTBORDER
),
288 MAP_EXT( "CharRightBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_RIGHT
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARRIGHTBORDER
),
289 MAP_EXT( "CharTopBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_TOP
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARTOPBORDER
),
290 MAP_EXT( "CharBottomBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_BOTTOM
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARBOTTOMBORDER
),
291 MAP_EXT_I( "CharLeftBorder", XML_NAMESPACE_FO
, XML_BORDER
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARALLBORDER
),
292 MAP_EXT_I( "CharLeftBorder", XML_NAMESPACE_FO
, XML_BORDER_LEFT
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARLEFTBORDER
),
293 MAP_EXT_I( "CharRightBorder", XML_NAMESPACE_FO
, XML_BORDER_RIGHT
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARRIGHTBORDER
),
294 MAP_EXT_I( "CharTopBorder", XML_NAMESPACE_FO
, XML_BORDER_TOP
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARTOPBORDER
),
295 MAP_EXT_I( "CharBottomBorder", XML_NAMESPACE_FO
, XML_BORDER_BOTTOM
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARBOTTOMBORDER
),
297 MAP_EXT( "CharShadowFormat", XML_NAMESPACE_LO_EXT
, XML_SHADOW
, XML_TYPE_TEXT_SHADOW
|XML_TYPE_PROP_TEXT
, 0 ),
298 MAP_EXT_I( "CharShadowFormat", XML_NAMESPACE_STYLE
, XML_SHADOW
, XML_TYPE_TEXT_SHADOW
|XML_TYPE_PROP_TEXT
, 0 ),
299 // RES_CHRATR_HIGHLIGHT
300 MT_E( "CharHighlight", FO
, BACKGROUND_COLOR
, XML_TYPE_COLORTRANSPARENT
|MID_FLAG_MULTI_PROPERTY
| MID_FLAG_NO_PROPERTY_IMPORT
, CTF_CHAR_HIGHLIGHT
),
301 // RES_TXTATR_INETFMT
303 // RES_TXTATR_REFMARK
305 // RES_TXTATR_TOXMARK
307 // RES_TXTATR_CHARFMT
308 // M_E_SI( TEXT, style_name, RES_TXTATR_CHARFMT, 0 ),
309 // RES_TXTATR_CJK_RUBY
317 // RES_TXTATR_SOFTHYPH
319 // RES_TXTATR_HARDBLANK
322 // RES_PARATR_LINESPACING
323 MP_E( "ParaLineSpacing", FO
, LINE_HEIGHT
, XML_TYPE_LINE_SPACE_FIXED
, 0 ),
324 MP_E( "ParaLineSpacing", STYLE
, LINE_HEIGHT_AT_LEAST
, XML_TYPE_LINE_SPACE_MINIMUM
, 0 ),
325 MP_E( "ParaLineSpacing", STYLE
, LINE_SPACING
, XML_TYPE_LINE_SPACE_DISTANCE
, 0 ),
327 MP_E( "ParaAdjust", FO
, TEXT_ALIGN
, XML_TYPE_TEXT_ADJUST
, CTF_SD_SHAPE_PARA_ADJUST
),
328 MP_E( "ParaLastLineAdjust", FO
, TEXT_ALIGN_LAST
, XML_TYPE_TEXT_ADJUSTLAST
, CTF_PARA_ADJUSTLAST
),
329 MP_E( "ParaExpandSingleWord",STYLE
, JUSTIFY_SINGLE_WORD
,XML_TYPE_BOOL
, 0 ),
331 MP_E( "ParaSplit", FO
, KEEP_TOGETHER
, XML_TYPE_TEXT_SPLIT
, 0 ),
332 // RES_PARATR_ORPHANS
333 MP_E( "ParaOrphans", FO
, ORPHANS
, XML_TYPE_NUMBER8
, 0 ),
335 MP_E( "ParaWidows", FO
, WIDOWS
, XML_TYPE_NUMBER8
, 0 ),
336 // RES_PARATR_TABSTOP
337 MP_ED( "ParaTabStops", STYLE
, TAB_STOPS
, MID_FLAG_ELEMENT_ITEM
|XML_TYPE_TEXT_TABSTOP
, CTF_TABSTOP
), // this is not really a string!
338 // RES_PARATR_HYPHENZONE
339 MT_E( "ParaIsHyphenation", FO
, HYPHENATE
, XML_TYPE_BOOL
, 0 ),
340 MT_E( "ParaHyphenationMaxLeadingChars", FO
, HYPHENATION_REMAIN_CHAR_COUNT
, XML_TYPE_NUMBER16_NO_ZERO
, 0 ),
341 MT_E( "ParaHyphenationMaxTrailingChars",FO
, HYPHENATION_PUSH_CHAR_COUNT
, XML_TYPE_NUMBER16_NO_ZERO
, 0 ),
342 MP_E( "ParaHyphenationMaxHyphens", FO
, HYPHENATION_LADDER_COUNT
, XML_TYPE_NUMBER16_NONE
, 0 ),
343 MAP_EXT( "ParaHyphenationNoCaps", XML_NAMESPACE_LO_EXT
, XML_HYPHENATION_NO_CAPS
, XML_TYPE_BOOL
|XML_TYPE_PROP_TEXT
, 0 ),
345 MP_E( "DropCapWholeWord", STYLE
, LENGTH
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_BOOL
, CTF_DROPCAPWHOLEWORD
),
346 MP_E( "DropCapCharStyleName", STYLE
, STYLE_NAME
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_STRING
, CTF_DROPCAPCHARSTYLE
),
347 MP_E( "DropCapFormat", STYLE
, DROP_CAP
, MID_FLAG_ELEMENT_ITEM
|XML_TYPE_TEXT_DROPCAP
, CTF_DROPCAPFORMAT
),
348 // RES_PARATR_REGISTER
349 MP_E( "ParaRegisterModeActive", STYLE
, REGISTER_TRUE
, XML_TYPE_BOOL
, 0 ),
350 // RES_PARATR_NUMRULE
351 MP_E( "NumberingStyleName", STYLE
, LIST_STYLE_NAME
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_STYLENAME
, CTF_NUMBERINGSTYLENAME
),
361 MP_E( "ParaFirstLineIndent", FO
, TEXT_INDENT
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_PARAFIRSTLINE
),
362 MP_E( "ParaFirstLineIndentRelative", FO
, TEXT_INDENT
, XML_TYPE_PERCENT
, CTF_PARAFIRSTLINE_REL
),
363 MP_E( "ParaIsAutoFirstLineIndent", STYLE
, AUTO_TEXT_INDENT
, XML_TYPE_BOOL
, 0 ),
365 MP_E( "PageDescName", STYLE
, MASTER_PAGE_NAME
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_STYLENAME
, CTF_PAGEDESCNAME
),
366 MP_E( "PageNumberOffset", STYLE
, PAGE_NUMBER
, XML_TYPE_NUMBER16_AUTO
|MID_FLAG_SPECIAL_ITEM_EXPORT
, CTF_PAGENUMBEROFFSET
),
367 // RES_BREAK : TODO: does this work?
368 MP_E( "BreakType", FO
, BREAK_BEFORE
, XML_TYPE_TEXT_BREAKBEFORE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
369 MP_E( "BreakType", FO
, BREAK_AFTER
, XML_TYPE_TEXT_BREAKAFTER
, 0 ),
391 // DO NOT REORDER these!
392 MP_E( "ParaBackColor", FO
, BACKGROUND_COLOR
, XML_TYPE_COLORTRANSPARENT
|MID_FLAG_MULTI_PROPERTY
, 0 ),
393 MP_E( "ParaBackTransparent", FO
, BACKGROUND_COLOR
, XML_TYPE_ISTRANSPARENT
|MID_FLAG_MERGE_ATTRIBUTE
, 0 ),
394 MP_E( "ParaBackGraphicLocation", STYLE
, POSITION
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_BUILDIN_CMP_ONLY
, CTF_BACKGROUND_POS
),
395 MP_E( "ParaBackGraphicFilter",STYLE
, FILTER_NAME
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_STRING
, CTF_BACKGROUND_FILTER
),
396 MP_E( "ParaBackGraphic", STYLE
, BACKGROUND_IMAGE
, MID_FLAG_ELEMENT_ITEM
|XML_TYPE_GRAPHIC
, CTF_BACKGROUND_URL
),
399 MP_E( "LeftBorder", STYLE
, BORDER_LINE_WIDTH
, XML_TYPE_BORDER_WIDTH
, CTF_ALLBORDERWIDTH
),
400 MP_E( "LeftBorder", STYLE
, BORDER_LINE_WIDTH_LEFT
, XML_TYPE_BORDER_WIDTH
, CTF_LEFTBORDERWIDTH
),
401 MP_E( "RightBorder", STYLE
, BORDER_LINE_WIDTH_RIGHT
, XML_TYPE_BORDER_WIDTH
, CTF_RIGHTBORDERWIDTH
),
402 MP_E( "TopBorder", STYLE
, BORDER_LINE_WIDTH_TOP
, XML_TYPE_BORDER_WIDTH
, CTF_TOPBORDERWIDTH
),
403 MP_E( "BottomBorder", STYLE
, BORDER_LINE_WIDTH_BOTTOM
, XML_TYPE_BORDER_WIDTH
, CTF_BOTTOMBORDERWIDTH
),
405 MP_E( "LeftBorderDistance", FO
, PADDING
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_ALLBORDERDISTANCE
), // need special import filtering
406 MP_E( "LeftBorderDistance", FO
, PADDING_LEFT
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_LEFTBORDERDISTANCE
),
407 MP_E( "RightBorderDistance", FO
, PADDING_RIGHT
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_RIGHTBORDERDISTANCE
),
408 MP_E( "TopBorderDistance", FO
, PADDING_TOP
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_TOPBORDERDISTANCE
),
409 MP_E( "BottomBorderDistance",FO
, PADDING_BOTTOM
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_BOTTOMBORDERDISTANCE
),
411 MP_E( "LeftBorder", FO
, BORDER
, XML_TYPE_BORDER
, CTF_ALLBORDER
),
412 MP_E( "LeftBorder", FO
, BORDER_LEFT
, XML_TYPE_BORDER
, CTF_LEFTBORDER
),
413 MP_E( "RightBorder", FO
, BORDER_RIGHT
, XML_TYPE_BORDER
, CTF_RIGHTBORDER
),
414 MP_E( "TopBorder", FO
, BORDER_TOP
, XML_TYPE_BORDER
, CTF_TOPBORDER
),
415 MP_E( "BottomBorder", FO
, BORDER_BOTTOM
, XML_TYPE_BORDER
, CTF_BOTTOMBORDER
),
417 MP_E( "ParaShadowFormat", STYLE
, SHADOW
, XML_TYPE_TEXT_SHADOW
, 0 ),
423 MP_E( "ParaKeepTogether", FO
, KEEP_WITH_NEXT
, XML_TYPE_TEXT_KEEP
, 0 ),
426 // RES_EDIT_IN_READONLY
434 MP_E( "ParaLineNumberCount", TEXT
, NUMBER_LINES
, XML_TYPE_BOOL
, 0 ),
435 MP_E( "ParaLineNumberStartValue", TEXT
, LINE_NUMBER
, XML_TYPE_NUMBER
, 0 ),
441 MP_ED( "ParaIsCharacterDistance", STYLE
, TEXT_AUTOSPACE
, XML_TYPE_TEXT_AUTOSPACE
, 0 ),
442 MP_ED( "ParaIsHangingPunctuation", STYLE
, PUNCTUATION_WRAP
, XML_TYPE_TEXT_PUNCTUATION_WRAP
, 0 ),
443 MP_ED( "ParaIsForbiddenRules", STYLE
, LINE_BREAK
, XML_TYPE_TEXT_LINE_BREAK
, 0 ),
444 MP_E( "TabStopDistance", STYLE
, TAB_STOP_DISTANCE
, XML_TYPE_MEASURE
, 0 ),
446 // RES_PARATR_VERTALIGN
447 MP_E( "ParaVertAlignment", STYLE
, VERTICAL_ALIGN
, XML_TYPE_TEXT_VERTICAL_ALIGN
, 0 ),
449 // RES_PARATR_SNAPTOGRID
450 MP_E( "SnapToGrid", STYLE
, SNAP_TO_LAYOUT_GRID
, XML_TYPE_BOOL
, 0 ),
452 MP_ED( "WritingMode", STYLE
, WRITING_MODE
, XML_TYPE_TEXT_WRITING_MODE_WITH_DEFAULT
, CTF_TEXTWRITINGMODE
),
454 MP_E( "ParaIsConnectBorder", STYLE
, JOIN_BORDER
, XML_TYPE_BOOL
, 0 ),
456 MP_E( "DefaultOutlineLevel", STYLE
, DEFAULT_OUTLINE_LEVEL
, XML_TYPE_TEXT_NUMBER8_ONE_BASED
|MID_FLAG_SPECIAL_ITEM_EXPORT
|MID_FLAG_NO_PROPERTY_IMPORT
, CTF_DEFAULT_OUTLINE_LEVEL
),
458 MP_ED( "FontIndependentLineSpacing", STYLE
, FONT_INDEPENDENT_LINE_SPACING
, XML_TYPE_BOOL
, 0 ),
464 XMLPropertyMapEntry
const aXMLAdditionalTextDefaultsMap
[] =
466 // RES_FOLLOW_TEXT_FLOW - DVO #i18732#
467 MG_ED( "IsFollowingTextFlow", STYLE
, FLOW_WITH_TEXT
, XML_TYPE_BOOL
, 0 ),
469 // #i28701# - RES_WRAP_INFLUENCE_ON_OBJPOS
470 MG_ED( "WrapInfluenceOnPosition", DRAW
, WRAP_INFLUENCE_ON_POSITION
, XML_TYPE_WRAP_INFLUENCE_ON_POSITION
, 0 ),
475 XMLPropertyMapEntry
const aXMLTextPropMap
[] =
477 // RES_CHRATR_CASEMAP
478 MT_E( "CharCaseMap", FO
, FONT_VARIANT
, XML_TYPE_TEXT_CASEMAP_VAR
, 0 ),
479 MT_E( "CharCaseMap", FO
, TEXT_TRANSFORM
, XML_TYPE_TEXT_CASEMAP
, 0 ),
481 MT_ED( "CharColor", FO
, COLOR
, XML_TYPE_COLORAUTO
|MID_FLAG_MERGE_PROPERTY
, 0 ),
482 MT_ED( "CharColor", STYLE
, USE_WINDOW_FONT_COLOR
, XML_TYPE_ISAUTOCOLOR
|MID_FLAG_MERGE_PROPERTY
, 0 ),
483 MAP_EXT_I("CharTransparence", XML_NAMESPACE_DRAW
, XML_OPACITY
, XML_TYPE_NEG_PERCENT16
| XML_TYPE_PROP_TEXT
, 0),
484 MAP_EXT("CharTransparence", XML_NAMESPACE_LO_EXT
, XML_OPACITY
, XML_TYPE_NEG_PERCENT16
| XML_TYPE_PROP_TEXT
, 0),
485 // RES_CHRATR_CONTOUR
486 MT_E( "CharContoured", STYLE
, TEXT_OUTLINE
, XML_TYPE_BOOL
, 0 ),
487 // RES_CHRATR_CROSSEDOUT
488 MT_E( "CharStrikeout", STYLE
, TEXT_LINE_THROUGH_STYLE
, XML_TYPE_TEXT_CROSSEDOUT_STYLE
|MID_FLAG_MERGE_PROPERTY
, 0),
489 MT_E( "CharStrikeout", STYLE
, TEXT_LINE_THROUGH_TYPE
, XML_TYPE_TEXT_CROSSEDOUT_TYPE
|MID_FLAG_MERGE_PROPERTY
, 0),
490 MT_E( "CharStrikeout", STYLE
, TEXT_LINE_THROUGH_WIDTH
, XML_TYPE_TEXT_CROSSEDOUT_WIDTH
|MID_FLAG_MERGE_PROPERTY
, 0),
491 MT_E( "CharStrikeout", STYLE
, TEXT_LINE_THROUGH_TEXT
, XML_TYPE_TEXT_CROSSEDOUT_TEXT
|MID_FLAG_MERGE_PROPERTY
, 0),
492 // RES_CHRATR_ESCAPEMENT
493 MT_E( "CharEscapement", STYLE
, TEXT_POSITION
, XML_TYPE_TEXT_ESCAPEMENT
|MID_FLAG_MERGE_ATTRIBUTE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
494 MT_E( "CharEscapementHeight", STYLE
, TEXT_POSITION
, XML_TYPE_TEXT_ESCAPEMENT_HEIGHT
|MID_FLAG_MERGE_ATTRIBUTE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
496 MT_ED( "CharFontName", STYLE
, FONT_NAME
, XML_TYPE_STRING
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTNAME
),
497 MT_ED( "CharFontName", FO
, FONT_FAMILY
, XML_TYPE_TEXT_FONTFAMILYNAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTFAMILYNAME
),
498 MT_ED( "CharFontStyleName",STYLE
, FONT_STYLE_NAME
, XML_TYPE_STRING
, CTF_FONTSTYLENAME
),
499 MT_ED( "CharFontFamily", STYLE
, FONT_FAMILY_GENERIC
,XML_TYPE_TEXT_FONTFAMILY
, CTF_FONTFAMILY
),
500 MT_ED( "CharFontPitch", STYLE
, FONT_PITCH
, XML_TYPE_TEXT_FONTPITCH
, CTF_FONTPITCH
),
501 MT_ED( "CharFontCharSet", STYLE
, FONT_CHARSET
, XML_TYPE_TEXT_FONTENCODING
, CTF_FONTCHARSET
),
502 // RES_CHRATR_FONTSIZE
503 MT_ED( "CharHeight", FO
, FONT_SIZE
, XML_TYPE_CHAR_HEIGHT
|MID_FLAG_MULTI_PROPERTY
, CTF_CHARHEIGHT
),
504 MT_ED( "CharPropHeight",FO
, FONT_SIZE
, XML_TYPE_CHAR_HEIGHT_PROP
|MID_FLAG_MULTI_PROPERTY
, CTF_CHARHEIGHT_REL
),
505 MT_ED( "CharDiffHeight",STYLE
,FONT_SIZE_REL
, XML_TYPE_CHAR_HEIGHT_DIFF
, CTF_CHARHEIGHT_DIFF
),
506 // RES_CHRATR_KERNING
507 MT_E( "CharKerning", FO
, LETTER_SPACING
, XML_TYPE_TEXT_KERNING
, 0 ),
508 // RES_CHRATR_LANGUAGE
509 MT_ED( "CharLocale", STYLE
, RFC_LANGUAGE_TAG
, XML_TYPE_CHAR_RFC_LANGUAGE_TAG
|MID_FLAG_MERGE_PROPERTY
, 0 ),
510 MT_ED( "CharLocale", FO
, LANGUAGE
, XML_TYPE_CHAR_LANGUAGE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
511 MT_ED( "CharLocale", FO
, SCRIPT
, XML_TYPE_CHAR_SCRIPT
|MID_FLAG_MERGE_PROPERTY
, 0 ),
512 MT_ED( "CharLocale", FO
, COUNTRY
, XML_TYPE_CHAR_COUNTRY
|MID_FLAG_MERGE_PROPERTY
, 0 ),
513 // RES_CHRATR_POSTURE
514 MT_E( "CharPosture", FO
, FONT_STYLE
, XML_TYPE_TEXT_POSTURE
, 0 ),
515 // RES_CHRATR_UNUSED1
516 // RES_CHRATR_SHADOWED
517 MT_E( "CharShadowed", FO
, TEXT_SHADOW
, XML_TYPE_TEXT_SHADOWED
, 0 ),
518 // VALIDATED UP TO THIS LINE
519 // RES_CHRATR_UNDERLINE
520 MT_E( "CharUnderline", STYLE
, TEXT_UNDERLINE_STYLE
, XML_TYPE_TEXT_UNDERLINE_STYLE
|MID_FLAG_MERGE_PROPERTY
, CTF_UNDERLINE
),
521 MT_E( "CharUnderline", STYLE
, TEXT_UNDERLINE_TYPE
, XML_TYPE_TEXT_UNDERLINE_TYPE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
522 MT_E( "CharUnderline", STYLE
, TEXT_UNDERLINE_WIDTH
, XML_TYPE_TEXT_UNDERLINE_WIDTH
|MID_FLAG_MERGE_PROPERTY
, 0 ),
523 MT_E( "CharUnderlineColor", STYLE
, TEXT_UNDERLINE_COLOR
, XML_TYPE_TEXT_UNDERLINE_COLOR
|MID_FLAG_MULTI_PROPERTY
, CTF_UNDERLINE_COLOR
),
524 MT_E( "CharUnderlineHasColor", STYLE
, TEXT_UNDERLINE_COLOR
, XML_TYPE_TEXT_UNDERLINE_HASCOLOR
|MID_FLAG_MERGE_ATTRIBUTE
, CTF_UNDERLINE_HASCOLOR
),
526 MT_E( "CharWeight", FO
, FONT_WEIGHT
, XML_TYPE_TEXT_WEIGHT
, 0 ),
528 { "Rsid", sizeof("Rsid")-1, XML_NAMESPACE_OFFICE_EXT
, XML_RSID
, XML_TYPE_HEX
|XML_TYPE_PROP_TEXT
, 0, SvtSaveOptions::ODFSVER_FUTURE_EXTENDED
, false },
530 { "ParRsid", sizeof("ParRsid")-1, XML_NAMESPACE_OFFICE_EXT
, XML_PARRSID
, XML_TYPE_HEX
|XML_TYPE_PROP_TEXT
, 0, SvtSaveOptions::ODFSVER_FUTURE_EXTENDED
, false },
531 // RES_CHRATR_WORDLINEMODE
532 MT_E( "CharWordMode", STYLE
, TEXT_UNDERLINE_MODE
, XML_TYPE_TEXT_LINE_MODE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
533 MT_E( "CharWordMode", STYLE
, TEXT_OVERLINE_MODE
, XML_TYPE_TEXT_LINE_MODE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
534 MT_E( "CharWordMode", STYLE
, TEXT_LINE_THROUGH_MODE
, XML_TYPE_TEXT_LINE_MODE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
535 // RES_CHRATR_AUTOKERN
536 MT_E( "CharAutoKerning", STYLE
, LETTER_KERNING
, XML_TYPE_BOOL
, 0 ),
538 MT_E( "CharFlash", STYLE
, TEXT_BLINKING
, XML_TYPE_BOOL
, 0 ),
539 // RES_CHRATR_NOHYPHEN
541 // RES_CHRATR_UNUSED2
542 // RES_CHRATR_BACKGROUND
543 MT_E( "CharBackColor", FO
, BACKGROUND_COLOR
, XML_TYPE_COLORTRANSPARENT
|MID_FLAG_MULTI_PROPERTY
, CTF_CHAR_BACKGROUND
),
544 MT_E( "CharBackTransparent", FO
, BACKGROUND_COLOR
, XML_TYPE_ISTRANSPARENT
|MID_FLAG_MERGE_ATTRIBUTE
, CTF_CHAR_BACKGROUND_TRANSPARENCY
),
545 { "CharShadingValue", sizeof("CharShadingValue")-1, XML_NAMESPACE_LO_EXT
, XML_CHAR_SHADING_VALUE
, XML_TYPE_NUMBER
|XML_TYPE_PROP_TEXT
, 0, SvtSaveOptions::ODFSVER_FUTURE_EXTENDED
, false },
546 MT_E( "CharBackColor", FO
, TEXT_BACKGROUND_COLOR
, XML_TYPE_COLOR
|MID_FLAG_SPECIAL_ITEM_EXPORT
, CTF_OLDTEXTBACKGROUND
),
547 // RES_CHRATR_CJK_FONT
548 MT_ED( "CharFontNameAsian", STYLE
, FONT_NAME_ASIAN
, XML_TYPE_STRING
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTNAME_CJK
),
549 MT_ED( "CharFontNameAsian", STYLE
, FONT_FAMILY_ASIAN
, XML_TYPE_TEXT_FONTFAMILYNAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTFAMILYNAME_CJK
),
550 MT_ED( "CharFontStyleNameAsian",STYLE
, FONT_STYLE_NAME_ASIAN
, XML_TYPE_STRING
, CTF_FONTSTYLENAME_CJK
),
551 MT_ED( "CharFontFamilyAsian", STYLE
, FONT_FAMILY_GENERIC_ASIAN
,XML_TYPE_TEXT_FONTFAMILY
, CTF_FONTFAMILY_CJK
),
552 MT_ED( "CharFontPitchAsian", STYLE
, FONT_PITCH_ASIAN
, XML_TYPE_TEXT_FONTPITCH
, CTF_FONTPITCH_CJK
),
553 MT_ED( "CharFontCharSetAsian", STYLE
, FONT_CHARSET_ASIAN
, XML_TYPE_TEXT_FONTENCODING
, CTF_FONTCHARSET_CJK
),
554 // RES_CHRATR_CJK_FONTSIZE
555 MT_ED( "CharHeightAsian", STYLE
, FONT_SIZE_ASIAN
, XML_TYPE_CHAR_HEIGHT
|MID_FLAG_MULTI_PROPERTY
, CTF_CHARHEIGHT_CJK
),
556 MT_ED( "CharPropHeightAsian",STYLE
, FONT_SIZE_ASIAN
, XML_TYPE_CHAR_HEIGHT_PROP
|MID_FLAG_MULTI_PROPERTY
, CTF_CHARHEIGHT_REL_CJK
),
557 MT_ED( "CharDiffHeightAsian",STYLE
,FONT_SIZE_REL_ASIAN
, XML_TYPE_CHAR_HEIGHT_DIFF
, CTF_CHARHEIGHT_DIFF_CJK
),
558 // RES_CHRATR_CJK_LANGUAGE
559 MT_ED( "CharLocaleAsian", STYLE
, RFC_LANGUAGE_TAG_ASIAN
, XML_TYPE_CHAR_RFC_LANGUAGE_TAG
|MID_FLAG_MERGE_PROPERTY
, 0 ),
560 MT_ED( "CharLocaleAsian", STYLE
, LANGUAGE_ASIAN
, XML_TYPE_CHAR_LANGUAGE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
561 MT_ED( "CharLocaleAsian", STYLE
, SCRIPT_ASIAN
, XML_TYPE_CHAR_SCRIPT
|MID_FLAG_MERGE_PROPERTY
, 0 ),
562 MT_ED( "CharLocaleAsian", STYLE
, COUNTRY_ASIAN
, XML_TYPE_CHAR_COUNTRY
|MID_FLAG_MERGE_PROPERTY
, 0 ),
563 // RES_CHRATR_CJK_POSTURE
564 MT_E( "CharPostureAsian", STYLE
, FONT_STYLE_ASIAN
, XML_TYPE_TEXT_POSTURE
, 0 ),
565 // RES_CHRATR_CJK_WEIGHT
566 MT_E( "CharWeightAsian", STYLE
, FONT_WEIGHT_ASIAN
, XML_TYPE_TEXT_WEIGHT
, 0 ),
567 // RES_CHRATR_CTL_FONT
568 MT_ED( "CharFontNameComplex", STYLE
, FONT_NAME_COMPLEX
, XML_TYPE_STRING
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTNAME_CTL
),
569 MT_ED( "CharFontNameComplex", STYLE
, FONT_FAMILY_COMPLEX
, XML_TYPE_TEXT_FONTFAMILYNAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTFAMILYNAME_CTL
),
570 MT_ED( "CharFontStyleNameComplex",STYLE
, FONT_STYLE_NAME_COMPLEX
, XML_TYPE_STRING
, CTF_FONTSTYLENAME_CTL
),
571 MT_ED( "CharFontFamilyComplex", STYLE
, FONT_FAMILY_GENERIC_COMPLEX
,XML_TYPE_TEXT_FONTFAMILY
, CTF_FONTFAMILY_CTL
),
572 MT_ED( "CharFontPitchComplex", STYLE
, FONT_PITCH_COMPLEX
, XML_TYPE_TEXT_FONTPITCH
, CTF_FONTPITCH_CTL
),
573 MT_ED( "CharFontCharSetComplex", STYLE
, FONT_CHARSET_COMPLEX
, XML_TYPE_TEXT_FONTENCODING
, CTF_FONTCHARSET_CTL
),
574 // RES_CHRATR_CTL_FONTSIZE
575 MT_ED( "CharHeightComplex", STYLE
, FONT_SIZE_COMPLEX
, XML_TYPE_CHAR_HEIGHT
|MID_FLAG_MULTI_PROPERTY
, CTF_CHARHEIGHT_CTL
),
576 MT_ED( "CharPropHeightComplex",STYLE
, FONT_SIZE_COMPLEX
, XML_TYPE_CHAR_HEIGHT_PROP
|MID_FLAG_MULTI_PROPERTY
, CTF_CHARHEIGHT_REL_CTL
),
577 MT_ED( "CharDiffHeightComplex",STYLE
,FONT_SIZE_REL_COMPLEX
, XML_TYPE_CHAR_HEIGHT_DIFF
, CTF_CHARHEIGHT_DIFF_CTL
),
578 // RES_CHRATR_CTL_LANGUAGE
579 MT_ED( "CharLocaleComplex", STYLE
, RFC_LANGUAGE_TAG_COMPLEX
, XML_TYPE_CHAR_RFC_LANGUAGE_TAG
|MID_FLAG_MERGE_PROPERTY
, 0 ),
580 MT_ED( "CharLocaleComplex", STYLE
, LANGUAGE_COMPLEX
, XML_TYPE_CHAR_LANGUAGE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
581 MT_ED( "CharLocaleComplex", STYLE
, SCRIPT_COMPLEX
, XML_TYPE_CHAR_SCRIPT
|MID_FLAG_MERGE_PROPERTY
, 0 ),
582 MT_ED( "CharLocaleComplex", STYLE
, COUNTRY_COMPLEX
, XML_TYPE_CHAR_COUNTRY
|MID_FLAG_MERGE_PROPERTY
, 0 ),
583 // RES_CHRATR_CTL_POSTURE
584 MT_E( "CharPostureComplex", STYLE
, FONT_STYLE_COMPLEX
, XML_TYPE_TEXT_POSTURE
, 0 ),
585 // RES_CHRATR_CTL_WEIGHT
586 MT_E( "CharWeightComplex", STYLE
, FONT_WEIGHT_COMPLEX
, XML_TYPE_TEXT_WEIGHT
, 0 ),
588 MT_E( "CharRotation", STYLE
, TEXT_ROTATION_ANGLE
, XML_TYPE_TEXT_ROTATION_ANGLE
, 0 ),
589 MT_E( "CharRotationIsFitToLine", STYLE
, TEXT_ROTATION_SCALE
, XML_TYPE_TEXT_ROTATION_SCALE
, 0 ),
590 // RES_CHRATR_EMPHASIS_MARK
591 MT_E( "CharEmphasis", STYLE
, TEXT_EMPHASIZE
, XML_TYPE_TEXT_EMPHASIZE
, 0 ),
592 // RES_CHRATR_TWO_LINES
593 MT_E( "CharCombineIsOn", STYLE
, TEXT_COMBINE
, XML_TYPE_TEXT_COMBINE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
594 MT_E( "CharCombinePrefix", STYLE
, TEXT_COMBINE_START_CHAR
, XML_TYPE_TEXT_COMBINECHAR
, 0 ),
595 MT_E( "CharCombineSuffix", STYLE
, TEXT_COMBINE_END_CHAR
, XML_TYPE_TEXT_COMBINECHAR
, 0 ),
597 MT_E( "CharScaleWidth", STYLE
, TEXT_SCALE
, XML_TYPE_PERCENT16
, 0 ),
598 // combined characters field, does not correspond to a property
599 MT_E( "", STYLE
, TEXT_COMBINE
, XML_TYPE_TEXT_COMBINE_CHARACTERS
|MID_FLAG_NO_PROPERTY
, CTF_COMBINED_CHARACTERS_FIELD
),
601 MT_E( "CharRelief", STYLE
, FONT_RELIEF
, XML_TYPE_TEXT_FONT_RELIEF
, 0 ),
603 MT_E( "CharHidden", TEXT
, DISPLAY
, XML_TYPE_TEXT_HIDDEN_AS_DISPLAY
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_TEXT_DISPLAY
),
604 // RES_CHRATR_OVERLINE
605 MT_E( "CharOverline", STYLE
, TEXT_OVERLINE_STYLE
, XML_TYPE_TEXT_OVERLINE_STYLE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
606 MT_E( "CharOverline", STYLE
, TEXT_OVERLINE_TYPE
, XML_TYPE_TEXT_OVERLINE_TYPE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
607 MT_E( "CharOverline", STYLE
, TEXT_OVERLINE_WIDTH
, XML_TYPE_TEXT_OVERLINE_WIDTH
|MID_FLAG_MERGE_PROPERTY
, 0 ),
608 MT_E( "CharOverlineColor", STYLE
, TEXT_OVERLINE_COLOR
, XML_TYPE_TEXT_OVERLINE_COLOR
|MID_FLAG_MULTI_PROPERTY
, 0 ),
609 MT_E( "CharOverlineHasColor", STYLE
, TEXT_OVERLINE_COLOR
, XML_TYPE_TEXT_OVERLINE_HASCOLOR
|MID_FLAG_MERGE_ATTRIBUTE
, 0 ),
611 MAP_EXT( "CharLeftBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_LINE_WIDTH
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARALLBORDERWIDTH
),
612 MAP_EXT( "CharLeftBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_LINE_WIDTH_LEFT
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARLEFTBORDERWIDTH
),
613 MAP_EXT( "CharRightBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_LINE_WIDTH_RIGHT
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARRIGHTBORDERWIDTH
),
614 MAP_EXT( "CharTopBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_LINE_WIDTH_TOP
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARTOPBORDERWIDTH
),
615 MAP_EXT( "CharBottomBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_LINE_WIDTH_BOTTOM
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARBOTTOMBORDERWIDTH
),
616 MAP_EXT_I( "CharLeftBorder", XML_NAMESPACE_STYLE
, XML_BORDER_LINE_WIDTH
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARALLBORDERWIDTH
),
617 MAP_EXT_I( "CharLeftBorder", XML_NAMESPACE_STYLE
, XML_BORDER_LINE_WIDTH_LEFT
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARLEFTBORDERWIDTH
),
618 MAP_EXT_I( "CharRightBorder", XML_NAMESPACE_STYLE
, XML_BORDER_LINE_WIDTH_RIGHT
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARRIGHTBORDERWIDTH
),
619 MAP_EXT_I( "CharTopBorder", XML_NAMESPACE_STYLE
, XML_BORDER_LINE_WIDTH_TOP
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARTOPBORDERWIDTH
),
620 MAP_EXT_I( "CharBottomBorder", XML_NAMESPACE_STYLE
, XML_BORDER_LINE_WIDTH_BOTTOM
, XML_TYPE_BORDER_WIDTH
|XML_TYPE_PROP_TEXT
, CTF_CHARBOTTOMBORDERWIDTH
),
622 MAP_EXT( "CharLeftBorderDistance", XML_NAMESPACE_LO_EXT
, XML_PADDING
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARALLBORDERDISTANCE
),
623 MAP_EXT( "CharLeftBorderDistance", XML_NAMESPACE_LO_EXT
, XML_PADDING_LEFT
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARLEFTBORDERDISTANCE
),
624 MAP_EXT( "CharRightBorderDistance", XML_NAMESPACE_LO_EXT
, XML_PADDING_RIGHT
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARRIGHTBORDERDISTANCE
),
625 MAP_EXT( "CharTopBorderDistance", XML_NAMESPACE_LO_EXT
, XML_PADDING_TOP
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARTOPBORDERDISTANCE
),
626 MAP_EXT( "CharBottomBorderDistance",XML_NAMESPACE_LO_EXT
, XML_PADDING_BOTTOM
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARBOTTOMBORDERDISTANCE
),
627 MAP_EXT_I( "CharLeftBorderDistance", XML_NAMESPACE_FO
, XML_PADDING
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARALLBORDERDISTANCE
),
628 MAP_EXT_I( "CharLeftBorderDistance", XML_NAMESPACE_FO
, XML_PADDING_LEFT
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARLEFTBORDERDISTANCE
),
629 MAP_EXT_I( "CharRightBorderDistance", XML_NAMESPACE_FO
, XML_PADDING_RIGHT
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARRIGHTBORDERDISTANCE
),
630 MAP_EXT_I( "CharTopBorderDistance", XML_NAMESPACE_FO
, XML_PADDING_TOP
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARTOPBORDERDISTANCE
),
631 MAP_EXT_I( "CharBottomBorderDistance",XML_NAMESPACE_FO
, XML_PADDING_BOTTOM
, XML_TYPE_MEASURE
|XML_TYPE_PROP_TEXT
, CTF_CHARBOTTOMBORDERDISTANCE
),
633 MAP_EXT( "CharLeftBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARALLBORDER
),
634 MAP_EXT( "CharLeftBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_LEFT
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARLEFTBORDER
),
635 MAP_EXT( "CharRightBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_RIGHT
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARRIGHTBORDER
),
636 MAP_EXT( "CharTopBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_TOP
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARTOPBORDER
),
637 MAP_EXT( "CharBottomBorder", XML_NAMESPACE_LO_EXT
, XML_BORDER_BOTTOM
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARBOTTOMBORDER
),
638 MAP_EXT_I( "CharLeftBorder", XML_NAMESPACE_FO
, XML_BORDER
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARALLBORDER
),
639 MAP_EXT_I( "CharLeftBorder", XML_NAMESPACE_FO
, XML_BORDER_LEFT
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARLEFTBORDER
),
640 MAP_EXT_I( "CharRightBorder", XML_NAMESPACE_FO
, XML_BORDER_RIGHT
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARRIGHTBORDER
),
641 MAP_EXT_I( "CharTopBorder", XML_NAMESPACE_FO
, XML_BORDER_TOP
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARTOPBORDER
),
642 MAP_EXT_I( "CharBottomBorder", XML_NAMESPACE_FO
, XML_BORDER_BOTTOM
, XML_TYPE_BORDER
|XML_TYPE_PROP_TEXT
, CTF_CHARBOTTOMBORDER
),
644 MAP_EXT( "CharShadowFormat", XML_NAMESPACE_LO_EXT
, XML_SHADOW
, XML_TYPE_TEXT_SHADOW
|XML_TYPE_PROP_TEXT
, 0 ),
645 MAP_EXT_I( "CharShadowFormat", XML_NAMESPACE_STYLE
, XML_SHADOW
, XML_TYPE_TEXT_SHADOW
|XML_TYPE_PROP_TEXT
, 0 ),
646 // RES_CHRATR_HIGHLIGHT
647 MT_E( "CharHighlight", FO
, BACKGROUND_COLOR
, XML_TYPE_COLORTRANSPARENT
|MID_FLAG_MULTI_PROPERTY
|MID_FLAG_NO_PROPERTY_IMPORT
, CTF_CHAR_HIGHLIGHT
),
648 // RES_TXTATR_INETFMT
649 MT_E( "HyperLinkURL", TEXT
, XMLNS
, XML_TYPE_STRING
|MID_FLAG_NO_PROPERTY_IMPORT
, CTF_HYPERLINK_URL
),
650 // RES_TXTATR_REFMARK
652 // RES_TXTATR_TOXMARK
654 // RES_TXTATR_CHARFMT
655 MT_E( "CharStyleName", TEXT
, STYLE_NAME
, XML_TYPE_STRING
|MID_FLAG_NO_PROPERTY_IMPORT
, CTF_CHAR_STYLE_NAME
),
656 // RES_TXTATR_CJK_RUBY
664 // RES_TXTATR_SOFTHYPH
666 // RES_TXTATR_HARDBLANK
668 // RES_UNKNOWNATR_CONTAINER
669 MT_E( "TextUserDefinedAttributes", TEXT
, XMLNS
, XML_TYPE_ATTRIBUTE_CONTAINER
| MID_FLAG_SPECIAL_ITEM
, 0 ),
670 MT_ED( "ParaIsCharacterDistance", STYLE
, TEXT_AUTOSPACE
, XML_TYPE_TEXT_AUTOSPACE
, 0 ),
671 MT_ED( "ParaIsHangingPunctuation", STYLE
, PUNCTUATION_WRAP
, XML_TYPE_TEXT_PUNCTUATION_WRAP
, 0 ),
672 MT_ED( "ParaIsForbiddenRules", STYLE
, LINE_BREAK
, XML_TYPE_TEXT_LINE_BREAK
, 0 ),
673 MT_E( "TabStopDistance", STYLE
, TAB_STOP_DISTANCE
, XML_TYPE_MEASURE
, 0 ),
678 XMLPropertyMapEntry
const aXMLFramePropMap
[] =
681 // TODO: not required???
683 MG_ED( "Width", SVG
, WIDTH
, XML_TYPE_MEASURE
, CTF_FRAMEWIDTH_ABS
),
684 MG_ED( "Width", FO
, MIN_WIDTH
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_FRAMEWIDTH_MIN_ABS
),
685 MG_ED( "RelativeWidth", FO
, MIN_WIDTH
, XML_TYPE_TEXT_REL_WIDTH_HEIGHT
, CTF_FRAMEWIDTH_MIN_REL
),
686 MG_ED( "RelativeWidth", STYLE
, REL_WIDTH
, XML_TYPE_TEXT_REL_WIDTH_HEIGHT
, CTF_FRAMEWIDTH_REL
),
687 MG_ED( "WidthType", FO
, TEXT_BOX
, XML_TYPE_NUMBER16
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FRAMEWIDTH_TYPE
),
688 // M_ED( "RelativeWidth", STYLE, REL_WIDTH, XML_TYPE_TEXT_REL_WIDTH_HEIGHT|MID_FLAG_MULTI_PROPERTY, 0 ),
689 // M_ED( "IsSyncWidthToHeight",STYLE, REL_WIDTH, XML_TYPE_TEXT_SYNC_WIDTH_HEIGHT|MID_FLAG_MULTI_PROPERTY, 0 ),
691 MG_ED( "Height", SVG
, HEIGHT
, XML_TYPE_MEASURE
, CTF_FRAMEHEIGHT_ABS
),
692 MG_ED( "Height", FO
, MIN_HEIGHT
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, CTF_FRAMEHEIGHT_MIN_ABS
),
693 MG_ED( "RelativeHeight", FO
, MIN_HEIGHT
, XML_TYPE_TEXT_REL_WIDTH_HEIGHT
, CTF_FRAMEHEIGHT_MIN_REL
),
694 MG_ED( "RelativeHeight", STYLE
, REL_HEIGHT
, XML_TYPE_TEXT_REL_WIDTH_HEIGHT
, CTF_FRAMEHEIGHT_REL
),
695 // M_ED( "RelativeHeight", STYLE, REL_HEIGHT, XML_TYPE_TEXT_REL_WIDTH_HEIGHT|MID_FLAG_MULTI_PROPERTY, CTF_FRAMEHEIGHT_REL ),
696 // M_ED( "IsSyncHeightToWidth",STYLE, REL_HEIGHT, XML_TYPE_TEXT_SYNC_WIDTH_HEIGHT|MID_FLAG_MULTI_PROPERTY, CTF_SYNCHEIGHT ),
697 // M_ED( "IsSyncHeightToWidth",STYLE, REL_HEIGHT, XML_TYPE_TEXT_SYNC_WIDTH_HEIGHT_MIN, CTF_SYNCHEIGHT_MIN ),
698 MG_ED( "SizeType", FO
, TEXT_BOX
, XML_TYPE_NUMBER16
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_SIZETYPE
),
702 // moved to here because it is not used for automatic styles
703 MG_ED( "AnchorType", TEXT
, ANCHOR_TYPE
, XML_TYPE_TEXT_ANCHOR_TYPE
, CTF_ANCHORTYPE
),
704 // AnchorPage number is not required for styles!
705 MG_ED( "HoriOrientPosition", SVG
, X
, XML_TYPE_MEASURE
, 0 ),
706 MG_ED( "VertOrientPosition", SVG
, Y
, XML_TYPE_MEASURE
, 0 ),
707 // ***** The map for automatic styles starts here *****
709 MG_E( "LeftMargin", FO
, MARGIN
, XML_TYPE_MEASURE
, CTF_MARGINALL
),
710 MG_E( "LeftMargin", FO
, MARGIN_LEFT
, XML_TYPE_MEASURE
, CTF_MARGINLEFT
),
711 MG_E( "RightMargin", FO
, MARGIN_RIGHT
, XML_TYPE_MEASURE
, CTF_MARGINRIGHT
),
713 MG_E( "TopMargin", FO
, MARGIN_TOP
, XML_TYPE_MEASURE
, CTF_MARGINTOP
),
714 MG_E( "BottomMargin", FO
, MARGIN_BOTTOM
, XML_TYPE_MEASURE
, CTF_MARGINBOTTOM
),
720 // not required (accessed using API)
726 MG_E( "Print", STYLE
, PRINT_CONTENT
, XML_TYPE_BOOL
, 0 ),
728 MG_ED( "Opaque", STYLE
, RUN_THROUGH
, XML_TYPE_TEXT_OPAQUE
, 0 ),
730 MG_E( "ContentProtected", STYLE
, PROTECT
, XML_TYPE_TEXT_PROTECT_CONTENT
|MID_FLAG_MERGE_ATTRIBUTE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
731 MG_E( "SizeProtected", STYLE
, PROTECT
, XML_TYPE_TEXT_PROTECT_SIZE
|MID_FLAG_MERGE_ATTRIBUTE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
732 MG_E( "PositionProtected", STYLE
, PROTECT
, XML_TYPE_TEXT_PROTECT_POSITION
|MID_FLAG_MERGE_ATTRIBUTE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
734 MG_ED( "TextWrap", STYLE
, WRAP
, XML_TYPE_TEXT_WRAP
, CTF_WRAP
),
735 MG_ED( "SurroundAnchorOnly", STYLE
, NUMBER_WRAPPED_PARAGRAPHS
, XML_TYPE_TEXT_PARAGRAPH_ONLY
, CTF_WRAP_PARAGRAPH_ONLY
),
736 MG_E( "SurroundContour", STYLE
, WRAP_CONTOUR
, XML_TYPE_BOOL
, CTF_WRAP_CONTOUR
),
737 MG_E( "ContourOutside", STYLE
, WRAP_CONTOUR_MODE
, XML_TYPE_TEXT_WRAP_OUTSIDE
, CTF_WRAP_CONTOUR_MODE
),
739 MG_ED( "VertOrient", STYLE
, VERTICAL_POS
, XML_TYPE_TEXT_VERTICAL_POS
, CTF_VERTICALPOS
),
740 MG_ED( "VertOrient", STYLE
, VERTICAL_POS
, XML_TYPE_TEXT_VERTICAL_POS_AT_CHAR
, CTF_VERTICALPOS_ATCHAR
),
741 MG_ED( "VertOrient", STYLE
, VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL_AS_CHAR
|MID_FLAG_MULTI_PROPERTY
, CTF_VERTICALREL_ASCHAR
),
742 MG_ED( "VertOrientRelation", STYLE
, VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL
, CTF_VERTICALREL
),
743 MG_ED( "VertOrientRelation", STYLE
, VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL_PAGE
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_VERTICALREL_PAGE
),
744 MG_ED( "VertOrientRelation", STYLE
, VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL_FRAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_VERTICALREL_FRAME
),
745 MAP_EXT_I( "VertOrientRelation", XML_NAMESPACE_LO_EXT
, XML_VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL
|XML_TYPE_PROP_GRAPHIC
|MID_FLAG_DEFAULT_ITEM_EXPORT
, CTF_VERTICALREL
),
746 MAP_EXT_I( "VertOrientRelation", XML_NAMESPACE_LO_EXT
, XML_VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL_PAGE
|MID_FLAG_SPECIAL_ITEM_IMPORT
|XML_TYPE_PROP_GRAPHIC
|MID_FLAG_DEFAULT_ITEM_EXPORT
, CTF_VERTICALREL_PAGE
),
747 MAP_EXT_I( "VertOrientRelation", XML_NAMESPACE_LO_EXT
, XML_VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL_FRAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
|XML_TYPE_PROP_GRAPHIC
|MID_FLAG_DEFAULT_ITEM_EXPORT
, CTF_VERTICALREL_FRAME
),
749 MG_ED( "HoriOrient", STYLE
, HORIZONTAL_POS
, XML_TYPE_TEXT_HORIZONTAL_POS
|MID_FLAG_MULTI_PROPERTY
, CTF_HORIZONTALPOS
),
750 MG_ED( "PageToggle", STYLE
, HORIZONTAL_POS
, XML_TYPE_TEXT_HORIZONTAL_MIRROR
, CTF_HORIZONTALMIRROR
),
751 MG_ED( "HoriOrient", STYLE
, HORIZONTAL_POS
, XML_TYPE_TEXT_HORIZONTAL_POS_MIRRORED
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_HORIZONTALPOS_MIRRORED
),
752 MG_ED( "HoriOrientRelation", STYLE
, HORIZONTAL_REL
, XML_TYPE_TEXT_HORIZONTAL_REL
, CTF_HORIZONTALREL
),
753 MG_ED( "HoriOrientRelation", STYLE
, HORIZONTAL_REL
, XML_TYPE_TEXT_HORIZONTAL_REL_FRAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_HORIZONTALREL_FRAME
),
757 // DO NOT REORDER these!
758 MG_ED( "BackColorRGB", FO
, BACKGROUND_COLOR
, XML_TYPE_COLORTRANSPARENT
|MID_FLAG_MULTI_PROPERTY
, 0 ),
759 MG_ED( "BackTransparent", FO
, BACKGROUND_COLOR
, XML_TYPE_ISTRANSPARENT
|MID_FLAG_MERGE_ATTRIBUTE
|MID_FLAG_MULTI_PROPERTY
, CTF_BACKGROUND_TRANSPARENT
),
760 MG_ED( "BackColorTransparency", STYLE
, BACKGROUND_TRANSPARENCY
, XML_TYPE_PERCENT8
, CTF_BACKGROUND_TRANSPARENCY
),
762 MG_E( "BackGraphicTransparency", STYLE
, BACKGROUND_IMAGE_TRANSPARENCY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_PERCENT8
, CTF_BACKGROUND_TRANSPARENCY
),
763 MG_E( "BackGraphicLocation", STYLE
, POSITION
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_BUILDIN_CMP_ONLY
, CTF_BACKGROUND_POS
),
764 MG_E( "BackGraphicFilter",STYLE
, FILTER_NAME
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_STRING
, CTF_BACKGROUND_FILTER
),
765 MG_E( "BackGraphic", STYLE
, BACKGROUND_IMAGE
, MID_FLAG_ELEMENT_ITEM
|XML_TYPE_GRAPHIC
, CTF_BACKGROUND_URL
),
768 GMAP( "FillStyle", XML_NAMESPACE_DRAW
, XML_FILL
, XML_SW_TYPE_FILLSTYLE
, 0 ),
769 GMAP( "FillColor", XML_NAMESPACE_DRAW
, XML_FILL_COLOR
, XML_TYPE_COLOR
, 0 ),
770 GMAP( "FillColor2", XML_NAMESPACE_DRAW
, XML_SECONDARY_FILL_COLOR
, XML_TYPE_COLOR
, 0 ),
771 GMAP( "FillGradientName", XML_NAMESPACE_DRAW
, XML_FILL_GRADIENT_NAME
, XML_TYPE_STYLENAME
|MID_FLAG_NO_PROPERTY_IMPORT
, CTF_FILLGRADIENTNAME
),
772 GMAP( "FillGradientStepCount", XML_NAMESPACE_DRAW
, XML_GRADIENT_STEP_COUNT
, XML_TYPE_NUMBER16
, 0 ),
773 GMAP( "FillHatchName", XML_NAMESPACE_DRAW
, XML_FILL_HATCH_NAME
, XML_TYPE_STYLENAME
|MID_FLAG_NO_PROPERTY_IMPORT
, CTF_FILLHATCHNAME
),
774 GMAP( "FillBackground", XML_NAMESPACE_DRAW
, XML_FILL_HATCH_SOLID
, XML_TYPE_BOOL
, 0 ),
775 GMAP( "FillBitmapName", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_NAME
, XML_TYPE_STYLENAME
|MID_FLAG_NO_PROPERTY_IMPORT
, CTF_FILLBITMAPNAME
),
776 GMAP( "FillTransparence", XML_NAMESPACE_DRAW
, XML_OPACITY
, XML_TYPE_NEG_PERCENT16
|MID_FLAG_MULTI_PROPERTY
, 0 ), // exists in SW, too
777 GMAP( "FillTransparenceGradientName", XML_NAMESPACE_DRAW
, XML_OPACITY_NAME
, XML_TYPE_STYLENAME
|MID_FLAG_NO_PROPERTY_IMPORT
, CTF_FILLTRANSNAME
),
778 GMAP( "FillBitmapSizeX", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_WIDTH
, XML_SW_TYPE_FILLBITMAPSIZE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
779 GMAP( "FillBitmapLogicalSize", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_WIDTH
, XML_SW_TYPE_LOGICAL_SIZE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
780 GMAP( "FillBitmapSizeY", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_HEIGHT
, XML_SW_TYPE_FILLBITMAPSIZE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
781 GMAP( "FillBitmapLogicalSize", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_HEIGHT
, XML_SW_TYPE_LOGICAL_SIZE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
782 GMAP( "FillBitmapMode", XML_NAMESPACE_STYLE
,XML_REPEAT
, XML_SW_TYPE_BITMAP_MODE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
783 GMAP( "FillBitmapPositionOffsetX", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_REF_POINT_X
, XML_TYPE_PERCENT
, 0 ),
784 GMAP( "FillBitmapPositionOffsetY", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_REF_POINT_Y
, XML_TYPE_PERCENT
, 0 ),
785 GMAP( "FillBitmapRectanglePoint", XML_NAMESPACE_DRAW
, XML_FILL_IMAGE_REF_POINT
, XML_SW_TYPE_BITMAP_REFPOINT
, 0 ),
786 GMAP( "FillBitmapOffsetX", XML_NAMESPACE_DRAW
, XML_TILE_REPEAT_OFFSET
, XML_SW_TYPE_BITMAPREPOFFSETX
|MID_FLAG_MULTI_PROPERTY
, CTF_REPEAT_OFFSET_X
),
787 GMAP( "FillBitmapOffsetY", XML_NAMESPACE_DRAW
, XML_TILE_REPEAT_OFFSET
, XML_SW_TYPE_BITMAPREPOFFSETY
|MID_FLAG_MULTI_PROPERTY
, CTF_REPEAT_OFFSET_Y
),
790 MG_ED( "LeftBorder", STYLE
, BORDER_LINE_WIDTH
, XML_TYPE_BORDER_WIDTH
, CTF_ALLBORDERWIDTH
),
791 MG_ED( "LeftBorder", STYLE
, BORDER_LINE_WIDTH_LEFT
, XML_TYPE_BORDER_WIDTH
, CTF_LEFTBORDERWIDTH
),
792 MG_ED( "RightBorder", STYLE
, BORDER_LINE_WIDTH_RIGHT
, XML_TYPE_BORDER_WIDTH
, CTF_RIGHTBORDERWIDTH
),
793 MG_ED( "TopBorder", STYLE
, BORDER_LINE_WIDTH_TOP
, XML_TYPE_BORDER_WIDTH
, CTF_TOPBORDERWIDTH
),
794 MG_ED( "BottomBorder", STYLE
, BORDER_LINE_WIDTH_BOTTOM
, XML_TYPE_BORDER_WIDTH
, CTF_BOTTOMBORDERWIDTH
),
796 MG_ED( "LeftBorderDistance", FO
, PADDING
, XML_TYPE_MEASURE
, CTF_ALLBORDERDISTANCE
), // need special import filtering
797 MG_ED( "LeftBorderDistance", FO
, PADDING_LEFT
, XML_TYPE_MEASURE
, CTF_LEFTBORDERDISTANCE
),
798 MG_ED( "RightBorderDistance", FO
, PADDING_RIGHT
, XML_TYPE_MEASURE
, CTF_RIGHTBORDERDISTANCE
),
799 MG_ED( "TopBorderDistance", FO
, PADDING_TOP
, XML_TYPE_MEASURE
, CTF_TOPBORDERDISTANCE
),
800 MG_ED( "BottomBorderDistance",FO
, PADDING_BOTTOM
, XML_TYPE_MEASURE
, CTF_BOTTOMBORDERDISTANCE
),
802 // There is an additional property for controls!
803 MG_ED( "LeftBorder", FO
, BORDER
, XML_TYPE_BORDER
|MID_FLAG_MULTI_PROPERTY
, CTF_ALLBORDER
),
804 MG_ED( "LeftBorder", FO
, BORDER_LEFT
, XML_TYPE_BORDER
, CTF_LEFTBORDER
),
805 MG_ED( "RightBorder", FO
, BORDER_RIGHT
, XML_TYPE_BORDER
, CTF_RIGHTBORDER
),
806 MG_ED( "TopBorder", FO
, BORDER_TOP
, XML_TYPE_BORDER
, CTF_TOPBORDER
),
807 MG_ED( "BottomBorder", FO
, BORDER_BOTTOM
, XML_TYPE_BORDER
, CTF_BOTTOMBORDER
),
809 MG_E( "ShadowFormat", STYLE
, SHADOW
, XML_TYPE_TEXT_SHADOW
, 0 ),
810 MG_E( "ShadowTransparence", DRAW
, SHADOW_OPACITY
, XML_TYPE_NEG_PERCENT
, 0 ),
814 MG_E( "TextColumns", STYLE
, COLUMNS
, MID_FLAG_ELEMENT_ITEM
|XML_TYPE_TEXT_COLUMNS
, CTF_TEXTCOLUMNS
),
818 // not required (exported as draw:a element)
819 // RES_EDIT_IN_READONLY
820 MG_ED( "EditInReadonly", STYLE
, EDITABLE
, XML_TYPE_BOOL
, 0 ),
824 // not required (exported at text:text-box element)
833 // RES_UNKNOWNATR_CONTAINER
834 // M_E_SE( TEXT, xmlns, RES_UNKNOWNATR_CONTAINER, 0 ),
835 // RES_GRFATR_MIRRORGRF (vertical MUST be processed after horizontal!)
836 MG_E( "HoriMirroredOnEvenPages", STYLE
, MIRROR
, XML_TYPE_TEXT_MIRROR_HORIZONTAL_LEFT
|MID_FLAG_MERGE_ATTRIBUTE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
837 MG_E( "HoriMirroredOnOddPages", STYLE
, MIRROR
, XML_TYPE_TEXT_MIRROR_HORIZONTAL_RIGHT
|MID_FLAG_MERGE_ATTRIBUTE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
838 MG_E( "VertMirrored", STYLE
, MIRROR
, XML_TYPE_TEXT_MIRROR_VERTICAL
|MID_FLAG_MERGE_ATTRIBUTE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
839 // RES_GRFATR_CROPGRF
840 MG_EV( "GraphicCrop", FO
, CLIP
, XML_TYPE_TEXT_CLIP
, CTF_TEXT_CLIP
, SvtSaveOptions::ODFSVER_012
),
841 MG_E( "GraphicCrop", FO
, CLIP
, XML_TYPE_TEXT_CLIP11
, CTF_TEXT_CLIP11
),
842 // RES_GRFATR_ROTATION
843 // not required (exported as svg:transform attribute)
844 // RES_GRFATR_LUMINANCE
845 MG_E( "AdjustLuminance", DRAW
, LUMINANCE
, XML_TYPE_PERCENT16
, 0 ), // signed?
846 // RES_GRFATR_CONTRAST
847 MG_E( "AdjustContrast", DRAW
, CONTRAST
, XML_TYPE_PERCENT16
, 0 ), // signed?
848 // RES_GRFATR_CHANNELR
849 MG_E( "AdjustRed", DRAW
, RED
, XML_TYPE_PERCENT16
, 0 ), // signed?
850 // RES_GRFATR_CHANNELG
851 MG_E( "AdjustGreen", DRAW
, GREEN
, XML_TYPE_PERCENT16
, 0 ), // signed?
852 // RES_GRFATR_CHANNELB
853 MG_E( "AdjustBlue", DRAW
, BLUE
, XML_TYPE_PERCENT16
, 0 ), // signed?
855 MG_E( "Gamma", DRAW
, GAMMA
, XML_TYPE_DOUBLE_PERCENT
, 0 ), // signed?
857 MG_E( "GraphicIsInverted", DRAW
, COLOR_INVERSION
, XML_TYPE_BOOL
, 0 ),
858 // RES_GRFATR_TRANSPARENCY
859 MG_E( "Transparency", DRAW
, IMAGE_OPACITY
, XML_TYPE_NEG_PERCENT16
|MID_FLAG_MULTI_PROPERTY
, 0 ), // #i25616#
860 // RES_GRFATR_DRAWMODE
861 MG_E( "GraphicColorMode", DRAW
, COLOR_MODE
, XML_TYPE_COLOR_MODE
, 0 ),
862 MG_E( "WritingMode", STYLE
, WRITING_MODE
, XML_TYPE_TEXT_WRITING_MODE_WITH_DEFAULT
, 0 ),
863 MAP_EXT_I("WritingMode", XML_NAMESPACE_LO_EXT
, XML_WRITING_MODE
, XML_TYPE_TEXT_WRITING_MODE_WITH_DEFAULT
|XML_TYPE_PROP_GRAPHIC
, 0),
864 // RES_FOLLOW_TEXT_FLOW - DVO #i18732#
865 MG_E( "IsFollowingTextFlow", DRAW
, FLOW_WITH_TEXT
, XML_TYPE_BOOL
|MID_FLAG_SPECIAL_ITEM_EXPORT
, CTF_OLD_FLOW_WITH_TEXT
),
866 MG_E( "IsFollowingTextFlow", STYLE
, FLOW_WITH_TEXT
, XML_TYPE_BOOL
, 0 ),
867 // #i28701# - RES_WRAP_INFLUENCE_ON_OBJPOS
868 MG_E( "WrapInfluenceOnPosition", DRAW
, WRAP_INFLUENCE_ON_POSITION
, XML_TYPE_WRAP_INFLUENCE_ON_POSITION
, 0 ),
869 MAP_EXT("AllowOverlap", XML_NAMESPACE_LO_EXT
, XML_ALLOW_OVERLAP
, XML_TYPE_BOOL
|XML_TYPE_PROP_GRAPHIC
, 0),
871 // special entries for floating frames
872 MG_E( "", DRAW
, FRAME_DISPLAY_SCROLLBAR
, XML_TYPE_BOOL
|MID_FLAG_NO_PROPERTY
|MID_FLAG_MULTI_PROPERTY
, CTF_FRAME_DISPLAY_SCROLLBAR
),
873 MG_E( "", DRAW
, FRAME_DISPLAY_BORDER
, XML_TYPE_BOOL
|MID_FLAG_NO_PROPERTY
|MID_FLAG_MULTI_PROPERTY
, CTF_FRAME_DISPLAY_BORDER
),
874 MG_E( "", DRAW
, FRAME_MARGIN_HORIZONTAL
, XML_TYPE_MEASURE_PX
|MID_FLAG_NO_PROPERTY
|MID_FLAG_MULTI_PROPERTY
, CTF_FRAME_MARGIN_HORI
),
875 MG_E( "", DRAW
, FRAME_MARGIN_VERTICAL
, XML_TYPE_MEASURE_PX
|MID_FLAG_NO_PROPERTY
|MID_FLAG_MULTI_PROPERTY
, CTF_FRAME_MARGIN_VERT
),
876 MG_E( "", DRAW
, VISIBLE_AREA_LEFT
, XML_TYPE_MEASURE
|MID_FLAG_NO_PROPERTY
|MID_FLAG_MULTI_PROPERTY
, CTF_OLE_VIS_AREA_LEFT
),
877 MG_E( "", DRAW
, VISIBLE_AREA_TOP
, XML_TYPE_MEASURE
|MID_FLAG_NO_PROPERTY
|MID_FLAG_MULTI_PROPERTY
, CTF_OLE_VIS_AREA_TOP
),
878 MG_E( "", DRAW
, VISIBLE_AREA_WIDTH
, XML_TYPE_MEASURE
|MID_FLAG_NO_PROPERTY
|MID_FLAG_MULTI_PROPERTY
, CTF_OLE_VIS_AREA_WIDTH
),
879 MG_E( "", DRAW
, VISIBLE_AREA_HEIGHT
, XML_TYPE_MEASURE
|MID_FLAG_NO_PROPERTY
|MID_FLAG_MULTI_PROPERTY
, CTF_OLE_VIS_AREA_HEIGHT
),
880 MG_E( "", DRAW
, DRAW_ASPECT
, XML_TYPE_TEXT_DRAW_ASPECT
|MID_FLAG_NO_PROPERTY
|MID_FLAG_MULTI_PROPERTY
, CTF_OLE_DRAW_ASPECT
),
881 MG_E( "UserDefinedAttributes", TEXT
, XMLNS
, XML_TYPE_ATTRIBUTE_CONTAINER
| MID_FLAG_SPECIAL_ITEM
, 0 ),
882 MAP_EXT("RelativeWidthRelation", XML_NAMESPACE_LO_EXT
, XML_REL_WIDTH_REL
, XML_TYPE_TEXT_HORIZONTAL_REL
|XML_TYPE_PROP_GRAPHIC
, CTF_RELWIDTHREL
),
883 MAP_EXT("RelativeHeightRelation", XML_NAMESPACE_LO_EXT
, XML_REL_HEIGHT_REL
, XML_TYPE_TEXT_VERTICAL_REL
|XML_TYPE_PROP_GRAPHIC
, CTF_RELHEIGHTREL
),
884 MG_E("TextVerticalAdjust", DRAW
, TEXTAREA_VERTICAL_ALIGN
, XML_TYPE_VERTICAL_ALIGN
, 0),
889 XMLPropertyMapEntry
const aXMLShapePropMap
[] =
892 MG_E( "LeftMargin", FO
, MARGIN_LEFT
, XML_TYPE_MEASURE
, 0),
893 MG_E( "RightMargin", FO
, MARGIN_RIGHT
, XML_TYPE_MEASURE
, 0 ),
895 MG_E( "TopMargin", FO
, MARGIN_TOP
, XML_TYPE_MEASURE
, 0 ),
896 MG_E( "BottomMargin", FO
, MARGIN_BOTTOM
, XML_TYPE_MEASURE
, 0 ),
898 MG_ED( "Opaque", STYLE
, RUN_THROUGH
, XML_TYPE_TEXT_OPAQUE
, 0 ),
900 MG_E( "TextWrap", STYLE
, WRAP
, XML_TYPE_TEXT_WRAP
, CTF_WRAP
),
901 MG_E( "SurroundAnchorOnly", STYLE
, NUMBER_WRAPPED_PARAGRAPHS
, XML_TYPE_TEXT_PARAGRAPH_ONLY
, CTF_WRAP_PARAGRAPH_ONLY
),
902 MG_E( "SurroundContour", STYLE
, WRAP_CONTOUR
, XML_TYPE_BOOL
, CTF_WRAP_CONTOUR
),
903 MG_E( "ContourOutside", STYLE
, WRAP_CONTOUR_MODE
, XML_TYPE_TEXT_WRAP_OUTSIDE
, CTF_WRAP_CONTOUR_MODE
),
904 // Use own CTF ids for positioning attributes (#i28749#)
906 MG_E( "VertOrient", STYLE
, VERTICAL_POS
, XML_TYPE_TEXT_VERTICAL_POS
, CTF_SHAPE_VERTICALPOS
),
907 // Add property for at-character anchored shapes (#i26791#)
908 MG_E( "VertOrient", STYLE
, VERTICAL_POS
, XML_TYPE_TEXT_VERTICAL_POS_AT_CHAR
, CTF_SHAPE_VERTICALPOS_ATCHAR
),
909 MG_E( "VertOrient", STYLE
, VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL_AS_CHAR
|MID_FLAG_MULTI_PROPERTY
, CTF_VERTICALREL_ASCHAR
),
910 MG_E( "VertOrientRelation", STYLE
, VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL
, CTF_SHAPE_VERTICALREL
),
911 MG_E( "VertOrientRelation", STYLE
, VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL_PAGE
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_SHAPE_VERTICALREL_PAGE
),
912 MG_E( "VertOrientRelation", STYLE
, VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL_FRAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_SHAPE_VERTICALREL_FRAME
),
913 MAP_EXT_I( "VertOrientRelation", XML_NAMESPACE_LO_EXT
, XML_VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL
|XML_TYPE_PROP_GRAPHIC
, CTF_VERTICALREL
),
914 MAP_EXT_I( "VertOrientRelation", XML_NAMESPACE_LO_EXT
, XML_VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL_PAGE
|MID_FLAG_SPECIAL_ITEM_IMPORT
|XML_TYPE_PROP_GRAPHIC
, CTF_VERTICALREL_PAGE
),
915 MAP_EXT_I( "VertOrientRelation", XML_NAMESPACE_LO_EXT
, XML_VERTICAL_REL
, XML_TYPE_TEXT_VERTICAL_REL_FRAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
|XML_TYPE_PROP_GRAPHIC
, CTF_VERTICALREL_FRAME
),
917 MG_E( "HoriOrient", STYLE
, HORIZONTAL_POS
, XML_TYPE_TEXT_HORIZONTAL_POS
|MID_FLAG_MULTI_PROPERTY
, CTF_SHAPE_HORIZONTALPOS
),
918 MG_E( "PageToggle", STYLE
, HORIZONTAL_POS
, XML_TYPE_TEXT_HORIZONTAL_MIRROR
, CTF_SHAPE_HORIZONTALMIRROR
),
919 MG_E( "HoriOrient", STYLE
, HORIZONTAL_POS
, XML_TYPE_TEXT_HORIZONTAL_POS_MIRRORED
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_SHAPE_HORIZONTALPOS_MIRRORED
),
920 MG_E( "HoriOrientRelation", STYLE
, HORIZONTAL_REL
, XML_TYPE_TEXT_HORIZONTAL_REL
, CTF_SHAPE_HORIZONTALREL
),
921 MG_E( "HoriOrientRelation", STYLE
, HORIZONTAL_REL
, XML_TYPE_TEXT_HORIZONTAL_REL_FRAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_SHAPE_HORIZONTALREL_FRAME
),
922 // RES_WRAP_INFLUENCE_ON_OBJPOS (#i28701#)
923 MG_ED( "WrapInfluenceOnPosition", DRAW
, WRAP_INFLUENCE_ON_POSITION
, XML_TYPE_WRAP_INFLUENCE_ON_POSITION
, 0 ),
924 MAP_EXT("AllowOverlap", XML_NAMESPACE_LO_EXT
, XML_ALLOW_OVERLAP
, XML_TYPE_BOOL
|XML_TYPE_PROP_GRAPHIC
, 0),
925 // UserDefinedAttributes is already contained in the map this one is
928 // RES_FOLLOW_TEXT_FLOW (#i26791#)
929 MG_ED( "IsFollowingTextFlow", STYLE
, FLOW_WITH_TEXT
, XML_TYPE_BOOL
, 0 ),
932 MAP_EXT("RelativeWidthRelation", XML_NAMESPACE_LO_EXT
, XML_REL_WIDTH_REL
, XML_TYPE_TEXT_HORIZONTAL_REL
|XML_TYPE_PROP_GRAPHIC
, CTF_RELWIDTHREL
),
933 MAP_EXT("RelativeHeightRelation", XML_NAMESPACE_LO_EXT
, XML_REL_HEIGHT_REL
, XML_TYPE_TEXT_VERTICAL_REL
|XML_TYPE_PROP_GRAPHIC
, CTF_RELHEIGHTREL
),
938 XMLPropertyMapEntry
const aXMLSectionPropMap
[] =
941 MS_E( "TextColumns", STYLE
, COLUMNS
, MID_FLAG_ELEMENT_ITEM
|XML_TYPE_TEXT_COLUMNS
, CTF_TEXTCOLUMNS
),
944 // DO NOT REORDER these!
945 MS_E( "BackColor", FO
, BACKGROUND_COLOR
, XML_TYPE_COLORTRANSPARENT
|MID_FLAG_MULTI_PROPERTY
, 0 ),
946 MS_E( "BackTransparent", FO
, BACKGROUND_COLOR
, XML_TYPE_ISTRANSPARENT
|MID_FLAG_MERGE_ATTRIBUTE
, 0 ),
947 MS_E( "BackGraphicLocation", STYLE
, POSITION
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_BUILDIN_CMP_ONLY
, CTF_BACKGROUND_POS
),
948 MS_E( "BackGraphicFilter",STYLE
, FILTER_NAME
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_STRING
, CTF_BACKGROUND_FILTER
),
949 MS_E( "BackGraphic", STYLE
, BACKGROUND_IMAGE
, MID_FLAG_ELEMENT_ITEM
|XML_TYPE_GRAPHIC
, CTF_BACKGROUND_URL
),
951 // move protect-flag into section element
952 // M_E( "IsProtected", STYLE, PROTECT, XML_TYPE_BOOL, 0 ),
954 MS_E( "DontBalanceTextColumns", TEXT
, DONT_BALANCE_TEXT_COLUMNS
, XML_TYPE_BOOL
, 0 ),
956 MS_E( "WritingMode", STYLE
, WRITING_MODE
, XML_TYPE_TEXT_WRITING_MODE_WITH_DEFAULT
, 0 ),
958 MS_E( "SectionLeftMargin", FO
, MARGIN_LEFT
, XML_TYPE_MEASURE
, 0),
959 MS_E( "SectionRightMargin", FO
, MARGIN_RIGHT
, XML_TYPE_MEASURE
, 0),
961 // section footnote settings
962 MS_E( "FootnoteIsOwnNumbering", TEXT
, _EMPTY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_BOOL
, CTF_SECTION_FOOTNOTE_NUM_OWN
),
963 MS_E( "FootnoteIsRestartNumbering", TEXT
, _EMPTY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_BOOL
, CTF_SECTION_FOOTNOTE_NUM_RESTART
),
964 MS_E( "FootnoteRestartNumberingAt", TEXT
, _EMPTY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_NUMBER16
,CTF_SECTION_FOOTNOTE_NUM_RESTART_AT
),
965 MS_E( "FootnoteNumberingType", TEXT
, _EMPTY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_NUMBER16
,CTF_SECTION_FOOTNOTE_NUM_TYPE
),
966 MS_E( "FootnoteNumberingPrefix", TEXT
, _EMPTY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_STRING
, CTF_SECTION_FOOTNOTE_NUM_PREFIX
),
967 MS_E( "FootnoteNumberingSuffix", TEXT
, _EMPTY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_STRING
, CTF_SECTION_FOOTNOTE_NUM_SUFFIX
),
968 MS_E( "FootnoteIsCollectAtTextEnd", TEXT
, NOTES_CONFIGURATION
, MID_FLAG_ELEMENT_ITEM
|XML_TYPE_BOOL
, CTF_SECTION_FOOTNOTE_END
),
970 // section footnote settings
971 MS_E( "EndnoteIsOwnNumbering", TEXT
, _EMPTY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_BOOL
, CTF_SECTION_ENDNOTE_NUM_OWN
),
972 MS_E( "EndnoteIsRestartNumbering", TEXT
, _EMPTY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_BOOL
, CTF_SECTION_ENDNOTE_NUM_RESTART
),
973 MS_E( "EndnoteRestartNumberingAt", TEXT
, _EMPTY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_NUMBER16
,CTF_SECTION_ENDNOTE_NUM_RESTART_AT
),
974 MS_E( "EndnoteNumberingType", TEXT
, _EMPTY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_NUMBER16
,CTF_SECTION_ENDNOTE_NUM_TYPE
),
975 MS_E( "EndnoteNumberingPrefix", TEXT
, _EMPTY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_STRING
, CTF_SECTION_ENDNOTE_NUM_PREFIX
),
976 MS_E( "EndnoteNumberingSuffix", TEXT
, _EMPTY
, MID_FLAG_SPECIAL_ITEM
|XML_TYPE_STRING
, CTF_SECTION_ENDNOTE_NUM_SUFFIX
),
977 MS_E( "EndnoteIsCollectAtTextEnd", TEXT
, NOTES_CONFIGURATION
, MID_FLAG_ELEMENT_ITEM
|XML_TYPE_BOOL
, CTF_SECTION_ENDNOTE_END
),
978 MS_E( "UserDefinedAttributes", TEXT
, XMLNS
, XML_TYPE_ATTRIBUTE_CONTAINER
| MID_FLAG_SPECIAL_ITEM
, 0 ),
979 // RES_EDIT_IN_READONLY
980 MS_E( "EditInReadonly", STYLE
, EDITABLE
, XML_TYPE_BOOL
, 0 ),
984 XMLPropertyMapEntry
const aXMLRubyPropMap
[] =
986 MR_E( "RubyAdjust", STYLE
, RUBY_ALIGN
, XML_TYPE_TEXT_RUBY_ADJUST
, 0 ),
987 MR_E( "RubyIsAbove", STYLE
, RUBY_POSITION
, XML_TYPE_TEXT_RUBY_IS_ABOVE
, 0 ),
988 MR_EV( "RubyPosition", LO_EXT
, RUBY_POSITION
, XML_TYPE_TEXT_RUBY_POSITION
, 0, SvtSaveOptions::ODFSVER_FUTURE_EXTENDED
),
993 XMLPropertyMapEntry
const aXMLTableDefaultsMap
[] =
995 // RES_COLLAPSING_BORDERS: only occurs in tables, but we need to
996 // read/write the default for this item
997 M_ED_( "CollapsingBorders", TABLE
, BORDER_MODEL
, XML_TYPE_PROP_TABLE
| XML_TYPE_BORDER_MODEL
| MID_FLAG_NO_PROPERTY_IMPORT
, CTF_BORDER_MODEL
),
1002 XMLPropertyMapEntry
const aXMLTableRowDefaultsMap
[] =
1004 // RES_ROW_SPLIT: only occurs in table rows, but we need to
1005 // read/write the default for this item
1006 M_ED_( "IsSplitAllowed", FO
, KEEP_TOGETHER
, XML_TYPE_PROP_TABLE_ROW
| XML_TYPE_TEXT_NKEEP
| MID_FLAG_NO_PROPERTY_IMPORT
, CTF_KEEP_TOGETHER
),
1011 XMLPropertyMapEntry
const aXMLCellPropMap
[] =
1013 MC_E( "BackColor", FO
, BACKGROUND_COLOR
, XML_TYPE_COLORTRANSPARENT
|MID_FLAG_MULTI_PROPERTY
, 0 ),
1014 MC_E( "LeftBorder", FO
, BORDER_LEFT
, XML_TYPE_BORDER
, 0 ),
1015 MC_E( "RightBorder", FO
, BORDER_RIGHT
, XML_TYPE_BORDER
, 0 ),
1016 MC_E( "TopBorder", FO
, BORDER_TOP
, XML_TYPE_BORDER
, 0 ),
1017 MC_E( "BottomBorder", FO
, BORDER_BOTTOM
, XML_TYPE_BORDER
, 0 ),
1018 MC_E( "BorderDistance", FO
, PADDING
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
1019 MC_E( "LeftBorderDistance", FO
, PADDING_LEFT
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
1020 MC_E( "RightBorderDistance", FO
, PADDING_RIGHT
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
1021 MC_E( "TopBorderDistance", FO
, PADDING_TOP
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
1022 MC_E( "BottomBorderDistance", FO
, PADDING_BOTTOM
, XML_TYPE_MEASURE
|MID_FLAG_MULTI_PROPERTY
, 0 ),
1023 MC_E( "VertOrient", STYLE
, VERTICAL_ALIGN
, XML_TYPE_TEXT_VERTICAL_POS
, 0 ),
1024 MC_E( "WritingMode", STYLE
, WRITING_MODE
, XML_TYPE_TEXT_WRITING_MODE_WITH_DEFAULT
, 0 ),
1025 MC_E( "NumberFormat", STYLE
, DATA_STYLE_NAME
, XML_TYPE_NUMBER
|MID_FLAG_SPECIAL_ITEM_EXPORT
, 0 ),
1026 // paragraph properties
1027 MP_E( "ParaAdjust", FO
, TEXT_ALIGN
, XML_TYPE_TEXT_ADJUST
, 0 ),
1029 MT_ED( "CharColor", FO
, COLOR
, XML_TYPE_COLORAUTO
|MID_FLAG_MERGE_PROPERTY
, 0 ),
1030 MT_ED( "CharColor", STYLE
, USE_WINDOW_FONT_COLOR
, XML_TYPE_ISAUTOCOLOR
|MID_FLAG_MERGE_PROPERTY
, 0 ),
1031 MT_E( "CharShadowed", FO
, TEXT_SHADOW
, XML_TYPE_TEXT_SHADOWED
, 0 ),
1032 MT_E( "CharContoured", STYLE
, TEXT_OUTLINE
, XML_TYPE_BOOL
, 0 ),
1033 MT_E( "CharStrikeout", STYLE
, TEXT_LINE_THROUGH_STYLE
, XML_TYPE_TEXT_CROSSEDOUT_STYLE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
1034 MT_E( "CharStrikeout", STYLE
, TEXT_LINE_THROUGH_TYPE
, XML_TYPE_TEXT_CROSSEDOUT_TYPE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
1035 MT_E( "CharStrikeout", STYLE
, TEXT_LINE_THROUGH_WIDTH
, XML_TYPE_TEXT_CROSSEDOUT_WIDTH
|MID_FLAG_MERGE_PROPERTY
, 0 ),
1036 MT_E( "CharStrikeout", STYLE
, TEXT_LINE_THROUGH_TEXT
, XML_TYPE_TEXT_CROSSEDOUT_TEXT
|MID_FLAG_MERGE_PROPERTY
, 0 ),
1037 MT_E( "CharUnderline", STYLE
, TEXT_UNDERLINE_STYLE
, XML_TYPE_TEXT_UNDERLINE_STYLE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
1038 MT_E( "CharUnderline", STYLE
, TEXT_UNDERLINE_TYPE
, XML_TYPE_TEXT_UNDERLINE_TYPE
|MID_FLAG_MERGE_PROPERTY
, 0 ),
1039 MT_E( "CharUnderline", STYLE
, TEXT_UNDERLINE_WIDTH
, XML_TYPE_TEXT_UNDERLINE_WIDTH
|MID_FLAG_MERGE_PROPERTY
, 0 ),
1040 MT_E( "CharUnderlineColor", STYLE
, TEXT_UNDERLINE_COLOR
, XML_TYPE_TEXT_UNDERLINE_COLOR
|MID_FLAG_MULTI_PROPERTY
, 0 ),
1041 MT_E( "CharUnderlineHasColor",STYLE
, TEXT_UNDERLINE_COLOR
, XML_TYPE_TEXT_UNDERLINE_HASCOLOR
|MID_FLAG_MERGE_ATTRIBUTE
, 0 ),
1043 MT_ED( "CharHeight", FO
, FONT_SIZE
, XML_TYPE_CHAR_HEIGHT
|MID_FLAG_MULTI_PROPERTY
, 0 ),
1044 MT_E( "CharWeight", FO
, FONT_WEIGHT
, XML_TYPE_TEXT_WEIGHT
, 0 ),
1045 MT_E( "CharPosture", FO
, FONT_STYLE
, XML_TYPE_TEXT_POSTURE
, 0 ),
1047 MT_ED( "CharFontName", STYLE
, FONT_NAME
, XML_TYPE_STRING
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTNAME
),
1048 MT_ED( "CharFontName", FO
, FONT_FAMILY
, XML_TYPE_TEXT_FONTFAMILYNAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTFAMILYNAME
),
1049 MT_ED( "CharFontStyleName", STYLE
, FONT_STYLE_NAME
, XML_TYPE_STRING
, CTF_FONTSTYLENAME
),
1050 MT_ED( "CharFontFamily", STYLE
, FONT_FAMILY_GENERIC
,XML_TYPE_TEXT_FONTFAMILY
, CTF_FONTFAMILY
),
1051 MT_ED( "CharFontPitch", STYLE
, FONT_PITCH
, XML_TYPE_TEXT_FONTPITCH
, CTF_FONTPITCH
),
1052 MT_ED( "CharFontCharSet", STYLE
, FONT_CHARSET
, XML_TYPE_TEXT_FONTENCODING
, CTF_FONTCHARSET
),
1054 MT_ED( "CharHeightAsian", STYLE
, FONT_SIZE_ASIAN
, XML_TYPE_CHAR_HEIGHT
|MID_FLAG_MULTI_PROPERTY
, 0 ),
1055 MT_E( "CharWeightAsian", STYLE
, FONT_WEIGHT_ASIAN
, XML_TYPE_TEXT_WEIGHT
, 0 ),
1056 MT_E( "CharPostureAsian", STYLE
, FONT_STYLE_ASIAN
, XML_TYPE_TEXT_POSTURE
, 0 ),
1057 // RES_CHRATR_CJK_FONT
1058 MT_ED( "CharFontNameAsian", STYLE
, FONT_NAME_ASIAN
, XML_TYPE_STRING
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTNAME_CJK
),
1059 MT_ED( "CharFontNameAsian", STYLE
, FONT_FAMILY_ASIAN
, XML_TYPE_TEXT_FONTFAMILYNAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTFAMILYNAME_CJK
),
1060 MT_ED( "CharFontStyleNameAsian", STYLE
, FONT_STYLE_NAME_ASIAN
, XML_TYPE_STRING
, CTF_FONTSTYLENAME_CJK
),
1061 MT_ED( "CharFontFamilyAsian", STYLE
, FONT_FAMILY_GENERIC_ASIAN
, XML_TYPE_TEXT_FONTFAMILY
, CTF_FONTFAMILY_CJK
),
1062 MT_ED( "CharFontPitchAsian", STYLE
, FONT_PITCH_ASIAN
, XML_TYPE_TEXT_FONTPITCH
, CTF_FONTPITCH_CJK
),
1063 MT_ED( "CharFontCharSetAsian", STYLE
, FONT_CHARSET_ASIAN
, XML_TYPE_TEXT_FONTENCODING
, CTF_FONTCHARSET_CJK
),
1065 MT_ED( "CharHeightComplex", STYLE
, FONT_SIZE_COMPLEX
, XML_TYPE_CHAR_HEIGHT
|MID_FLAG_MULTI_PROPERTY
, 0 ),
1066 MT_E( "CharWeightComplex", STYLE
, FONT_WEIGHT_COMPLEX
, XML_TYPE_TEXT_WEIGHT
, 0 ),
1067 MT_E( "CharPostureComplex", STYLE
, FONT_STYLE_COMPLEX
, XML_TYPE_TEXT_POSTURE
, 0 ),
1068 // RES_CHRATR_CTL_FONT
1069 MT_ED( "CharFontNameComplex", STYLE
, FONT_NAME_COMPLEX
, XML_TYPE_STRING
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTNAME_CTL
),
1070 MT_ED( "CharFontNameComplex", STYLE
, FONT_FAMILY_COMPLEX
, XML_TYPE_TEXT_FONTFAMILYNAME
|MID_FLAG_SPECIAL_ITEM_IMPORT
, CTF_FONTFAMILYNAME_CTL
),
1071 MT_ED( "CharFontStyleNameComplex",STYLE
, FONT_STYLE_NAME_COMPLEX
, XML_TYPE_STRING
, CTF_FONTSTYLENAME_CTL
),
1072 MT_ED( "CharFontFamilyComplex", STYLE
, FONT_FAMILY_GENERIC_COMPLEX
,XML_TYPE_TEXT_FONTFAMILY
, CTF_FONTFAMILY_CTL
),
1073 MT_ED( "CharFontPitchComplex", STYLE
, FONT_PITCH_COMPLEX
, XML_TYPE_TEXT_FONTPITCH
, CTF_FONTPITCH_CTL
),
1074 MT_ED( "CharFontCharSetComplex", STYLE
, FONT_CHARSET_COMPLEX
, XML_TYPE_TEXT_FONTENCODING
, CTF_FONTCHARSET_CTL
),
1079 static XMLPropertyMapEntry
const *lcl_txtprmap_getMap( TextPropMap nType
)
1081 XMLPropertyMapEntry
const *pMap
= nullptr;
1084 case TextPropMap::TEXT
:
1085 pMap
= aXMLTextPropMap
;
1087 case TextPropMap::SHAPE_PARA
:
1088 // #i125045# use [21] instead of [1] for text props for Shapes, indices
1089 // [1..20] contain the DrawingLayer FillStyle attributes corresponding to
1090 // [XATTR_FILL_FIRST .. XATTR_FILL_LAST] and would be double since Shapes
1091 // already contain these (usually in aXMLSDProperties)
1092 pMap
= &(aXMLParaPropMap
[21]);
1093 assert( pMap
->meXMLName
== XML_MARGIN
&& " shape para map changed" );
1095 case TextPropMap::PARA
:
1096 pMap
= aXMLParaPropMap
;
1098 case TextPropMap::FRAME
:
1099 pMap
= aXMLFramePropMap
;
1101 case TextPropMap::AUTO_FRAME
:
1102 pMap
= &(aXMLFramePropMap
[13]);
1103 assert( pMap
->meXMLName
== XML_MARGIN
&& " frame map changed" );
1105 case TextPropMap::SHAPE
:
1106 pMap
= aXMLShapePropMap
;
1108 case TextPropMap::SECTION
:
1109 pMap
= aXMLSectionPropMap
;
1111 case TextPropMap::RUBY
:
1112 pMap
= aXMLRubyPropMap
;
1114 case TextPropMap::TEXT_ADDITIONAL_DEFAULTS
:
1115 pMap
= aXMLAdditionalTextDefaultsMap
;
1117 case TextPropMap::TABLE_DEFAULTS
:
1118 pMap
= aXMLTableDefaultsMap
;
1120 case TextPropMap::TABLE_ROW_DEFAULTS
:
1121 pMap
= aXMLTableRowDefaultsMap
;
1123 case TextPropMap::CELL
:
1124 pMap
= aXMLCellPropMap
;
1127 SAL_WARN_IF( !pMap
, "xmloff", "illegal map type" );
1131 const XMLPropertyMapEntry
* XMLTextPropertySetMapper::getPropertyMapForType( TextPropMap _nType
)
1133 return lcl_txtprmap_getMap( _nType
);
1136 XMLTextPropertySetMapper::XMLTextPropertySetMapper( TextPropMap nType
, bool bForExport
) :
1137 XMLPropertySetMapper( lcl_txtprmap_getMap( nType
),
1138 new XMLTextPropertyHandlerFactory
, bForExport
)
1142 XMLTextPropertySetMapper::~XMLTextPropertySetMapper()
1146 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */