Add support to convert gfx::Point to v8 value.
authorCheng Zhao <zcbenz@gmail.com>
Tue, 7 Jan 2014 12:00:02 +0000 (20:00 +0800)
committerCheng Zhao <zcbenz@gmail.com>
Tue, 7 Jan 2014 12:00:02 +0000 (20:00 +0800)
common/v8/native_type_conversions.h

index 4949b61..8da7238 100644 (file)
@@ -18,6 +18,7 @@
 #include "common/v8/scoped_persistent.h"
 #include "common/v8/v8_value_converter.h"
 #include "content/public/renderer/v8_value_converter.h"
+#include "ui/gfx/point.h"
 #include "ui/gfx/rect.h"
 #include "url/gurl.h"
 
@@ -154,6 +155,13 @@ v8::Handle<v8::Value> ToV8Value(const std::vector<base::FilePath>& paths) {
   return result;
 }
 
+inline v8::Handle<v8::Value> ToV8Value(const gfx::Point& point) {
+  v8::Handle<v8::Object> obj = v8::Object::New();
+  obj->Set(ToV8Value("x"), ToV8Value(point.x()));
+  obj->Set(ToV8Value("y"), ToV8Value(point.y()));
+  return obj;
+}
+
 // Check if a V8 Value is of specified type.
 template<class T> inline
 bool V8ValueCanBeConvertedTo(v8::Handle<v8::Value> value) {