bump product version to 7.2.5.1
[LibreOffice.git] / svgio / inc / svgtoken.hxx
blob16b7aad5f69623439185400db2793480ab7bd4ed
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #pragma once
22 #include <rtl/ustring.hxx>
24 namespace svgio::svgreader
26 // SVG token mapper with hashing
27 enum class SVGToken
29 Unknown = 0,
31 // diverse attribute tokens
32 Width,
33 Height,
34 ViewBox,
35 Transform,
36 Style,
37 Display, // #i121656#
41 Xmlns,
42 Version,
43 Id,
44 Rx,
45 Ry,
46 Points,
47 Dx,
48 Dy,
49 Rotate,
50 TextLength,
51 LengthAdjust,
52 Font,
53 FontFamily,
54 FontSize,
55 FontSizeAdjust,
56 FontStretch,
57 FontStyle,
58 FontVariant,
59 FontWeight,
60 Direction,
61 LetterSpacing,
62 TextDecoration,
63 UnicodeBidi,
64 WordSpacing,
65 Character, // not in the hash, just for simple text handling in SvgCharacterNode
66 Tspan,
67 Tref,
68 TextPath,
69 StartOffset,
70 Method,
71 Spacing,
72 TextAlign,
73 PathLength,
74 Type,
75 Class,
76 TextAnchor,
77 XmlSpace,
78 Color,
79 ClipPathNode,
80 ClipPathProperty,
81 Mask,
82 ClipPathUnits,
83 MaskUnits,
84 MaskContentUnits,
85 ClipRule,
86 Marker,
87 MarkerStart,
88 MarkerMid,
89 MarkerEnd,
90 RefX,
91 RefY,
92 MarkerUnits,
93 MarkerWidth,
94 MarkerHeight,
95 Orient,
96 Pattern,
97 PatternUnits,
98 PatternContentUnits,
99 PatternTransform,
100 Opacity,
101 Visibility,
102 Title,
103 Desc,
105 // AspectRatio and params
106 PreserveAspectRatio,
107 Defer,
108 None,
109 XMinYMin,
110 XMidYMin,
111 XMaxYMin,
112 XMinYMid,
113 XMidYMid,
114 XMaxYMid,
115 XMinYMax,
116 XMidYMax,
117 XMaxYMax,
118 Meet,
119 Slice,
121 // structural elements
122 Defs,
124 Svg,
125 Symbol,
126 Use,
129 // shape elements
130 Circle,
131 Ellipse,
132 Line,
133 Path,
134 Polygon,
135 Polyline,
136 Rect,
137 Image,
139 // gradient elements and tokens
140 LinearGradient,
141 RadialGradient,
142 Stop,
143 Offset,
153 GradientUnits,
154 GradientTransform,
155 SpreadMethod,
156 XlinkHref,
157 StopColor,
158 StopOpacity,
160 // fill tokens
161 Fill,
162 FillOpacity,
163 FillRule,
165 // stroke tokens
166 Stroke,
167 StrokeDasharray,
168 StrokeDashoffset,
169 StrokeLinecap,
170 StrokeLinejoin,
171 StrokeMiterlimit,
172 StrokeOpacity,
173 StrokeWidth,
175 // text tokens
176 Text,
177 BaselineShift,
179 FlowRoot
182 SVGToken StrToSVGToken(const OUString& rStr, bool bCaseIndependent);
184 OUString getStrTitle();
185 OUString getStrDesc();
187 } // end of namespace svgio::svgreader
189 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */