Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(84)

Unified Diff: experimental/SkV8Example/JsContext.h

Issue 186783004: Factor out a BaseContext from JsContext. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Review comments. Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « experimental/SkV8Example/BaseContext.cpp ('k') | experimental/SkV8Example/JsContext.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: experimental/SkV8Example/JsContext.h
diff --git a/experimental/SkV8Example/JsContext.h b/experimental/SkV8Example/JsContext.h
index c1466a08dda05e4cb7dc3b99dcc68865e6493c36..d3993ee6c7d3ecc3581b4903b919212b844b3371 100644
--- a/experimental/SkV8Example/JsContext.h
+++ b/experimental/SkV8Example/JsContext.h
@@ -13,6 +13,7 @@
#include <v8.h>
#include "SkPaint.h"
+#include "BaseContext.h"
using namespace v8;
@@ -26,20 +27,14 @@ class Global;
// context.fillStyle="#FF0000";
// context.fillRect(x, y, w, h);
// }
-class JsContext {
+class JsContext : public BaseContext {
public:
JsContext(Global* global)
- : fGlobal(global)
+ : INHERITED(global)
, fCanvas(NULL)
{
- fFillStyle.setColor(SK_ColorBLACK);
- fFillStyle.setAntiAlias(true);
- fFillStyle.setStyle(SkPaint::kFill_Style);
- fStrokeStyle.setColor(SK_ColorBLACK);
- fStrokeStyle.setAntiAlias(true);
- fStrokeStyle.setStyle(SkPaint::kStroke_Style);
}
- ~JsContext();
+ virtual ~JsContext() {}
// Parse the script.
bool initialize();
@@ -47,61 +42,24 @@ public:
// Call this with the SkCanvas you want onDraw to draw on.
void onDraw(SkCanvas* canvas);
+ virtual SkCanvas* getCanvas() { return fCanvas; };
+
private:
- static void GetStyle(Local<String> name,
- const PropertyCallbackInfo<Value>& info,
- const SkPaint& style);
- static void SetStyle(Local<String> name, Local<Value> value,
- const PropertyCallbackInfo<void>& info,
- SkPaint& style);
- // JS Attributes
- static void GetFillStyle(Local<String> name,
- const PropertyCallbackInfo<Value>& info);
- static void SetFillStyle(Local<String> name, Local<Value> value,
- const PropertyCallbackInfo<void>& info);
- static void GetStrokeStyle(Local<String> name,
- const PropertyCallbackInfo<Value>& info);
- static void SetStrokeStyle(Local<String> name, Local<Value> value,
- const PropertyCallbackInfo<void>& info);
- static void GetWidth(Local<String> name,
- const PropertyCallbackInfo<Value>& info);
- static void GetHeight(Local<String> name,
- const PropertyCallbackInfo<Value>& info);
-
- // JS Methods
- static void FillRect(const v8::FunctionCallbackInfo<Value>& args);
- static void Stroke(const v8::FunctionCallbackInfo<Value>& args);
- static void Fill(const v8::FunctionCallbackInfo<Value>& args);
- static void Rotate(const v8::FunctionCallbackInfo<Value>& args);
- static void Save(const v8::FunctionCallbackInfo<Value>& args);
- static void Restore(const v8::FunctionCallbackInfo<Value>& args);
- static void Translate(const v8::FunctionCallbackInfo<Value>& args);
- static void ResetTransform(const v8::FunctionCallbackInfo<Value>& args);
-
- // Get the pointer out of obj.
- static JsContext* Unwrap(Handle<Object> obj);
-
- // Create a template for JS object associated with JsContext, called lazily
- // by Wrap() and the results are stored in gContextTemplate;
- Handle<ObjectTemplate> makeContextTemplate();
// Wrap the 'this' pointer into an Object. Can be retrieved via Unwrap.
Handle<Object> wrap();
- Global* fGlobal;
-
- // Only valid when inside OnDraw().
- SkCanvas* fCanvas;
-
- SkPaint fFillStyle;
- SkPaint fStrokeStyle;
-
// A handle to the onDraw function defined in the script.
Persistent<Function> fOnDraw;
// The template for what a canvas context object looks like. The canvas
// context object is what's passed into the JS onDraw() function.
static Persistent<ObjectTemplate> gContextTemplate;
+
+ // Only valid when inside OnDraw().
+ SkCanvas* fCanvas;
+
+ typedef BaseContext INHERITED;
};
#endif
« no previous file with comments | « experimental/SkV8Example/BaseContext.cpp ('k') | experimental/SkV8Example/JsContext.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698