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

Side by Side Diff: third_party/WebKit/Source/core/svg/SVGGraphicsElement.h

Issue 2858913002: Simplify the SVGGraphicsElement ...CTM methods (Closed)
Patch Set: Created 3 years, 7 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 (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
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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698