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

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

Issue 678863002: Move SVG shape painting code to SVGShapePainter (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Update per reviewer comments Created 6 years, 1 month 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) 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 17 matching lines...) Expand all
28 28
29 #include "core/rendering/svg/RenderSVGShape.h" 29 #include "core/rendering/svg/RenderSVGShape.h"
30 30
31 namespace blink { 31 namespace blink {
32 32
33 class RenderSVGPath final : public RenderSVGShape { 33 class RenderSVGPath final : public RenderSVGShape {
34 public: 34 public:
35 explicit RenderSVGPath(SVGGraphicsElement*); 35 explicit RenderSVGPath(SVGGraphicsElement*);
36 virtual ~RenderSVGPath(); 36 virtual ~RenderSVGPath();
37 37
38 virtual const Vector<MarkerPosition>* markerPositions() const override { ret urn &m_markerPositions; }
39
40 virtual const Vector<FloatPoint>* zeroLengthLineCaps() const override { retu rn &m_zeroLengthLinecapLocations; }
41 static FloatRect zeroLengthSubpathRect(const FloatPoint&, float);
42
38 private: 43 private:
39 virtual const char* renderName() const override { return "RenderSVGPath"; } 44 virtual const char* renderName() const override { return "RenderSVGPath"; }
40 45
41 virtual void updateShapeFromElement() override; 46 virtual void updateShapeFromElement() override;
42 FloatRect calculateUpdatedStrokeBoundingBox() const; 47 FloatRect calculateUpdatedStrokeBoundingBox() const;
43 48
44 virtual void strokeShape(GraphicsContext*) const override;
45 virtual bool shapeDependentStrokeContains(const FloatPoint&) override; 49 virtual bool shapeDependentStrokeContains(const FloatPoint&) override;
46 50
51 FloatRect markerRect(float strokeWidth) const;
52 bool shouldGenerateMarkerPositions() const;
53 virtual void processMarkerPositions() override;
54
47 bool shouldStrokeZeroLengthSubpath() const; 55 bool shouldStrokeZeroLengthSubpath() const;
48 Path* zeroLengthLinecapPath(const FloatPoint&) const;
49 FloatRect zeroLengthSubpathRect(const FloatPoint&, float) const;
50 void updateZeroLengthSubpaths(); 56 void updateZeroLengthSubpaths();
51 57
58 Vector<MarkerPosition> m_markerPositions;
52 Vector<FloatPoint> m_zeroLengthLinecapLocations; 59 Vector<FloatPoint> m_zeroLengthLinecapLocations;
53 }; 60 };
54 61
55 } 62 }
56 63
57 #endif 64 #endif
OLDNEW
« no previous file with comments | « Source/core/rendering/svg/RenderSVGEllipse.cpp ('k') | Source/core/rendering/svg/RenderSVGPath.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698