OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> | 2 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> |
3 * Copyright (C) 2009 Google, Inc. | 3 * Copyright (C) 2009 Google, Inc. |
4 * | 4 * |
5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
9 * | 9 * |
10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
(...skipping 16 matching lines...) Expand all Loading... |
27 | 27 |
28 class SVGGraphicsElement; | 28 class SVGGraphicsElement; |
29 class LayoutSVGTransformableContainer final : public LayoutSVGContainer { | 29 class LayoutSVGTransformableContainer final : public LayoutSVGContainer { |
30 public: | 30 public: |
31 explicit LayoutSVGTransformableContainer(SVGGraphicsElement*); | 31 explicit LayoutSVGTransformableContainer(SVGGraphicsElement*); |
32 | 32 |
33 bool isChildAllowed(LayoutObject*, const ComputedStyle&) const override; | 33 bool isChildAllowed(LayoutObject*, const ComputedStyle&) const override; |
34 | 34 |
35 bool isOfType(LayoutObjectType type) const override { return type == LayoutO
bjectSVGTransformableContainer || LayoutSVGContainer::isOfType(type); } | 35 bool isOfType(LayoutObjectType type) const override { return type == LayoutO
bjectSVGTransformableContainer || LayoutSVGContainer::isOfType(type); } |
36 const AffineTransform& localToParentTransform() const override { return m_lo
calTransform; } | 36 const AffineTransform& localToParentTransform() const override { return m_lo
calTransform; } |
37 const FloatSize& additionalTranslation() const { return m_lastTranslation; } | 37 const FloatSize& additionalTranslation() const { return m_additionalTranslat
ion; } |
38 | 38 |
39 void setNeedsTransformUpdate() override { m_needsTransformUpdate = true; } | 39 void setNeedsTransformUpdate() override { m_needsTransformUpdate = true; } |
40 bool didTransformToRootUpdate() override { return m_didTransformToRootUpdate
; } | 40 bool didTransformToRootUpdate() override { return m_didTransformToRootUpdate
; } |
41 | 41 |
42 private: | 42 private: |
43 bool calculateLocalTransform() override; | 43 bool calculateLocalTransform() override; |
44 AffineTransform localTransform() const override { return m_localTransform; } | 44 AffineTransform localTransform() const override { return m_localTransform; } |
45 | 45 |
46 bool m_needsTransformUpdate : 1; | 46 bool m_needsTransformUpdate : 1; |
47 bool m_didTransformToRootUpdate : 1; | 47 bool m_didTransformToRootUpdate : 1; |
48 AffineTransform m_localTransform; | 48 AffineTransform m_localTransform; |
49 FloatSize m_lastTranslation; | 49 FloatSize m_additionalTranslation; |
50 }; | 50 }; |
51 | 51 |
52 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutSVGTransformableContainer, isSVGTransforma
bleContainer()); | 52 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutSVGTransformableContainer, isSVGTransforma
bleContainer()); |
53 | 53 |
54 } | 54 } |
55 | 55 |
56 #endif // LayoutSVGTransformableContainer_h | 56 #endif // LayoutSVGTransformableContainer_h |
OLD | NEW |