diff options
author | halcanary <halcanary@google.com> | 2015-09-09 08:16:41 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-09-09 08:16:41 -0700 |
commit | 2a24338c777462e04a2b26295f9c034155ee8f3e (patch) | |
tree | cab82add826f6d77e75c8265ea960f16929033a8 /gm/colorfilterimagefilter.cpp | |
parent | 157e6483fb089bf4d2e5cd2c18b521e5ab4ff32a (diff) |
GM: replace boilerplate with macros
I have verified locally that nothing draws differently.
Motivation:
* SK_SIMPLE_GM makes it easier to write a GM.
* Reducing 1100 lines of code makes maintenance easier.
* Simple GMs are easy to convert to Fiddles.
Review URL: https://codereview.chromium.org/1333553002
Diffstat (limited to 'gm/colorfilterimagefilter.cpp')
-rw-r--r-- | gm/colorfilterimagefilter.cpp | 33 |
1 files changed, 7 insertions, 26 deletions
diff --git a/gm/colorfilterimagefilter.cpp b/gm/colorfilterimagefilter.cpp index 4f5a768d57..fb5b0d4067 100644 --- a/gm/colorfilterimagefilter.cpp +++ b/gm/colorfilterimagefilter.cpp @@ -49,29 +49,19 @@ static SkImageFilter* make_mode_blue(SkImageFilter* input = nullptr) { return SkColorFilterImageFilter::Create(filter, input); } -class ColorFilterImageFilterGM : public skiagm::GM { -public: - ColorFilterImageFilterGM () {} - -protected: - - virtual SkString onShortName() { - return SkString("colorfilterimagefilter"); - } - - void drawClippedRect(SkCanvas* canvas, const SkRect& r, const SkPaint& paint, float outset = 0.0f) { +static void drawClippedRect(SkCanvas* canvas, + const SkRect& r, + const SkPaint& paint, + float outset = 0.0f) { canvas->save(); SkRect clip(r); clip.outset(outset, outset); canvas->clipRect(clip); canvas->drawRect(r, paint); canvas->restore(); - } - - virtual SkISize onISize() { return SkISize::Make(400, 100); } - - virtual void onDraw(SkCanvas* canvas) { +} +DEF_SIMPLE_GM(colorfilterimagefilter, canvas, 400, 100){ SkRect r = SkRect::MakeWH(FILTER_WIDTH, FILTER_HEIGHT); SkPaint paint; paint.setColor(SK_ColorRED); @@ -126,13 +116,4 @@ protected: drawClippedRect(canvas, r, paint, 5); canvas->translate(FILTER_WIDTH + MARGIN, 0); } - } - -private: - typedef GM INHERITED; -}; - -////////////////////////////////////////////////////////////////////////////// - -static skiagm::GM* MyFactory(void*) { return new ColorFilterImageFilterGM; } -static skiagm::GMRegistry reg(MyFactory); +} |