Mercurial > MadButterfly
diff nodejs/mbfly_njs.cc @ 680:a588eefd3f04
Refactor to xnjsmb_coord_mod().
Move code of initializing attributes of JS coord objects to
xnjsmb_coord_mod().
author | Thinker K.F. Li <thinker@branda.to> |
---|---|
date | Fri, 06 Aug 2010 22:56:58 +0800 |
parents | 799c852b9065 |
children | b601a4d6f7d1 |
line wrap: on
line diff
--- a/nodejs/mbfly_njs.cc Fri Aug 06 19:31:37 2010 +0800 +++ b/nodejs/mbfly_njs.cc Fri Aug 06 22:56:58 2010 +0800 @@ -28,22 +28,8 @@ static void xnjsmb_coord_new_mod(Handle<Object> mbrt, Handle<Value> ret) { Handle<Object> ret_obj = ret->ToObject(); - Persistent<Object> *ret_obj_hdl; - coord_t *coord; - subject_t *subject; - Handle<Value> subject_o; SET(ret_obj, "mbrt", mbrt); - coord = (coord_t *)UNWRAP(ret_obj); - /* Keep associated js object in property store for retrieving, - * later, without create new js object. - */ - ret_obj_hdl = new Persistent<Object>(ret_obj); - mb_prop_set(&coord->obj.props, PROP_JSOBJ, ret_obj_hdl); - - subject = coord->mouse_event; - subject_o = export_xnjsmb_auto_subject_new(subject); - SET(ret_obj, "subject", subject_o); } #define xnjsmb_auto_coord_new export_xnjsmb_auto_coord_new @@ -68,9 +54,7 @@ _X_njs_MB_new(Handle<Object> self, char *display_name, int width, int height) { njs_runtime_t *obj; - coord_t *root; subject_t *subject; - Handle<Object> root_o; Handle<Value> subject_o; obj = X_njs_MB_new(display_name, width, height); @@ -81,12 +65,6 @@ X_njs_MB_init_handle_connection(obj); xnjsmb_coord_mkroot(self); - root_o = GET(self, "root")->ToObject(); - root = (coord_t *)UNWRAP(root_o); - subject = root->mouse_event; - subject_o = export_xnjsmb_auto_subject_new(subject); - SET(root_o, "subject", subject_o); - subject = X_MB_kbevents(obj->xrt); subject_o = export_xnjsmb_auto_subject_new(subject); SET(self, "kbevent", subject_o);