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

Side by Side Diff: experimental/svg/model/SkSVGValue.h

Issue 2327233003: [SVGDom] Initial linear gradient support (Closed)
Patch Set: cleanup Created 4 years, 3 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
OLDNEW
1 /* 1 /*
2 * Copyright 2016 Google Inc. 2 * Copyright 2016 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #ifndef SkSVGValue_DEFINED 8 #ifndef SkSVGValue_DEFINED
9 #define SkSVGValue_DEFINED 9 #define SkSVGValue_DEFINED
10 10
11 #include "SkColor.h" 11 #include "SkColor.h"
12 #include "SkMatrix.h" 12 #include "SkMatrix.h"
13 #include "SkPath.h" 13 #include "SkPath.h"
14 #include "SkSVGTypes.h" 14 #include "SkSVGTypes.h"
15 #include "SkTypes.h" 15 #include "SkTypes.h"
16 16
17 class SkSVGValue : public SkNoncopyable { 17 class SkSVGValue : public SkNoncopyable {
18 public: 18 public:
19 enum class Type { 19 enum class Type {
20 kColor, 20 kColor,
21 kLength, 21 kLength,
22 kLineCap, 22 kLineCap,
23 kLineJoin, 23 kLineJoin,
24 kNumber, 24 kNumber,
25 kPaint, 25 kPaint,
26 kPath, 26 kPath,
27 kPoints, 27 kPoints,
28 kString,
28 kTransform, 29 kTransform,
29 kViewBox, 30 kViewBox,
30 }; 31 };
31 32
32 Type type() const { return fType; } 33 Type type() const { return fType; }
33 34
34 template <typename T> 35 template <typename T>
35 const T* as() const { 36 const T* as() const {
36 return fType == T::TYPE ? static_cast<const T*>(this) : nullptr; 37 return fType == T::TYPE ? static_cast<const T*>(this) : nullptr;
37 } 38 }
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 using SkSVGColorValue = SkSVGWrapperValue<SkSVGColorType , SkSVGValue::Ty pe::kColor >; 71 using SkSVGColorValue = SkSVGWrapperValue<SkSVGColorType , SkSVGValue::Ty pe::kColor >;
71 using SkSVGLengthValue = SkSVGWrapperValue<SkSVGLength , SkSVGValue::Ty pe::kLength >; 72 using SkSVGLengthValue = SkSVGWrapperValue<SkSVGLength , SkSVGValue::Ty pe::kLength >;
72 using SkSVGPathValue = SkSVGWrapperValue<SkPath , SkSVGValue::Ty pe::kPath >; 73 using SkSVGPathValue = SkSVGWrapperValue<SkPath , SkSVGValue::Ty pe::kPath >;
73 using SkSVGTransformValue = SkSVGWrapperValue<SkSVGTransformType, SkSVGValue::Ty pe::kTransform>; 74 using SkSVGTransformValue = SkSVGWrapperValue<SkSVGTransformType, SkSVGValue::Ty pe::kTransform>;
74 using SkSVGViewBoxValue = SkSVGWrapperValue<SkSVGViewBoxType , SkSVGValue::Ty pe::kViewBox >; 75 using SkSVGViewBoxValue = SkSVGWrapperValue<SkSVGViewBoxType , SkSVGValue::Ty pe::kViewBox >;
75 using SkSVGPaintValue = SkSVGWrapperValue<SkSVGPaint , SkSVGValue::Ty pe::kPaint >; 76 using SkSVGPaintValue = SkSVGWrapperValue<SkSVGPaint , SkSVGValue::Ty pe::kPaint >;
76 using SkSVGLineCapValue = SkSVGWrapperValue<SkSVGLineCap , SkSVGValue::Ty pe::kLineCap >; 77 using SkSVGLineCapValue = SkSVGWrapperValue<SkSVGLineCap , SkSVGValue::Ty pe::kLineCap >;
77 using SkSVGLineJoinValue = SkSVGWrapperValue<SkSVGLineJoin , SkSVGValue::Ty pe::kLineJoin >; 78 using SkSVGLineJoinValue = SkSVGWrapperValue<SkSVGLineJoin , SkSVGValue::Ty pe::kLineJoin >;
78 using SkSVGNumberValue = SkSVGWrapperValue<SkSVGNumberType , SkSVGValue::Ty pe::kNumber >; 79 using SkSVGNumberValue = SkSVGWrapperValue<SkSVGNumberType , SkSVGValue::Ty pe::kNumber >;
79 using SkSVGPointsValue = SkSVGWrapperValue<SkSVGPointsType , SkSVGValue::Ty pe::kPoints >; 80 using SkSVGPointsValue = SkSVGWrapperValue<SkSVGPointsType , SkSVGValue::Ty pe::kPoints >;
81 using SkSVGStringValue = SkSVGWrapperValue<SkSVGStringType , SkSVGValue::Ty pe::kString >;
80 82
81 #endif // SkSVGValue_DEFINED 83 #endif // SkSVGValue_DEFINED
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698