OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org> |
3 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 3 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
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 20 matching lines...) Expand all Loading... |
31 class RenderSVGResourceRadialGradient final : public RenderSVGResourceGradient { | 31 class RenderSVGResourceRadialGradient final : public RenderSVGResourceGradient { |
32 public: | 32 public: |
33 explicit RenderSVGResourceRadialGradient(SVGRadialGradientElement*); | 33 explicit RenderSVGResourceRadialGradient(SVGRadialGradientElement*); |
34 virtual ~RenderSVGResourceRadialGradient(); | 34 virtual ~RenderSVGResourceRadialGradient(); |
35 | 35 |
36 virtual const char* renderName() const override { return "RenderSVGResourceR
adialGradient"; } | 36 virtual const char* renderName() const override { return "RenderSVGResourceR
adialGradient"; } |
37 | 37 |
38 static const RenderSVGResourceType s_resourceType = RadialGradientResourceTy
pe; | 38 static const RenderSVGResourceType s_resourceType = RadialGradientResourceTy
pe; |
39 virtual RenderSVGResourceType resourceType() const override { return s_resou
rceType; } | 39 virtual RenderSVGResourceType resourceType() const override { return s_resou
rceType; } |
40 | 40 |
41 virtual SVGUnitTypes::SVGUnitType gradientUnits() const override { return m_
attributes.gradientUnits(); } | 41 virtual SVGUnitTypes::SVGUnitType gradientUnits() const override { return at
tributes().gradientUnits(); } |
42 virtual void calculateGradientTransform(AffineTransform& transform) override
{ transform = m_attributes.gradientTransform(); } | 42 virtual void calculateGradientTransform(AffineTransform& transform) override
{ transform = attributes().gradientTransform(); } |
43 virtual bool collectGradientAttributes(SVGGradientElement*) override; | 43 virtual bool collectGradientAttributes(SVGGradientElement*) override; |
44 virtual void buildGradient(GradientData*) const override; | 44 virtual void buildGradient(GradientData*) const override; |
45 | 45 |
46 FloatPoint centerPoint(const RadialGradientAttributes&) const; | 46 FloatPoint centerPoint(const RadialGradientAttributes&) const; |
47 FloatPoint focalPoint(const RadialGradientAttributes&) const; | 47 FloatPoint focalPoint(const RadialGradientAttributes&) const; |
48 float radius(const RadialGradientAttributes&) const; | 48 float radius(const RadialGradientAttributes&) const; |
49 float focalRadius(const RadialGradientAttributes&) const; | 49 float focalRadius(const RadialGradientAttributes&) const; |
50 | 50 |
51 virtual void trace(Visitor*) override; | 51 private: |
| 52 #if ENABLE(OILPAN) |
| 53 Persistent<RadialGradientAttributesWrapper> m_attributesWrapper; |
52 | 54 |
53 private: | 55 RadialGradientAttributes& mutableAttributes() { return m_attributesWrapper->
attributes(); } |
| 56 const RadialGradientAttributes& attributes() const { return m_attributesWrap
per->attributes(); } |
| 57 #else |
54 RadialGradientAttributes m_attributes; | 58 RadialGradientAttributes m_attributes; |
| 59 |
| 60 RadialGradientAttributes& mutableAttributes() { return m_attributes; } |
| 61 const RadialGradientAttributes& attributes() const { return m_attributes; } |
| 62 #endif |
55 }; | 63 }; |
56 | 64 |
57 DEFINE_RENDER_SVG_RESOURCE_TYPE_CASTS(RenderSVGResourceRadialGradient, RadialGra
dientResourceType); | 65 DEFINE_RENDER_SVG_RESOURCE_TYPE_CASTS(RenderSVGResourceRadialGradient, RadialGra
dientResourceType); |
58 | 66 |
59 } | 67 } |
60 | 68 |
61 #endif | 69 #endif |
OLD | NEW |