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

Unified Diff: include/effects/SkDashPathEffect.h

Issue 166583002: Factory methods for heap-allocated SkPathEffect and SkXfermode objects. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: guard constructors by SK_SUPPORT_LEGACY_PUBLICEFFECTCONSTRUCTORS if used by Chrome. Created 6 years, 10 months 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 side-by-side diff with in-line comments
Download patch
Index: include/effects/SkDashPathEffect.h
diff --git a/include/effects/SkDashPathEffect.h b/include/effects/SkDashPathEffect.h
index 818e0739246fa31928dddc3faa4775104afb000f..83e2dfc447b10875b98d92ae4fda632504fc5ca8 100644
--- a/include/effects/SkDashPathEffect.h
+++ b/include/effects/SkDashPathEffect.h
@@ -16,6 +16,30 @@
*/
class SK_API SkDashPathEffect : public SkPathEffect {
public:
+ static SkDashPathEffect* Create(const SkScalar intervals[], int count,
+ SkScalar phase, bool scaleToFit = false) {
+ return SkNEW_ARGS(SkDashPathEffect, (intervals, count, phase, scaleToFit));
+ }
+ virtual ~SkDashPathEffect();
+
+ virtual bool filterPath(SkPath* dst, const SkPath& src,
+ SkStrokeRec*, const SkRect*) const SK_OVERRIDE;
+
+ virtual bool asPoints(PointData* results, const SkPath& src,
+ const SkStrokeRec&, const SkMatrix&,
+ const SkRect*) const SK_OVERRIDE;
+
+ virtual Factory getFactory() const SK_OVERRIDE;
+
+ static SkFlattenable* CreateProc(SkReadBuffer&);
+
+protected:
+ SkDashPathEffect(SkReadBuffer&);
+ virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE;
+
+#ifdef SK_SUPPORT_LEGACY_PUBLICEFFECTCONSTRUCTORS
+public:
+#endif
/** intervals: array containing an even number of entries (>=2), with
scroggo 2014/02/18 16:53:11 Again, I think this comment belongs with the new f
Dominik Grewe 2014/02/18 17:05:30 Done.
the even indices specifying the length of "on" intervals, and the odd
indices specifying the length of "off" intervals.
@@ -38,22 +62,6 @@ public:
*/
SkDashPathEffect(const SkScalar intervals[], int count, SkScalar phase,
bool scaleToFit = false);
- virtual ~SkDashPathEffect();
-
- virtual bool filterPath(SkPath* dst, const SkPath& src,
- SkStrokeRec*, const SkRect*) const SK_OVERRIDE;
-
- virtual bool asPoints(PointData* results, const SkPath& src,
- const SkStrokeRec&, const SkMatrix&,
- const SkRect*) const SK_OVERRIDE;
-
- virtual Factory getFactory() const SK_OVERRIDE;
-
- static SkFlattenable* CreateProc(SkReadBuffer&);
-
-protected:
- SkDashPathEffect(SkReadBuffer&);
- virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE;
private:
SkScalar* fIntervals;

Powered by Google App Engine
This is Rietveld 408576698