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

Unified Diff: gm/offsetimagefilter.cpp

Issue 1343123002: Convert unit tests, GMs from SkBitmapSource to SkImagesource (Closed) Base URL: https://chromium.googlesource.com/skia.git@master
Patch Set: Created 5 years, 3 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: gm/offsetimagefilter.cpp
diff --git a/gm/offsetimagefilter.cpp b/gm/offsetimagefilter.cpp
index fcf2b9843fedc34955be342fd23b89b9f7427b66..6b3794962953166999e0f618618b3b3956e1297f 100644
--- a/gm/offsetimagefilter.cpp
+++ b/gm/offsetimagefilter.cpp
@@ -6,8 +6,10 @@
*/
#include "sk_tool_utils.h"
-#include "SkBitmapSource.h"
+#include "SkImage.h"
+#include "SkImageSource.h"
#include "SkOffsetImageFilter.h"
+#include "SkSurface.h"
#include "gm.h"
#define WIDTH 600
@@ -29,14 +31,14 @@ protected:
return SkISize::Make(WIDTH, HEIGHT);
}
robertphillips 2015/09/15 17:43:52 can this be static ?
f(malita) 2015/09/15 18:12:53 Done.
- void drawClippedBitmap(SkCanvas* canvas, const SkBitmap& bitmap, const SkPaint& paint,
- SkScalar scale, const SkIRect& cropRect) {
- SkRect clipRect = SkRect::MakeIWH(bitmap.width(), bitmap.height());
+ void drawClippedImage(SkCanvas* canvas, const SkImage* image, const SkPaint& paint,
+ SkScalar scale, const SkIRect& cropRect) {
+ SkRect clipRect = SkRect::MakeIWH(image->width(), image->height());
canvas->save();
canvas->clipRect(clipRect);
canvas->scale(scale, scale);
- canvas->drawBitmap(bitmap, 0, 0, &paint);
+ canvas->drawImage(image, 0, 0, &paint);
canvas->restore();
// Draw a boundary rect around the intersection of the clip rect and crop rect.
@@ -52,13 +54,14 @@ protected:
}
void onOnceBeforeDraw() override {
- fBitmap = sk_tool_utils::create_string_bitmap(80, 80, 0xD000D000, 15, 65, 96, "e");
+ fBitmap.reset(SkImage::NewFromBitmap(
+ sk_tool_utils::create_string_bitmap(80, 80, 0xD000D000, 15, 65, 96, "e")));
- fCheckerboard = sk_tool_utils::create_checkerboard_bitmap(
- 80, 80,
- sk_tool_utils::color_to_565(0xFFA0A0A0),
- sk_tool_utils::color_to_565(0xFF404040),
- 8);
+ fCheckerboard.reset(SkImage::NewFromBitmap(
+ sk_tool_utils::create_checkerboard_bitmap(80, 80,
+ sk_tool_utils::color_to_565(0xFFA0A0A0),
+ sk_tool_utils::color_to_565(0xFF404040),
+ 8)));
}
void onDraw(SkCanvas* canvas) override {
@@ -66,30 +69,30 @@ protected:
SkPaint paint;
for (int i = 0; i < 4; i++) {
- const SkBitmap* bitmap = (i & 0x01) ? &fCheckerboard : &fBitmap;
+ const SkImage* image = (i & 0x01) ? fCheckerboard : fBitmap;
SkIRect cropRect = SkIRect::MakeXYWH(i * 12,
i * 8,
- bitmap->width() - i * 8,
- bitmap->height() - i * 12);
+ image->width() - i * 8,
+ image->height() - i * 12);
SkImageFilter::CropRect rect(SkRect::Make(cropRect));
- SkAutoTUnref<SkImageFilter> tileInput(SkBitmapSource::Create(*bitmap));
+ SkAutoTUnref<SkImageFilter> tileInput(SkImageSource::Create(image));
SkScalar dx = SkIntToScalar(i*5);
SkScalar dy = SkIntToScalar(i*10);
SkAutoTUnref<SkImageFilter> filter(SkOffsetImageFilter::Create(dx, dy, tileInput,
&rect));
paint.setImageFilter(filter);
- drawClippedBitmap(canvas, *bitmap, paint, 1, cropRect);
- canvas->translate(SkIntToScalar(bitmap->width() + MARGIN), 0);
+ drawClippedImage(canvas, image, paint, 1, cropRect);
+ canvas->translate(SkIntToScalar(image->width() + MARGIN), 0);
}
SkIRect cropRect = SkIRect::MakeXYWH(0, 0, 100, 100);
SkImageFilter::CropRect rect(SkRect::Make(cropRect));
SkAutoTUnref<SkImageFilter> filter(SkOffsetImageFilter::Create(-5, -10, nullptr, &rect));
paint.setImageFilter(filter);
- drawClippedBitmap(canvas, fBitmap, paint, 2, cropRect);
+ drawClippedImage(canvas, fBitmap, paint, 2, cropRect);
}
private:
- SkBitmap fBitmap, fCheckerboard;
+ SkAutoTUnref<SkImage> fBitmap, fCheckerboard;
typedef skiagm::GM INHERITED;
};

Powered by Google App Engine
This is Rietveld 408576698