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 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
46 AffineTransform getCTM(StyleUpdateStrategy = AllowStyleUpdate); | 46 AffineTransform getCTM(StyleUpdateStrategy = AllowStyleUpdate); |
47 AffineTransform getScreenCTM(StyleUpdateStrategy = AllowStyleUpdate); | 47 AffineTransform getScreenCTM(StyleUpdateStrategy = AllowStyleUpdate); |
48 SVGMatrixTearOff* getCTMFromJavascript(); | 48 SVGMatrixTearOff* getCTMFromJavascript(); |
49 SVGMatrixTearOff* getScreenCTMFromJavascript(); | 49 SVGMatrixTearOff* getScreenCTMFromJavascript(); |
50 | 50 |
51 SVGElement* nearestViewportElement() const; | 51 SVGElement* nearestViewportElement() const; |
52 SVGElement* farthestViewportElement() const; | 52 SVGElement* farthestViewportElement() const; |
53 | 53 |
54 AffineTransform localCoordinateSpaceTransform( | 54 AffineTransform localCoordinateSpaceTransform( |
55 SVGElement::CTMScope) const override { | 55 SVGElement::CTMScope) const override { |
56 return calculateAnimatedLocalTransform(); | 56 return calculateTransform(IncludeMotionTransform); |
57 } | 57 } |
58 bool hasAnimatedLocalTransform() const; | |
59 AffineTransform calculateAnimatedLocalTransform() const; | |
60 AffineTransform* animateMotionTransform() override; | 58 AffineTransform* animateMotionTransform() override; |
61 | 59 |
62 virtual FloatRect getBBox(); | 60 virtual FloatRect getBBox(); |
63 SVGRectTearOff* getBBoxFromJavascript(); | 61 SVGRectTearOff* getBBoxFromJavascript(); |
64 | 62 |
65 bool isValid() const final { return SVGTests::isValid(); } | 63 bool isValid() const final { return SVGTests::isValid(); } |
66 | 64 |
67 SVGAnimatedTransformList* transform() { return m_transform.get(); } | 65 SVGAnimatedTransformList* transform() { return m_transform.get(); } |
68 const SVGAnimatedTransformList* transform() const { | 66 const SVGAnimatedTransformList* transform() const { |
69 return m_transform.get(); | 67 return m_transform.get(); |
70 } | 68 } |
71 | 69 |
72 AffineTransform computeCTM(SVGElement::CTMScope mode, | 70 AffineTransform computeCTM(SVGElement::CTMScope mode, |
73 SVGGraphicsElement::StyleUpdateStrategy, | 71 SVGGraphicsElement::StyleUpdateStrategy, |
74 const SVGGraphicsElement* ancestor = 0) const; | 72 const SVGGraphicsElement* ancestor = 0) const; |
75 | 73 |
76 DECLARE_VIRTUAL_TRACE(); | 74 DECLARE_VIRTUAL_TRACE(); |
77 | 75 |
78 protected: | 76 protected: |
79 SVGGraphicsElement(const QualifiedName&, | 77 SVGGraphicsElement(const QualifiedName&, |
80 Document&, | 78 Document&, |
81 ConstructionType = CreateSVGElement); | 79 ConstructionType = CreateSVGElement); |
82 | 80 |
83 bool supportsFocus() const override { | 81 bool supportsFocus() const override { |
84 return Element::supportsFocus() || hasFocusEventListeners(); | 82 return Element::supportsFocus() || hasFocusEventListeners(); |
85 } | 83 } |
86 | 84 |
| 85 void collectStyleForPresentationAttribute(const QualifiedName&, |
| 86 const AtomicString&, |
| 87 MutableStylePropertySet*) override; |
87 void svgAttributeChanged(const QualifiedName&) override; | 88 void svgAttributeChanged(const QualifiedName&) override; |
88 | 89 |
89 Member<SVGAnimatedTransformList> m_transform; | 90 Member<SVGAnimatedTransformList> m_transform; |
90 | 91 |
91 private: | 92 private: |
92 bool isSVGGraphicsElement() const final { return true; } | 93 bool isSVGGraphicsElement() const final { return true; } |
93 }; | 94 }; |
94 | 95 |
95 inline bool isSVGGraphicsElement(const SVGElement& element) { | 96 inline bool isSVGGraphicsElement(const SVGElement& element) { |
96 return element.isSVGGraphicsElement(); | 97 return element.isSVGGraphicsElement(); |
97 } | 98 } |
98 | 99 |
99 DEFINE_SVGELEMENT_TYPE_CASTS_WITH_FUNCTION(SVGGraphicsElement); | 100 DEFINE_SVGELEMENT_TYPE_CASTS_WITH_FUNCTION(SVGGraphicsElement); |
100 | 101 |
101 } // namespace blink | 102 } // namespace blink |
102 | 103 |
103 #endif // SVGGraphicsElement_h | 104 #endif // SVGGraphicsElement_h |
OLD | NEW |