1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
23 #include "svtools/svtdllapi.h"
24 #include <sal/types.h>
25 #include <tools/solar.h>
29 // suche das Char zu dem CharNamen
30 sal_Unicode
GetHTMLCharName( const String
& rName
);
32 // suche die TokenID zu dem Token
33 SVT_DLLPUBLIC
int GetHTMLToken( const String
& rName
);
35 // suche die TokenId zu einemm Attribut-Token
36 int GetHTMLOption( const String
& rName
);
38 // suche die 24-bit-Farbe zu einem Farbnamen (nicht gefunden = ULONG_MAX)
39 SVT_DLLPUBLIC sal_uInt32
GetHTMLColor( const String
& rName
);
41 // beginnen immer ab 256, groesser als ein char
42 const int HTML_TOKEN_START
= 0x100;
43 const int HTML_TOKEN_ONOFF
= 0x200;
44 const int HTML_TOKEN_MICROSOFT
= 0x1000;
48 HTML_TEXTTOKEN
= HTML_TOKEN_START
,
55 // diese werden nur eingeschaltet
56 HTML_AREA
, // Netscape 2.0
57 HTML_BASE
, // HTML 3.0
60 HTML_EMBED
, // Netscape 2.0 </EMBED> ignorieren
61 HTML_FIGUREOVERLAY
, // HTML 3.0
62 HTML_HORZRULE
, // </HR> ignorieren
63 HTML_HORZTAB
, // HTML 3.0
64 HTML_IMAGE
, // </IMG> ignorieren
65 HTML_INPUT
, // </INPUT> ignorieren
66 HTML_ISINDEX
, // HTML 3.0
67 HTML_LINEBREAK
, // </BR> -> <BR>
68 HTML_LINK
, // HTML 3.0
69 HTML_META
, // HTML 3.0 </META> ignorieren
70 HTML_NEXTID
, // HTML 3.0
72 HTML_OPTION
, // </OPTION> ignorieren
73 HTML_PARAM
, // HotJava
74 HTML_RANGE
, // HTML 3.0
75 HTML_SPACER
, // Netscape 3.0b5 // </SPACER> ignorieren
78 // Tokens, die ueber HTML-Charakter erkannt werden
82 // diese werden wieder abgeschaltet,
83 // der off-Wert liegt immer dahinter (+1) !!
84 HTML_ABBREVIATION_ON
= HTML_TOKEN_ONOFF
, // HTML 3.0
85 HTML_ABBREVIATION_OFF
, // HTML 3.0
86 HTML_ABOVE_ON
, // HTML 3.0
87 HTML_ABOVE_OFF
, // HTML 3.0
88 HTML_ACRONYM_ON
, // HTML 3.0
89 HTML_ACRONYM_OFF
, // HTML 3.0
94 HTML_APPLET_ON
, // HotJava
95 HTML_APPLET_OFF
, // HotJava
96 HTML_ARRAY_ON
, // HTML 3.0
97 HTML_ARRAY_OFF
, // HTML 3.0
98 HTML_AUTHOR_ON
, // HTML 3.0
99 HTML_AUTHOR_OFF
, // HTML 3.0
100 HTML_BANNER_ON
, // HTML 3.0
101 HTML_BANNER_OFF
, // HTML 3.0
102 HTML_BAR_ON
, // HTML 3.0
103 HTML_BAR_OFF
, // HTML 3.0
104 HTML_BASEFONT_ON
, // Netscape
105 HTML_BASEFONT_OFF
, // Netscape
106 HTML_BELOW_ON
, // HTML 3.0
107 HTML_BELOW_OFF
, // HTML 3.0
108 HTML_BIGPRINT_ON
, // HTML 3.0
109 HTML_BIGPRINT_OFF
, // HTML 3.0
110 HTML_BLINK_ON
, // Netscape
111 HTML_BLINK_OFF
, // Netscape
112 HTML_BLOCKQUOTE30_ON
, // HTML 3.0
113 HTML_BLOCKQUOTE30_OFF
, // HTML 3.0
118 HTML_BOLDTEXT_ON
, // HTML 3.0
119 HTML_BOLDTEXT_OFF
, // HTML 3.0
122 HTML_BOX_ON
, // HTML 3.0
123 HTML_BOX_OFF
, // HTML 3.0
124 HTML_CAPTION_ON
, // HTML 3.0
125 HTML_CAPTION_OFF
, // HTML 3.0
126 HTML_CENTER_ON
, // Netscape
127 HTML_CENTER_OFF
, // Netscape
132 HTML_COL_ON
, // HTML3 Table Model Draft
133 HTML_COL_OFF
, // HTML3 Table Model Draft
134 HTML_COLGROUP_ON
, // HTML3 Table Model Draft
135 HTML_COLGROUP_OFF
, // HTML3 Table Model Draft
136 HTML_CREDIT_ON
, // HTML 3.0
137 HTML_CREDIT_OFF
, // HTML 3.0
142 HTML_DELETEDTEXT_ON
, // HTML 3.0
143 HTML_DELETEDTEXT_OFF
, // HTML 3.0
146 HTML_DIVISION_ON
, // HTML 3.0
147 HTML_DIVISION_OFF
, // HTML 3.0
148 HTML_DOT_ON
, // HTML 3.0
149 HTML_DOT_OFF
, // HTML 3.0
150 HTML_DOUBLEDOT_ON
, // HTML 3.0
151 HTML_DOUBLEDOT_OFF
, // HTML 3.0
156 HTML_FIGURE_ON
, // HTML 3.0
157 HTML_FIGURE_OFF
, // HTML 3.0
158 HTML_FONT_ON
, // Netscape
159 HTML_FONT_OFF
, // Netscape
160 HTML_FOOTNOTE_ON
, // HTML 3.0
161 HTML_FOOTNOTE_OFF
, // HTML 3.0
164 HTML_FRAME_ON
, // Netscape 2.0
165 HTML_FRAME_OFF
, // Netscape 2.0
166 HTML_FRAMESET_ON
, // Netscape 2.0
167 HTML_FRAMESET_OFF
, // Netscape 2.0
168 HTML_HAT_ON
, // HTML 3.0
169 HTML_HAT_OFF
, // HTML 3.0
186 HTML_IFRAME_ON
, // IE 3.0b2
187 HTML_IFRAME_OFF
, // IE 3.0b2
190 HTML_INSERTEDTEXT_ON
, // HTML 3.0
191 HTML_INSERTEDTEXT_OFF
, // HTML 3.0
194 HTML_ITEM_ON
, // HTML 3.0
195 HTML_ITEM_OFF
, // HTML 3.0
200 HTML_LANGUAGE_ON
, // HTML 3.0
201 HTML_LANGUAGE_OFF
, // HTML 3.0
202 HTML_LISTHEADER_ON
, // HTML 3.0
203 HTML_LISTHEADER_OFF
, // HTML 3.0
206 HTML_MAP_ON
, // Netscape 2.0
207 HTML_MAP_OFF
, // Netscape 2.0
208 HTML_MATH_ON
, // HTML 3.0
209 HTML_MATH_OFF
, // HTML 3.0
212 HTML_MULTICOL_ON
, // Netscape 3.0b5
213 HTML_MULTICOL_OFF
, // Netscape 3.0b5
214 HTML_NOBR_ON
, // Netscape
215 HTML_NOBR_OFF
, // Netscape
216 HTML_NOEMBED_ON
, // Netscape 2.0
217 HTML_NOEMBED_OFF
, // Netscape 2.0
218 HTML_NOFRAMES_ON
, // Netscape 2.0
219 HTML_NOFRAMES_OFF
, // Netscape 2.0
220 HTML_NOSCRIPT_ON
, // Netscape 2.0
221 HTML_NOSCRIPT_OFF
, // Netscape 3.0
222 HTML_NOTE_ON
, // HTML 3.0
223 HTML_NOTE_OFF
, // HTML 3.0
224 HTML_OBJECT_ON
, // HotJava
225 HTML_OBJECT_OFF
, // HotJava
230 HTML_PERSON_ON
, // HTML 3.0
231 HTML_PERSON_OFF
, // HTML 3.0
232 HTML_PLAINTEXT_ON
, // HTML 3.0
233 HTML_PLAINTEXT_OFF
, // HTML 3.0
236 HTML_ROOT_ON
, // HTML 3.0
237 HTML_ROOT_OFF
, // HTML 3.0
238 HTML_ROW_ON
, // HTML 3.0
239 HTML_ROW_OFF
, // HTML 3.0
242 HTML_SCRIPT_ON
, // HTML 3.2
243 HTML_SCRIPT_OFF
, // HTML 3.2
246 HTML_SHORTQUOTE_ON
, // HTML 3.0
247 HTML_SHORTQUOTE_OFF
, // HTML 3.0
248 HTML_SMALLPRINT_ON
, // HTML 3.0
249 HTML_SMALLPRINT_OFF
, // HTML 3.0
250 HTML_SPAN_ON
, // Style Sheets
251 HTML_SPAN_OFF
, // Style Sheets
252 HTML_SQUAREROOT_ON
, // HTML 3.0
253 HTML_SQUAREROOT_OFF
, // HTML 3.0
254 HTML_STRIKETHROUGH_ON
, // HTML 3.0
255 HTML_STRIKETHROUGH_OFF
, // HTML 3.0
258 HTML_STYLE_ON
, // HTML 3.0
259 HTML_STYLE_OFF
, // HTML 3.0
260 HTML_SUBSCRIPT_ON
, // HTML 3.0
261 HTML_SUBSCRIPT_OFF
, // HTML 3.0
262 HTML_SUPERSCRIPT_ON
, // HTML 3.0
263 HTML_SUPERSCRIPT_OFF
, // HTML 3.0
264 HTML_TABLE_ON
, // HTML 3.0
265 HTML_TABLE_OFF
, // HTML 3.0
266 HTML_TABLEDATA_ON
, // HTML 3.0
267 HTML_TABLEDATA_OFF
, // HTML 3.0
268 HTML_TABLEHEADER_ON
, // HTML 3.0
269 HTML_TABLEHEADER_OFF
, // HTML 3.0
270 HTML_TABLEROW_ON
, // HTML 3.0
271 HTML_TABLEROW_OFF
, // HTML 3.0
272 HTML_TBODY_ON
, // HTML3 Table Model Draft
273 HTML_TBODY_OFF
, // HTML3 Table Model Draft
278 HTML_TEXTFLOW_ON
, // HTML 3.2
279 HTML_TEXTFLOW_OFF
, // HTML 3.2
280 HTML_TEXT_ON
, // HTML 3.0
281 HTML_TEXT_OFF
, // HTML 3.0
282 HTML_TFOOT_ON
, // HTML3 Table Model Draft
283 HTML_TFOOT_OFF
, // HTML3 Table Model Draft
284 HTML_THEAD_ON
, // HTML3 Table Model Draft
285 HTML_THEAD_OFF
, // HTML3 Table Model Draft
286 HTML_TILDE_ON
, // HTML 3.0
287 HTML_TILDE_OFF
, // HTML 3.0
293 HTML_UNORDERLIST_OFF
,
296 HTML_VECTOR_ON
, // HTML 3.0
297 HTML_VECTOR_OFF
, // HTML 3.0
307 HTML_DEFINSTANCE_OFF
,
311 HTML_UNKNOWNCONTROL_ON
,
312 HTML_UNKNOWNCONTROL_OFF
,
314 HTML_BGSOUND
= HTML_TOKEN_MICROSOFT
|HTML_TOKEN_START
,
316 HTML_COMMENT2_ON
= HTML_TOKEN_MICROSOFT
|HTML_TOKEN_ONOFF
, // HTML 2.0 ?
317 HTML_COMMENT2_OFF
, // HTML 2.0 ?
320 HTML_PLAINTEXT2_ON
, // HTML 2.0 ?
321 HTML_PLAINTEXT2_OFF
, // HTML 2.0 ?
327 // HTML Attribut-Token (=Optionen)
329 // beginnen immer ab 256, groesser als ein char
330 const int HTML_OPTION_START
= 0x100;
334 HTML_OPTION_BOOL_START
= HTML_OPTION_START
,
336 // Attribute ohne Wert
337 HTML_O_BOX
= HTML_OPTION_BOOL_START
,
341 HTML_O_CONTROLS
, // IExplorer 2.0
342 HTML_O_DECLARE
, // IExplorer 3.0b5
344 HTML_O_FOLDED
, // Netscape internal
346 HTML_O_MAYSCRIPT
, // Netcape 3.0
349 HTML_O_NOHREF
, // Netscape
350 HTML_O_NORESIZE
, // Netscape 2.0
351 HTML_O_NOSHADE
, // Netscape
356 HTML_O_SHAPES
, // IExplorer 3.0b5
357 HTML_OPTION_BOOL_END
,
359 // Attribute mit einem String als Wert
360 HTML_OPTION_STRING_START
= HTML_OPTION_BOOL_END
,
361 HTML_O_ABOVE
= HTML_OPTION_STRING_START
,
364 HTML_O_ADD_DATE
, // Netscape internal
369 HTML_O_CHAR
, // HTML3 Table Model Draft
372 HTML_O_CODE
, // HotJava
376 HTML_O_COORDS
, // Netscape 2.0
380 HTML_O_FACE
, // IExplorer 2.0
381 HTML_O_FRAMEBORDER
, // IExplorer 3.0
383 HTML_O_LANGUAGE
, // JavaScript
384 HTML_O_LAST_MODIFIED
, // Netscape internal
385 HTML_O_LAST_VISIT
, // Netscape internal
393 HTML_O_STYLE
, // Style Sheets
396 HTML_O_SDVAL
, // StarDiv NumberValue
397 HTML_O_SDNUM
, // StarDiv NumberFormat
400 HTML_OPTION_STRING_END
,
402 // Attribute mit einem SGML-Identifier als Wert
403 HTML_OPTION_SGMLID_START
= HTML_OPTION_STRING_END
,
404 HTML_O_FROM
= HTML_OPTION_SGMLID_START
,
406 HTML_O_TARGET
, // Netscape 2.0
409 HTML_OPTION_SGMLID_END
,
411 // Attribute mit einem URI als Wert
412 HTML_OPTION_URI_START
= HTML_OPTION_SGMLID_END
,
413 HTML_O_ACTION
= HTML_OPTION_URI_START
,
417 HTML_O_CODEBASE
, // HotJava
419 HTML_O_DYNSRC
, // IExplorer 3.0
420 HTML_O_DYNSYNC
, // IExplorer 2.0
423 HTML_O_LOWSRC
, // Netscape 3.0
426 HTML_O_USEMAP
, // Netscape 2.0
429 // Attribute mit Entity-Namen als Wert
430 HTML_OPTION_ENTITY_START
= HTML_OPTION_URI_END
,
431 HTML_O_DINGBAT
= HTML_OPTION_ENTITY_START
,
433 HTML_OPTION_ENTITY_END
,
435 // Attribute mit einer Farbe als Wert (alle Netscape)
436 HTML_OPTION_COLOR_START
= HTML_OPTION_ENTITY_END
,
437 HTML_O_ALINK
= HTML_OPTION_COLOR_START
,
439 HTML_O_BORDERCOLOR
, // IExplorer 2.0
440 HTML_O_BORDERCOLORLIGHT
, // IExplorer 2.0
441 HTML_O_BORDERCOLORDARK
, // IExplorer 2.0
446 HTML_OPTION_COLOR_END
,
448 // Attribute mit einem numerischen Wert
449 HTML_OPTION_NUMBER_START
= HTML_OPTION_COLOR_END
,
450 HTML_O_BORDER
= HTML_OPTION_NUMBER_START
,
451 HTML_O_CELLSPACING
, // HTML3 Table Model Draft
452 HTML_O_CELLPADDING
, // HTML3 Table Model Draft
453 HTML_O_CHAROFF
, // HTML3 Table Model Draft
455 HTML_O_FRAMESPACING
, // IExplorer 3.0
456 HTML_O_GUTTER
, // Netscape 3.0b5
459 HTML_O_HSPACE
, // Netscape
461 HTML_O_LEFTMARGIN
, // IExplorer 2.0
462 HTML_O_LOOP
, // IExplorer 2.0
463 HTML_O_MARGINWIDTH
, // Netscape 2.0
464 HTML_O_MARGINHEIGHT
, // Netscape 2.0
472 HTML_O_SCROLLAMOUNT
, // IExplorer 2.0
473 HTML_O_SCROLLDELAY
, // IExplorer 2.0
476 HTML_O_SPAN
, // HTML3 Table Model Draft
479 HTML_O_TOPMARGIN
, // IExplorer 2.0
480 HTML_O_VSPACE
, // Netscape
486 HTML_OPTION_NUMBER_END
,
488 // Attribute mit Enum-Werten
489 HTML_OPTION_ENUM_START
= HTML_OPTION_NUMBER_END
,
490 HTML_O_BEHAVIOR
= HTML_OPTION_ENUM_START
, // IExplorer 2.0
491 HTML_O_BGPROPERTIES
, // IExplorer 2.0
494 HTML_O_DIRECTION
, // IExplorer 2.0
496 HTML_O_FRAME
, // HTML3 Table Model Draft
502 HTML_O_RULES
, // HTML3 Table Model Draft
503 HTML_O_SCROLLING
, // Netscape 2.0
511 HTML_OPTION_ENUM_END
,
513 // Attribute mit Script-Code als Wert
514 HTML_OPTION_SCRIPT_START
= HTML_OPTION_ENUM_END
,
515 HTML_O_ONABORT
= HTML_OPTION_SCRIPT_START
, // JavaScript
516 HTML_O_ONBLUR
, // JavaScript
517 HTML_O_ONCHANGE
, // JavaScript
518 HTML_O_ONCLICK
, // JavaScript
519 HTML_O_ONERROR
, // JavaScript
520 HTML_O_ONFOCUS
, // JavaScript
521 HTML_O_ONLOAD
, // JavaScript
522 HTML_O_ONMOUSEOUT
, // JavaScript
523 HTML_O_ONMOUSEOVER
, // JavaScript
524 HTML_O_ONRESET
, // JavaScript
525 HTML_O_ONSELECT
, // JavaScript
526 HTML_O_ONSUBMIT
, // JavaScript
527 HTML_O_ONUNLOAD
, // JavaScript
529 HTML_O_SDONABORT
, // StarBasic
530 HTML_O_SDONBLUR
, // StarBasic
531 HTML_O_SDONCHANGE
, // StarBasic
532 HTML_O_SDONCLICK
, // StarBasic
533 HTML_O_SDONERROR
, // StarBasic
534 HTML_O_SDONFOCUS
, // StarBasic
535 HTML_O_SDONLOAD
, // StarBasic
536 HTML_O_SDONMOUSEOUT
, // StarBasic
537 HTML_O_SDONMOUSEOVER
, // StarBasic
538 HTML_O_SDONRESET
, // StarBasic
539 HTML_O_SDONSELECT
, // StarBasic
540 HTML_O_SDONSUBMIT
, // StarBasic
541 HTML_O_SDONUNLOAD
, // StarBasic
542 HTML_OPTION_SCRIPT_END
,
544 // Attribute mit Kontext-abhaengigen Werten
545 HTML_OPTION_CONTEXT_START
= HTML_OPTION_SCRIPT_END
,
546 HTML_O_ALIGN
= HTML_OPTION_CONTEXT_START
,
547 HTML_O_COLS
, // Netscape 2.0 vs HTML 2.0
548 HTML_O_ROWS
, // Netscape 2.0 vs HTML 2.0
552 HTML_OPTION_CONTEXT_END
,
554 // eine unbekannte Option
555 HTML_O_UNKNOWN
= HTML_OPTION_CONTEXT_END
,
559 #endif // _HTMLTOKN_H
561 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */