Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / third_party / skia / gm / gm.h
index e48f772..9ba9f45 100644 (file)
     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 {