aboutsummaryrefslogtreecommitdiffstats
path: root/include/core/SkPath.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/core/SkPath.h')
-rw-r--r--include/core/SkPath.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/include/core/SkPath.h b/include/core/SkPath.h
index 536e887..957d50e 100644
--- a/include/core/SkPath.h
+++ b/include/core/SkPath.h
@@ -742,6 +742,7 @@ private:
SkTDArray<SkPoint> fPts;
SkTDArray<uint8_t> fVerbs;
mutable SkRect fBounds;
+ int fLastMoveToIndex;
uint8_t fFillType;
uint8_t fSegmentMask;
mutable uint8_t fBoundsIsDirty;
@@ -755,7 +756,6 @@ private:
void computeBounds() const;
friend class Iter;
- void cons_moveto();
friend class SkPathStroker;
/* Append the first contour of path, ignoring path's initial point. If no
@@ -770,7 +770,14 @@ private:
*/
void reversePathTo(const SkPath&);
- friend const SkPoint* sk_get_path_points(const SkPath&, int index);
+ // called before we add points for lineTo, quadTo, cubicTo, checking to see
+ // if we need to inject a leading moveTo first
+ //
+ // SkPath path; path.lineTo(...); <--- need a leading moveTo(0, 0)
+ // SkPath path; ... path.close(); path.lineTo(...) <-- need a moveTo(previous moveTo)
+ //
+ inline void injectMoveToIfNeeded();
+
friend class SkAutoPathBoundsUpdate;
};