Chromium Code Reviews| 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 |