Branch data Line data Source code
1 : : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : : /*************************************************************************
3 : : *
4 : : * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 : : *
6 : : * Copyright 2000, 2010 Oracle and/or its affiliates.
7 : : *
8 : : * OpenOffice.org - a multi-platform office productivity suite
9 : : *
10 : : * This file is part of OpenOffice.org.
11 : : *
12 : : * OpenOffice.org is free software: you can redistribute it and/or modify
13 : : * it under the terms of the GNU Lesser General Public License version 3
14 : : * only, as published by the Free Software Foundation.
15 : : *
16 : : * OpenOffice.org is distributed in the hope that it will be useful,
17 : : * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 : : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 : : * GNU Lesser General Public License version 3 for more details
20 : : * (a copy is included in the LICENSE file that accompanied this code).
21 : : *
22 : : * You should have received a copy of the GNU Lesser General Public License
23 : : * version 3 along with OpenOffice.org. If not, see
24 : : * <http://www.openoffice.org/license.html>
25 : : * for a copy of the LGPLv3 License.
26 : : *
27 : : ************************************************************************/
28 : :
29 : : #include <com/sun/star/beans/XPropertySetInfo.hpp>
30 : : #include <rtl/ustrbuf.hxx>
31 : : #include <sax/tools/converter.hxx>
32 : : #include <xmloff/nmspmap.hxx>
33 : : #include "xmloff/xmlnmspe.hxx"
34 : : #include <xmloff/xmltoken.hxx>
35 : : #include "DeepTContext.hxx"
36 : : #include "MetaTContext.hxx"
37 : : #include "DocumentTContext.hxx"
38 : : #include "NotesTContext.hxx"
39 : : #include "StyleOASISTContext.hxx"
40 : : #include "FrameOASISTContext.hxx"
41 : : #include "EventOASISTContext.hxx"
42 : : #include "DlgOASISTContext.hxx"
43 : : #include "ControlOASISTContext.hxx"
44 : : #include "FormPropOASISTContext.hxx"
45 : : #include "ChartOASISTContext.hxx"
46 : : #include "ChartPlotAreaOASISTContext.hxx"
47 : : #include "MutableAttrList.hxx"
48 : : #include "ElemTransformerAction.hxx"
49 : : #include "AttrTransformerAction.hxx"
50 : : #include "TransformerActions.hxx"
51 : : #include "FamilyType.hxx"
52 : : #include <comphelper/servicehelper.hxx>
53 : : #include "Oasis2OOo.hxx"
54 : :
55 : : using ::rtl::OUString;
56 : : using ::rtl::OUStringBuffer;
57 : : using namespace ::osl;
58 : : using namespace ::xmloff::token;
59 : : using namespace ::com::sun::star::uno;
60 : : using namespace ::com::sun::star::lang;
61 : : using namespace ::com::sun::star::xml::sax;
62 : : using namespace ::com::sun::star::beans;
63 : :
64 : : OUString SAL_CALL Oasis2OOoTransformer_getImplementationName() throw();
65 : :
66 : : enum XMLUserDefinedTransformerAction
67 : : {
68 : : XML_ETACTION_META=XML_ETACTION_USER_DEFINED,
69 : : XML_ETACTION_DOCUMENT,
70 : : XML_ETACTION_BODY,
71 : : XML_ETACTION_NOTES,
72 : : XML_ETACTION_TABLE,
73 : : XML_ETACTION_STYLE,
74 : : XML_ETACTION_STYLE_RENAME,
75 : : XML_ETACTION_FRAME,
76 : : XML_ETACTION_EVENT,
77 : : XML_ETACTION_DLG,
78 : : XML_ETACTION_TAB_STOP,
79 : : XML_ETACTION_FORM_CONTROL,
80 : : XML_ETACTION_FORM_PROPERTY,
81 : : XML_ETACTION_CONFIG_ITEM,
82 : : XML_ETACTION_TRACKED_CHANGES,
83 : : XML_ETACTION_CHART,
84 : : XML_ETACTION_CHART_PLOT_AREA
85 : : };
86 : :
87 : : #define ENTRY3( n, l, a, p1, p2, p3 ) \
88 : : { XML_NAMESPACE_##n, XML_##l, a, p1, p2, p3 }
89 : : #define ENTRY3QNQ( n, l, a, n1, l1, p2, n3, l3 ) \
90 : : ENTRY3( n, l, a, XMLTransformerActionInit::QNameParam( n1, l1 ), \
91 : : p2, XMLTransformerActionInit::QNameParam( n3, l3 ) )
92 : :
93 : : #define ENTRY2( n, l, a, p1, p2 ) \
94 : : ENTRY3( n, l, a, p1, p2, 0 )
95 : : #define ENTRY2QQ( n, l, a, n1, l1, n2, l2 ) \
96 : : ENTRY2( n, l, a, XMLTransformerActionInit::QNameParam( n1, l1 ), \
97 : : XMLTransformerActionInit::QNameParam( n2, l2 ) )
98 : : #define ENTRY2QN( n, l, a, n1, l1, p2 ) \
99 : : ENTRY2( n, l, a, XMLTransformerActionInit::QNameParam( n1, l1 ), p2 )
100 : :
101 : : #define ENTRY1( n, l, a, p1 ) \
102 : : ENTRY3( n, l, a, p1, 0, 0 )
103 : : #define ENTRY1Q( n, l, a, p1, t1 ) \
104 : : ENTRY1( n, l, a, XMLTransformerActionInit::QNameParam( p1, t1 ) )
105 : :
106 : : #define ENTRY0( n, l, a ) \
107 : : ENTRY3( n, l, a, 0, 0, 0 )
108 : :
109 : : // BM: a macro to put two tokens into one sal_Int32 for the action
110 : : // XML_ATACTION_RENAME_ATTRIBUTE
111 : : #define RENAME_ENTRY( f, s ) \
112 : : (static_cast< sal_Int32 >(f) | (static_cast< sal_Int32 >(s) << 16))
113 : :
114 : : static XMLTransformerActionInit aActionTable[] =
115 : : {
116 : : // add office:class from <office:document> and <office:document-content>
117 : : ENTRY0( OFFICE, DOCUMENT, XML_ETACTION_DOCUMENT ),
118 : : ENTRY0( OFFICE, DOCUMENT_CONTENT, XML_ETACTION_DOCUMENT ),
119 : 15 : ENTRY1Q( OOO, AUTO_TEXT_EVENTS, XML_ETACTION_RENAME_ELEM,
120 : : XML_NAMESPACE_OFFICE, XML_AUTO_TEXT_EVENTS),
121 : :
122 : : // add <meta:keywords>
123 : : ENTRY0( OFFICE, META, XML_ETACTION_META ),
124 : :
125 : : // rename <office:scripts> to <office:script>
126 : 15 : ENTRY1Q( OFFICE, SCRIPTS, XML_ETACTION_RENAME_ELEM,
127 : : XML_NAMESPACE_OFFICE, XML_SCRIPT ),
128 : :
129 : : // rename <office:script> to <office:script-data> and process attributes
130 : 15 : ENTRY2QN( OFFICE, SCRIPT, XML_ETACTION_RENAME_ELEM_PROC_ATTRS,
131 : : XML_NAMESPACE_OFFICE, XML_SCRIPT_DATA,
132 : : OASIS_SCRIPT_ACTIONS ),
133 : :
134 : : // rename <ooo:libraries> to <script:libraries>
135 : 15 : ENTRY1Q( OOO, LIBRARIES, XML_ETACTION_RENAME_ELEM,
136 : : XML_NAMESPACE_SCRIPT, XML_LIBRARIES ),
137 : :
138 : : // rename <ooo:library-linked> to <script:library-linked> and process attributes
139 : 15 : ENTRY2QN( OOO, LIBRARY_LINKED, XML_ETACTION_RENAME_ELEM_PROC_ATTRS,
140 : : XML_NAMESPACE_SCRIPT, XML_LIBRARY_LINKED,
141 : : OASIS_SCRIPT_ACTIONS ),
142 : :
143 : : // rename <ooo:library-embedded> to <script:library-embedded> and process attributes
144 : 15 : ENTRY2QN( OOO, LIBRARY_EMBEDDED, XML_ETACTION_RENAME_ELEM_PROC_ATTRS,
145 : : XML_NAMESPACE_SCRIPT, XML_LIBRARY_EMBEDDED,
146 : : OASIS_SCRIPT_ACTIONS ),
147 : :
148 : : // rename <ooo:module> to <script:module> and process attributes
149 : 15 : ENTRY2QN( OOO, MODULE, XML_ETACTION_RENAME_ELEM_PROC_ATTRS,
150 : : XML_NAMESPACE_SCRIPT, XML_MODULE,
151 : : OASIS_SCRIPT_ACTIONS ),
152 : :
153 : : // rename <ooo:source-code> to <script:source-code>
154 : 15 : ENTRY1Q( OOO, SOURCE_CODE, XML_ETACTION_RENAME_ELEM,
155 : : XML_NAMESPACE_SCRIPT, XML_SOURCE_CODE ),
156 : :
157 : : ENTRY0( OFFICE, BODY, XML_ETACTION_BODY ),
158 : :
159 : : // rename <office:font-face-decls> to <office:font-decl>,
160 : : // rename <style:font-face> to <style:font-decl>, process attrs
161 : 15 : ENTRY1Q( OFFICE, FONT_FACE_DECLS, XML_ETACTION_RENAME_ELEM,
162 : : XML_NAMESPACE_OFFICE, XML_FONT_DECLS ),
163 : 15 : ENTRY2QN( STYLE, FONT_FACE, XML_ETACTION_RENAME_ELEM_PROC_ATTRS,
164 : : XML_NAMESPACE_STYLE, XML_FONT_DECL,
165 : : OASIS_FONT_FACE_ACTIONS ),
166 : :
167 : : // remove genre element
168 : : ENTRY0( OFFICE, TEXT, XML_ETACTION_COPY_CONTENT ),
169 : : ENTRY0( OFFICE, DRAWING, XML_ETACTION_COPY_CONTENT ),
170 : : ENTRY0( OFFICE, PRESENTATION, XML_ETACTION_COPY_CONTENT ),
171 : : ENTRY0( OFFICE, SPREADSHEET, XML_ETACTION_COPY_CONTENT ),
172 : : ENTRY0( OFFICE, CHART, XML_ETACTION_COPY_CONTENT ),
173 : : ENTRY0( OFFICE, IMAGE, XML_ETACTION_COPY_CONTENT ),
174 : :
175 : : // rename <style:page-layout> to <style:page-master>
176 : : // ENTRY1Q( STYLE, PAGE_LAYOUT, RENAME_ELEM,
177 : : // XML_NAMESPACE_STYLE, XML_PAGE_MASTER ),
178 : : ENTRY1( STYLE, MASTER_PAGE, XML_ETACTION_PROC_ATTRS,
179 : : OASIS_MASTER_PAGE_ACTIONS ),
180 : :
181 : : // merge <style:*-properties> into <style:properties> and do other
182 : : // styles processing
183 : : ENTRY1( STYLE, STYLE, XML_ETACTION_STYLE,
184 : : XML_FAMILY_TYPE_END ),
185 : : ENTRY1( STYLE, DEFAULT_STYLE, XML_ETACTION_STYLE,
186 : : XML_FAMILY_TYPE_END ),
187 : 15 : ENTRY2QN( STYLE, PAGE_LAYOUT, XML_ETACTION_STYLE_RENAME,
188 : : XML_NAMESPACE_STYLE, XML_PAGE_MASTER,
189 : : XML_FAMILY_TYPE_PAGE_LAYOUT ),
190 : : ENTRY1( NUMBER, NUMBER_STYLE, XML_ETACTION_STYLE,
191 : : XML_FAMILY_TYPE_DATA ),
192 : : ENTRY1( NUMBER, CURRENCY_STYLE, XML_ETACTION_STYLE,
193 : : XML_FAMILY_TYPE_DATA ),
194 : : ENTRY1( NUMBER, PERCENTAGE_STYLE, XML_ETACTION_STYLE,
195 : : XML_FAMILY_TYPE_DATA ),
196 : : ENTRY1( NUMBER, DATE_STYLE, XML_ETACTION_STYLE,
197 : : XML_FAMILY_TYPE_DATA ),
198 : : ENTRY1( NUMBER, TIME_STYLE, XML_ETACTION_STYLE,
199 : : XML_FAMILY_TYPE_DATA ),
200 : : ENTRY1( NUMBER, BOOLEAN_STYLE, XML_ETACTION_STYLE,
201 : : XML_FAMILY_TYPE_DATA ),
202 : : ENTRY1( NUMBER, TEXT_STYLE, XML_ETACTION_STYLE,
203 : : XML_FAMILY_TYPE_DATA ),
204 : : ENTRY1( TEXT, LIST_STYLE, XML_ETACTION_STYLE,
205 : : XML_FAMILY_TYPE_LIST ),
206 : : // ENTRY0( TEXT, OUTLINE_STYLE, STYLE ),
207 : :
208 : : ENTRY1( STYLE, HEADER_STYLE, XML_ETACTION_STYLE,
209 : : XML_FAMILY_TYPE_HEADER_FOOTER ),
210 : : ENTRY1( STYLE, FOOTER_STYLE, XML_ETACTION_STYLE,
211 : : XML_FAMILY_TYPE_HEADER_FOOTER ),
212 : : ENTRY1( TEXT, LIST_LEVEL_STYLE_NUMBER, XML_ETACTION_STYLE,
213 : : XML_FAMILY_TYPE_LIST ),
214 : : ENTRY1( TEXT, LIST_LEVEL_STYLE_BULLET, XML_ETACTION_STYLE,
215 : : XML_FAMILY_TYPE_LIST ),
216 : : ENTRY1( TEXT, LIST_LEVEL_STYLE_IMAGE, XML_ETACTION_STYLE,
217 : : XML_FAMILY_TYPE_LIST ),
218 : : ENTRY1( TEXT, OUTLINE_LEVEL_STYLE, XML_ETACTION_STYLE,
219 : : XML_FAMILY_TYPE_LIST ),
220 : : ENTRY1( DRAW, GRADIENT, XML_ETACTION_STYLE,
221 : : XML_FAMILY_TYPE_GRADIENT ),
222 : : ENTRY1( DRAW, FILL_IMAGE, XML_ETACTION_STYLE,
223 : : XML_FAMILY_TYPE_FILL_IMAGE ),
224 : 15 : ENTRY2QN( DRAW, OPACITY, XML_ETACTION_STYLE_RENAME,
225 : : XML_NAMESPACE_DRAW, XML_TRANSPARENCY,
226 : : XML_FAMILY_TYPE_GRADIENT ),
227 : : ENTRY1( DRAW, MARKER, XML_ETACTION_STYLE,
228 : : XML_FAMILY_TYPE_MARKER ),
229 : : ENTRY1( DRAW, HATCH, XML_ETACTION_STYLE,
230 : : XML_FAMILY_TYPE_HATCH ),
231 : : ENTRY1( DRAW, STROKE_DASH, XML_ETACTION_STYLE,
232 : : XML_FAMILY_TYPE_STROKE_DASH ),
233 : :
234 : : // process <text:h/p>: process style-name attributes,
235 : : // rename <text:h>'s text:outline-level to text:level,
236 : : ENTRY1( TEXT, H, XML_ETACTION_PROC_ATTRS, OASIS_PARA_ACTIONS ),
237 : : ENTRY1( TEXT, P, XML_ETACTION_PROC_ATTRS, OASIS_PARA_ACTIONS ),
238 : :
239 : : // process <test:list>'s text:style-name attributes
240 : : // rename <text:list> to <text:ordered-list> or <text:unordered-list>
241 : : // TODO: All list currenty are renamed to <text:ordered-list>
242 : 15 : ENTRY2QN( TEXT, LIST, XML_ETACTION_RENAME_ELEM_PROC_ATTRS,
243 : : XML_NAMESPACE_TEXT, XML_ORDERED_LIST,
244 : : OASIS_LIST_STYLE_REF_ACTIONS ),
245 : :
246 : : // rename <text:note*> to <text:footnote*> or <text:endnote*>
247 : : ENTRY1( TEXT, NOTES_CONFIGURATION, XML_ETACTION_NOTES,
248 : : XML_NOTES_CONFIGURATION),
249 : : ENTRY1( TEXT, NOTE, XML_ETACTION_NOTES, XML_NOTE ),
250 : :
251 : : // rename <text:footnote> and <text:endnote> to <text:note>
252 : : ENTRY1( TEXT, NOTE_REF, XML_ETACTION_NOTES, XML_NOTE_REF ),
253 : :
254 : : // rename <text:tab> to <text:tab-stop>
255 : 15 : ENTRY1Q( TEXT, TAB, XML_ETACTION_RENAME_ELEM,
256 : : XML_NAMESPACE_TEXT, XML_TAB_STOP ),
257 : :
258 : :
259 : : // replace <table:table tabke:is-sub-table> with <table:sub-table>
260 : : ENTRY0( TABLE, TABLE, XML_ETACTION_TABLE ),
261 : :
262 : : // merge frame element
263 : : ENTRY0( DRAW, FRAME, XML_ETACTION_FRAME ),
264 : :
265 : : // process events
266 : 15 : ENTRY1Q( OFFICE, EVENT_LISTENERS, XML_ETACTION_RENAME_ELEM,
267 : : XML_NAMESPACE_OFFICE, XML_EVENTS ),
268 : : ENTRY0( SCRIPT, EVENT_LISTENER, XML_ETACTION_EVENT ),
269 : : ENTRY0( SCRIPT, EVENT, XML_ETACTION_EVENT ),
270 : : ENTRY0( PRESENTATION, EVENT_LISTENER, XML_ETACTION_EVENT ),
271 : :
272 : : // process Basic dialogs
273 : : ENTRY0( DLG, STYLE, XML_ETACTION_DLG ),
274 : :
275 : : // process length attributes
276 : : ENTRY1( DRAW, RECT, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
277 : : ENTRY1( DRAW, LINE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
278 : : ENTRY1( DRAW, POLYLINE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
279 : : ENTRY1( DRAW, POLYGON, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
280 : : ENTRY1( DRAW, PATH, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
281 : : ENTRY1( DRAW, CIRCLE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
282 : : ENTRY1( DRAW, ELLIPSE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
283 : : ENTRY1( DRAW, CONNECTOR, XML_ETACTION_PROC_ATTRS, OASIS_CONNECTOR_ACTIONS ),
284 : : ENTRY1( DRAW, CAPTION, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
285 : : ENTRY1( DRAW, MEASURE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
286 : : ENTRY1( DRAW, CONTROL, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
287 : : ENTRY1( DRAW, PAGE_THUMBNAIL, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
288 : : ENTRY1( DRAW, G, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
289 : : // ENTRY1( DRAW, FRAME, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
290 : : ENTRY1( DRAW, TEXT_BOX, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
291 : : ENTRY1( PRESENTATION, PLACEHOLDER, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
292 : : ENTRY1( DRAW, CONTOUR_POLYGON, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
293 : : ENTRY1( DRAW, CONTOUR_PATH, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
294 : : ENTRY1( DRAW, AREA_RECTANGLE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
295 : : ENTRY1( DRAW, AREA_CIRCLE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
296 : : ENTRY1( DRAW, AREA_POLYGON, XML_ETACTION_PROC_ATTRS, OASIS_DRAW_AREA_POLYGON_ACTIONS ),
297 : : ENTRY1( DRAW, GLUE_POINT, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
298 : : ENTRY1( DR3D, SCENE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
299 : : ENTRY1( DR3D, CUBE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
300 : : ENTRY1( DR3D, SPHERE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
301 : : ENTRY1( DR3D, EXTRUDE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
302 : : ENTRY1( DR3D, ROTATE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
303 : : ENTRY1( CHART, TITLE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
304 : : ENTRY1( CHART, SUBTITLE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
305 : : ENTRY1( CHART, FOOTER, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
306 : : ENTRY1( CHART, LEGEND, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
307 : : ENTRY1( CHART, WALL, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
308 : : ENTRY1( CHART, FLOOR, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
309 : : ENTRY1( CHART, AXIS, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
310 : : ENTRY1( CHART, GRID, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
311 : : ENTRY1( CHART, SERIES, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
312 : : ENTRY1( CHART, DATA_POINT, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
313 : : ENTRY1( CHART, MEAN_VALUE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
314 : : ENTRY1( CHART, ERROR_INDICATOR, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
315 : : ENTRY1( CHART, REGRESSION_CURVE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
316 : : ENTRY1( CHART, STOCK_GAIN_MARKER, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
317 : : ENTRY1( CHART, STOCK_LOSS_MARKER, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
318 : : ENTRY1( CHART, STOCK_RANGE_LINE, XML_ETACTION_PROC_ATTRS, OASIS_SHAPE_ACTIONS ),
319 : :
320 : : ENTRY0( CHART, CHART, XML_ETACTION_CHART ),
321 : : ENTRY0( CHART, PLOT_AREA, XML_ETACTION_CHART_PLOT_AREA ),
322 : :
323 : : ENTRY0( CONFIG, CONFIG_ITEM, XML_ETACTION_CONFIG_ITEM ),
324 : 15 : ENTRY1Q( TEXT, TRACKED_CHANGES, XML_ETACTION_TRACKED_CHANGES,
325 : : XML_NAMESPACE_TEXT, XML_PROTECTION_KEY ),
326 : 15 : ENTRY1Q( TABLE, TRACKED_CHANGES, XML_ETACTION_TRACKED_CHANGES,
327 : : XML_NAMESPACE_TABLE, XML_PROTECTION_KEY ),
328 : :
329 : : ENTRY1( TEXT, INDEX_ENTRY_TAB_STOP, XML_ETACTION_PROC_ATTRS,
330 : : OASIS_INDEX_ENTRY_TAB_STOP_ACTIONS ),
331 : : ENTRY0( STYLE, TAB_STOP, XML_ETACTION_TAB_STOP ),
332 : : ENTRY1( STYLE, BACKGROUND_IMAGE, XML_ETACTION_PROC_ATTRS,
333 : : OASIS_BACKGROUND_IMAGE_ACTIONS ),
334 : : ENTRY1( TEXT, LINENUMBERING_CONFIGURATION, XML_ETACTION_PROC_ATTRS,
335 : : OASIS_LINENUMBERING_ACTIONS ),
336 : : ENTRY1( STYLE, FOOTNOTE_SEP, XML_ETACTION_PROC_ATTRS,
337 : : OASIS_FOOTNOTE_SEP_ACTIONS ),
338 : : ENTRY1( STYLE, DROP_CAP, XML_ETACTION_PROC_ATTRS, OASIS_DROP_CAP_ACTIONS ),
339 : : ENTRY1( STYLE, COLUMNS, XML_ETACTION_PROC_ATTRS, OASIS_COLUMNS_ACTIONS ),
340 : : ENTRY1( STYLE, COLUMN, XML_ETACTION_PROC_ATTRS, OASIS_COLUMNS_ACTIONS ),
341 : :
342 : : // process *:style-name attributes
343 : : ENTRY1( STYLE, MAP, XML_ETACTION_PROC_ATTRS, OASIS_MAP_STYLE_REF_ACTIONS ),
344 : : ENTRY1( TEXT, SPAN, XML_ETACTION_PROC_ATTRS, OASIS_TEXT_STYLE_REF_ACTIONS ),
345 : : ENTRY1( TEXT, A, XML_ETACTION_PROC_ATTRS, OASIS_TEXT_STYLE_REF_ACTIONS ),
346 : : ENTRY1( TEXT, RUBY_TEXT, XML_ETACTION_PROC_ATTRS,
347 : : OASIS_TEXT_STYLE_REF_ACTIONS ),
348 : : ENTRY1( TEXT, TABLE_OF_CONTENT_ENTRY_TEMPLATE, XML_ETACTION_PROC_ATTRS,
349 : : OASIS_PARA_STYLE_REF_ACTIONS ), /* generated entry */
350 : : ENTRY1( TEXT, ILLUSTRATION_INDEX_ENTRY_TEMPLATE, XML_ETACTION_PROC_ATTRS,
351 : : OASIS_PARA_STYLE_REF_ACTIONS ), /* generated entry */
352 : : ENTRY1( TEXT, TABLE_INDEX_ENTRY_TEMPLATE, XML_ETACTION_PROC_ATTRS,
353 : : OASIS_PARA_STYLE_REF_ACTIONS ), /* generated entry */
354 : : ENTRY1( TEXT, OBJECT_INDEX_ENTRY_TEMPLATE, XML_ETACTION_PROC_ATTRS,
355 : : OASIS_PARA_STYLE_REF_ACTIONS ), /* generated entry */
356 : : ENTRY1( TEXT, USER_INDEX_ENTRY_TEMPLATE, XML_ETACTION_PROC_ATTRS,
357 : : OASIS_PARA_STYLE_REF_ACTIONS ), /* generated entry */
358 : : ENTRY1( TEXT, ALPHABETICAL_INDEX_ENTRY_TEMPLATE, XML_ETACTION_PROC_ATTRS,
359 : : OASIS_PARA_STYLE_REF_ACTIONS ), /* generated entry */
360 : : ENTRY1( TEXT, BIBLIOGRAPHY_ENTRY_TEMPLATE, XML_ETACTION_PROC_ATTRS,
361 : : OASIS_PARA_STYLE_REF_ACTIONS ), /* generated entry */
362 : : ENTRY1( TEXT, INDEX_SOURCE_STYLE, XML_ETACTION_PROC_ATTRS,
363 : : OASIS_PARA_STYLE_REF_ACTIONS ), /* generated entry */
364 : : ENTRY1( TEXT, INDEX_TITLE_TEMPLATE, XML_ETACTION_PROC_ATTRS,
365 : : OASIS_PARA_STYLE_REF_ACTIONS ), /* generated entry */
366 : 15 : ENTRY3QNQ( TEXT, INDEX_ENTRY_CHAPTER,
367 : : XML_ETACTION_RENAME_ELEM_PROC_ATTRS_COND,
368 : : XML_NAMESPACE_TEXT, XML_INDEX_ENTRY_CHAPTER_NUMBER,
369 : : OASIS_TEXT_STYLE_REF_ACTIONS ,
370 : : XML_NAMESPACE_TEXT, XML_TABLE_OF_CONTENT_ENTRY_TEMPLATE),
371 : : ENTRY1( TEXT, INDEX_ENTRY_TEXT, XML_ETACTION_PROC_ATTRS,
372 : : OASIS_TEXT_STYLE_REF_ACTIONS ), /* generated entry */
373 : : ENTRY1( TEXT, INDEX_ENTRY_PAGE_NUMBER, XML_ETACTION_PROC_ATTRS,
374 : : OASIS_TEXT_STYLE_REF_ACTIONS ), /* generated entry */
375 : : ENTRY1( TEXT, INDEX_ENTRY_SPAN, XML_ETACTION_PROC_ATTRS,
376 : : OASIS_TEXT_STYLE_REF_ACTIONS ), /* generated entry */
377 : : ENTRY1( TEXT, INDEX_ENTRY_BIBLIOGRAPHY, XML_ETACTION_PROC_ATTRS,
378 : : OASIS_TEXT_STYLE_REF_ACTIONS ), /* generated entry */
379 : : ENTRY1( TEXT, INDEX_ENTRY_LINK_START, XML_ETACTION_PROC_ATTRS,
380 : : OASIS_TEXT_STYLE_REF_ACTIONS ), /* generated entry */
381 : : ENTRY1( TEXT, INDEX_ENTRY_LINK_END, XML_ETACTION_PROC_ATTRS,
382 : : OASIS_TEXT_STYLE_REF_ACTIONS ), /* generated entry */
383 : : ENTRY1( DRAW, PAGE, XML_ETACTION_PROC_ATTRS,
384 : : OASIS_MASTER_PAGE_REF_ACTIONS ), /* generated entry */
385 : : /* Conversion of attribute <table:style-name> for <table:table-row> and
386 : : <table:table-column> (#i40011#, #i40015#)
387 : : */
388 : : ENTRY1( TABLE, TABLE_ROW, XML_ETACTION_PROC_ATTRS,
389 : : OASIS_TABLE_STYLE_REF_ACTIONS ),
390 : : ENTRY1( TABLE, TABLE_COLUMN, XML_ETACTION_PROC_ATTRS,
391 : : OASIS_TABLE_STYLE_REF_ACTIONS ),
392 : :
393 : : // rename office:value-* to *:value-*
394 : : ENTRY1( TEXT, VARIABLE_DECL, XML_ETACTION_PROC_ATTRS,
395 : : OASIS_TEXT_VALUE_TYPE_ACTIONS ), /* generated entry */
396 : : ENTRY1( TEXT, VARIABLE_SET, XML_ETACTION_PROC_ATTRS,
397 : : OASIS_TEXT_VALUE_TYPE_ACTIONS), /* generated entry */
398 : : ENTRY1( TEXT, VARIABLE_INPUT, XML_ETACTION_PROC_ATTRS,
399 : : OASIS_TEXT_VALUE_TYPE_ACTIONS), /* generated entry */
400 : : ENTRY1( TEXT, USER_FIELD_DECL, XML_ETACTION_PROC_ATTRS,
401 : : OASIS_TEXT_VALUE_TYPE_ACTIONS), /* generated entry */
402 : : ENTRY1( TEXT, EXPRESSION, XML_ETACTION_PROC_ATTRS,
403 : : OASIS_TEXT_VALUE_TYPE_ACTIONS), /* generated entry */
404 : : ENTRY1( TEXT, USER_DEFINED, XML_ETACTION_PROC_ATTRS,
405 : : OASIS_DATETIME_ACTIONS ), // Add OASIS_TEXT_VALUE_TYPE_ACTIONS if attrs are added to text:user-defined
406 : : ENTRY1( TABLE, TABLE_CELL, XML_ETACTION_PROC_ATTRS,
407 : : OASIS_TABLE_VALUE_TYPE_ACTIONS), /* generated entry */
408 : : ENTRY1( TABLE, COVERED_TABLE_CELL, XML_ETACTION_PROC_ATTRS,
409 : : OASIS_TABLE_VALUE_TYPE_ACTIONS), /* generated entry */
410 : : ENTRY1( TABLE, CHANGE_TRACK_TABLE_CELL, XML_ETACTION_PROC_ATTRS,
411 : : OASIS_TABLE_VALUE_TYPE_ACTIONS), /* generated entry */
412 : : // ENTRY1( FORM, PROPERTY, XML_ETACTION_PROC_ATTRS,
413 : : // OASIS_VALUE_TYPE_ACTIONS), /* TODO: generated entry */
414 : : // ENTRY1( FORM, LIST_PROPERTY, XML_ETACTION_PROC_ATTRS,
415 : : // OASIS_VALUE_TYPE_ACTIONS), /* generated entry */
416 : :
417 : : ENTRY1( OFFICE, ANNOTATION, XML_ETACTION_MOVE_ELEMS_TO_ATTRS,
418 : : OASIS_ANNOTATION_ACTIONS ), /* generated entry */
419 : : ENTRY1( OFFICE, CHANGE_INFO, XML_ETACTION_MOVE_ELEMS_TO_ATTRS,
420 : : OASIS_CHANGE_INFO_ACTIONS ), /* generated entry */
421 : :
422 : : ENTRY1( TEXT, DDE_CONNECTION_DECL, XML_ETACTION_PROC_ATTRS,
423 : : OASIS_DDE_CONNECTION_DECL_ACTIONS ),
424 : :
425 : : ENTRY0( FORM, TEXT, XML_ETACTION_FORM_CONTROL ),
426 : : ENTRY0( FORM, TEXTAREA, XML_ETACTION_FORM_CONTROL ),
427 : : ENTRY0( FORM, FIXED_TEXT, XML_ETACTION_FORM_CONTROL ),
428 : : ENTRY0( FORM, FILE, XML_ETACTION_FORM_CONTROL ),
429 : : ENTRY0( FORM, PASSWORD, XML_ETACTION_FORM_CONTROL ),
430 : : ENTRY0( FORM, FORMATTED_TEXT, XML_ETACTION_FORM_CONTROL ),
431 : : ENTRY0( FORM, BUTTON, XML_ETACTION_FORM_CONTROL ),
432 : : ENTRY0( FORM, IMAGE, XML_ETACTION_FORM_CONTROL ),
433 : : ENTRY0( FORM, CHECKBOX, XML_ETACTION_FORM_CONTROL ),
434 : : ENTRY0( FORM, RADIO, XML_ETACTION_FORM_CONTROL ),
435 : : ENTRY0( FORM, LISTBOX, XML_ETACTION_FORM_CONTROL ),
436 : : ENTRY0( FORM, COMBOBOX, XML_ETACTION_FORM_CONTROL ),
437 : : ENTRY0( FORM, FRAME, XML_ETACTION_FORM_CONTROL ),
438 : : ENTRY0( FORM, HIDDEN, XML_ETACTION_FORM_CONTROL ),
439 : : ENTRY0( FORM, IMAGE_FRAME, XML_ETACTION_FORM_CONTROL ),
440 : : ENTRY0( FORM, GRID, XML_ETACTION_FORM_CONTROL ),
441 : : ENTRY0( FORM, VALUE_RANGE, XML_ETACTION_FORM_CONTROL ),
442 : : ENTRY0( FORM, GENERIC_CONTROL, XML_ETACTION_FORM_CONTROL ),
443 : : ENTRY1( FORM, COLUMN, XML_ETACTION_PROC_ATTRS,
444 : : OASIS_FORM_COLUMN_ACTIONS ),
445 : : ENTRY1( FORM, PROPERTY, XML_ETACTION_FORM_PROPERTY, XML_PROPERTY ),
446 : : ENTRY1( FORM, LIST_PROPERTY, XML_ETACTION_FORM_PROPERTY,
447 : : XML_LIST_PROPERTY ),
448 : : ENTRY1( FORM, LIST_VALUE, XML_ETACTION_FORM_PROPERTY, XML_LIST_VALUE ),
449 : :
450 : : // process xlink:href
451 : : ENTRY1( META, TEMPLATE, XML_ETACTION_PROC_ATTRS,
452 : : OASIS_XLINK_ACTIONS ), /* generated entry */
453 : : ENTRY1( META, AUTO_RELOAD, XML_ETACTION_PROC_ATTRS,
454 : : OASIS_XLINK_ACTIONS ), /* generated entry */
455 : : ENTRY1( TEXT, SECTION_SOURCE, XML_ETACTION_PROC_ATTRS,
456 : : OASIS_XLINK_ACTIONS ), /* generated entry */
457 : : ENTRY1( TEXT, SCRIPT, XML_ETACTION_PROC_ATTRS,
458 : : OASIS_XLINK_ACTIONS ), /* generated entry */
459 : : ENTRY1( TEXT, ALPHABETICAL_INDEX_AUTO_MARK_FILE, XML_ETACTION_PROC_ATTRS,
460 : : OASIS_XLINK_ACTIONS ), /* generated entry */
461 : : ENTRY1( TABLE, TABLE_SOURCE, XML_ETACTION_PROC_ATTRS,
462 : : OASIS_XLINK_ACTIONS ), /* generated entry */
463 : : ENTRY1( TABLE, CELL_RANGE_SOURCE, XML_ETACTION_PROC_ATTRS,
464 : : OASIS_XLINK_ACTIONS ), /* generated entry */
465 : : ENTRY1( DRAW, A, XML_ETACTION_PROC_ATTRS,
466 : : OASIS_XLINK_ACTIONS ), /* generated entry */
467 : : ENTRY1( PRESENTATION, SOUND, XML_ETACTION_PROC_ATTRS,
468 : : OASIS_XLINK_ACTIONS ), /* generated entry */
469 : : ENTRY1( FORM, FORM, XML_ETACTION_PROC_ATTRS,
470 : : OASIS_FORM_ACTIONS ), /* generated entry */
471 : : // ENTRY1( SVG, FONT_FACE_URI, XML_ETACTION_PROC_ATTRS,
472 : : // OASIS_XLINK_ACTIONS ), /* generated entry */
473 : : // ENTRY1( SVG, DEFINITION_SRC, XML_ETACTION_PROC_ATTRS,
474 : : // OASIS_XLINK_ACTIONS ), /* generated entry */
475 : 15 : ENTRY2QN( CHART, SYMBOL_IMAGE, XML_ETACTION_RENAME_ELEM_PROC_ATTRS,
476 : : XML_NAMESPACE_STYLE, XML_SYMBOL_IMAGE,
477 : : OASIS_BACKGROUND_IMAGE_ACTIONS ),
478 : : // OASIS_XLINK_ACTIONS ), /* generated entry */
479 : : // events don't have real URIs
480 : : // ENTRY1( PRESENTATION, EVENT_LISTENER, XML_ETACTION_PROC_ATTRS,
481 : : // OASIS_XLINK_ACTIONS ), /* generated entry */
482 : : // ENTRY1( SCRIPT, EVENT_LISTENER, XML_ETACTION_PROC_ATTRS,
483 : : // OASIS_XLINK_ACTIONS ), /* generated entry */
484 : :
485 : : // add namespace prefix to name
486 : : ENTRY1( CONFIG, CONFIG_ITEM_SET, XML_ETACTION_PROC_ATTRS,
487 : : OASIS_CONFIG_ITEM_SET_ACTIONS ),
488 : :
489 : : // add namespace prefix to formula and condition
490 : : // text:condition
491 : : ENTRY1( TEXT, SECTION, XML_ETACTION_PROC_ATTRS,
492 : : OASIS_FORMULA_ACTIONS ), /* generated entry */
493 : : // text:formula
494 : : ENTRY1( TEXT, SEQUENCE, XML_ETACTION_PROC_ATTRS,
495 : : OASIS_FORMULA_ACTIONS ), /* generated entry */
496 : : // text:condition
497 : : ENTRY1( TEXT, DATABASE_NEXT, XML_ETACTION_PROC_ATTRS,
498 : : OASIS_FORMULA_ACTIONS ), /* generated entry */
499 : : // text:condition
500 : 15 : ENTRY2QN( TEXT, DATABASE_ROW_SELECT, XML_ETACTION_RENAME_ELEM_PROC_ATTRS,
501 : : XML_NAMESPACE_TEXT, XML_DATABASE_SELECT,
502 : : OASIS_FORMULA_ACTIONS ), /* generated entry */
503 : : // text:condition
504 : : ENTRY1( TEXT, CONDITIONAL_TEXT, XML_ETACTION_PROC_ATTRS,
505 : : OASIS_FORMULA_ACTIONS ), /* generated entry */
506 : : // text:condition
507 : : ENTRY1( TEXT, HIDDEN_TEXT, XML_ETACTION_PROC_ATTRS,
508 : : OASIS_FORMULA_ACTIONS ), /* generated entry */
509 : : // text:condition
510 : : ENTRY1( TEXT, HIDDEN_PARAGRAPH, XML_ETACTION_PROC_ATTRS,
511 : : OASIS_FORMULA_ACTIONS ), /* generated entry */
512 : : // text:formula
513 : : ENTRY1( TEXT, TABLE_FORMULA, XML_ETACTION_PROC_ATTRS,
514 : : OASIS_FORMULA_ACTIONS ), /* generated entry */
515 : :
516 : : // process table::content-validation
517 : : ENTRY1( TABLE, CONTENT_VALIDATION, XML_ETACTION_PROC_ATTRS,
518 : : OASIS_CONTENT_VALIDATION_ACTIONS ),
519 : :
520 : : // rename <table:dependencies> to <table:dependences>
521 : 15 : ENTRY1Q( TABLE, DEPENDENCIES, XML_ETACTION_RENAME_ELEM,
522 : : XML_NAMESPACE_TABLE, XML_DEPENDENCES ),
523 : 15 : ENTRY1Q( TABLE, DEPENDENCY, XML_ETACTION_RENAME_ELEM,
524 : : XML_NAMESPACE_TABLE, XML_DEPENDENCE ),
525 : :
526 : : // process table::conversion-mode
527 : : ENTRY1( TABLE, CONVERSION_MODE, XML_ETACTION_PROC_ATTRS,
528 : : OASIS_DDE_CONV_MODE_ACTIONS ),
529 : :
530 : : // process table::data-pilot-member
531 : : ENTRY1( TABLE, DATA_PILOT_MEMBER, XML_ETACTION_PROC_ATTRS,
532 : : OASIS_DATAPILOT_MEMBER_ACTIONS ),
533 : :
534 : : // process table::data-pilot-level
535 : : ENTRY1( TABLE, DATA_PILOT_LEVEL, XML_ETACTION_PROC_ATTRS,
536 : : OASIS_DATAPILOT_LEVEL_ACTIONS ),
537 : :
538 : : // process table::source-service
539 : : ENTRY1( TABLE, SOURCE_SERVICE, XML_ETACTION_PROC_ATTRS,
540 : : OASIS_SOURCE_SERVICE_ACTIONS ),
541 : :
542 : : // entries for date time change (#i36576#)
543 : : ENTRY1( TEXT, DATE, XML_ETACTION_PROC_ATTRS, OASIS_DATETIME_ACTIONS ),
544 : : ENTRY1( TEXT, CREATION_DATE, XML_ETACTION_PROC_ATTRS,
545 : : OASIS_DATETIME_ACTIONS ),
546 : : ENTRY1( TEXT, TIME, XML_ETACTION_PROC_ATTRS, OASIS_DATETIME_ACTIONS ),
547 : : ENTRY1( TEXT, CREATION_TIME, XML_ETACTION_PROC_ATTRS,
548 : : OASIS_DATETIME_ACTIONS ),
549 : : ENTRY1( TEXT, PRINT_TIME, XML_ETACTION_PROC_ATTRS, OASIS_DATETIME_ACTIONS ),
550 : : ENTRY1( TEXT, MODIFICATION_TIME, XML_ETACTION_PROC_ATTRS,
551 : : OASIS_DATETIME_ACTIONS ),
552 : : ENTRY1( TEXT, EDITING_DURATION, XML_ETACTION_PROC_ATTRS,
553 : : OASIS_DATETIME_ACTIONS ),
554 : : ENTRY1( FORM, TIME, XML_ETACTION_PROC_ATTRS, OASIS_DATETIME_ACTIONS ),
555 : : ENTRY1( PRESENTATION, SETTINGS, XML_ETACTION_PROC_ATTRS,
556 : : OASIS_DATETIME_ACTIONS ),
557 : :
558 : : // fix <text:alphabatical-index-mark text:main-etry>
559 : : ENTRY1( TEXT, ALPHABETICAL_INDEX_MARK, XML_ETACTION_PROC_ATTRS,
560 : : OASIS_ALPHABETICAL_INDEX_MARK_ACTIONS ),
561 : : ENTRY1( TEXT, ALPHABETICAL_INDEX_MARK_START, XML_ETACTION_PROC_ATTRS,
562 : : OASIS_ALPHABETICAL_INDEX_MARK_ACTIONS ),
563 : :
564 : : // fix id strings in old animation elements
565 : : ENTRY1( PRESENTATION, DIM, XML_ETACTION_PROC_ATTRS, OASIS_ANIMATION_ACTIONS ),
566 : : ENTRY1( PRESENTATION, PLAY, XML_ETACTION_PROC_ATTRS, OASIS_ANIMATION_ACTIONS ),
567 : : ENTRY1( PRESENTATION, SHOW_TEXT, XML_ETACTION_PROC_ATTRS, OASIS_ANIMATION_ACTIONS ),
568 : : ENTRY1( PRESENTATION, SHOW_SHAPE, XML_ETACTION_PROC_ATTRS, OASIS_ANIMATION_ACTIONS ),
569 : : ENTRY1( PRESENTATION, HIDE_TEXT, XML_ETACTION_PROC_ATTRS, OASIS_ANIMATION_ACTIONS ),
570 : : ENTRY1( PRESENTATION, HIDE_SHAPE, XML_ETACTION_PROC_ATTRS, OASIS_ANIMATION_ACTIONS ),
571 : :
572 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ETACTION_EOT )
573 : 345 : };
574 : :
575 : : // XML_ETACTION_STYLE
576 : : static XMLTransformerActionInit aStyleActionTable[] =
577 : : {
578 : : ENTRY0( STYLE, FAMILY, XML_ATACTION_STYLE_FAMILY ),
579 : : ENTRY1( STYLE, NAME, XML_ATACTION_DECODE_STYLE_NAME,
580 : : XML_FAMILY_TYPE_END ),
581 : : ENTRY1( STYLE, DISPLAY_NAME, XML_ATACTION_STYLE_DISPLAY_NAME,
582 : : XML_FAMILY_TYPE_END ),
583 : : ENTRY1( STYLE, PARENT_STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
584 : : XML_FAMILY_TYPE_END ),
585 : : ENTRY1( STYLE, NEXT_STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
586 : : XML_FAMILY_TYPE_END ),
587 : : ENTRY1( STYLE, LIST_STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
588 : : XML_FAMILY_TYPE_LIST ),
589 : : ENTRY1( STYLE, MASTER_PAGE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
590 : : XML_FAMILY_TYPE_MASTER_PAGE ),
591 : : ENTRY0( STYLE, DEFAULT_OUTLINE_LEVEL, XML_ATACTION_REMOVE ),
592 : : ENTRY1( TEXT, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
593 : : XML_FAMILY_TYPE_TEXT ), // list level styles
594 : : ENTRY1( DRAW, NAME, XML_ATACTION_DECODE_STYLE_NAME,
595 : : XML_FAMILY_TYPE_END ),
596 : : ENTRY1( DRAW, DISPLAY_NAME, XML_ATACTION_STYLE_DISPLAY_NAME,
597 : : XML_FAMILY_TYPE_END ),
598 : : ENTRY0( DRAW, DISTANCE, XML_ATACTION_IN2INCH ),
599 : : ENTRY0( DRAW, DOTS1_LENGTH, XML_ATACTION_IN2INCH ),
600 : : ENTRY0( DRAW, DOTS2_LENGTH, XML_ATACTION_IN2INCH ),
601 : : ENTRY0( SVG, WIDTH, XML_ATACTION_IN2INCH ),
602 : : ENTRY0( SVG, HEIGHT, XML_ATACTION_IN2INCH ),
603 : : ENTRY0( DRAW, START, XML_ATACTION_NEG_PERCENT ),
604 : : ENTRY0( DRAW, END, XML_ATACTION_NEG_PERCENT ),
605 : : ENTRY1( XLINK, HREF, XML_ATACTION_URI_OASIS, sal_True ),
606 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
607 : : };
608 : :
609 : : // OASIS_FRAME_ELEM_ACTIONS
610 : : static XMLTransformerActionInit aFrameActionTable[] =
611 : : {
612 : : ENTRY0( DRAW, TEXT_BOX, XML_ETACTION_COPY ),
613 : : ENTRY0( DRAW, IMAGE, XML_ETACTION_COPY ),
614 : : ENTRY0( DRAW, OBJECT, XML_ETACTION_COPY ),
615 : : ENTRY0( DRAW, OBJECT_OLE, XML_ETACTION_COPY ),
616 : : ENTRY0( DRAW, APPLET, XML_ETACTION_COPY ),
617 : : ENTRY0( DRAW, PLUGIN, XML_ETACTION_COPY ),
618 : : ENTRY0( DRAW, FLOATING_FRAME, XML_ETACTION_COPY ),
619 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
620 : : };
621 : :
622 : : // OASIS_EVENT_ELEM_ACTIONS
623 : : static XMLTransformerActionInit aEventActionTable[] =
624 : : {
625 : : ENTRY0( XLINK, HREF, XML_ATACTION_HREF ),
626 : : ENTRY1( SCRIPT, LANGUAGE, XML_ATACTION_REMOVE_NAMESPACE_PREFIX,
627 : : XML_NAMESPACE_OOO ),
628 : : ENTRY0( SCRIPT, EVENT_NAME, XML_ATACTION_EVENT_NAME ),
629 : : ENTRY0( SCRIPT, MACRO_NAME, XML_ATACTION_MACRO_NAME ),
630 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
631 : : };
632 : :
633 : : // OASIS_EVENT_ELEM_ACTIONS
634 : : static XMLTransformerActionInit aDlgActionTable[] =
635 : : {
636 : : ENTRY0( DLG, BORDER, XML_ATACTION_DLG_BORDER )
637 : : };
638 : :
639 : : // action table for OASIS_MASTER_PAGE_ACTIONS
640 : : static XMLTransformerActionInit aMasterPageActionTable[] =
641 : : {
642 : : ENTRY1( STYLE, NAME, XML_ATACTION_DECODE_STYLE_NAME,
643 : : XML_FAMILY_TYPE_MASTER_PAGE ),
644 : : ENTRY1( STYLE, DISPLAY_NAME, XML_ATACTION_STYLE_DISPLAY_NAME,
645 : : XML_FAMILY_TYPE_MASTER_PAGE ),
646 : : ENTRY1( STYLE, NEXT_STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
647 : : XML_FAMILY_TYPE_MASTER_PAGE ),
648 : 15 : ENTRY1Q( STYLE, PAGE_LAYOUT_NAME, XML_ATACTION_RENAME,
649 : : XML_NAMESPACE_STYLE, XML_PAGE_MASTER_NAME ),
650 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
651 : 15 : };
652 : :
653 : : // action table for OASIS_TEXT_STYLE_REF_ACTIONS
654 : : static XMLTransformerActionInit aTextStyleRefActionTable[] =
655 : : {
656 : : ENTRY1( TEXT, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
657 : : XML_FAMILY_TYPE_TEXT ),
658 : : ENTRY1( TEXT, VISITED_STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
659 : : XML_FAMILY_TYPE_TEXT ),
660 : : ENTRY1( XLINK, HREF, XML_ATACTION_URI_OASIS, sal_False ),
661 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
662 : : };
663 : :
664 : : // action table for OASIS_PARA_STYLE_REF_ACTIONS
665 : : static XMLTransformerActionInit aParaStyleRefActionTable[] =
666 : : {
667 : : ENTRY1( TEXT, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
668 : : XML_FAMILY_TYPE_PARAGRAPH ),
669 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
670 : : };
671 : :
672 : :
673 : : // action table for OASIS_LIST_STYLE_REF_ACTIONS
674 : : static XMLTransformerActionInit aListStyleRefActionTable[] =
675 : : {
676 : : ENTRY1( TEXT, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
677 : : XML_FAMILY_TYPE_LIST ),
678 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
679 : : };
680 : :
681 : : // action table for OASIS_MASTER_PAGE_REF_ACTIONS
682 : : static XMLTransformerActionInit aMasterPageRefActionTable[] =
683 : : {
684 : : ENTRY1( DRAW, MASTER_PAGE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
685 : : XML_FAMILY_TYPE_MASTER_PAGE ),
686 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
687 : : };
688 : :
689 : : // action table for OASIS_MAP_STYLE_REF_ACTIONS
690 : : static XMLTransformerActionInit aMapStyleRefActionTable[] =
691 : : {
692 : : ENTRY1( STYLE, APPLY_STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
693 : : XML_FAMILY_TYPE_END ),
694 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
695 : : };
696 : :
697 : : // action table for OASIS_TABLE_STYLE_REF_ACTIONS (#i40011#, #i40015#)
698 : : static XMLTransformerActionInit aTableStyleRefActionTable[] =
699 : : {
700 : : ENTRY1( TABLE, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
701 : : XML_FAMILY_TYPE_END ),
702 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
703 : : };
704 : :
705 : : static XMLTransformerActionInit aFontFaceActionTable[] =
706 : : {
707 : 15 : ENTRY1Q( SVG, FONT_FAMILY, XML_ATACTION_RENAME,
708 : : XML_NAMESPACE_FO, XML_FONT_FAMILY ),
709 : 15 : ENTRY1Q( STYLE, FONT_ADORNMENTS, XML_ATACTION_RENAME,
710 : : XML_NAMESPACE_STYLE, XML_FONT_STYLE_NAME ),
711 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
712 : 30 : };
713 : :
714 : : // action table for OASIS_PARA_ACTIONS
715 : : static XMLTransformerActionInit aParaActionTable[] =
716 : : {
717 : : ENTRY1( TEXT, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
718 : : XML_FAMILY_TYPE_PARAGRAPH ),
719 : : ENTRY1( TEXT, COND_STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
720 : : XML_FAMILY_TYPE_PARAGRAPH ),
721 : 15 : ENTRY1Q( TEXT, OUTLINE_LEVEL, XML_ATACTION_RENAME,
722 : : XML_NAMESPACE_TEXT, XML_LEVEL ),
723 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
724 : 15 : };
725 : :
726 : : // !!ATTENTION!! If you change something here, please also change
727 : : // aConnectorActionTable if apropriate
728 : : static XMLTransformerActionInit aShapeActionTable[] =
729 : : {
730 : : ENTRY1( DRAW, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
731 : : XML_FAMILY_TYPE_GRAPHIC ),
732 : : ENTRY1( DRAW, TEXT_STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
733 : : XML_FAMILY_TYPE_PARAGRAPH ),
734 : : ENTRY1( PRESENTATION, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
735 : : XML_FAMILY_TYPE_PRESENTATION ),
736 : : ENTRY0( SVG, X, XML_ATACTION_IN2INCH ),
737 : : ENTRY0( SVG, Y, XML_ATACTION_IN2INCH ),
738 : : ENTRY0( SVG, X1, XML_ATACTION_IN2INCH ),
739 : : ENTRY0( SVG, Y1, XML_ATACTION_IN2INCH ),
740 : : ENTRY0( SVG, X2, XML_ATACTION_IN2INCH ),
741 : : ENTRY0( SVG, Y2, XML_ATACTION_IN2INCH ),
742 : : ENTRY0( SVG, CX, XML_ATACTION_IN2INCH ),
743 : : ENTRY0( SVG, CY, XML_ATACTION_IN2INCH ),
744 : : ENTRY0( DRAW, END_X, XML_ATACTION_IN2INCH ),
745 : : ENTRY0( DRAW, END_Y, XML_ATACTION_IN2INCH ),
746 : : ENTRY0( SVG, R, XML_ATACTION_IN2INCH ),
747 : : ENTRY0( SVG, RX, XML_ATACTION_IN2INCH ),
748 : : ENTRY0( SVG, RY, XML_ATACTION_IN2INCH ),
749 : : ENTRY0( SVG, WIDTH, XML_ATACTION_SVG_WIDTH_HEIGHT_OASIS ),
750 : : ENTRY0( SVG, HEIGHT, XML_ATACTION_SVG_WIDTH_HEIGHT_OASIS ),
751 : : ENTRY0( FO, MIN_WIDTH, XML_ATACTION_IN2INCH ),
752 : : ENTRY0( FO, MIN_HEIGHT, XML_ATACTION_IN2INCH ),
753 : : ENTRY0( FO, MAX_WIDTH, XML_ATACTION_IN2INCH ),
754 : : ENTRY0( FO, MAX_HEIGHT, XML_ATACTION_IN2INCH ),
755 : : ENTRY0( DRAW, CORNER_RADIUS, XML_ATACTION_IN2INCH ),
756 : : ENTRY0( DRAW, LINE_SKEW, XML_ATACTION_INS2INCHS ),
757 : : ENTRY0( DRAW, CAPTION_POINT_X, XML_ATACTION_IN2INCH ),
758 : : ENTRY0( DRAW, CAPTION_POINT_Y, XML_ATACTION_IN2INCH ),
759 : : ENTRY0( DR3D, DISTANCE, XML_ATACTION_IN2INCH ),
760 : : ENTRY0( DR3D, FOCAL_LENGTH, XML_ATACTION_IN2INCH ),
761 : 15 : ENTRY1Q( DRAW, CONTROL, XML_ATACTION_RENAME,
762 : : XML_NAMESPACE_FORM, XML_ID ),
763 : : ENTRY1( XLINK, HREF, XML_ATACTION_URI_OASIS, sal_True ),
764 : :
765 : : // BM: needed by chart:legend. The legend needs also the draw actions. As
766 : : // there is no merge mechanism, all actions have to be in the same table
767 : : ENTRY2( CHART, LEGEND_POSITION, XML_ATACTION_RENAME_ATTRIBUTE,
768 : : RENAME_ENTRY( XML_START, XML_LEFT ),
769 : : RENAME_ENTRY( XML_END, XML_RIGHT )),
770 : :
771 : : ENTRY0( DRAW, ID, XML_ATACTION_DECODE_ID ),
772 : :
773 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
774 : 15 : };
775 : :
776 : : // OASIS_ANIMATION_ACTIONS
777 : : static XMLTransformerActionInit aAnimationActionTable[] =
778 : : {
779 : : ENTRY0( DRAW, SHAPE_ID, XML_ATACTION_DECODE_ID ),
780 : : ENTRY0( PRESENTATION, DELAY, XML_ATACTION_RNG2ISO_DATETIME ),
781 : : ENTRY0( PRESENTATION, PAUSE, XML_ATACTION_RNG2ISO_DATETIME ),
782 : :
783 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
784 : : };
785 : :
786 : : // OOO_CONNECTOR_ACTIONS
787 : : static XMLTransformerActionInit aConnectorActionTable[] =
788 : : {
789 : : ENTRY1( DRAW, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
790 : : XML_FAMILY_TYPE_GRAPHIC ),
791 : : ENTRY1( DRAW, TEXT_STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
792 : : XML_FAMILY_TYPE_PARAGRAPH ),
793 : : ENTRY1( PRESENTATION, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
794 : : XML_FAMILY_TYPE_PRESENTATION ),
795 : : ENTRY0( SVG, X1, XML_ATACTION_IN2TWIPS ),
796 : : ENTRY0( SVG, Y1, XML_ATACTION_IN2TWIPS ),
797 : : ENTRY0( SVG, X2, XML_ATACTION_IN2TWIPS ),
798 : : ENTRY0( SVG, Y2, XML_ATACTION_IN2TWIPS ),
799 : : ENTRY0( DRAW, END_X, XML_ATACTION_IN2INCH ),
800 : : ENTRY0( DRAW, END_Y, XML_ATACTION_IN2INCH ),
801 : : ENTRY0( SVG, WIDTH, XML_ATACTION_SVG_WIDTH_HEIGHT_OASIS ),
802 : : ENTRY0( SVG, HEIGHT, XML_ATACTION_SVG_WIDTH_HEIGHT_OASIS ),
803 : : ENTRY0( FO, MIN_WIDTH, XML_ATACTION_IN2INCH ),
804 : : ENTRY0( FO, MIN_HEIGHT, XML_ATACTION_IN2INCH ),
805 : : ENTRY0( FO, MAX_WIDTH, XML_ATACTION_IN2INCH ),
806 : : ENTRY0( FO, MAX_HEIGHT, XML_ATACTION_IN2INCH ),
807 : : ENTRY0( DRAW, LINE_SKEW, XML_ATACTION_INS2INCHS ),
808 : 15 : ENTRY1Q( DRAW, CONTROL, XML_ATACTION_RENAME,
809 : : XML_NAMESPACE_FORM, XML_ID ),
810 : : ENTRY1( XLINK, HREF, XML_ATACTION_URI_OASIS, sal_True ),
811 : : ENTRY0( DRAW, START_SHAPE, XML_ATACTION_DECODE_ID ),
812 : : ENTRY0( DRAW, END_SHAPE, XML_ATACTION_DECODE_ID ),
813 : :
814 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
815 : 15 : };
816 : :
817 : : // OASIS_INDEX_ENTRY_TAB_STOP_ACTIONS
818 : : static XMLTransformerActionInit aIndexEntryTabStopActionTable[] =
819 : : {
820 : : ENTRY0( STYLE, POSITION, XML_ATACTION_IN2INCH ),
821 : : ENTRY1( TEXT, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
822 : : XML_FAMILY_TYPE_TEXT ),
823 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
824 : : };
825 : :
826 : : // OASIS_TAB_STOP_ACTIONS
827 : : static XMLTransformerActionInit aTabStopActionTable[] =
828 : : {
829 : : ENTRY0( STYLE, POSITION, XML_ATACTION_IN2INCH ),
830 : 15 : ENTRY1Q( STYLE, LEADER_TEXT, XML_ATACTION_RENAME,
831 : : XML_NAMESPACE_STYLE, XML_LEADER_CHAR ),
832 : : ENTRY0( STYLE, LEADER_STYLE, XML_ATACTION_REMOVE ),
833 : : ENTRY0( STYLE, LEADER_TYPE, XML_ATACTION_REMOVE ),
834 : : ENTRY0( STYLE, LEADER_WIDTH, XML_ATACTION_REMOVE ),
835 : : ENTRY0( STYLE, LEADER_COLOR, XML_ATACTION_REMOVE ),
836 : : ENTRY0( STYLE, LEADER_TEXT_STYLE, XML_ATACTION_REMOVE ),
837 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
838 : 15 : };
839 : :
840 : : // OASIS_LINENUMBERING_ACTIONS
841 : : static XMLTransformerActionInit aLineNumberingActionTable[] =
842 : : {
843 : : ENTRY0( TEXT, OFFSET, XML_ATACTION_IN2INCH ),
844 : : ENTRY1( TEXT, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
845 : : XML_FAMILY_TYPE_TEXT ),
846 : 15 : ENTRY1Q( TEXT, COUNT_IN_TEXT_BOXES , XML_ATACTION_RENAME,
847 : : XML_NAMESPACE_TEXT, XML_COUNT_IN_FLOATING_FRAMES),
848 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
849 : 15 : };
850 : :
851 : : static XMLTransformerActionInit aFootnoteSepActionTable[] =
852 : : {
853 : : ENTRY0( STYLE, WIDTH, XML_ATACTION_IN2INCH ),
854 : : ENTRY0( STYLE, DISTANCE_BEFORE_SEP, XML_ATACTION_IN2INCH ),
855 : : ENTRY0( STYLE, DISTANCE_AFTER_SEP, XML_ATACTION_IN2INCH ),
856 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
857 : : };
858 : :
859 : : // OASIS_NOTES_ACTIONS (processed by special context)
860 : : static XMLTransformerActionInit aNotesActionTable[] =
861 : : {
862 : : ENTRY0( TEXT, NOTE_CLASS, XML_ATACTION_STYLE_FAMILY ),
863 : : ENTRY1( TEXT, CITATION_STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
864 : : XML_FAMILY_TYPE_TEXT ),
865 : : ENTRY1( TEXT, CITATION_BODY_STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
866 : : XML_FAMILY_TYPE_TEXT ),
867 : : ENTRY1( TEXT, DEFAULT_STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
868 : : XML_FAMILY_TYPE_PARAGRAPH ),
869 : : ENTRY1( TEXT, MASTER_PAGE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
870 : : XML_FAMILY_TYPE_MASTER_PAGE ),
871 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
872 : : };
873 : :
874 : : // OASIS_DROP_CAP_ACTIONS
875 : : static XMLTransformerActionInit aDropCapActionTable[] =
876 : : {
877 : : ENTRY0( STYLE, DISTANCE, XML_ATACTION_IN2INCH ),
878 : : ENTRY1( STYLE, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
879 : : XML_FAMILY_TYPE_TEXT ),
880 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
881 : : };
882 : :
883 : : static XMLTransformerActionInit aColumnsActionTable[] =
884 : : {
885 : : ENTRY0( STYLE, COLUMN_GAP, XML_ATACTION_IN2INCH ),
886 : : ENTRY0( STYLE, SPACE_BEFORE, XML_ATACTION_REMOVE ),
887 : : ENTRY0( STYLE, SPACE_AFTER, XML_ATACTION_REMOVE ),
888 : 15 : ENTRY1Q( FO, START_INDENT, XML_ATACTION_RENAME_IN2INCH,
889 : : XML_NAMESPACE_FO, XML_MARGIN_LEFT ),
890 : 15 : ENTRY1Q( FO, END_INDENT, XML_ATACTION_RENAME_IN2INCH,
891 : : XML_NAMESPACE_FO, XML_MARGIN_RIGHT ),
892 : : ENTRY0( STYLE, WIDTH, XML_ATACTION_IN2INCH ),
893 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
894 : 30 : };
895 : :
896 : : // OASIS_TEXT_VALUE_TYPE_ACTIONS
897 : : static XMLTransformerActionInit aTextValueTypeActionTable[] =
898 : : {
899 : 15 : ENTRY1Q( OFFICE, VALUE_TYPE, XML_ATACTION_RENAME,
900 : : XML_NAMESPACE_TEXT, XML_VALUE_TYPE ),
901 : 15 : ENTRY1Q( OFFICE, VALUE, XML_ATACTION_RENAME,
902 : : XML_NAMESPACE_TEXT, XML_VALUE ),
903 : 15 : ENTRY1Q( OFFICE, CURRENCY, XML_ATACTION_RENAME,
904 : : XML_NAMESPACE_TEXT, XML_CURRENCY ),
905 : 15 : ENTRY1Q( OFFICE, DATE_VALUE, XML_ATACTION_RENAME_RNG2ISO_DATETIME,
906 : : XML_NAMESPACE_TEXT, XML_DATE_VALUE ),
907 : 15 : ENTRY1Q( OFFICE, TIME_VALUE, XML_ATACTION_RENAME_RNG2ISO_DATETIME,
908 : : XML_NAMESPACE_TEXT, XML_TIME_VALUE ),
909 : 15 : ENTRY1Q( OFFICE, BOOLEAN_VALUE, XML_ATACTION_RENAME,
910 : : XML_NAMESPACE_TEXT, XML_BOOLEAN_VALUE ),
911 : 15 : ENTRY1Q( OFFICE, STRING_VALUE, XML_ATACTION_RENAME,
912 : : XML_NAMESPACE_TEXT, XML_STRING_VALUE ),
913 : : ENTRY0( TEXT, FORMULA, XML_ATACTION_REMOVE_ANY_NAMESPACE_PREFIX ),
914 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
915 : 105 : };
916 : :
917 : : // OASIS_TABLE_VALUE_TYPE_ACTIONS
918 : : static XMLTransformerActionInit aTableValueTypeActionTable[] =
919 : : {
920 : 15 : ENTRY1Q( OFFICE, VALUE_TYPE, XML_ATACTION_RENAME,
921 : : XML_NAMESPACE_TABLE, XML_VALUE_TYPE ),
922 : 15 : ENTRY1Q( OFFICE, VALUE, XML_ATACTION_RENAME,
923 : : XML_NAMESPACE_TABLE, XML_VALUE ),
924 : 15 : ENTRY1Q( OFFICE, CURRENCY, XML_ATACTION_RENAME,
925 : : XML_NAMESPACE_TABLE, XML_CURRENCY ),
926 : 15 : ENTRY1Q( OFFICE, DATE_VALUE, XML_ATACTION_RENAME_RNG2ISO_DATETIME,
927 : : XML_NAMESPACE_TABLE, XML_DATE_VALUE ),
928 : 15 : ENTRY1Q( OFFICE, TIME_VALUE, XML_ATACTION_RENAME_RNG2ISO_DATETIME,
929 : : XML_NAMESPACE_TABLE, XML_TIME_VALUE ),
930 : 15 : ENTRY1Q( OFFICE, BOOLEAN_VALUE, XML_ATACTION_RENAME,
931 : : XML_NAMESPACE_TABLE, XML_BOOLEAN_VALUE ),
932 : 15 : ENTRY1Q( OFFICE, STRING_VALUE, XML_ATACTION_RENAME,
933 : : XML_NAMESPACE_TABLE, XML_STRING_VALUE ),
934 : : ENTRY1( TABLE, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
935 : : XML_FAMILY_TYPE_TABLE_CELL ),
936 : : ENTRY0( TABLE, FORMULA, XML_ATACTION_REMOVE_ANY_NAMESPACE_PREFIX ),
937 : 15 : ENTRY1Q( TABLE, CONTENT_VALIDATION_NAME, XML_ATACTION_RENAME,
938 : : XML_NAMESPACE_TABLE, XML_VALIDATION_NAME ),
939 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
940 : 120 : };
941 : :
942 : : // action table for OASIS_ANNOTATION_ACTIONS
943 : : static XMLTransformerActionInit aAnnotationActionTable[] =
944 : : {
945 : 15 : ENTRY1Q( DC, CREATOR, XML_ATACTION_MOVE_FROM_ELEM,
946 : : XML_NAMESPACE_OFFICE, XML_AUTHOR ),
947 : 15 : ENTRY1Q( DC, DATE, XML_ATACTION_MOVE_FROM_ELEM_RNG2ISO_DATETIME,
948 : : XML_NAMESPACE_OFFICE, XML_CREATE_DATE ),
949 : 15 : ENTRY1Q( META, DATE_STRING, XML_ATACTION_MOVE_FROM_ELEM,
950 : : XML_NAMESPACE_OFFICE, XML_CREATE_DATE_STRING ),
951 : : ENTRY0( TEXT, P, XML_ETACTION_EXTRACT_CHARACTERS ),
952 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
953 : 45 : };
954 : :
955 : : // action table for OASIS_CHANGE_INFO_ACTIONS
956 : : static XMLTransformerActionInit aChangeInfoActionTable[] =
957 : : {
958 : 15 : ENTRY1Q( DC, CREATOR, XML_ATACTION_MOVE_FROM_ELEM,
959 : : XML_NAMESPACE_OFFICE, XML_CHG_AUTHOR ),
960 : 15 : ENTRY1Q( DC, DATE, XML_ATACTION_MOVE_FROM_ELEM_RNG2ISO_DATETIME,
961 : : XML_NAMESPACE_OFFICE, XML_CHG_DATE_TIME ),
962 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
963 : 30 : };
964 : :
965 : : // OASIS_BACKGROUND_IMAGE_ACTIONS
966 : : static XMLTransformerActionInit aBackgroundImageActionTable[] =
967 : : {
968 : 15 : ENTRY1Q( DRAW, OPACITY, XML_ATACTION_RENAME_NEG_PERCENT,
969 : : XML_NAMESPACE_DRAW, XML_TRANSPARENCY ),
970 : : ENTRY1( XLINK, HREF, XML_ATACTION_URI_OASIS, sal_True ),
971 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
972 : 15 : };
973 : :
974 : : // OASIS_DDE_CONNECTION_DECL
975 : : static XMLTransformerActionInit aDDEConnectionDeclActionTable[] =
976 : : {
977 : 15 : ENTRY1Q( OFFICE, NAME, XML_ATACTION_RENAME,
978 : : XML_NAMESPACE_TEXT, XML_NAME ),
979 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
980 : 15 : };
981 : :
982 : :
983 : : // OASIS_FORM_CONTROL_ACTIONS
984 : : static XMLTransformerActionInit aFormControlActionTable[] =
985 : : {
986 : : ENTRY0( FORM, NAME, XML_ATACTION_MOVE_TO_ELEM ),
987 : 15 : ENTRY2QN( FORM, CONTROL_IMPLEMENTATION,
988 : : XML_ATACTION_RENAME_REMOVE_NAMESPACE_PREFIX,
989 : : XML_NAMESPACE_FORM, XML_SERVICE_NAME,
990 : : XML_NAMESPACE_OOO ),
991 : : ENTRY0( FORM, ID, XML_ATACTION_MOVE_TO_ELEM ),
992 : : ENTRY1( XLINK, HREF, XML_ATACTION_URI_OASIS, sal_False ),
993 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
994 : 15 : };
995 : :
996 : : // OASIS_FORM_COLUMN_ACTIONS
997 : : static XMLTransformerActionInit aFormColumnActionTable[] =
998 : : {
999 : 15 : ENTRY1Q( FORM, TEXT_STYLE_NAME, XML_ATACTION_RENAME_DECODE_STYLE_NAME_REF,
1000 : : XML_NAMESPACE_FORM, XML_COLUMN_STYLE_NAME ),
1001 : 15 : ENTRY2QN( FORM, CONTROL_IMPLEMENTATION,
1002 : : XML_ATACTION_RENAME_REMOVE_NAMESPACE_PREFIX,
1003 : : XML_NAMESPACE_FORM, XML_SERVICE_NAME,
1004 : : XML_NAMESPACE_OOO ),
1005 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1006 : 30 : };
1007 : :
1008 : : // OASIS_FORM_PROP_ACTIONS
1009 : : static XMLTransformerActionInit aFormPropActionTable[] =
1010 : : {
1011 : 15 : ENTRY1Q( OFFICE, VALUE_TYPE, XML_ATACTION_RENAME,
1012 : : XML_NAMESPACE_FORM, XML_PROPERTY_TYPE ),
1013 : : ENTRY0( OFFICE, VALUE, XML_ATACTION_REMOVE ),
1014 : : ENTRY0( OFFICE, STRING_VALUE, XML_ATACTION_REMOVE ),
1015 : : ENTRY0( OFFICE, BOOLEAN_VALUE, XML_ATACTION_REMOVE ),
1016 : : ENTRY0( OFFICE, DATE_VALUE, XML_ATACTION_REMOVE ),
1017 : : ENTRY0( OFFICE, TIME_VALUE, XML_ATACTION_REMOVE ),
1018 : : ENTRY0( OFFICE, CURRENCY, XML_ATACTION_REMOVE ),
1019 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1020 : 15 : };
1021 : :
1022 : : // OASIS_XLINK_ACTIONS
1023 : : static XMLTransformerActionInit aXLinkActionTable[] =
1024 : : {
1025 : : ENTRY1( XLINK, HREF, XML_ATACTION_URI_OASIS, sal_False ),
1026 : : ENTRY0( TABLE, REFRESH_DELAY, XML_ATACTION_RNG2ISO_DATETIME ),
1027 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1028 : : };
1029 : :
1030 : : // OASIS_CONFIG_ITEM_SET_ACTIONS
1031 : : static XMLTransformerActionInit aConfigItemSetActionTable[] =
1032 : : {
1033 : : ENTRY1( CONFIG, NAME, XML_ATACTION_REMOVE_NAMESPACE_PREFIX,
1034 : : XML_NAMESPACE_OOO ),
1035 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1036 : : };
1037 : :
1038 : : // OASIS_FORMULA_ACTIONS
1039 : : static XMLTransformerActionInit aFormulaActionTable[] =
1040 : : {
1041 : : ENTRY0( TEXT, CONDITION, XML_ATACTION_REMOVE_ANY_NAMESPACE_PREFIX ),
1042 : : ENTRY0( TEXT, FORMULA, XML_ATACTION_REMOVE_ANY_NAMESPACE_PREFIX ),
1043 : : ENTRY0( TABLE, CONDITION, XML_ATACTION_REMOVE_ANY_NAMESPACE_PREFIX ),
1044 : : ENTRY0( TABLE, FORMULA, XML_ATACTION_REMOVE_ANY_NAMESPACE_PREFIX ),
1045 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1046 : : };
1047 : :
1048 : : // OASIS_CONTENT_VALIDATION_ACTIONS
1049 : : static XMLTransformerActionInit aContentValidationActionTable[] =
1050 : : {
1051 : : ENTRY0( TABLE, CONDITION, XML_ATACTION_REMOVE_ANY_NAMESPACE_PREFIX ),
1052 : : ENTRY0( TABLE, DISPLAY_LIST, XML_ATACTION_REMOVE ),
1053 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1054 : : };
1055 : :
1056 : : // OASIS_DDE_CONV_MODE_ACTIONS
1057 : : static XMLTransformerActionInit aDDEConvModeActionTable[] =
1058 : : {
1059 : 15 : ENTRY1Q( TABLE, KEEP_TEXT, XML_ATACTION_RENAME,
1060 : : XML_NAMESPACE_TABLE, XML_LET_TEXT ),
1061 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1062 : 15 : };
1063 : :
1064 : : // OASIS_DATAPILOT_MEMBER_ACTIONS
1065 : : static XMLTransformerActionInit aDataPilotMemberActionTable[] =
1066 : : {
1067 : 15 : ENTRY1Q( TABLE, SHOW_DETAILS, XML_ATACTION_RENAME,
1068 : : XML_NAMESPACE_TABLE, XML_DISPLAY_DETAILS ),
1069 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1070 : 15 : };
1071 : :
1072 : : // OASIS_DATAPILOT_LEVEL_ACTIONS
1073 : : static XMLTransformerActionInit aDataPilotLevelActionTable[] =
1074 : : {
1075 : 15 : ENTRY1Q( TABLE, SHOW_EMPTY, XML_ATACTION_RENAME,
1076 : : XML_NAMESPACE_TABLE, XML_DISPLAY_EMPTY ),
1077 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1078 : 15 : };
1079 : :
1080 : : // OASIS_SOURCE_SERVICE_ACTIONS
1081 : : static XMLTransformerActionInit aSourceServiceActionTable[] =
1082 : : {
1083 : 15 : ENTRY1Q( TABLE, USER_NAME, XML_ATACTION_RENAME,
1084 : : XML_NAMESPACE_TABLE, XML_USERNAME ),
1085 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1086 : 15 : };
1087 : :
1088 : : // OASIS_CHART_ACTIONS
1089 : : static XMLTransformerActionInit aChartActionTable[] =
1090 : : {
1091 : : ENTRY0( CHART, CLASS, XML_ATACTION_REMOVE_ANY_NAMESPACE_PREFIX ),
1092 : : ENTRY1( DRAW, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
1093 : : XML_FAMILY_TYPE_GRAPHIC ),
1094 : : ENTRY0( SVG, WIDTH, XML_ATACTION_IN2INCH ),
1095 : : ENTRY0( SVG, HEIGHT, XML_ATACTION_IN2INCH ),
1096 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1097 : : };
1098 : :
1099 : : // OASIS_FORM_ACTIONS
1100 : : static XMLTransformerActionInit aFormActionTable[] =
1101 : : {
1102 : 15 : ENTRY2QN( FORM, CONTROL_IMPLEMENTATION,
1103 : : XML_ATACTION_RENAME_REMOVE_NAMESPACE_PREFIX,
1104 : : XML_NAMESPACE_FORM, XML_SERVICE_NAME,
1105 : : XML_NAMESPACE_OOO ),
1106 : : ENTRY1( XLINK, HREF, XML_ATACTION_URI_OASIS, sal_False ),
1107 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1108 : 15 : };
1109 : :
1110 : : // OASIS_ALPHABETICAL_INDEX_MARK_ACTIONS
1111 : : static XMLTransformerActionInit aAlphabeticalIndexMarkActionTable[] =
1112 : : {
1113 : 15 : ENTRY1Q( TEXT, MAIN_ENTRY, XML_ATACTION_RENAME,
1114 : : XML_NAMESPACE_TEXT, XML_MAIN_ETRY ),
1115 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1116 : 15 : };
1117 : :
1118 : : // OASIS_DRAW_AREA_POLYGON_ACTIONS (to be added to OASIS_SHAPE_ACTIONS)
1119 : : static XMLTransformerActionInit aDrawAreaPolygonActionTable[] =
1120 : : {
1121 : 15 : ENTRY1Q( DRAW, POINTS, XML_ATACTION_RENAME,
1122 : : XML_NAMESPACE_SVG, XML_POINTS ),
1123 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1124 : 15 : };
1125 : :
1126 : : // OASIS_SCRIPT_ACTIONS
1127 : : static XMLTransformerActionInit aScriptActionTable[] =
1128 : : {
1129 : : ENTRY1( SCRIPT, LANGUAGE, XML_ATACTION_REMOVE_NAMESPACE_PREFIX, XML_NAMESPACE_OOO ),
1130 : 15 : ENTRY1Q( OOO, NAME, XML_ATACTION_RENAME, XML_NAMESPACE_SCRIPT, XML_NAME ),
1131 : 15 : ENTRY1Q( OOO, READONLY, XML_ATACTION_RENAME, XML_NAMESPACE_SCRIPT, XML_READONLY ),
1132 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1133 : 15 : };
1134 : :
1135 : : // OASIS_DATETIME_ACTIONS
1136 : : static XMLTransformerActionInit aDateTimeActionTable[] =
1137 : : {
1138 : : ENTRY0( TEXT, DATE_VALUE, XML_ATACTION_RNG2ISO_DATETIME ),
1139 : : ENTRY0( TEXT, TIME_VALUE, XML_ATACTION_RNG2ISO_DATETIME ),
1140 : : ENTRY0( TEXT, DATE_ADJUST, XML_ATACTION_RNG2ISO_DATETIME ),
1141 : : ENTRY0( TEXT, TIME_ADJUST, XML_ATACTION_RNG2ISO_DATETIME ),
1142 : : ENTRY0( TEXT, DURATION, XML_ATACTION_RNG2ISO_DATETIME ),
1143 : : ENTRY0( OFFICE, DATE_VALUE, XML_ATACTION_RNG2ISO_DATETIME ),
1144 : : ENTRY0( OFFICE, TIME_VALUE, XML_ATACTION_RNG2ISO_DATETIME ),
1145 : : ENTRY0( FORM, VALUE, XML_ATACTION_RNG2ISO_DATETIME ),
1146 : : ENTRY0( FORM, CURRENT_VALUE, XML_ATACTION_RNG2ISO_DATETIME ),
1147 : : ENTRY0( TABLE, DATE_START, XML_ATACTION_RNG2ISO_DATETIME ),
1148 : : ENTRY0( TABLE, DATE_END, XML_ATACTION_RNG2ISO_DATETIME ),
1149 : : ENTRY0( TABLE, REFRESH_DELAY, XML_ATACTION_RNG2ISO_DATETIME ),
1150 : : ENTRY0( PRESENTATION, DELAY, XML_ATACTION_RNG2ISO_DATETIME ),
1151 : : ENTRY0( PRESENTATION, PAUSE, XML_ATACTION_RNG2ISO_DATETIME ),
1152 : : ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
1153 : : };
1154 : :
1155 : : static XMLTokenEnum aTokenMap[] =
1156 : : {
1157 : : XML_NONE, XML_SOLID, XML_DOTTED, XML_DASH, XML_LONG_DASH, XML_DOT_DASH,
1158 : : XML_DOT_DOT_DASH, XML_WAVE, XML_SMALL_WAVE, XML_TOKEN_END
1159 : : };
1160 : :
1161 : : // -----------------------------------------------------------------------------
1162 : :
1163 : : class XMLTableTransformerContext_Impl : public XMLTransformerContext
1164 : : {
1165 : : ::rtl::OUString m_aElemQName;
1166 : :
1167 : : public:
1168 : : TYPEINFO();
1169 : :
1170 : : XMLTableTransformerContext_Impl( XMLTransformerBase& rTransformer,
1171 : : const ::rtl::OUString& rQName );
1172 : :
1173 : : virtual ~XMLTableTransformerContext_Impl();
1174 : :
1175 : : virtual void StartElement( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList >& xAttrList );
1176 : : virtual void EndElement();
1177 : : };
1178 : :
1179 [ # # ][ # # ]: 0 : TYPEINIT1( XMLTableTransformerContext_Impl, XMLTransformerContext );
1180 : :
1181 : 2 : XMLTableTransformerContext_Impl::XMLTableTransformerContext_Impl(
1182 : : XMLTransformerBase& rImp,
1183 : : const OUString& rQName ) :
1184 : : XMLTransformerContext( rImp, rQName ),
1185 : 2 : m_aElemQName( rQName )
1186 : : {
1187 : 2 : }
1188 : :
1189 : 2 : XMLTableTransformerContext_Impl::~XMLTableTransformerContext_Impl()
1190 : : {
1191 [ - + ]: 4 : }
1192 : :
1193 : 2 : void XMLTableTransformerContext_Impl::StartElement(
1194 : : const Reference< XAttributeList >& rAttrList )
1195 : : {
1196 : 2 : Reference< XAttributeList > xAttrList( rAttrList );
1197 : :
1198 : 2 : XMLMutableAttributeList *pMutableAttrList = 0;
1199 : :
1200 [ + - ][ + - ]: 2 : sal_Int16 nAttrCount = xAttrList.is() ? xAttrList->getLength() : 0;
[ + - ]
1201 [ + + ]: 6 : for( sal_Int16 i=0; i < nAttrCount; i++ )
1202 : : {
1203 [ + - ][ + - ]: 4 : const OUString& rAttrName = xAttrList->getNameByIndex( i );
1204 : 4 : OUString aLocalName;
1205 : : sal_uInt16 nPrefix =
1206 : 4 : GetTransformer().GetNamespaceMap().GetKeyByAttrName( rAttrName,
1207 [ + - ]: 4 : &aLocalName );
1208 [ + - ]: 4 : if( XML_NAMESPACE_TABLE == nPrefix )
1209 : : {
1210 [ + - ][ - + ]: 4 : if ( IsXMLToken( aLocalName, XML_IS_SUB_TABLE ) )
1211 : : {
1212 [ # # ][ # # ]: 0 : const OUString& rValue = xAttrList->getValueByIndex( i );
1213 [ # # ][ # # ]: 0 : if( IsXMLToken( rValue, XML_TRUE ) )
1214 : : {
1215 : 0 : m_aElemQName = GetTransformer().GetNamespaceMap().GetQNameByKey(
1216 : : XML_NAMESPACE_TABLE,
1217 [ # # # # ]: 0 : ::xmloff::token::GetXMLToken( XML_SUB_TABLE ) );
1218 [ # # ]: 0 : if ( !pMutableAttrList )
1219 : : {
1220 : : pMutableAttrList =
1221 [ # # ]: 0 : new XMLMutableAttributeList( xAttrList );
1222 [ # # ][ # # ]: 0 : xAttrList = pMutableAttrList;
1223 : : }
1224 [ # # ]: 0 : pMutableAttrList->RemoveAttributeByIndex( i );
1225 : 0 : }
1226 : : // OD 2005-07-05 #i50521# - no break here for savety reason.
1227 : : }
1228 : : // Convert attribute table:style-name for <table:table> (#i40011#, #i40015#)
1229 [ + - ][ + + ]: 4 : else if ( IsXMLToken( aLocalName, XML_STYLE_NAME ) )
1230 : : {
1231 [ + - ][ + - ]: 2 : const OUString& rValue = xAttrList->getValueByIndex( i );
1232 : 2 : OUString aAttrValue( rValue );
1233 [ - + ][ + - ]: 2 : if( GetTransformer().DecodeStyleName(aAttrValue) )
1234 : : {
1235 [ # # ]: 0 : if ( !pMutableAttrList )
1236 : : {
1237 : : pMutableAttrList =
1238 [ # # ]: 0 : new XMLMutableAttributeList( xAttrList );
1239 [ # # ][ # # ]: 0 : xAttrList = pMutableAttrList;
1240 : : }
1241 [ # # ]: 0 : pMutableAttrList->SetValueByIndex( i, aAttrValue );
1242 : 2 : }
1243 : : }
1244 [ + - ][ - + ]: 2 : else if( IsXMLToken( aLocalName, XML_PRINT ) )
1245 : : {
1246 [ # # ]: 0 : if ( !pMutableAttrList )
1247 : : {
1248 : : pMutableAttrList =
1249 [ # # ]: 0 : new XMLMutableAttributeList( xAttrList );
1250 [ # # ][ # # ]: 0 : xAttrList = pMutableAttrList;
1251 : : }
1252 [ # # ]: 0 : pMutableAttrList->RemoveAttributeByIndex( i );
1253 : : }
1254 : : }
1255 : 4 : }
1256 : :
1257 [ + - ][ + - ]: 2 : GetTransformer().GetDocHandler()->startElement( m_aElemQName, xAttrList );
1258 : 2 : }
1259 : :
1260 : 2 : void XMLTableTransformerContext_Impl::EndElement()
1261 : : {
1262 : 2 : GetTransformer().GetDocHandler()->endElement( m_aElemQName );
1263 : 2 : }
1264 : :
1265 : : // -----------------------------------------------------------------------------
1266 : :
1267 : : class XMLBodyOASISTransformerContext_Impl : public XMLTransformerContext
1268 : : {
1269 : : sal_Bool m_bFirstChild;
1270 : :
1271 : : public:
1272 : : TYPEINFO();
1273 : :
1274 : : XMLBodyOASISTransformerContext_Impl( XMLTransformerBase& rTransformer,
1275 : : const ::rtl::OUString& rQName );
1276 : :
1277 : : virtual ~XMLBodyOASISTransformerContext_Impl();
1278 : :
1279 : : virtual void StartElement( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList >& xAttrList );
1280 : :
1281 : : virtual XMLTransformerContext *CreateChildContext( sal_uInt16 nPrefix,
1282 : : const ::rtl::OUString& rLocalName,
1283 : : const ::rtl::OUString& rQName,
1284 : : const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList >& xAttrList );
1285 : : virtual void EndElement();
1286 : : };
1287 : :
1288 [ # # ][ # # ]: 0 : TYPEINIT1( XMLBodyOASISTransformerContext_Impl, XMLTransformerContext );
1289 : :
1290 : 12 : XMLBodyOASISTransformerContext_Impl::XMLBodyOASISTransformerContext_Impl(
1291 : : XMLTransformerBase& rImp,
1292 : : const OUString& rQName ) :
1293 : : XMLTransformerContext( rImp, rQName ),
1294 : 12 : m_bFirstChild( sal_False )
1295 : : {
1296 : 12 : }
1297 : :
1298 : 12 : XMLBodyOASISTransformerContext_Impl::~XMLBodyOASISTransformerContext_Impl()
1299 : : {
1300 [ - + ]: 24 : }
1301 : :
1302 : 12 : void XMLBodyOASISTransformerContext_Impl::StartElement(
1303 : : const Reference< XAttributeList >& )
1304 : : {
1305 : 12 : }
1306 : :
1307 : 12 : XMLTransformerContext* XMLBodyOASISTransformerContext_Impl::CreateChildContext( sal_uInt16 nPrefix,
1308 : : const ::rtl::OUString& rLocalName,
1309 : : const ::rtl::OUString& rQName,
1310 : : const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList >& xAttrList )
1311 : : {
1312 [ + - ]: 12 : if (!m_bFirstChild)
1313 : : {
1314 : 12 : m_bFirstChild = sal_True;
1315 : 12 : XMLTransformerContext::StartElement(xAttrList);
1316 : : }
1317 : :
1318 : 12 : return XMLTransformerContext::CreateChildContext(nPrefix, rLocalName, rQName, xAttrList);
1319 : : }
1320 : :
1321 : 12 : void XMLBodyOASISTransformerContext_Impl::EndElement()
1322 : : {
1323 [ - + ]: 12 : if (!m_bFirstChild)
1324 [ # # ]: 0 : XMLTransformerContext::StartElement(Reference< XAttributeList >());
1325 : :
1326 : 12 : XMLTransformerContext::EndElement();
1327 : 12 : }
1328 : :
1329 : : //-----------------------------------------------------------------------------
1330 : :
1331 : : class XMLTabStopOASISTContext_Impl : public XMLPersElemContentTContext
1332 : : {
1333 : : public:
1334 : : TYPEINFO();
1335 : :
1336 : : XMLTabStopOASISTContext_Impl( XMLTransformerBase& rTransformer,
1337 : : const ::rtl::OUString& rQName );
1338 : :
1339 : : virtual ~XMLTabStopOASISTContext_Impl();
1340 : :
1341 : : virtual void StartElement( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList >& xAttrList );
1342 : : };
1343 : :
1344 [ # # ][ # # ]: 0 : TYPEINIT1( XMLTabStopOASISTContext_Impl, XMLPersElemContentTContext );
1345 : :
1346 : 0 : XMLTabStopOASISTContext_Impl::XMLTabStopOASISTContext_Impl(
1347 : : XMLTransformerBase& rImp,
1348 : : const OUString& rQName ) :
1349 : 0 : XMLPersElemContentTContext( rImp, rQName )
1350 : : {
1351 : 0 : }
1352 : :
1353 : 0 : XMLTabStopOASISTContext_Impl::~XMLTabStopOASISTContext_Impl()
1354 : : {
1355 [ # # ]: 0 : }
1356 : :
1357 : 0 : void XMLTabStopOASISTContext_Impl::StartElement(
1358 : : const Reference< XAttributeList >& rAttrList )
1359 : : {
1360 : : XMLTransformerActions *pActions =
1361 [ # # ]: 0 : GetTransformer().GetUserDefinedActions( OASIS_TAB_STOP_ACTIONS );
1362 : : OSL_ENSURE( pActions, "go no actions" );
1363 : :
1364 : 0 : sal_Unicode cStyleLeaderChar = 0;
1365 : 0 : sal_Int16 nLeaderText = -1;
1366 : 0 : Reference< XAttributeList > xAttrList( rAttrList );
1367 : 0 : XMLMutableAttributeList *pMutableAttrList = 0;
1368 [ # # ][ # # ]: 0 : sal_Int16 nAttrCount = xAttrList.is() ? xAttrList->getLength() : 0;
[ # # ]
1369 [ # # ]: 0 : for( sal_Int16 i=0; i < nAttrCount; i++ )
1370 : : {
1371 [ # # ][ # # ]: 0 : const OUString& rAttrName = xAttrList->getNameByIndex( i );
1372 : 0 : OUString aLocalName;
1373 : : sal_uInt16 nPrefix =
1374 : 0 : GetTransformer().GetNamespaceMap().GetKeyByAttrName( rAttrName,
1375 [ # # ]: 0 : &aLocalName );
1376 : 0 : XMLTransformerActions::key_type aKey( nPrefix, aLocalName );
1377 : : XMLTransformerActions::const_iterator aIter =
1378 [ # # ]: 0 : pActions->find( aKey );
1379 [ # # ][ # # ]: 0 : if( !(aIter == pActions->end() ) )
1380 : : {
1381 [ # # ]: 0 : if( !pMutableAttrList )
1382 : : {
1383 : : pMutableAttrList =
1384 [ # # ]: 0 : new XMLMutableAttributeList( xAttrList );
1385 [ # # ][ # # ]: 0 : xAttrList = pMutableAttrList;
1386 : : }
1387 [ # # ][ # # ]: 0 : const OUString& rAttrValue = xAttrList->getValueByIndex( i );
1388 [ # # ]: 0 : switch( (*aIter).second.m_nActionType )
[ # # # # ]
1389 : : {
1390 : : case XML_ATACTION_REMOVE:
1391 [ # # ][ # # ]: 0 : if( IsXMLToken( aLocalName, XML_LEADER_STYLE ) )
1392 : : {
1393 [ # # ][ # # ]: 0 : if( IsXMLToken( rAttrValue, XML_NONE ) )
1394 : 0 : cStyleLeaderChar = ' ';
1395 [ # # ][ # # ]: 0 : else if( IsXMLToken( rAttrValue, XML_DOTTED ) )
1396 : 0 : cStyleLeaderChar = '.';
1397 : : else
1398 : 0 : cStyleLeaderChar = 0;
1399 [ # # ]: 0 : pMutableAttrList->RemoveAttributeByIndex( i );
1400 : 0 : --i;
1401 : 0 : --nAttrCount;
1402 : : }
1403 : 0 : break;
1404 : : case XML_ATACTION_RENAME:
1405 : : {
1406 : : OUString aNewAttrQName(
1407 : 0 : GetTransformer().GetNamespaceMap().GetQNameByKey(
1408 [ # # ]: 0 : (*aIter).second.GetQNamePrefixFromParam1(),
1409 : : ::xmloff::token::GetXMLToken(
1410 [ # # ]: 0 : (*aIter).second.GetQNameTokenFromParam1()) ) );
[ # # # # ]
1411 : : pMutableAttrList->RenameAttributeByIndex( i,
1412 [ # # ]: 0 : aNewAttrQName );
1413 : : }
1414 [ # # ][ # # ]: 0 : if( IsXMLToken( aLocalName, XML_LEADER_TEXT ) )
1415 : : {
1416 [ # # ]: 0 : if( rAttrValue.getLength() > 1 )
1417 : : {
1418 : 0 : OUString aAttrValue( rAttrValue.copy( 0, 1 ) );
1419 [ # # ]: 0 : pMutableAttrList->SetValueByIndex( i, aAttrValue );
1420 : 0 : nLeaderText = i;
1421 : : }
1422 : : }
1423 : 0 : break;
1424 : : case XML_ATACTION_IN2INCH:
1425 : : {
1426 : 0 : OUString aAttrValue( rAttrValue );
1427 [ # # ]: 0 : if( XMLTransformerBase::ReplaceSingleInWithInch(
1428 [ # # ]: 0 : aAttrValue ) )
1429 [ # # ]: 0 : pMutableAttrList->SetValueByIndex( i, aAttrValue );
1430 : : }
1431 : 0 : break;
1432 : : default:
1433 : : OSL_ENSURE( !this, "unknown action" );
1434 : 0 : break;
1435 : 0 : }
1436 : : }
1437 : 0 : }
1438 : :
1439 [ # # ][ # # ]: 0 : if( cStyleLeaderChar && ' ' != cStyleLeaderChar )
1440 : : {
1441 [ # # ]: 0 : if( nLeaderText != -1 )
1442 : : {
1443 : : OUString aNewAttrQName(
1444 : 0 : GetTransformer().GetNamespaceMap().GetQNameByKey(
1445 : : XML_NAMESPACE_STYLE,
1446 [ # # # # ]: 0 : ::xmloff::token::GetXMLToken( XML_LEADER_CHAR ) ) );
1447 : : pMutableAttrList->AddAttribute( aNewAttrQName,
1448 [ # # ]: 0 : OUString::valueOf( cStyleLeaderChar ) );
1449 : 0 : }
1450 : : }
1451 : : else
1452 : : {
1453 [ # # ]: 0 : if( nLeaderText != -1 )
1454 [ # # ]: 0 : pMutableAttrList->RemoveAttributeByIndex( nLeaderText );
1455 : : }
1456 : :
1457 [ # # ]: 0 : XMLPersElemContentTContext::StartElement( xAttrList );
1458 : 0 : }
1459 : :
1460 : : // -----------------------------------------------------------------------------
1461 : :
1462 : : class XMLConfigItemTContext_Impl : public XMLTransformerContext
1463 : : {
1464 : : ::rtl::OUString m_aContent;
1465 : : sal_Bool m_bIsRedlineProtectionKey;
1466 : : sal_Bool m_bIsCursorX;
1467 : : sal_Bool m_bIsCursorY;
1468 : :
1469 : : public:
1470 : :
1471 : : TYPEINFO();
1472 : :
1473 : : XMLConfigItemTContext_Impl( XMLTransformerBase& rTransformer,
1474 : : const ::rtl::OUString& rQName );
1475 : :
1476 : : virtual ~XMLConfigItemTContext_Impl();
1477 : :
1478 : : virtual void StartElement( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList >& xAttrList );
1479 : : virtual void EndElement();
1480 : :
1481 : : virtual void Characters( const ::rtl::OUString& rChars );
1482 : : };
1483 : :
1484 [ # # ][ # # ]: 0 : TYPEINIT1( XMLConfigItemTContext_Impl, XMLTransformerContext );
1485 : :
1486 : 970 : XMLConfigItemTContext_Impl::XMLConfigItemTContext_Impl(
1487 : : XMLTransformerBase& rImp,
1488 : : const OUString& rQName ) :
1489 : : XMLTransformerContext( rImp, rQName ),
1490 : : m_bIsRedlineProtectionKey( sal_False ),
1491 : : m_bIsCursorX( sal_False ),
1492 : 970 : m_bIsCursorY( sal_False )
1493 : : {
1494 : 970 : }
1495 : :
1496 : 970 : XMLConfigItemTContext_Impl::~XMLConfigItemTContext_Impl()
1497 : : {
1498 [ - + ]: 1940 : }
1499 : :
1500 : 970 : void XMLConfigItemTContext_Impl::StartElement(
1501 : : const Reference< XAttributeList >& rAttrList )
1502 : : {
1503 : 970 : Reference< XAttributeList > xAttrList( rAttrList );
1504 : :
1505 [ + - ][ + - ]: 970 : sal_Int16 nAttrCount = xAttrList.is() ? xAttrList->getLength() : 0;
[ + - ]
1506 [ + - ]: 1940 : for( sal_Int16 i=0; i < nAttrCount; i++ )
1507 : : {
1508 [ + - ][ + - ]: 970 : const OUString& rAttrName = xAttrList->getNameByIndex( i );
1509 : 970 : OUString aLocalName;
1510 : : sal_uInt16 nPrefix =
1511 : 970 : GetTransformer().GetNamespaceMap().GetKeyByAttrName( rAttrName,
1512 [ + - ]: 970 : &aLocalName );
1513 [ + - ]: 970 : if( XML_NAMESPACE_CONFIG == nPrefix )
1514 : : {
1515 [ + - ][ + - ]: 970 : if ( IsXMLToken( aLocalName, XML_NAME ) )
1516 : : {
1517 [ + - ][ + - ]: 970 : const OUString& rValue = xAttrList->getValueByIndex( i );
1518 : 970 : const sal_Char sRedlineProtectionKey[] = "RedlineProtectionKey";
1519 : 970 : const sal_Char sCursorX[] = "CursorPositionX";
1520 : 970 : const sal_Char sCursorY[] = "CursorPositionY";
1521 [ + + ]: 970 : if( rValue.equalsAsciiL( sRedlineProtectionKey, sizeof(sRedlineProtectionKey)-1 ) )
1522 : 4 : m_bIsRedlineProtectionKey = sal_True;
1523 [ + + ]: 966 : else if( rValue.equalsAsciiL( sCursorX, sizeof(sCursorX)-1 ) )
1524 : 2 : m_bIsCursorX = sal_True;
1525 [ + + ]: 964 : else if( rValue.equalsAsciiL( sCursorY, sizeof(sCursorY)-1 ) )
1526 : 2 : m_bIsCursorY = sal_True;
1527 : :
1528 : 970 : break;
1529 : : }
1530 : : }
1531 [ + - ][ - + ]: 970 : }
1532 : :
1533 [ + - ]: 970 : XMLTransformerContext::StartElement( xAttrList );
1534 : 970 : }
1535 : :
1536 : 918 : void XMLConfigItemTContext_Impl::Characters( const ::rtl::OUString& rChars )
1537 : : {
1538 : 918 : rtl::OUString sChars(rChars);
1539 [ - + ]: 918 : if (m_bIsRedlineProtectionKey)
1540 : 0 : m_aContent += rChars;
1541 [ + + ][ + + ]: 918 : else if (m_bIsCursorX || m_bIsCursorY)
1542 : : {
1543 : 4 : sal_Int32 nPos = rChars.toInt32();
1544 [ - + ][ + + ]: 4 : if (m_bIsCursorX && nPos > 255)
1545 : 0 : nPos = 255;
1546 [ + + ][ - + ]: 4 : else if (m_bIsCursorY && nPos > 31999)
1547 : 0 : nPos = 31999;
1548 : :
1549 : 4 : sChars = ::rtl::OUString::valueOf(nPos);
1550 : : }
1551 : :
1552 [ + - ]: 918 : XMLTransformerContext::Characters( sChars );
1553 : 918 : }
1554 : :
1555 : 970 : void XMLConfigItemTContext_Impl::EndElement()
1556 : : {
1557 : :
1558 [ + + ]: 970 : if( m_bIsRedlineProtectionKey )
1559 : : {
1560 : : const Reference< XPropertySet > rPropSet =
1561 : 4 : GetTransformer().GetPropertySet();
1562 [ + - ]: 4 : if( rPropSet.is() )
1563 : : {
1564 : 4 : const sal_Char sRedlineProtectionKey[] = "RedlineProtectionKey";
1565 [ + - ]: 4 : OUString aPropName(RTL_CONSTASCII_USTRINGPARAM(sRedlineProtectionKey));
1566 : : Reference< XPropertySetInfo > xPropSetInfo(
1567 [ + - ][ + - ]: 4 : rPropSet->getPropertySetInfo() );
1568 [ + - ][ + - ]: 8 : if( xPropSetInfo.is() &&
[ + - ]
1569 [ + - ][ + - ]: 4 : xPropSetInfo->hasPropertyByName( aPropName ) )
1570 : : {
1571 [ + - ]: 4 : Sequence < sal_Int8 > aKey;
1572 [ + - ]: 4 : ::sax::Converter::decodeBase64( aKey, m_aContent );
1573 [ + - ][ + - ]: 4 : rPropSet->setPropertyValue( aPropName, makeAny( aKey ) );
[ + - ][ + - ]
1574 : 4 : }
1575 : 4 : }
1576 : : }
1577 : 970 : XMLTransformerContext::EndElement();
1578 : 970 : }
1579 : :
1580 : : // -----------------------------------------------------------------------------
1581 : :
1582 : : class XMLTrackedChangesOASISTContext_Impl : public XMLTransformerContext
1583 : : {
1584 : : ::rtl::OUString m_aAttrQName;
1585 : :
1586 : : public:
1587 : :
1588 : : TYPEINFO();
1589 : :
1590 : : XMLTrackedChangesOASISTContext_Impl( XMLTransformerBase& rTransformer,
1591 : : const ::rtl::OUString& rQName,
1592 : : sal_uInt16 nPrefix,
1593 : : XMLTokenEnum eToken );
1594 : :
1595 : : virtual ~XMLTrackedChangesOASISTContext_Impl();
1596 : :
1597 : : virtual void StartElement( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList >& xAttrList );
1598 : : };
1599 : :
1600 [ # # ][ # # ]: 0 : TYPEINIT1( XMLTrackedChangesOASISTContext_Impl, XMLTransformerContext );
1601 : :
1602 : 0 : XMLTrackedChangesOASISTContext_Impl::XMLTrackedChangesOASISTContext_Impl(
1603 : : XMLTransformerBase& rImp,
1604 : : const OUString& rQName,
1605 : : sal_uInt16 nPrefix,
1606 : : XMLTokenEnum eToken ) :
1607 : : XMLTransformerContext( rImp, rQName ),
1608 : 0 : m_aAttrQName( rImp.GetNamespaceMap().GetQNameByKey( nPrefix,
1609 [ # # # # ]: 0 : GetXMLToken(eToken)) )
1610 : : {
1611 : 0 : }
1612 : :
1613 : 0 : XMLTrackedChangesOASISTContext_Impl::~XMLTrackedChangesOASISTContext_Impl()
1614 : : {
1615 [ # # ]: 0 : }
1616 : :
1617 : 0 : void XMLTrackedChangesOASISTContext_Impl::StartElement(
1618 : : const Reference< XAttributeList >& rAttrList )
1619 : : {
1620 : 0 : Reference< XAttributeList > xAttrList( rAttrList );
1621 : : const Reference< XPropertySet > rPropSet =
1622 : 0 : GetTransformer().GetPropertySet();
1623 [ # # ]: 0 : if( rPropSet.is() )
1624 : : {
1625 : 0 : const sal_Char sRedlineProtectionKey[] = "RedlineProtectionKey";
1626 [ # # ]: 0 : OUString aPropName(RTL_CONSTASCII_USTRINGPARAM(sRedlineProtectionKey));
1627 : : Reference< XPropertySetInfo > xPropSetInfo(
1628 [ # # ][ # # ]: 0 : rPropSet->getPropertySetInfo() );
1629 [ # # ][ # # ]: 0 : if( xPropSetInfo.is() &&
[ # # ]
1630 [ # # ][ # # ]: 0 : xPropSetInfo->hasPropertyByName( aPropName ) )
1631 : : {
1632 [ # # ][ # # ]: 0 : Any aAny = rPropSet->getPropertyValue( aPropName);
1633 [ # # ]: 0 : Sequence < sal_Int8 > aKey;
1634 [ # # ]: 0 : aAny >>= aKey;
1635 [ # # ]: 0 : if( aKey.getLength() )
1636 : : {
1637 : 0 : OUStringBuffer aBuffer;
1638 [ # # ]: 0 : ::sax::Converter::encodeBase64( aBuffer, aKey );
1639 : : XMLMutableAttributeList *pMutableAttrList =
1640 [ # # ]: 0 : new XMLMutableAttributeList( xAttrList );
1641 [ # # ][ # # ]: 0 : xAttrList = pMutableAttrList;
1642 : : pMutableAttrList->AddAttribute( m_aAttrQName,
1643 [ # # ][ # # ]: 0 : aBuffer.makeStringAndClear() );
1644 [ # # ]: 0 : }
1645 : 0 : }
1646 : : }
1647 [ # # ]: 0 : XMLTransformerContext::StartElement( xAttrList );
1648 : 0 : }
1649 : :
1650 : : // -----------------------------------------------------------------------------
1651 : :
1652 : 1534 : XMLTransformerContext *Oasis2OOoTransformer::CreateUserDefinedContext(
1653 : : const TransformerAction_Impl& rAction,
1654 : : const OUString& rQName,
1655 : : sal_Bool bPersistent )
1656 : : {
1657 [ + + + + : 1534 : switch( rAction.m_nActionType )
+ + + + -
- - - - -
+ - - - ]
1658 : : {
1659 : : case XML_ETACTION_META:
1660 [ + - ]: 12 : return new XMLMetaTransformerContext( *this, rQName );
1661 : : case XML_ETACTION_DOCUMENT:
1662 [ + - ]: 12 : return new XMLDocumentTransformerContext( *this, rQName );
1663 : : case XML_ETACTION_BODY:
1664 [ + - ]: 12 : return new XMLBodyOASISTransformerContext_Impl( *this, rQName );
1665 : : case XML_ETACTION_NOTES:
1666 : : return new XMLNotesTransformerContext( *this, rQName,
1667 [ + - ]: 8 : static_cast< XMLTokenEnum>( rAction.m_nParam1 ), bPersistent );
1668 : : case XML_ETACTION_TABLE:
1669 [ + - ]: 2 : return new XMLTableTransformerContext_Impl( *this, rQName );
1670 : : case XML_ETACTION_STYLE:
1671 [ + - ]: 468 : return new XMLStyleOASISTContext( *this, rQName, bPersistent );
1672 : : case XML_ETACTION_STYLE_RENAME:
1673 : : return new XMLStyleOASISTContext( *this, rQName,
1674 : 16 : rAction.GetQNamePrefixFromParam1(),
1675 [ + - ]: 16 : rAction.GetQNameTokenFromParam1(), bPersistent );
1676 : : case XML_ETACTION_FRAME:
1677 [ + - ]: 34 : return new XMLFrameOASISTransformerContext( *this, rQName );
1678 : : case XML_ETACTION_EVENT:
1679 [ # # ]: 0 : return new XMLEventOASISTransformerContext( *this, rQName );
1680 : : case XML_ETACTION_DLG:
1681 [ # # ]: 0 : return new XMLDlgOASISTransformerContext( *this, rQName );
1682 : : case XML_ETACTION_TAB_STOP:
1683 [ # # ]: 0 : return new XMLTabStopOASISTContext_Impl( *this, rQName );
1684 : : case XML_ETACTION_FORM_CONTROL:
1685 : : {
1686 : 0 : const XMLTransformerContext *pCurrent = GetCurrentContext();
1687 : : return new XMLControlOASISTransformerContext( *this, rQName,
1688 : : pCurrent ? pCurrent->HasQName( XML_NAMESPACE_FORM,
1689 [ # # ][ # # ]: 0 : XML_FORM ) : sal_False );
1690 : : }
1691 : : case XML_ETACTION_FORM_PROPERTY:
1692 : : return new XMLFormPropOASISTransformerContext( *this, rQName,
1693 [ # # ]: 0 : static_cast< XMLTokenEnum >( rAction.m_nParam1 ) );
1694 : : case XML_ETACTION_CHART:
1695 [ # # ]: 0 : return new XMLChartOASISTransformerContext( *this, rQName );
1696 : : case XML_ETACTION_CONFIG_ITEM:
1697 [ + - ]: 970 : return new XMLConfigItemTContext_Impl( *this, rQName );
1698 : : case XML_ETACTION_TRACKED_CHANGES:
1699 : : return new XMLTrackedChangesOASISTContext_Impl( *this, rQName,
1700 : 0 : rAction.GetQNamePrefixFromParam1(),
1701 [ # # ]: 0 : rAction.GetQNameTokenFromParam1() );
1702 : : case XML_ETACTION_CHART_PLOT_AREA:
1703 [ # # ]: 0 : return new XMLChartPlotAreaOASISTContext( *this, rQName );
1704 : : default:
1705 : : OSL_ENSURE( !this, "no user defined context found!" );
1706 : 0 : break;
1707 : : }
1708 : :
1709 : : // default is copying
1710 [ # # ]: 1534 : return new XMLTransformerContext( *this, rQName );
1711 : : }
1712 : :
1713 : 1548 : XMLTransformerActions *Oasis2OOoTransformer::GetUserDefinedActions(
1714 : : sal_uInt16 n )
1715 : : {
1716 : 1548 : XMLTransformerActions *pActions = 0;
1717 [ + - ]: 1548 : if( n < MAX_OASIS_ACTIONS )
1718 : : {
1719 [ + + ]: 1548 : if( !m_aActions[n] )
1720 : : {
1721 [ + + ]: 188 : if( n<MAX_OASIS_PROP_ACTIONS )
1722 : : {
1723 : 86 : m_aActions[n] =
1724 : 86 : XMLStyleOASISTContext::CreateTransformerActions( n );
1725 : : }
1726 [ + + + - : 102 : else switch( n )
- - + + -
- - + + -
- - + + +
+ - - + +
- - - - -
- - + - -
- - - - -
- - - + +
+ - - ]
1727 : : {
1728 : : case OASIS_STYLE_ACTIONS:
1729 : : m_aActions[OASIS_STYLE_ACTIONS] =
1730 [ + - ]: 20 : new XMLTransformerActions( aStyleActionTable );
1731 : 20 : break;
1732 : : case OASIS_FONT_FACE_ACTIONS:
1733 : : m_aActions[OASIS_FONT_FACE_ACTIONS] =
1734 [ + - ]: 12 : new XMLTransformerActions( aFontFaceActionTable );
1735 : 12 : break;
1736 : : case OASIS_SHAPE_ACTIONS:
1737 : : m_aActions[OASIS_SHAPE_ACTIONS] =
1738 [ + - ]: 4 : new XMLTransformerActions( aShapeActionTable );
1739 : 4 : break;
1740 : : case OASIS_CONNECTOR_ACTIONS:
1741 : : m_aActions[OASIS_CONNECTOR_ACTIONS] =
1742 [ # # ]: 0 : new XMLTransformerActions( aConnectorActionTable );
1743 : 0 : break;
1744 : : case OASIS_INDEX_ENTRY_TAB_STOP_ACTIONS:
1745 : : m_aActions[OASIS_INDEX_ENTRY_TAB_STOP_ACTIONS] =
1746 [ # # ]: 0 : new XMLTransformerActions( aIndexEntryTabStopActionTable );
1747 : 0 : break;
1748 : : case OASIS_TAB_STOP_ACTIONS:
1749 : : m_aActions[OASIS_TAB_STOP_ACTIONS] =
1750 [ # # ]: 0 : new XMLTransformerActions( aTabStopActionTable );
1751 : 0 : break;
1752 : : case OASIS_LINENUMBERING_ACTIONS:
1753 : : m_aActions[OASIS_LINENUMBERING_ACTIONS] =
1754 [ + - ]: 4 : new XMLTransformerActions( aLineNumberingActionTable );
1755 : 4 : break;
1756 : : case OASIS_FOOTNOTE_SEP_ACTIONS:
1757 : : m_aActions[OASIS_FOOTNOTE_SEP_ACTIONS] =
1758 [ + - ]: 4 : new XMLTransformerActions( aFootnoteSepActionTable );
1759 : 4 : break;
1760 : : case OASIS_DROP_CAP_ACTIONS:
1761 : : m_aActions[OASIS_DROP_CAP_ACTIONS] =
1762 [ # # ]: 0 : new XMLTransformerActions( aDropCapActionTable );
1763 : 0 : break;
1764 : : case OASIS_COLUMNS_ACTIONS:
1765 : : m_aActions[OASIS_COLUMNS_ACTIONS] =
1766 [ # # ]: 0 : new XMLTransformerActions( aColumnsActionTable );
1767 : 0 : break;
1768 : : case OASIS_TEXT_VALUE_TYPE_ACTIONS:
1769 : : m_aActions[OASIS_TEXT_VALUE_TYPE_ACTIONS] =
1770 [ # # ]: 0 : new XMLTransformerActions( aTextValueTypeActionTable );
1771 : 0 : break;
1772 : : case OASIS_TABLE_VALUE_TYPE_ACTIONS:
1773 : : m_aActions[OASIS_TABLE_VALUE_TYPE_ACTIONS] =
1774 [ + - ]: 2 : new XMLTransformerActions( aTableValueTypeActionTable );
1775 : 2 : break;
1776 : : case OASIS_PARA_ACTIONS:
1777 : : m_aActions[OASIS_PARA_ACTIONS] =
1778 [ + - ]: 6 : new XMLTransformerActions( aParaActionTable );
1779 : 6 : break;
1780 : : case OASIS_LIST_STYLE_REF_ACTIONS:
1781 : : m_aActions[OASIS_LIST_STYLE_REF_ACTIONS] =
1782 [ # # ]: 0 : new XMLTransformerActions( aListStyleRefActionTable );
1783 : 0 : break;
1784 : : case OASIS_TEXT_STYLE_REF_ACTIONS:
1785 : : m_aActions[OASIS_TEXT_STYLE_REF_ACTIONS] =
1786 [ # # ]: 0 : new XMLTransformerActions( aTextStyleRefActionTable );
1787 : 0 : break;
1788 : : case OASIS_PARA_STYLE_REF_ACTIONS:
1789 : : m_aActions[OASIS_PARA_STYLE_REF_ACTIONS] =
1790 [ # # ]: 0 : new XMLTransformerActions( aParaStyleRefActionTable );
1791 : 0 : break;
1792 : : case OASIS_MASTER_PAGE_REF_ACTIONS:
1793 : : m_aActions[OASIS_MASTER_PAGE_REF_ACTIONS] =
1794 [ + - ]: 6 : new XMLTransformerActions( aMasterPageRefActionTable );
1795 : 6 : break;
1796 : : case OASIS_MAP_STYLE_REF_ACTIONS:
1797 : : m_aActions[OASIS_MAP_STYLE_REF_ACTIONS] =
1798 [ + - ]: 2 : new XMLTransformerActions( aMapStyleRefActionTable );
1799 : 2 : break;
1800 : : case OASIS_MASTER_PAGE_ACTIONS:
1801 : : m_aActions[OASIS_MASTER_PAGE_ACTIONS] =
1802 [ + - ]: 12 : new XMLTransformerActions( aMasterPageActionTable );
1803 : 12 : break;
1804 : : case OASIS_NOTES_ACTIONS:
1805 : : m_aActions[OASIS_NOTES_ACTIONS] =
1806 [ + - ]: 4 : new XMLTransformerActions( aNotesActionTable );
1807 : 4 : break;
1808 : : case OASIS_ANNOTATION_ACTIONS:
1809 : : m_aActions[OASIS_ANNOTATION_ACTIONS] =
1810 [ # # ]: 0 : new XMLTransformerActions( aAnnotationActionTable );
1811 : 0 : break;
1812 : : case OASIS_CHANGE_INFO_ACTIONS:
1813 : : m_aActions[OASIS_CHANGE_INFO_ACTIONS] =
1814 [ # # ]: 0 : new XMLTransformerActions( aChangeInfoActionTable );
1815 : 0 : break;
1816 : : case OASIS_FRAME_ELEM_ACTIONS:
1817 : : m_aActions[OASIS_FRAME_ELEM_ACTIONS] =
1818 [ + - ]: 4 : new XMLTransformerActions( aFrameActionTable );
1819 : 4 : break;
1820 : : case OASIS_BACKGROUND_IMAGE_ACTIONS:
1821 : : m_aActions[OASIS_BACKGROUND_IMAGE_ACTIONS] =
1822 [ + - ]: 2 : new XMLTransformerActions( aBackgroundImageActionTable );
1823 : 2 : break;
1824 : : case OASIS_DDE_CONNECTION_DECL_ACTIONS:
1825 : : m_aActions[OASIS_DDE_CONNECTION_DECL_ACTIONS] =
1826 [ # # ]: 0 : new XMLTransformerActions( aDDEConnectionDeclActionTable );
1827 : 0 : break;
1828 : : case OASIS_EVENT_ACTIONS:
1829 : : m_aActions[OASIS_EVENT_ACTIONS] =
1830 [ # # ]: 0 : new XMLTransformerActions( aEventActionTable );
1831 : 0 : break;
1832 : : case OASIS_DLG_ACTIONS:
1833 : : m_aActions[OASIS_DLG_ACTIONS] =
1834 [ # # ]: 0 : new XMLTransformerActions( aDlgActionTable );
1835 : 0 : break;
1836 : : case OASIS_FORM_CONTROL_ACTIONS:
1837 : : m_aActions[OASIS_FORM_CONTROL_ACTIONS] =
1838 [ # # ]: 0 : new XMLTransformerActions( aFormControlActionTable );
1839 : 0 : break;
1840 : : case OASIS_FORM_COLUMN_ACTIONS:
1841 : : m_aActions[OASIS_FORM_COLUMN_ACTIONS] =
1842 [ # # ]: 0 : new XMLTransformerActions( aFormColumnActionTable );
1843 : 0 : break;
1844 : : case OASIS_FORM_PROP_ACTIONS:
1845 : : m_aActions[OASIS_FORM_PROP_ACTIONS] =
1846 [ # # ]: 0 : new XMLTransformerActions( aFormPropActionTable );
1847 : 0 : break;
1848 : : case OASIS_XLINK_ACTIONS:
1849 : : m_aActions[OASIS_XLINK_ACTIONS] =
1850 [ # # ]: 0 : new XMLTransformerActions( aXLinkActionTable );
1851 : 0 : break;
1852 : : case OASIS_CONFIG_ITEM_SET_ACTIONS:
1853 : : m_aActions[OASIS_CONFIG_ITEM_SET_ACTIONS] =
1854 [ + - ]: 12 : new XMLTransformerActions( aConfigItemSetActionTable );
1855 : 12 : break;
1856 : : case OASIS_FORMULA_ACTIONS:
1857 : : m_aActions[OASIS_FORMULA_ACTIONS] =
1858 [ # # ]: 0 : new XMLTransformerActions( aFormulaActionTable );
1859 : 0 : break;
1860 : : case OASIS_CHART_ACTIONS:
1861 : : m_aActions[OASIS_CHART_ACTIONS] =
1862 [ # # ]: 0 : new XMLTransformerActions( aChartActionTable );
1863 : 0 : break;
1864 : : case OASIS_FORM_ACTIONS:
1865 : : m_aActions[OASIS_FORM_ACTIONS] =
1866 [ # # ]: 0 : new XMLTransformerActions( aFormActionTable );
1867 : 0 : break;
1868 : : case OASIS_ALPHABETICAL_INDEX_MARK_ACTIONS:
1869 : : m_aActions[OASIS_ALPHABETICAL_INDEX_MARK_ACTIONS] =
1870 : : new XMLTransformerActions(
1871 [ # # ]: 0 : aAlphabeticalIndexMarkActionTable );
1872 : 0 : break;
1873 : : case OASIS_CONTENT_VALIDATION_ACTIONS:
1874 : : m_aActions[OASIS_CONTENT_VALIDATION_ACTIONS] =
1875 [ # # ]: 0 : new XMLTransformerActions( aContentValidationActionTable );
1876 : : case OASIS_DDE_CONV_MODE_ACTIONS:
1877 : : m_aActions[OASIS_DDE_CONV_MODE_ACTIONS] =
1878 [ # # ]: 0 : new XMLTransformerActions( aDDEConvModeActionTable );
1879 : 0 : break;
1880 : : case OASIS_DATAPILOT_MEMBER_ACTIONS:
1881 : : m_aActions[OASIS_DATAPILOT_MEMBER_ACTIONS] =
1882 [ # # ]: 0 : new XMLTransformerActions( aDataPilotMemberActionTable );
1883 : 0 : break;
1884 : : case OASIS_DATAPILOT_LEVEL_ACTIONS:
1885 : : m_aActions[OASIS_DATAPILOT_LEVEL_ACTIONS] =
1886 [ # # ]: 0 : new XMLTransformerActions( aDataPilotLevelActionTable );
1887 : 0 : break;
1888 : : case OASIS_SOURCE_SERVICE_ACTIONS:
1889 : : m_aActions[OASIS_SOURCE_SERVICE_ACTIONS] =
1890 [ # # ]: 0 : new XMLTransformerActions( aSourceServiceActionTable );
1891 : 0 : break;
1892 : : case OASIS_DRAW_AREA_POLYGON_ACTIONS:
1893 : : m_aActions[OASIS_DRAW_AREA_POLYGON_ACTIONS] =
1894 [ # # ]: 0 : new XMLTransformerActions( aShapeActionTable );
1895 : 0 : m_aActions[OASIS_DRAW_AREA_POLYGON_ACTIONS]
1896 : 0 : ->Add( aDrawAreaPolygonActionTable );
1897 : 0 : break;
1898 : : case OASIS_SCRIPT_ACTIONS:
1899 : : m_aActions[OASIS_SCRIPT_ACTIONS] =
1900 [ + - ]: 2 : new XMLTransformerActions( aScriptActionTable );
1901 : 2 : break;
1902 : : case OASIS_DATETIME_ACTIONS:
1903 : : m_aActions[OASIS_DATETIME_ACTIONS] =
1904 [ + - ]: 4 : new XMLTransformerActions( aDateTimeActionTable );
1905 : 4 : break;
1906 : : // Bugdoc with table won't load correctly (#i40011#, #i40015#)
1907 : : case OASIS_TABLE_STYLE_REF_ACTIONS:
1908 : : m_aActions[OASIS_TABLE_STYLE_REF_ACTIONS] =
1909 [ + - ]: 2 : new XMLTransformerActions( aTableStyleRefActionTable );
1910 : 2 : break;
1911 : : case OASIS_ANIMATION_ACTIONS:
1912 : : m_aActions[OASIS_ANIMATION_ACTIONS] =
1913 [ # # ]: 0 : new XMLTransformerActions( aAnimationActionTable );
1914 : 188 : break;
1915 : : }
1916 : : }
1917 : 1548 : pActions = m_aActions[n];
1918 : : }
1919 : :
1920 : 1548 : return pActions;
1921 : : }
1922 : :
1923 : 0 : OUString Oasis2OOoTransformer::GetEventName( const OUString& rName,
1924 : : sal_Bool bForm )
1925 : : {
1926 [ # # ][ # # ]: 0 : if( bForm && !m_pFormEventMap )
1927 : : m_pFormEventMap =
1928 [ # # ]: 0 : XMLEventOASISTransformerContext::CreateFormEventMap();
1929 [ # # ]: 0 : if( !m_pEventMap )
1930 [ # # ]: 0 : m_pEventMap = XMLEventOASISTransformerContext::CreateEventMap();
1931 : :
1932 : 0 : OUString aMacroName;
1933 : : sal_uInt16 nPrefix =
1934 [ # # ]: 0 : GetNamespaceMap().GetKeyByAttrName( rName, &aMacroName );
1935 : : return XMLEventOASISTransformerContext::GetEventName(
1936 : : nPrefix, aMacroName, *m_pEventMap,
1937 [ # # ][ # # ]: 0 : bForm ? m_pFormEventMap : 0 );
1938 : : }
1939 : :
1940 : 44 : Oasis2OOoTransformer::Oasis2OOoTransformer() throw() :
1941 : : XMLTransformerBase( aActionTable, aTokenMap ),
1942 : : m_pEventMap( 0 ),
1943 : 44 : m_pFormEventMap( 0 )
1944 : : {
1945 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_OFFICE), GetXMLToken(XML_N_OFFICE), XML_NAMESPACE_OFFICE );
[ + - ]
1946 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_OFFICE), GetXMLToken(XML_N_OFFICE_OOO), XML_NAMESPACE_OFFICE );
[ + - ]
1947 : :
1948 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_META), GetXMLToken(XML_N_META), XML_NAMESPACE_META );
[ + - ]
1949 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_META), GetXMLToken(XML_N_META_OOO), XML_NAMESPACE_META );
[ + - ]
1950 : :
1951 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_STYLE), GetXMLToken(XML_N_STYLE), XML_NAMESPACE_STYLE );
[ + - ]
1952 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_STYLE), GetXMLToken(XML_N_STYLE_OOO), XML_NAMESPACE_STYLE );
[ + - ]
1953 : :
1954 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_NUMBER), GetXMLToken(XML_N_NUMBER), XML_NAMESPACE_NUMBER );
[ + - ]
1955 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_NUMBER), GetXMLToken(XML_N_NUMBER_OOO), XML_NAMESPACE_NUMBER );
[ + - ]
1956 : :
1957 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_CONFIG), GetXMLToken(XML_N_CONFIG), XML_NAMESPACE_CONFIG );
[ + - ]
1958 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_CONFIG), GetXMLToken(XML_N_CONFIG_OOO), XML_NAMESPACE_CONFIG );
[ + - ]
1959 : :
1960 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_TEXT), GetXMLToken(XML_N_TEXT), XML_NAMESPACE_TEXT );
[ + - ]
1961 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_TEXT), GetXMLToken(XML_N_TEXT_OOO), XML_NAMESPACE_TEXT );
[ + - ]
1962 : :
1963 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_TABLE), GetXMLToken(XML_N_TABLE), XML_NAMESPACE_TABLE );
[ + - ]
1964 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_TABLE), GetXMLToken(XML_N_TABLE_OOO), XML_NAMESPACE_TABLE );
[ + - ]
1965 : :
1966 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_DRAW), GetXMLToken(XML_N_DRAW), XML_NAMESPACE_DRAW );
[ + - ]
1967 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_DRAW), GetXMLToken(XML_N_DRAW_OOO), XML_NAMESPACE_DRAW );
[ + - ]
1968 : :
1969 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_DR3D), GetXMLToken(XML_N_DR3D), XML_NAMESPACE_DR3D );
[ + - ]
1970 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_DR3D), GetXMLToken(XML_N_DR3D_OOO), XML_NAMESPACE_DR3D );
[ + - ]
1971 : :
1972 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_PRESENTATION), GetXMLToken(XML_N_PRESENTATION), XML_NAMESPACE_PRESENTATION );
[ + - ]
1973 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_PRESENTATION), GetXMLToken(XML_N_PRESENTATION_OOO), XML_NAMESPACE_PRESENTATION );
[ + - ]
1974 : :
1975 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_CHART), GetXMLToken(XML_N_CHART), XML_NAMESPACE_CHART );
[ + - ]
1976 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_CHART), GetXMLToken(XML_N_CHART_OOO), XML_NAMESPACE_CHART );
[ + - ]
1977 : :
1978 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_FORM), GetXMLToken(XML_N_FORM), XML_NAMESPACE_FORM );
[ + - ]
1979 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_FORM), GetXMLToken(XML_N_FORM_OOO), XML_NAMESPACE_FORM );
[ + - ]
1980 : :
1981 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_SCRIPT), GetXMLToken(XML_N_SCRIPT), XML_NAMESPACE_SCRIPT );
[ + - ]
1982 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_SCRIPT), GetXMLToken(XML_N_SCRIPT_OOO), XML_NAMESPACE_SCRIPT );
[ + - ]
1983 : :
1984 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_DLG), GetXMLToken(XML_N_DLG), XML_NAMESPACE_DLG );
[ + - ]
1985 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_DLG), GetXMLToken(XML_N_DLG), XML_NAMESPACE_DLG );
[ + - ]
1986 : :
1987 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_FO), GetXMLToken(XML_N_FO_COMPAT), XML_NAMESPACE_FO );
[ + - ]
1988 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_FO), GetXMLToken(XML_N_FO), XML_NAMESPACE_FO );
[ + - ]
1989 : :
1990 [ + - ][ + - ]: 44 : GetNamespaceMap().Add( GetXMLToken(XML_NP_SVG), GetXMLToken(XML_N_SVG_COMPAT), XML_NAMESPACE_SVG );
[ + - ]
1991 [ + - ][ + - ]: 44 : GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_SVG), GetXMLToken(XML_N_SVG), XML_NAMESPACE_SVG );
[ + - ]
1992 : :
1993 : :
1994 [ + + ]: 2640 : for( sal_uInt16 i=0; i<MAX_OASIS_ACTIONS; ++i )
1995 : 2596 : m_aActions[i] = 0;
1996 : 44 : }
1997 : :
1998 : 44 : Oasis2OOoTransformer::~Oasis2OOoTransformer() throw()
1999 : : {
2000 [ + + ]: 2640 : for( sal_uInt16 i=0; i<MAX_OASIS_ACTIONS; ++i )
2001 [ + + ][ + - ]: 2596 : delete m_aActions[i];
2002 [ + - ]: 44 : XMLEventOASISTransformerContext::FlushEventMap( m_pEventMap );
2003 [ + - ]: 44 : XMLEventOASISTransformerContext::FlushEventMap( m_pFormEventMap );
2004 [ - + ]: 88 : }
2005 : :
2006 : : namespace
2007 : : {
2008 : : class theOasis2OOoTransformerUnoTunnelId : public rtl::Static< UnoTunnelIdInit, theOasis2OOoTransformerUnoTunnelId> {};
2009 : : }
2010 : :
2011 : 0 : const Sequence< sal_Int8 > & Oasis2OOoTransformer::getUnoTunnelId() throw()
2012 : : {
2013 : 0 : return theOasis2OOoTransformerUnoTunnelId::get().getSeq();
2014 : : }
2015 : :
2016 : : // XUnoTunnel
2017 : 0 : sal_Int64 SAL_CALL Oasis2OOoTransformer::getSomething( const Sequence< sal_Int8 >& rId )
2018 : : throw(RuntimeException)
2019 : : {
2020 [ # # # # ]: 0 : if( rId.getLength() == 16
[ # # ]
2021 : 0 : && 0 == memcmp( getUnoTunnelId().getConstArray(),
2022 : 0 : rId.getConstArray(), 16 ) )
2023 : : {
2024 : 0 : return reinterpret_cast< sal_Int64 >( this );
2025 : : }
2026 : : else
2027 : : {
2028 : 0 : return (sal_Int64)0;
2029 : : }
2030 : : }
2031 : :
2032 : : // XServiceInfo
2033 : 0 : OUString SAL_CALL Oasis2OOoTransformer::getImplementationName()
2034 : : throw(RuntimeException)
2035 : : {
2036 : 0 : return Oasis2OOoTransformer_getImplementationName();
2037 : : }
2038 : :
2039 : 0 : sal_Bool SAL_CALL Oasis2OOoTransformer::supportsService( const OUString& )
2040 : : throw(RuntimeException)
2041 : : {
2042 : 0 : return sal_False;
2043 : : }
2044 : :
2045 : 0 : Sequence< OUString > SAL_CALL Oasis2OOoTransformer::getSupportedServiceNames( )
2046 : : throw(RuntimeException)
2047 : : {
2048 : 0 : Sequence<OUString> aSeq(0);
2049 : 0 : return aSeq;
2050 : : }
2051 : :
2052 : : // Service registration
2053 : :
2054 : 94 : OUString SAL_CALL Oasis2OOoTransformer_getImplementationName() throw()
2055 : : {
2056 : : return OUString( RTL_CONSTASCII_USTRINGPARAM(
2057 : 94 : "com.sun.star.comp.Oasis2OOoTransformer" ) );
2058 : : }
2059 : :
2060 : 6 : Sequence< OUString > SAL_CALL Oasis2OOoTransformer_getSupportedServiceNames()
2061 : : throw()
2062 : : {
2063 : 6 : const OUString aServiceName( Oasis2OOoTransformer_getImplementationName() );
2064 [ + - ]: 6 : const Sequence< OUString > aSeq( &aServiceName, 1 );
2065 : 6 : return aSeq;
2066 : : }
2067 : :
2068 : 44 : Reference< XInterface > SAL_CALL Oasis2OOoTransformer_createInstance(
2069 : : const Reference< XMultiServiceFactory > &)
2070 : : throw( Exception )
2071 : : {
2072 : : OSL_TRACE("Creating Oasis2OOoTransformer");
2073 : 44 : return (cppu::OWeakObject*)new Oasis2OOoTransformer;
2074 [ + - ][ + - ]: 45 : }
2075 : :
2076 : : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|