OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2004, 2005, 2008 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2004, 2005, 2008 Nikolas Zimmermann <zimmermann@kde.org> |
3 * Copyright (C) 2004, 2005, 2006, 2007 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005, 2006, 2007 Rob Buis <buis@kde.org> |
4 * Copyright (C) 2014 Google, Inc. | 4 * Copyright (C) 2014 Google, Inc. |
5 * | 5 * |
6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
10 * | 10 * |
(...skipping 23 matching lines...) Expand all Loading... |
34 class SVGMatrixTearOff; | 34 class SVGMatrixTearOff; |
35 class SVGRectTearOff; | 35 class SVGRectTearOff; |
36 | 36 |
37 class CORE_EXPORT SVGGraphicsElement : public SVGElement, public SVGTests { | 37 class CORE_EXPORT SVGGraphicsElement : public SVGElement, public SVGTests { |
38 DEFINE_WRAPPERTYPEINFO(); | 38 DEFINE_WRAPPERTYPEINFO(); |
39 USING_GARBAGE_COLLECTED_MIXIN(SVGGraphicsElement); | 39 USING_GARBAGE_COLLECTED_MIXIN(SVGGraphicsElement); |
40 | 40 |
41 public: | 41 public: |
42 ~SVGGraphicsElement() override; | 42 ~SVGGraphicsElement() override; |
43 | 43 |
44 enum StyleUpdateStrategy { kAllowStyleUpdate, kDisallowStyleUpdate }; | 44 SVGMatrixTearOff* getCTM(); |
45 | 45 SVGMatrixTearOff* getScreenCTM(); |
46 AffineTransform GetCTM(StyleUpdateStrategy = kAllowStyleUpdate); | |
47 AffineTransform GetScreenCTM(StyleUpdateStrategy = kAllowStyleUpdate); | |
48 SVGMatrixTearOff* getCTMFromJavascript(); | |
49 SVGMatrixTearOff* getScreenCTMFromJavascript(); | |
50 | 46 |
51 SVGElement* nearestViewportElement() const; | 47 SVGElement* nearestViewportElement() const; |
52 SVGElement* farthestViewportElement() const; | 48 SVGElement* farthestViewportElement() const; |
53 | 49 |
54 AffineTransform LocalCoordinateSpaceTransform(CTMScope) const override { | 50 AffineTransform LocalCoordinateSpaceTransform(CTMScope) const override { |
55 return CalculateTransform(kIncludeMotionTransform); | 51 return CalculateTransform(kIncludeMotionTransform); |
56 } | 52 } |
57 AffineTransform* AnimateMotionTransform() override; | 53 AffineTransform* AnimateMotionTransform() override; |
58 | 54 |
59 virtual FloatRect GetBBox(); | 55 virtual FloatRect GetBBox(); |
60 SVGRectTearOff* getBBoxFromJavascript(); | 56 SVGRectTearOff* getBBoxFromJavascript(); |
61 | 57 |
62 bool IsValid() const final { return SVGTests::IsValid(); } | 58 bool IsValid() const final { return SVGTests::IsValid(); } |
63 | 59 |
64 SVGAnimatedTransformList* transform() { return transform_.Get(); } | 60 SVGAnimatedTransformList* transform() { return transform_.Get(); } |
65 const SVGAnimatedTransformList* transform() const { return transform_.Get(); } | 61 const SVGAnimatedTransformList* transform() const { return transform_.Get(); } |
66 | 62 |
67 AffineTransform ComputeCTM(SVGElement::CTMScope mode, | 63 AffineTransform ComputeCTM(CTMScope mode, |
68 SVGGraphicsElement::StyleUpdateStrategy, | |
69 const SVGGraphicsElement* ancestor = 0) const; | 64 const SVGGraphicsElement* ancestor = 0) const; |
70 | 65 |
71 DECLARE_VIRTUAL_TRACE(); | 66 DECLARE_VIRTUAL_TRACE(); |
72 | 67 |
73 protected: | 68 protected: |
74 SVGGraphicsElement(const QualifiedName&, | 69 SVGGraphicsElement(const QualifiedName&, |
75 Document&, | 70 Document&, |
76 ConstructionType = kCreateSVGElement); | 71 ConstructionType = kCreateSVGElement); |
77 | 72 |
78 bool SupportsFocus() const override { | 73 bool SupportsFocus() const override { |
(...skipping 13 matching lines...) Expand all Loading... |
92 | 87 |
93 inline bool IsSVGGraphicsElement(const SVGElement& element) { | 88 inline bool IsSVGGraphicsElement(const SVGElement& element) { |
94 return element.IsSVGGraphicsElement(); | 89 return element.IsSVGGraphicsElement(); |
95 } | 90 } |
96 | 91 |
97 DEFINE_SVGELEMENT_TYPE_CASTS_WITH_FUNCTION(SVGGraphicsElement); | 92 DEFINE_SVGELEMENT_TYPE_CASTS_WITH_FUNCTION(SVGGraphicsElement); |
98 | 93 |
99 } // namespace blink | 94 } // namespace blink |
100 | 95 |
101 #endif // SVGGraphicsElement_h | 96 #endif // SVGGraphicsElement_h |
OLD | NEW |