diff options
Diffstat (limited to 'include/gpu')
-rw-r--r-- | include/gpu/GrContext.h | 16 | ||||
-rw-r--r-- | include/gpu/SkGpuDevice.h | 2 |
2 files changed, 15 insertions, 3 deletions
diff --git a/include/gpu/GrContext.h b/include/gpu/GrContext.h index b625389b67..c88f469ca0 100644 --- a/include/gpu/GrContext.h +++ b/include/gpu/GrContext.h @@ -457,9 +457,19 @@ public: * @param rrect the roundrect to draw * @param stroke the stroke information (width, join, cap) */ - void drawRRect(const GrPaint& paint, - const SkRRect& rrect, - const SkStrokeRec& stroke); + void drawRRect(const GrPaint& paint, const SkRRect& rrect, const SkStrokeRec& stroke); + + /** + * Shortcut for drawing an SkPath consisting of nested rrects using a paint. + * Does not support stroking. The result is undefined if outer does not contain + * inner. + * + * @param paint describes how to color pixels. + * @param outer the outer roundrect + * @param inner the inner roundrect + */ + void drawDRRect(const GrPaint& paint, const SkRRect& outer, const SkRRect& inner); + /** * Draws a path. diff --git a/include/gpu/SkGpuDevice.h b/include/gpu/SkGpuDevice.h index d7d797a102..a8231914e4 100644 --- a/include/gpu/SkGpuDevice.h +++ b/include/gpu/SkGpuDevice.h @@ -91,6 +91,8 @@ public: const SkPaint& paint) SK_OVERRIDE; virtual void drawRRect(const SkDraw&, const SkRRect& r, const SkPaint& paint) SK_OVERRIDE; + virtual void drawDRRect(const SkDraw& draw, const SkRRect& outer, + const SkRRect& inner, const SkPaint& paint) SK_OVERRIDE; virtual void drawOval(const SkDraw&, const SkRect& oval, const SkPaint& paint) SK_OVERRIDE; virtual void drawPath(const SkDraw&, const SkPath& path, |