diff options
Diffstat (limited to 'Plugins/skins/SkinLib/TextFieldState_v8_wrapper.cpp')
-rw-r--r-- | Plugins/skins/SkinLib/TextFieldState_v8_wrapper.cpp | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/Plugins/skins/SkinLib/TextFieldState_v8_wrapper.cpp b/Plugins/skins/SkinLib/TextFieldState_v8_wrapper.cpp index 73035d9..6eb4a39 100644 --- a/Plugins/skins/SkinLib/TextFieldState_v8_wrapper.cpp +++ b/Plugins/skins/SkinLib/TextFieldState_v8_wrapper.cpp @@ -16,20 +16,24 @@ using namespace v8; static Handle<Value> Get_TextFieldState_text(Local<String> property, const AccessorInfo &info)
{
+ HandleScope scope;
+
Local<Object> self = info.Holder();
Local<External> wrap = Local<External>::Cast(self->GetInternalField(0));
if (wrap.IsEmpty())
- return Undefined();
+ return scope.Close( Undefined() );
TextFieldState *tmp = (TextFieldState *) wrap->Value();
if (tmp == NULL)
- return Undefined();
+ return scope.Close( Undefined() );
- return String::New((const V8_TCHAR *) tmp->getText());
+ return scope.Close( String::New((const V8_TCHAR *) tmp->getText()) );
}
static void Set_TextFieldState_text(Local<String> property, Local<Value> value, const AccessorInfo& info)
{
+ HandleScope scope;
+
Local<Object> self = info.Holder();
Local<External> wrap = Local<External>::Cast(self->GetInternalField(0));
if (wrap.IsEmpty())
@@ -49,26 +53,30 @@ static void Set_TextFieldState_text(Local<String> property, Local<Value> value, static Handle<Value> Get_TextFieldState_hAlign(Local<String> property, const AccessorInfo &info)
{
+ HandleScope scope;
+
Local<Object> self = info.Holder();
Local<External> wrap = Local<External>::Cast(self->GetInternalField(0));
if (wrap.IsEmpty())
- return Undefined();
+ return scope.Close( Undefined() );
TextFieldState *tmp = (TextFieldState *) wrap->Value();
if (tmp == NULL)
- return Undefined();
+ return scope.Close( Undefined() );
switch(tmp->getHAlign())
{
- case LEFT: return String::New((const V8_TCHAR *) _T("LEFT"));
- case CENTER: return String::New((const V8_TCHAR *) _T("CENTER"));
- case RIGHT: return String::New((const V8_TCHAR *) _T("RIGHT"));
+ case LEFT: return scope.Close( String::New((const V8_TCHAR *) _T("LEFT")) );
+ case CENTER: return scope.Close( String::New((const V8_TCHAR *) _T("CENTER")) );
+ case RIGHT: return scope.Close( String::New((const V8_TCHAR *) _T("RIGHT")) );
}
- return Undefined();
+ return scope.Close( Undefined() );
}
static void Set_TextFieldState_hAlign(Local<String> property, Local<Value> value, const AccessorInfo& info)
{
+ HandleScope scope;
+
Local<Object> self = info.Holder();
Local<External> wrap = Local<External>::Cast(self->GetInternalField(0));
if (wrap.IsEmpty())
@@ -94,6 +102,8 @@ static void Set_TextFieldState_hAlign(Local<String> property, Local<Value> value void AddTextFieldStateAcessors(Handle<ObjectTemplate> &templ)
{
+ HandleScope scope;
+
templ->SetAccessor(String::New("text"), Get_TextFieldState_text, Set_TextFieldState_text);
templ->SetAccessor(String::New("hAlign"), Get_TextFieldState_hAlign, Set_TextFieldState_hAlign);
}
|