summaryrefslogtreecommitdiff
path: root/Source/WebCore/svg/SVGPathBuilder.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/svg/SVGPathBuilder.h')
-rw-r--r--Source/WebCore/svg/SVGPathBuilder.h44
1 files changed, 18 insertions, 26 deletions
diff --git a/Source/WebCore/svg/SVGPathBuilder.h b/Source/WebCore/svg/SVGPathBuilder.h
index 81dda7602..eb8fdac94 100644
--- a/Source/WebCore/svg/SVGPathBuilder.h
+++ b/Source/WebCore/svg/SVGPathBuilder.h
@@ -2,7 +2,7 @@
* Copyright (C) 2002, 2003 The Karbon Developers
* Copyright (C) 2006 Alexander Kellett <lypanov@kde.org>
* Copyright (C) 2006, 2007 Rob Buis <buis@kde.org>
- * Copyright (C) 2007, 2009 Apple Inc. All rights reserved.
+ * Copyright (C) 2007, 2009, 2015 Apple Inc. All rights reserved.
* Copyright (C) Research In Motion Limited 2010. All rights reserved.
*
* This library is free software; you can redistribute it and/or
@@ -21,10 +21,8 @@
* Boston, MA 02110-1301, USA.
*/
-#ifndef SVGPathBuilder_h
-#define SVGPathBuilder_h
+#pragma once
-#if ENABLE(SVG)
#include "FloatPoint.h"
#include "SVGPathConsumer.h"
@@ -32,36 +30,30 @@ namespace WebCore {
class Path;
-class SVGPathBuilder : public SVGPathConsumer {
+class SVGPathBuilder final : public SVGPathConsumer {
public:
- SVGPathBuilder();
-
- void setCurrentPath(Path* path) { m_path = path; }
+ SVGPathBuilder(Path&);
private:
- virtual void incrementPathSegmentCount() override { }
- virtual bool continueConsuming() override { return true; }
- virtual void cleanup() override { m_path = 0; }
+ void incrementPathSegmentCount() final { }
+ bool continueConsuming() final { return true; }
// Used in UnalteredParsing/NormalizedParsing modes.
- virtual void moveTo(const FloatPoint&, bool closed, PathCoordinateMode) override;
- virtual void lineTo(const FloatPoint&, PathCoordinateMode) override;
- virtual void curveToCubic(const FloatPoint&, const FloatPoint&, const FloatPoint&, PathCoordinateMode) override;
- virtual void closePath() override;
+ void moveTo(const FloatPoint&, bool closed, PathCoordinateMode) final;
+ void lineTo(const FloatPoint&, PathCoordinateMode) final;
+ void curveToCubic(const FloatPoint&, const FloatPoint&, const FloatPoint&, PathCoordinateMode) final;
+ void closePath() final;
// Only used in UnalteredParsing mode.
- virtual void lineToHorizontal(float, PathCoordinateMode) override { ASSERT_NOT_REACHED(); }
- virtual void lineToVertical(float, PathCoordinateMode) override { ASSERT_NOT_REACHED(); }
- virtual void curveToCubicSmooth(const FloatPoint&, const FloatPoint&, PathCoordinateMode) override { ASSERT_NOT_REACHED(); }
- virtual void curveToQuadratic(const FloatPoint&, const FloatPoint&, PathCoordinateMode) override { ASSERT_NOT_REACHED(); }
- virtual void curveToQuadraticSmooth(const FloatPoint&, PathCoordinateMode) override { ASSERT_NOT_REACHED(); }
- virtual void arcTo(float, float, float, bool, bool, const FloatPoint&, PathCoordinateMode) override { ASSERT_NOT_REACHED(); }
-
- Path* m_path;
+ void lineToHorizontal(float, PathCoordinateMode) final { ASSERT_NOT_REACHED(); }
+ void lineToVertical(float, PathCoordinateMode) final { ASSERT_NOT_REACHED(); }
+ void curveToCubicSmooth(const FloatPoint&, const FloatPoint&, PathCoordinateMode) final { ASSERT_NOT_REACHED(); }
+ void curveToQuadratic(const FloatPoint&, const FloatPoint&, PathCoordinateMode) final { ASSERT_NOT_REACHED(); }
+ void curveToQuadraticSmooth(const FloatPoint&, PathCoordinateMode) final { ASSERT_NOT_REACHED(); }
+ void arcTo(float, float, float, bool, bool, const FloatPoint&, PathCoordinateMode) final { ASSERT_NOT_REACHED(); }
+
+ Path& m_path;
FloatPoint m_current;
};
} // namespace WebCore
-
-#endif // ENABLE(SVG)
-#endif // SVGPathBuilder_h