Index: experimental/SkV8Example/Path.h |
diff --git a/experimental/SkV8Example/Path.h b/experimental/SkV8Example/Path.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..273ebedd9b201d8fcef33730e2e6f4882037576e |
--- /dev/null |
+++ b/experimental/SkV8Example/Path.h |
@@ -0,0 +1,51 @@ |
+/* |
+ * Copyright 2014 Google Inc. |
+ * |
+ * |
+ * Use of this source code is governed by a BSD-style license that can be |
+ * found in the LICENSE file. |
+ * |
+ */ |
+ |
+#ifndef SkV8Example_Path_DEFINED |
+#define SkV8Example_Path_DEFINED |
+ |
+#include <v8.h> |
+ |
+using namespace v8; |
tfarina
2014/01/06 15:59:46
this polutes the global namespace. I know this is
jcgregorio
2014/01/06 16:32:48
Done.
|
+ |
+#include "SkPath.h" |
+#include "SkTypes.h" |
+ |
+class Global; |
+ |
+class Path : SkNoncopyable { |
+public: |
+ Path() : fSkPath() {} |
+ virtual ~Path() {} |
+ |
+ const SkPath& getSkPath() { return fSkPath; } |
+ |
+ // The JS Path constuctor implementation. |
+ static void ConstructPath(const v8::FunctionCallbackInfo<Value>& args); |
+ |
+ // Add the Path JS constructor to the global context. |
+ static void AddToGlobal(Global* global); |
+ |
+ // Path JS methods. |
+ static void ClosePath(const v8::FunctionCallbackInfo<Value>& args); |
+ static void MoveTo(const v8::FunctionCallbackInfo<Value>& args); |
+ static void LineTo(const v8::FunctionCallbackInfo<Value>& args); |
+ static void QuadraticCurveTo(const v8::FunctionCallbackInfo<Value>& args); |
+ static void BezierCurveTo(const v8::FunctionCallbackInfo<Value>& args); |
+ static void Arc(const v8::FunctionCallbackInfo<Value>& args); |
+ static void Rect(const v8::FunctionCallbackInfo<Value>& args); |
+private: |
+ SkPath fSkPath; |
+ |
+ static Path* Unwrap(const v8::FunctionCallbackInfo<Value>& args); |
+ |
+ static Global* gGlobal; |
+}; |
+ |
+#endif |