aboutsummaryrefslogtreecommitdiffhomepage
path: root/gm/gm.h
diff options
context:
space:
mode:
Diffstat (limited to 'gm/gm.h')
-rw-r--r--gm/gm.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/gm/gm.h b/gm/gm.h
index e48f772f39..9ba9f452a7 100644
--- a/gm/gm.h
+++ b/gm/gm.h
@@ -24,6 +24,20 @@
static skiagm::GM* SK_MACRO_APPEND_LINE(F_)(void*) { code; } \
static skiagm::GMRegistry SK_MACRO_APPEND_LINE(R_)(SK_MACRO_APPEND_LINE(F_));
+// See colorwheel.cpp for example usage.
+#define DEF_SIMPLE_GM(NAME, CANVAS, W, H) \
+ class SK_MACRO_CONCAT(NAME, _GM) : public skiagm::GM { \
+ virtual void onDraw(SkCanvas* canvas) SK_OVERRIDE; \
+ virtual SkISize onISize() SK_OVERRIDE { \
+ return SkISize::Make((W), (H)); \
+ } \
+ virtual SkString onShortName() SK_OVERRIDE { \
+ return SkString(#NAME); \
+ } \
+ }; \
+ DEF_GM( return SkNEW(SK_MACRO_CONCAT(NAME, _GM)); ) \
+ void SK_MACRO_CONCAT(NAME, _GM)::onDraw(SkCanvas* CANVAS)
+
namespace skiagm {
class GM {