add makeShader() to SkBitmap, and deprecate SkShader version
Bug: skia:8937
Change-Id: I42f011e04937a751222bd8ecc6c69b45cf9626a2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206681
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
diff --git a/samplecode/SampleAARectModes.cpp b/samplecode/SampleAARectModes.cpp
index 3b9bb76..c876712 100644
--- a/samplecode/SampleAARectModes.cpp
+++ b/samplecode/SampleAARectModes.cpp
@@ -65,7 +65,7 @@
SkMatrix m;
m.setScale(SkIntToScalar(6), SkIntToScalar(6));
- return SkShader::MakeBitmapShader(bm, SkTileMode::kRepeat, SkTileMode::kRepeat, &m);
+ return bm.makeShader(SkTileMode::kRepeat, SkTileMode::kRepeat, &m);
}
class AARectsModesView : public Sample {
diff --git a/samplecode/SampleAARects.cpp b/samplecode/SampleAARects.cpp
index d909af3..d556482 100644
--- a/samplecode/SampleAARects.cpp
+++ b/samplecode/SampleAARects.cpp
@@ -59,8 +59,7 @@
SkPaint bluePaint;
bluePaint.setARGB(0xff, 0x0, 0x0, 0xff);
SkPaint bmpPaint;
- bmpPaint.setShader(SkShader::MakeBitmapShader(fBitmap, SkTileMode::kRepeat,
- SkTileMode::kRepeat));
+ bmpPaint.setShader(fBitmap.makeShader(SkTileMode::kRepeat, SkTileMode::kRepeat));
bluePaint.setStrokeWidth(3);
bmpPaint.setStrokeWidth(3);
diff --git a/samplecode/SampleCamera.cpp b/samplecode/SampleCamera.cpp
index e3aca05..3b3b98c 100644
--- a/samplecode/SampleCamera.cpp
+++ b/samplecode/SampleCamera.cpp
@@ -39,10 +39,7 @@
SkMatrix matrix;
matrix.setRectToRect(src, dst, SkMatrix::kFill_ScaleToFit);
- fShaders.push_back(SkShader::MakeBitmapShader(bm,
- SkTileMode::kClamp,
- SkTileMode::kClamp,
- &matrix));
+ fShaders.push_back(bm.makeShader(&matrix));
} else {
break;
}
diff --git a/samplecode/SampleHairModes.cpp b/samplecode/SampleHairModes.cpp
index 3885bf2..781d212 100644
--- a/samplecode/SampleHairModes.cpp
+++ b/samplecode/SampleHairModes.cpp
@@ -64,7 +64,7 @@
SkMatrix m;
m.setScale(SkIntToScalar(6), SkIntToScalar(6));
- return SkShader::MakeBitmapShader(bm, SkTileMode::kRepeat, SkTileMode::kRepeat, &m);
+ return bm.makeShader(SkTileMode::kRepeat, SkTileMode::kRepeat, &m);
}
class HairModesView : public Sample {
diff --git a/samplecode/SampleLighting.cpp b/samplecode/SampleLighting.cpp
index a3dc621..154b7c3 100644
--- a/samplecode/SampleLighting.cpp
+++ b/samplecode/SampleLighting.cpp
@@ -38,17 +38,14 @@
fRect = SkRect::MakeIWH(diffuseBitmap.width(), diffuseBitmap.height());
- fDiffuseShader = SkShader::MakeBitmapShader(diffuseBitmap,
- SkTileMode::kClamp, SkTileMode::kClamp);
+ fDiffuseShader = diffuseBitmap.makeShader();
}
{
SkBitmap normalBitmap;
SkAssertResult(GetResourceAsBitmap("images/brickwork_normal-map.jpg", &normalBitmap));
- sk_sp<SkShader> normalMap = SkShader::MakeBitmapShader(normalBitmap,
- SkTileMode::kClamp,
- SkTileMode::kClamp);
+ sk_sp<SkShader> normalMap = normalBitmap.makeShader();
fNormalSource = SkNormalSource::MakeFromNormalMap(std::move(normalMap), SkMatrix::I());
}
}
diff --git a/samplecode/SampleLitAtlas.cpp b/samplecode/SampleLitAtlas.cpp
index a9e5762..b2d7f97 100644
--- a/samplecode/SampleLitAtlas.cpp
+++ b/samplecode/SampleLitAtlas.cpp
@@ -132,12 +132,10 @@
SkMatrix m;
m.setRSXform(xforms[i]);
- sk_sp<SkShader> normalMap = SkShader::MakeBitmapShader(fAtlas, SkTileMode::kClamp,
- SkTileMode::kClamp, &normalMat);
+ sk_sp<SkShader> normalMap = fAtlas.makeShader(&normalMat);
sk_sp<SkNormalSource> normalSource = SkNormalSource::MakeFromNormalMap(
std::move(normalMap), m);
- sk_sp<SkShader> diffuseShader = SkShader::MakeBitmapShader(fAtlas,
- SkTileMode::kClamp, SkTileMode::kClamp, &diffMat);
+ sk_sp<SkShader> diffuseShader = fAtlas.makeShader(&diffMat);
paint.setShader(SkLightingShader::Make(std::move(diffuseShader),
std::move(normalSource), fLights));
diff --git a/samplecode/SamplePatch.cpp b/samplecode/SamplePatch.cpp
index b7f5f36..9bd9dbd 100644
--- a/samplecode/SamplePatch.cpp
+++ b/samplecode/SamplePatch.cpp
@@ -33,7 +33,7 @@
// decode_file("/skimages/progressivejpg.jpg", &bm);
decode_file("/skimages/logo.png", &bm);
size->set(bm.width(), bm.height());
- return SkShader::MakeBitmapShader(bm, SkTileMode::kClamp, SkTileMode::kClamp);
+ return bm.makeShader();
}
static sk_sp<SkShader> make_shader1(const SkIPoint& size) {
diff --git a/samplecode/SampleRepeatTile.cpp b/samplecode/SampleRepeatTile.cpp
index f2d51de..dfde1cf 100644
--- a/samplecode/SampleRepeatTile.cpp
+++ b/samplecode/SampleRepeatTile.cpp
@@ -35,7 +35,7 @@
SkBitmap bm;
make_bitmap(&bm);
- paint->setShader(SkShader::MakeBitmapShader(bm, tm, tm));
+ paint->setShader(bm.makeShader(tm, tm));
}
class RepeatTileView : public Sample {
diff --git a/samplecode/SampleShaders.cpp b/samplecode/SampleShaders.cpp
index 65dbe07b..8bc0807 100644
--- a/samplecode/SampleShaders.cpp
+++ b/samplecode/SampleShaders.cpp
@@ -29,7 +29,7 @@
colors[1] = SkColorSetARGB(0, 0, 0, 0);
auto shaderA = SkGradientShader::MakeLinear(pts, colors, nullptr, 2, SkTileMode::kClamp);
- auto shaderB = SkShader::MakeBitmapShader(bm, SkTileMode::kClamp, SkTileMode::kClamp);
+ auto shaderB = bm.makeShader();
return SkShader::MakeComposeShader(std::move(shaderB), std::move(shaderA), SkBlendMode::kDstIn);
}
diff --git a/samplecode/SampleSlides.cpp b/samplecode/SampleSlides.cpp
index a69bead..2ede187 100644
--- a/samplecode/SampleSlides.cpp
+++ b/samplecode/SampleSlides.cpp
@@ -246,7 +246,7 @@
decode_file("/skimages/logo.gif", &bm);
size->set(bm.width(), bm.height());
- return SkShader::MakeBitmapShader(bm, SkTileMode::kClamp, SkTileMode::kClamp);
+ return bm.makeShader();
}
static sk_sp<SkShader> make_shader1(const SkIPoint& size) {
diff --git a/samplecode/SampleTiling.cpp b/samplecode/SampleTiling.cpp
index 169c5b7..3c219a2 100644
--- a/samplecode/SampleTiling.cpp
+++ b/samplecode/SampleTiling.cpp
@@ -42,7 +42,7 @@
}
static void setup(SkPaint* paint, const SkBitmap& bm, bool filter, SkTileMode tmx, SkTileMode tmy) {
- paint->setShader(SkShader::MakeBitmapShader(bm, tmx, tmy));
+ paint->setShader(bm.makeShader(tmx, tmy));
paint->setFilterQuality(filter ? kLow_SkFilterQuality : kNone_SkFilterQuality);
}
diff --git a/samplecode/SampleVertices.cpp b/samplecode/SampleVertices.cpp
index 0435f3e..a6c5ab3 100644
--- a/samplecode/SampleVertices.cpp
+++ b/samplecode/SampleVertices.cpp
@@ -34,7 +34,7 @@
pixels[0] = pixels[2] = color0;
pixels[1] = pixels[3] = color1;
- return SkShader::MakeBitmapShader(bm, SkTileMode::kRepeat, SkTileMode::kRepeat);
+ return bm.makeShader(SkTileMode::kRepeat, SkTileMode::kRepeat);
}
static sk_sp<SkShader> make_shader1(const SkIPoint& size) {
diff --git a/samplecode/SampleXfermodesBlur.cpp b/samplecode/SampleXfermodesBlur.cpp
index e5a0d89..079ba3c 100644
--- a/samplecode/SampleXfermodesBlur.cpp
+++ b/samplecode/SampleXfermodesBlur.cpp
@@ -104,7 +104,7 @@
const SkScalar h = SkIntToScalar(H);
SkMatrix m;
m.setScale(SkIntToScalar(6), SkIntToScalar(6));
- auto s = SkShader::MakeBitmapShader(fBG, SkTileMode::kRepeat, SkTileMode::kRepeat, &m);
+ auto s = fBG.makeShader(SkTileMode::kRepeat, SkTileMode::kRepeat, &m);
SkFont font;
font.setEdging(SkFont::Edging::kSubpixelAntiAlias);