OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> |
3 * Copyright (C) 2004, 2005 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005 Rob Buis <buis@kde.org> |
4 * Copyright (C) 2005 Eric Seidel <eric@webkit.org> | 4 * Copyright (C) 2005 Eric Seidel <eric@webkit.org> |
5 * Copyright (C) 2006 Apple Computer, Inc | 5 * Copyright (C) 2006 Apple Computer, Inc |
6 * Copyright (C) 2009 Google, Inc. | 6 * Copyright (C) 2009 Google, Inc. |
7 * Copyright (C) 2011 Renata Hodovan <reni@webkit.org> | 7 * Copyright (C) 2011 Renata Hodovan <reni@webkit.org> |
8 * Copyright (C) 2011 University of Szeged | 8 * Copyright (C) 2011 University of Szeged |
9 * | 9 * |
10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
102 private: | 102 private: |
103 // Hit-detection separated for the fill and the stroke | 103 // Hit-detection separated for the fill and the stroke |
104 bool fillContains(const FloatPoint&, bool requiresFill = true, const WindRul
e fillRule = RULE_NONZERO); | 104 bool fillContains(const FloatPoint&, bool requiresFill = true, const WindRul
e fillRule = RULE_NONZERO); |
105 bool strokeContains(const FloatPoint&, bool requiresStroke = true); | 105 bool strokeContains(const FloatPoint&, bool requiresStroke = true); |
106 | 106 |
107 const AffineTransform& localToParentTransform() const final { return m_local
Transform ? *m_localTransform : LayoutSVGModelObject::localToParentTransform();
} | 107 const AffineTransform& localToParentTransform() const final { return m_local
Transform ? *m_localTransform : LayoutSVGModelObject::localToParentTransform();
} |
108 | 108 |
109 bool isOfType(LayoutObjectType type) const override { return type == LayoutO
bjectSVGShape || LayoutSVGModelObject::isOfType(type); } | 109 bool isOfType(LayoutObjectType type) const override { return type == LayoutO
bjectSVGShape || LayoutSVGModelObject::isOfType(type); } |
110 void layout() final; | 110 void layout() final; |
111 void paint(const PaintInfo&, const LayoutPoint&) final; | 111 void paint(const PaintInfo&, const LayoutPoint&) final; |
112 void addFocusRingRects(Vector<LayoutRect>&, const LayoutPoint& additionalOff
set) const final; | 112 void addOutlineRects(Vector<LayoutRect>&, const LayoutPoint& additionalOffse
t) const final; |
113 | 113 |
114 bool nodeAtFloatPoint(HitTestResult&, const FloatPoint& pointInParent, HitTe
stAction) final; | 114 bool nodeAtFloatPoint(HitTestResult&, const FloatPoint& pointInParent, HitTe
stAction) final; |
115 | 115 |
116 FloatRect strokeBoundingBox() const final { return m_strokeBoundingBox; } | 116 FloatRect strokeBoundingBox() const final { return m_strokeBoundingBox; } |
117 | 117 |
118 void updatePaintInvalidationBoundingBox(); | 118 void updatePaintInvalidationBoundingBox(); |
119 void updateLocalTransform(); | 119 void updateLocalTransform(); |
120 | 120 |
121 private: | 121 private: |
122 OwnPtr<AffineTransform> m_localTransform; | 122 OwnPtr<AffineTransform> m_localTransform; |
123 OwnPtr<Path> m_path; | 123 OwnPtr<Path> m_path; |
124 | 124 |
125 bool m_needsBoundariesUpdate : 1; | 125 bool m_needsBoundariesUpdate : 1; |
126 bool m_needsShapeUpdate : 1; | 126 bool m_needsShapeUpdate : 1; |
127 bool m_needsTransformUpdate : 1; | 127 bool m_needsTransformUpdate : 1; |
128 }; | 128 }; |
129 | 129 |
130 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutSVGShape, isSVGShape()); | 130 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutSVGShape, isSVGShape()); |
131 | 131 |
132 } | 132 } |
133 | 133 |
134 #endif | 134 #endif |
OLD | NEW |