| Index: gm/gradientDirtyLaundry.cpp
|
| diff --git a/gm/gradientDirtyLaundry.cpp b/gm/gradientDirtyLaundry.cpp
|
| index baa7471ef22f56857efb78f48b8ca9ac41cccc4d..f7797e718fb9739b9a9d58b8cb3cca0c8b116104 100644
|
| --- a/gm/gradientDirtyLaundry.cpp
|
| +++ b/gm/gradientDirtyLaundry.cpp
|
| @@ -35,28 +35,33 @@
|
| // { 2, gCol2, NULL },
|
| };
|
|
|
| -static SkShader* MakeLinear(const SkPoint pts[2], const GradData& data, SkShader::TileMode tm) {
|
| - return SkGradientShader::CreateLinear(pts, data.fColors, data.fPos, data.fCount, tm);
|
| +static SkShader* MakeLinear(const SkPoint pts[2], const GradData& data,
|
| + SkShader::TileMode tm, SkUnitMapper* mapper) {
|
| + return SkGradientShader::CreateLinear(pts, data.fColors, data.fPos,
|
| + data.fCount, tm, mapper);
|
| }
|
|
|
| -static SkShader* MakeRadial(const SkPoint pts[2], const GradData& data, SkShader::TileMode tm) {
|
| +static SkShader* MakeRadial(const SkPoint pts[2], const GradData& data,
|
| + SkShader::TileMode tm, SkUnitMapper* mapper) {
|
| SkPoint center;
|
| center.set(SkScalarAve(pts[0].fX, pts[1].fX),
|
| SkScalarAve(pts[0].fY, pts[1].fY));
|
| return SkGradientShader::CreateRadial(center, center.fX, data.fColors,
|
| - data.fPos, data.fCount, tm);
|
| + data.fPos, data.fCount, tm, mapper);
|
| }
|
|
|
| -static SkShader* MakeSweep(const SkPoint pts[2], const GradData& data, SkShader::TileMode) {
|
| +static SkShader* MakeSweep(const SkPoint pts[2], const GradData& data,
|
| + SkShader::TileMode, SkUnitMapper* mapper) {
|
| SkPoint center;
|
| center.set(SkScalarAve(pts[0].fX, pts[1].fX),
|
| SkScalarAve(pts[0].fY, pts[1].fY));
|
| - return SkGradientShader::CreateSweep(center.fX, center.fY, data.fColors, data.fPos, data.fCount);
|
| + return SkGradientShader::CreateSweep(center.fX, center.fY, data.fColors,
|
| + data.fPos, data.fCount, mapper);
|
| }
|
|
|
|
|
| -typedef SkShader* (*GradMaker)(const SkPoint pts[2], const GradData& data, SkShader::TileMode tm);
|
| -
|
| +typedef SkShader* (*GradMaker)(const SkPoint pts[2], const GradData& data,
|
| + SkShader::TileMode tm, SkUnitMapper* mapper);
|
| static const GradMaker gGradMakers[] = {
|
| MakeLinear, MakeRadial, MakeSweep,
|
| };
|
| @@ -90,7 +95,7 @@
|
| for (size_t i = 0; i < SK_ARRAY_COUNT(gGradData); i++) {
|
| canvas->save();
|
| for (size_t j = 0; j < SK_ARRAY_COUNT(gGradMakers); j++) {
|
| - SkShader* shader = gGradMakers[j](pts, gGradData[i], tm);
|
| + SkShader* shader = gGradMakers[j](pts, gGradData[i], tm, NULL);
|
| paint.setShader(shader)->unref();
|
| canvas->drawRect(r, paint);
|
| canvas->translate(0, SkIntToScalar(120));
|
|
|