Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(50)

Side by Side Diff: Source/core/layout/style/SVGLayoutStyleDefs.h

Issue 1033943002: Rename LayoutStyle to papayawhip (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: ensureComputedStyle Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 /*
2 Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org>
3 2004, 2005 Rob Buis <buis@kde.org>
4 Copyright (C) Research In Motion Limited 2010. All rights reserved.
5
6 Based on khtml code by:
7 Copyright (C) 2000-2003 Lars Knoll (knoll@kde.org)
8 (C) 2000 Antti Koivisto (koivisto@kde.org)
9 (C) 2000-2003 Dirk Mueller (mueller@kde.org)
10 (C) 2002-2003 Apple Computer, Inc.
11
12 This library is free software; you can redistribute it and/or
13 modify it under the terms of the GNU Library General Public
14 License as published by the Free Software Foundation; either
15 version 2 of the License, or (at your option) any later version.
16
17 This library is distributed in the hope that it will be useful,
18 but WITHOUT ANY WARRANTY; without even the implied warranty of
19 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 Library General Public License for more details.
21
22 You should have received a copy of the GNU Library General Public License
23 along with this library; see the file COPYING.LIB. If not, write to
24 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
25 Boston, MA 02110-1301, USA.
26 */
27
28 #ifndef SVGLayoutStyleDefs_h
29 #define SVGLayoutStyleDefs_h
30
31 #include "platform/Length.h"
32 #include "platform/graphics/Color.h"
33 #include "wtf/OwnPtr.h"
34 #include "wtf/PassOwnPtr.h"
35 #include "wtf/RefCounted.h"
36 #include "wtf/RefPtr.h"
37 #include "wtf/RefVector.h"
38 #include "wtf/text/WTFString.h"
39
40 namespace blink {
41
42 typedef RefVector<Length> SVGDashArray;
43
44 enum SVGPaintType {
45 SVG_PAINTTYPE_RGBCOLOR,
46 SVG_PAINTTYPE_NONE,
47 SVG_PAINTTYPE_CURRENTCOLOR,
48 SVG_PAINTTYPE_URI_NONE,
49 SVG_PAINTTYPE_URI_CURRENTCOLOR,
50 SVG_PAINTTYPE_URI_RGBCOLOR,
51 SVG_PAINTTYPE_URI
52 };
53
54 enum EBaselineShift {
55 BS_LENGTH, BS_SUB, BS_SUPER
56 };
57
58 enum ETextAnchor {
59 TA_START, TA_MIDDLE, TA_END
60 };
61
62 enum EColorInterpolation {
63 CI_AUTO, CI_SRGB, CI_LINEARRGB
64 };
65
66 enum EColorRendering {
67 CR_AUTO, CR_OPTIMIZESPEED, CR_OPTIMIZEQUALITY
68 };
69 enum EShapeRendering {
70 SR_AUTO, SR_OPTIMIZESPEED, SR_CRISPEDGES, SR_GEOMETRICPRECISION
71 };
72
73 enum SVGWritingMode {
74 WM_LRTB, WM_LR, WM_RLTB, WM_RL, WM_TBRL, WM_TB
75 };
76
77 enum EGlyphOrientation {
78 GO_0DEG, GO_90DEG, GO_180DEG, GO_270DEG, GO_AUTO
79 };
80
81 enum EAlignmentBaseline {
82 AB_AUTO, AB_BASELINE, AB_BEFORE_EDGE, AB_TEXT_BEFORE_EDGE,
83 AB_MIDDLE, AB_CENTRAL, AB_AFTER_EDGE, AB_TEXT_AFTER_EDGE,
84 AB_IDEOGRAPHIC, AB_ALPHABETIC, AB_HANGING, AB_MATHEMATICAL
85 };
86
87 enum EDominantBaseline {
88 DB_AUTO, DB_USE_SCRIPT, DB_NO_CHANGE, DB_RESET_SIZE,
89 DB_IDEOGRAPHIC, DB_ALPHABETIC, DB_HANGING, DB_MATHEMATICAL,
90 DB_CENTRAL, DB_MIDDLE, DB_TEXT_AFTER_EDGE, DB_TEXT_BEFORE_EDGE
91 };
92
93 enum EVectorEffect {
94 VE_NONE,
95 VE_NON_SCALING_STROKE
96 };
97
98 enum EBufferedRendering {
99 BR_AUTO,
100 BR_DYNAMIC,
101 BR_STATIC
102 };
103
104 enum EMaskType {
105 MT_LUMINANCE,
106 MT_ALPHA
107 };
108
109 enum EPaintOrderType {
110 PT_NONE = 0,
111 PT_FILL = 1,
112 PT_STROKE = 2,
113 PT_MARKERS = 3
114 };
115
116 const int kPaintOrderBitwidth = 2;
117 typedef unsigned EPaintOrder;
118 const unsigned PO_NORMAL = PT_FILL | PT_STROKE << 2 | PT_MARKERS << 4;
119
120 // Inherited/Non-Inherited Style Datastructures
121 class StyleFillData : public RefCounted<StyleFillData> {
122 public:
123 static PassRefPtr<StyleFillData> create() { return adoptRef(new StyleFillDat a); }
124 PassRefPtr<StyleFillData> copy() const { return adoptRef(new StyleFillData(* this)); }
125
126 bool operator==(const StyleFillData&) const;
127 bool operator!=(const StyleFillData& other) const
128 {
129 return !(*this == other);
130 }
131
132 float opacity;
133 SVGPaintType paintType;
134 Color paintColor;
135 String paintUri;
136 SVGPaintType visitedLinkPaintType;
137 Color visitedLinkPaintColor;
138 String visitedLinkPaintUri;
139
140 private:
141 StyleFillData();
142 StyleFillData(const StyleFillData&);
143 };
144
145 class UnzoomedLength {
146 public:
147 explicit UnzoomedLength(const Length& length) : m_length(length) { }
148
149 bool isZero() const { return m_length.isZero(); }
150
151 bool operator==(const UnzoomedLength& other) const { return m_length == othe r.m_length; }
152 bool operator!=(const UnzoomedLength& other) const { return !operator==(othe r); }
153
154 const Length& length() const { return m_length; }
155
156 private:
157 Length m_length;
158 };
159
160 class StyleStrokeData : public RefCounted<StyleStrokeData> {
161 public:
162 static PassRefPtr<StyleStrokeData> create()
163 {
164 return adoptRef(new StyleStrokeData);
165 }
166
167 PassRefPtr<StyleStrokeData> copy() const
168 {
169 return adoptRef(new StyleStrokeData(*this));
170 }
171
172 bool operator==(const StyleStrokeData&) const;
173 bool operator!=(const StyleStrokeData& other) const
174 {
175 return !(*this == other);
176 }
177
178 float opacity;
179 float miterLimit;
180
181 UnzoomedLength width;
182 Length dashOffset;
183 RefPtr<SVGDashArray> dashArray;
184
185 SVGPaintType paintType;
186 Color paintColor;
187 String paintUri;
188 SVGPaintType visitedLinkPaintType;
189 Color visitedLinkPaintColor;
190 String visitedLinkPaintUri;
191
192 private:
193 StyleStrokeData();
194 StyleStrokeData(const StyleStrokeData&);
195 };
196
197 class StyleStopData : public RefCounted<StyleStopData> {
198 public:
199 static PassRefPtr<StyleStopData> create() { return adoptRef(new StyleStopDat a); }
200 PassRefPtr<StyleStopData> copy() const { return adoptRef(new StyleStopData(* this)); }
201
202 bool operator==(const StyleStopData&) const;
203 bool operator!=(const StyleStopData& other) const
204 {
205 return !(*this == other);
206 }
207
208 float opacity;
209 Color color;
210
211 private:
212 StyleStopData();
213 StyleStopData(const StyleStopData&);
214 };
215
216 // Note: the rule for this class is, *no inheritance* of these props
217 class StyleMiscData : public RefCounted<StyleMiscData> {
218 public:
219 static PassRefPtr<StyleMiscData> create() { return adoptRef(new StyleMiscDat a); }
220 PassRefPtr<StyleMiscData> copy() const { return adoptRef(new StyleMiscData(* this)); }
221
222 bool operator==(const StyleMiscData&) const;
223 bool operator!=(const StyleMiscData& other) const
224 {
225 return !(*this == other);
226 }
227
228 Color floodColor;
229 float floodOpacity;
230 Color lightingColor;
231
232 Length baselineShiftValue;
233
234 private:
235 StyleMiscData();
236 StyleMiscData(const StyleMiscData&);
237 };
238
239 // Non-inherited resources
240 class StyleResourceData : public RefCounted<StyleResourceData> {
241 public:
242 static PassRefPtr<StyleResourceData> create() { return adoptRef(new StyleRes ourceData); }
243 PassRefPtr<StyleResourceData> copy() const { return adoptRef(new StyleResour ceData(*this)); }
244
245 bool operator==(const StyleResourceData&) const;
246 bool operator!=(const StyleResourceData& other) const
247 {
248 return !(*this == other);
249 }
250
251 AtomicString clipper;
252 AtomicString filter;
253 AtomicString masker;
254
255 private:
256 StyleResourceData();
257 StyleResourceData(const StyleResourceData&);
258 };
259
260 // Inherited resources
261 class StyleInheritedResourceData : public RefCounted<StyleInheritedResourceData> {
262 public:
263 static PassRefPtr<StyleInheritedResourceData> create() { return adoptRef(new StyleInheritedResourceData); }
264 PassRefPtr<StyleInheritedResourceData> copy() const { return adoptRef(new St yleInheritedResourceData(*this)); }
265
266 bool operator==(const StyleInheritedResourceData&) const;
267 bool operator!=(const StyleInheritedResourceData& other) const
268 {
269 return !(*this == other);
270 }
271
272 AtomicString markerStart;
273 AtomicString markerMid;
274 AtomicString markerEnd;
275
276 private:
277 StyleInheritedResourceData();
278 StyleInheritedResourceData(const StyleInheritedResourceData&);
279 };
280
281 // Positioning and sizing properties.
282 class StyleLayoutData : public RefCounted<StyleLayoutData> {
283 public:
284 static PassRefPtr<StyleLayoutData> create() { return adoptRef(new StyleL ayoutData); }
285 PassRefPtr<StyleLayoutData> copy() const;
286 bool operator==(const StyleLayoutData&) const;
287 bool operator!=(const StyleLayoutData& other) const
288 {
289 return !(*this == other);
290 }
291 Length cx;
292 Length cy;
293 Length x;
294 Length y;
295 Length r;
296 Length rx;
297 Length ry;
298 private:
299 StyleLayoutData();
300 StyleLayoutData(const StyleLayoutData&);
301 };
302
303 } // namespace blink
304
305 #endif // SVGLayoutStyleDefs_h
OLDNEW
« no previous file with comments | « Source/core/layout/style/SVGLayoutStyle.cpp ('k') | Source/core/layout/style/SVGLayoutStyleDefs.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698