Adding missing oval and roundedRect primitives to SkBBoxRecord
BUG=http://code.google.com/p/skia/issues/detail?id=1014
TEST=gm with --tileGrid
Review URL: https://codereview.appspot.com/6937066
git-svn-id: http://skia.googlecode.com/svn/trunk@6846 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/core/SkBBoxRecord.cpp b/src/core/SkBBoxRecord.cpp
index 628aa87..432d4ad 100644
--- a/src/core/SkBBoxRecord.cpp
+++ b/src/core/SkBBoxRecord.cpp
@@ -8,6 +8,18 @@
#include "SkBBoxRecord.h"
+void SkBBoxRecord::drawOval(const SkRect& rect, const SkPaint& paint) {
+ if (this->transformBounds(rect, &paint)) {
+ INHERITED::drawOval(rect, paint);
+ }
+}
+
+void SkBBoxRecord::drawRRect(const SkRRect& rrect, const SkPaint& paint) {
+ if (this->transformBounds(rrect.rect(), &paint)) {
+ INHERITED::drawRRect(rrect, paint);
+ }
+}
+
void SkBBoxRecord::drawRect(const SkRect& rect, const SkPaint& paint) {
if (this->transformBounds(rect, &paint)) {
INHERITED::drawRect(rect, paint);
diff --git a/src/core/SkBBoxRecord.h b/src/core/SkBBoxRecord.h
index e6b85db..190d145 100644
--- a/src/core/SkBBoxRecord.h
+++ b/src/core/SkBBoxRecord.h
@@ -29,6 +29,8 @@
*/
virtual void handleBBox(const SkRect& bbox) = 0;
+ virtual void drawOval(const SkRect& rect, const SkPaint& paint) SK_OVERRIDE;
+ virtual void drawRRect(const SkRRect& rrect, const SkPaint& paint) SK_OVERRIDE;
virtual void drawRect(const SkRect& rect, const SkPaint& paint) SK_OVERRIDE;
virtual void drawPath(const SkPath& path, const SkPaint& paint) SK_OVERRIDE;
virtual void drawPoints(PointMode mode, size_t count, const SkPoint pts[],