Index: samplecode/SampleFilterQuality.cpp |
diff --git a/samplecode/SampleFilterQuality.cpp b/samplecode/SampleFilterQuality.cpp |
index 27c092fc476f2e8249fdb16c8641197e6c4909fc..9098901959e64490499e60df8cdc896690416fb6 100644 |
--- a/samplecode/SampleFilterQuality.cpp |
+++ b/samplecode/SampleFilterQuality.cpp |
@@ -28,32 +28,18 @@ static SkSurface* make_surface(SkCanvas* canvas, const SkImageInfo& info) { |
} |
static sk_sp<SkShader> make_shader(const SkRect& bounds) { |
-#if 0 |
- const SkPoint pts[] = { |
- { bounds.left(), bounds.top() }, |
- { bounds.right(), bounds.bottom() }, |
- }; |
- const SkColor colors[] = { |
- SK_ColorRED, SK_ColorGREEN, SK_ColorBLUE, SK_ColorBLACK, |
- SK_ColorCYAN, SK_ColorMAGENTA, SK_ColorYELLOW, |
- }; |
- return SkGradientShader::CreateLinear(pts, |
- colors, nullptr, SK_ARRAY_COUNT(colors), |
- SkShader::kClamp_TileMode); |
-#else |
- SkAutoTUnref<SkImage> image(GetResourceAsImage("mandrill_128.png")); |
- if (nullptr == image) { |
+ sk_sp<SkImage> image(GetResourceAsImage("mandrill_128.png")); |
+ if (!image) { |
return nullptr; |
} |
return image->makeShader(SkShader::kClamp_TileMode, SkShader::kClamp_TileMode); |
-#endif |
} |
#define N 128 |
#define ANGLE_DELTA 3 |
#define SCALE_DELTA (SK_Scalar1 / 32) |
-static SkImage* make_image() { |
+static sk_sp<SkImage> make_image() { |
SkImageInfo info = SkImageInfo::MakeN32(N, N, kOpaque_SkAlphaType); |
SkAutoTUnref<SkSurface> surface(SkSurface::NewRaster(info)); |
SkCanvas* canvas = surface->getCanvas(); |
@@ -70,10 +56,10 @@ static SkImage* make_image() { |
paint.setShader(make_shader(SkRect::MakeWH(N, N))); |
canvas->drawPath(path, paint); |
- return surface->newImageSnapshot(); |
+ return surface->makeImageSnapshot(); |
} |
-static SkImage* zoom_up(SkSurface* origSurf, SkImage* orig) { |
+static sk_sp<SkImage> zoom_up(SkSurface* origSurf, SkImage* orig) { |
const SkScalar S = 16; // amount to scale up |
const int D = 2; // dimension scaling for the offscreen |
// since we only view the center, don't need to produce the entire thing |
@@ -100,7 +86,7 @@ static SkImage* zoom_up(SkSurface* origSurf, SkImage* orig) { |
canvas->drawLine(x, 0, x, SkIntToScalar(orig->height()), paint); |
} |
} |
- return surface->newImageSnapshot(); |
+ return surface->makeImageSnapshot(); |
} |
struct AnimValue { |
@@ -156,12 +142,12 @@ static void draw_box_frame(SkCanvas* canvas, int width, int height) { |
} |
class FilterQualityView : public SampleView { |
- SkAutoTUnref<SkImage> fImage; |
- AnimValue fScale, fAngle; |
- SkSize fCell; |
- SkInterpolator fTrans; |
- SkMSec fCurrTime; |
- bool fShowFatBits; |
+ sk_sp<SkImage> fImage; |
+ AnimValue fScale, fAngle; |
+ SkSize fCell; |
+ SkInterpolator fTrans; |
+ SkMSec fCurrTime; |
+ bool fShowFatBits; |
public: |
FilterQualityView() : fImage(make_image()), fTrans(2, 2), fShowFatBits(true) { |
@@ -216,7 +202,7 @@ protected: |
canvas->translate(SkScalarHalf(size.width()), SkScalarHalf(size.height())); |
canvas->scale(fScale, fScale); |
canvas->rotate(fAngle); |
- canvas->drawImage(fImage, -SkScalarHalf(fImage->width()), -SkScalarHalf(fImage->height()), |
+ canvas->drawImage(fImage.get(), -SkScalarHalf(fImage->width()), -SkScalarHalf(fImage->height()), |
&paint); |
if (false) { |
@@ -247,9 +233,9 @@ protected: |
this->drawTheImage(canvas, size, filter, dx, dy); |
if (surface) { |
- SkAutoTUnref<SkImage> orig(surface->newImageSnapshot()); |
- SkAutoTUnref<SkImage> zoomed(zoom_up(surface, orig)); |
- origCanvas->drawImage(zoomed, |
+ sk_sp<SkImage> orig(surface->makeImageSnapshot()); |
+ sk_sp<SkImage> zoomed(zoom_up(surface, orig.get())); |
+ origCanvas->drawImage(zoomed.get(), |
SkScalarHalf(fCell.width() - zoomed->width()), |
SkScalarHalf(fCell.height() - zoomed->height())); |
} |