| Index: Source/core/svg/SVGPathElement.h
|
| diff --git a/Source/core/svg/SVGPathElement.h b/Source/core/svg/SVGPathElement.h
|
| index 7f4e4202a28ea9ffa2a6dea6265e7019f755ae91..e12fc0aff24f1bb876ea6547a1debc22e2e65b59 100644
|
| --- a/Source/core/svg/SVGPathElement.h
|
| +++ b/Source/core/svg/SVGPathElement.h
|
| @@ -27,6 +27,7 @@
|
| #include "core/svg/SVGAnimatedPath.h"
|
| #include "core/svg/SVGGeometryElement.h"
|
| #include "core/svg/SVGPathByteStream.h"
|
| +#include "platform/heap/Handle.h"
|
| #include "wtf/WeakPtr.h"
|
|
|
| namespace blink {
|
| @@ -57,30 +58,30 @@ public:
|
| DECLARE_NODE_FACTORY(SVGPathElement);
|
|
|
| float getTotalLength();
|
| - PassRefPtr<SVGPointTearOff> getPointAtLength(float distance);
|
| + PassRefPtrWillBeRawPtr<SVGPointTearOff> getPointAtLength(float distance);
|
| unsigned getPathSegAtLength(float distance);
|
|
|
| SVGAnimatedNumber* pathLength() { return m_pathLength.get(); }
|
|
|
| - PassRefPtr<SVGPathSegClosePath> createSVGPathSegClosePath();
|
| - PassRefPtr<SVGPathSegMovetoAbs> createSVGPathSegMovetoAbs(float x, float y);
|
| - PassRefPtr<SVGPathSegMovetoRel> createSVGPathSegMovetoRel(float x, float y);
|
| - PassRefPtr<SVGPathSegLinetoAbs> createSVGPathSegLinetoAbs(float x, float y);
|
| - PassRefPtr<SVGPathSegLinetoRel> createSVGPathSegLinetoRel(float x, float y);
|
| - PassRefPtr<SVGPathSegCurvetoCubicAbs> createSVGPathSegCurvetoCubicAbs(float x, float y, float x1, float y1, float x2, float y2);
|
| - PassRefPtr<SVGPathSegCurvetoCubicRel> createSVGPathSegCurvetoCubicRel(float x, float y, float x1, float y1, float x2, float y2);
|
| - PassRefPtr<SVGPathSegCurvetoQuadraticAbs> createSVGPathSegCurvetoQuadraticAbs(float x, float y, float x1, float y1);
|
| - PassRefPtr<SVGPathSegCurvetoQuadraticRel> createSVGPathSegCurvetoQuadraticRel(float x, float y, float x1, float y1);
|
| - PassRefPtr<SVGPathSegArcAbs> createSVGPathSegArcAbs(float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag);
|
| - PassRefPtr<SVGPathSegArcRel> createSVGPathSegArcRel(float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag);
|
| - PassRefPtr<SVGPathSegLinetoHorizontalAbs> createSVGPathSegLinetoHorizontalAbs(float x);
|
| - PassRefPtr<SVGPathSegLinetoHorizontalRel> createSVGPathSegLinetoHorizontalRel(float x);
|
| - PassRefPtr<SVGPathSegLinetoVerticalAbs> createSVGPathSegLinetoVerticalAbs(float y);
|
| - PassRefPtr<SVGPathSegLinetoVerticalRel> createSVGPathSegLinetoVerticalRel(float y);
|
| - PassRefPtr<SVGPathSegCurvetoCubicSmoothAbs> createSVGPathSegCurvetoCubicSmoothAbs(float x, float y, float x2, float y2);
|
| - PassRefPtr<SVGPathSegCurvetoCubicSmoothRel> createSVGPathSegCurvetoCubicSmoothRel(float x, float y, float x2, float y2);
|
| - PassRefPtr<SVGPathSegCurvetoQuadraticSmoothAbs> createSVGPathSegCurvetoQuadraticSmoothAbs(float x, float y);
|
| - PassRefPtr<SVGPathSegCurvetoQuadraticSmoothRel> createSVGPathSegCurvetoQuadraticSmoothRel(float x, float y);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegClosePath> createSVGPathSegClosePath();
|
| + PassRefPtrWillBeRawPtr<SVGPathSegMovetoAbs> createSVGPathSegMovetoAbs(float x, float y);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegMovetoRel> createSVGPathSegMovetoRel(float x, float y);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegLinetoAbs> createSVGPathSegLinetoAbs(float x, float y);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegLinetoRel> createSVGPathSegLinetoRel(float x, float y);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegCurvetoCubicAbs> createSVGPathSegCurvetoCubicAbs(float x, float y, float x1, float y1, float x2, float y2);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegCurvetoCubicRel> createSVGPathSegCurvetoCubicRel(float x, float y, float x1, float y1, float x2, float y2);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegCurvetoQuadraticAbs> createSVGPathSegCurvetoQuadraticAbs(float x, float y, float x1, float y1);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegCurvetoQuadraticRel> createSVGPathSegCurvetoQuadraticRel(float x, float y, float x1, float y1);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegArcAbs> createSVGPathSegArcAbs(float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegArcRel> createSVGPathSegArcRel(float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegLinetoHorizontalAbs> createSVGPathSegLinetoHorizontalAbs(float x);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegLinetoHorizontalRel> createSVGPathSegLinetoHorizontalRel(float x);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegLinetoVerticalAbs> createSVGPathSegLinetoVerticalAbs(float y);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegLinetoVerticalRel> createSVGPathSegLinetoVerticalRel(float y);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegCurvetoCubicSmoothAbs> createSVGPathSegCurvetoCubicSmoothAbs(float x, float y, float x2, float y2);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegCurvetoCubicSmoothRel> createSVGPathSegCurvetoCubicSmoothRel(float x, float y, float x2, float y2);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegCurvetoQuadraticSmoothAbs> createSVGPathSegCurvetoQuadraticSmoothAbs(float x, float y);
|
| + PassRefPtrWillBeRawPtr<SVGPathSegCurvetoQuadraticSmoothRel> createSVGPathSegCurvetoQuadraticSmoothRel(float x, float y);
|
|
|
| // Used in the bindings only.
|
| SVGPathSegListTearOff* pathSegList() { return m_pathSegList->baseVal(); }
|
| @@ -96,6 +97,8 @@ public:
|
|
|
| virtual FloatRect getBBox() override;
|
|
|
| + virtual void trace(Visitor*) override;
|
| +
|
| private:
|
| explicit SVGPathElement(Document&);
|
|
|
| @@ -108,8 +111,8 @@ private:
|
|
|
| void invalidateMPathDependencies();
|
|
|
| - RefPtr<SVGAnimatedNumber> m_pathLength;
|
| - RefPtr<SVGAnimatedPath> m_pathSegList;
|
| + RefPtrWillBeMember<SVGAnimatedNumber> m_pathLength;
|
| + RefPtrWillBeMember<SVGAnimatedPath> m_pathSegList;
|
| };
|
|
|
| } // namespace blink
|
|
|