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

Side by Side Diff: Source/core/rendering/svg/RenderSVGForeignObject.h

Issue 112633004: Use a bitmask for SVG render object types (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Minor cleanups Created 7 years 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 | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006 Apple Computer, Inc. 2 * Copyright (C) 2006 Apple Computer, Inc.
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 15 matching lines...) Expand all
26 namespace WebCore { 26 namespace WebCore {
27 27
28 class SVGForeignObjectElement; 28 class SVGForeignObjectElement;
29 29
30 class RenderSVGForeignObject FINAL : public RenderSVGBlock { 30 class RenderSVGForeignObject FINAL : public RenderSVGBlock {
31 public: 31 public:
32 explicit RenderSVGForeignObject(SVGForeignObjectElement*); 32 explicit RenderSVGForeignObject(SVGForeignObjectElement*);
33 virtual ~RenderSVGForeignObject(); 33 virtual ~RenderSVGForeignObject();
34 34
35 virtual const char* renderName() const { return "RenderSVGForeignObject"; } 35 virtual const char* renderName() const { return "RenderSVGForeignObject"; }
36 virtual SVGType getSVGType() const OVERRIDE { return IsSVGForeignObject; }
36 37
37 virtual void paint(PaintInfo&, const LayoutPoint&); 38 virtual void paint(PaintInfo&, const LayoutPoint&);
38 39
39 virtual LayoutRect clippedOverflowRectForRepaint(const RenderLayerModelObjec t* repaintContainer) const OVERRIDE; 40 virtual LayoutRect clippedOverflowRectForRepaint(const RenderLayerModelObjec t* repaintContainer) const OVERRIDE;
40 virtual void computeFloatRectForRepaint(const RenderLayerModelObject* repain tContainer, FloatRect&, bool fixed = false) const OVERRIDE; 41 virtual void computeFloatRectForRepaint(const RenderLayerModelObject* repain tContainer, FloatRect&, bool fixed = false) const OVERRIDE;
41 42
42 virtual bool requiresLayer() const { return false; } 43 virtual bool requiresLayer() const { return false; }
43 virtual void layout(); 44 virtual void layout();
44 45
45 virtual FloatRect objectBoundingBox() const { return FloatRect(FloatPoint(), m_viewport.size()); } 46 virtual FloatRect objectBoundingBox() const { return FloatRect(FloatPoint(), m_viewport.size()); }
46 virtual FloatRect strokeBoundingBox() const { return FloatRect(FloatPoint(), m_viewport.size()); } 47 virtual FloatRect strokeBoundingBox() const { return FloatRect(FloatPoint(), m_viewport.size()); }
47 virtual FloatRect repaintRectInLocalCoordinates() const { return FloatRect(F loatPoint(), m_viewport.size()); } 48 virtual FloatRect repaintRectInLocalCoordinates() const { return FloatRect(F loatPoint(), m_viewport.size()); }
48 49
49 virtual bool nodeAtFloatPoint(const HitTestRequest&, HitTestResult&, const F loatPoint& pointInParent, HitTestAction); 50 virtual bool nodeAtFloatPoint(const HitTestRequest&, HitTestResult&, const F loatPoint& pointInParent, HitTestAction);
50 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct ion) OVERRIDE; 51 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct ion) OVERRIDE;
51 virtual bool isSVGForeignObject() const { return true; }
52 52
53 virtual void mapLocalToContainer(const RenderLayerModelObject* repaintContai ner, TransformState&, MapCoordinatesFlags = ApplyContainerFlip, bool* wasFixed = 0) const OVERRIDE; 53 virtual void mapLocalToContainer(const RenderLayerModelObject* repaintContai ner, TransformState&, MapCoordinatesFlags = ApplyContainerFlip, bool* wasFixed = 0) const OVERRIDE;
54 virtual const RenderObject* pushMappingToContainer(const RenderLayerModelObj ect* ancestorToStopAt, RenderGeometryMap&) const OVERRIDE; 54 virtual const RenderObject* pushMappingToContainer(const RenderLayerModelObj ect* ancestorToStopAt, RenderGeometryMap&) const OVERRIDE;
55 virtual void setNeedsTransformUpdate() { m_needsTransformUpdate = true; } 55 virtual void setNeedsTransformUpdate() { m_needsTransformUpdate = true; }
56 56
57 private: 57 private:
58 virtual void updateLogicalWidth() OVERRIDE; 58 virtual void updateLogicalWidth() OVERRIDE;
59 virtual void computeLogicalHeight(LayoutUnit logicalHeight, LayoutUnit logic alTop, LogicalExtentComputedValues&) const OVERRIDE; 59 virtual void computeLogicalHeight(LayoutUnit logicalHeight, LayoutUnit logic alTop, LogicalExtentComputedValues&) const OVERRIDE;
60 60
61 virtual const AffineTransform& localToParentTransform() const; 61 virtual const AffineTransform& localToParentTransform() const;
62 virtual AffineTransform localTransform() const { return m_localTransform; } 62 virtual AffineTransform localTransform() const { return m_localTransform; }
63 63
64 bool m_needsTransformUpdate : 1; 64 bool m_needsTransformUpdate : 1;
65 FloatRect m_viewport; 65 FloatRect m_viewport;
66 AffineTransform m_localTransform; 66 AffineTransform m_localTransform;
67 mutable AffineTransform m_localToParentTransform; 67 mutable AffineTransform m_localToParentTransform;
68 }; 68 };
69 69
70 } 70 }
71 71
72 #endif 72 #endif
OLDNEW
« no previous file with comments | « Source/core/rendering/svg/RenderSVGContainer.h ('k') | Source/core/rendering/svg/RenderSVGGradientStop.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698