aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar robertphillips <robertphillips@google.com>2016-02-16 12:09:36 -0800
committerGravatar Commit bot <commit-bot@chromium.org>2016-02-16 12:09:37 -0800
commite8c34974c42b302d78c5cc8c7dcfb36956256baa (patch)
tree8c78743dbc236ebb3ca7407ccc29d3f6e89e4cf2
parent2362c476ef4f05ae2d63c00834f2447480758b74 (diff)
Change signature of SkSpecialImage::draw to take SkScalars
-rw-r--r--src/core/SkSpecialImage.cpp10
-rw-r--r--src/core/SkSpecialImage.h2
-rw-r--r--src/core/SkSpecialSurface.h2
-rw-r--r--tests/SpecialImageTest.cpp2
4 files changed, 9 insertions, 7 deletions
diff --git a/src/core/SkSpecialImage.cpp b/src/core/SkSpecialImage.cpp
index 50447fc1e9..4fed2ac24a 100644
--- a/src/core/SkSpecialImage.cpp
+++ b/src/core/SkSpecialImage.cpp
@@ -15,7 +15,7 @@ public:
SkSpecialImage_Base(const SkIRect& subset) : INHERITED(subset) { }
virtual ~SkSpecialImage_Base() { }
- virtual void onDraw(SkCanvas*, int x, int y, const SkPaint*) const = 0;
+ virtual void onDraw(SkCanvas*, SkScalar x, SkScalar y, const SkPaint*) const = 0;
virtual bool onPeekPixels(SkPixmap*) const { return false; }
@@ -32,7 +32,7 @@ static inline const SkSpecialImage_Base* as_IB(const SkSpecialImage* image) {
return static_cast<const SkSpecialImage_Base*>(image);
}
-void SkSpecialImage::draw(SkCanvas* canvas, int x, int y, const SkPaint* paint) const {
+void SkSpecialImage::draw(SkCanvas* canvas, SkScalar x, SkScalar y, const SkPaint* paint) const {
return as_IB(this)->onDraw(canvas, x, y, paint);
}
@@ -64,7 +64,7 @@ public:
~SkSpecialImage_Image() override { }
- void onDraw(SkCanvas* canvas, int x, int y, const SkPaint* paint) const override {
+ void onDraw(SkCanvas* canvas, SkScalar x, SkScalar y, const SkPaint* paint) const override {
SkRect dst = SkRect::MakeXYWH(x, y, this->subset().width(), this->subset().height());
canvas->drawImageRect(fImage, this->subset(),
@@ -129,7 +129,7 @@ public:
~SkSpecialImage_Raster() override { }
- void onDraw(SkCanvas* canvas, int x, int y, const SkPaint* paint) const override {
+ void onDraw(SkCanvas* canvas, SkScalar x, SkScalar y, const SkPaint* paint) const override {
SkRect dst = SkRect::MakeXYWH(x, y,
this->subset().width(), this->subset().height());
@@ -181,7 +181,7 @@ public:
~SkSpecialImage_Gpu() override { }
- void onDraw(SkCanvas* canvas, int x, int y, const SkPaint* paint) const override {
+ void onDraw(SkCanvas* canvas, SkScalar x, SkScalar y, const SkPaint* paint) const override {
SkRect dst = SkRect::MakeXYWH(x, y,
this->subset().width(), this->subset().height());
diff --git a/src/core/SkSpecialImage.h b/src/core/SkSpecialImage.h
index 23ef5732c9..38225482fb 100644
--- a/src/core/SkSpecialImage.h
+++ b/src/core/SkSpecialImage.h
@@ -37,7 +37,7 @@ public:
/**
* Draw this SpecialImage into the canvas.
*/
- void draw(SkCanvas*, int x, int y, const SkPaint*) const;
+ void draw(SkCanvas*, SkScalar x, SkScalar y, const SkPaint*) const;
static SkSpecialImage* NewFromImage(const SkIRect& subset, const SkImage*);
static SkSpecialImage* NewFromRaster(const SkIRect& subset, const SkBitmap&);
diff --git a/src/core/SkSpecialSurface.h b/src/core/SkSpecialSurface.h
index 2751c4a794..216ef3f41e 100644
--- a/src/core/SkSpecialSurface.h
+++ b/src/core/SkSpecialSurface.h
@@ -45,6 +45,8 @@ public:
* Returns an image of the current state of the surface pixels up to this
* point. The canvas returned by 'getCanvas' becomes invalidated by this
* call and no more drawing to this surface is allowed.
+ *
+ * Note: the caller inherits a ref from this call that must be balanced
*/
SkSpecialImage* newImageSnapshot();
diff --git a/tests/SpecialImageTest.cpp b/tests/SpecialImageTest.cpp
index 3ae8d33911..bc770a0ddc 100644
--- a/tests/SpecialImageTest.cpp
+++ b/tests/SpecialImageTest.cpp
@@ -88,7 +88,7 @@ static void test_image(SkSpecialImage* img, skiatest::Reporter* reporter,
SkCanvas* canvas = surf->getCanvas();
canvas->clear(SK_ColorBLUE);
- img->draw(canvas, kPad, kPad, nullptr);
+ img->draw(canvas, SkIntToScalar(kPad), SkIntToScalar(kPad), nullptr);
SkBitmap bm;
bm.allocN32Pixels(kFullSize, kFullSize, true);