Enlightenment CVS committal Author : leviathan Project : e17 Module : proto
Dir : e17/proto/etk-perl Modified Files: EtkSignals.c EtkTypes.c EtkTypes.h Log Message: - fix signals =================================================================== RCS file: /cvs/e/e17/proto/etk-perl/EtkSignals.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- EtkSignals.c 19 Aug 2006 08:27:35 -0000 1.3 +++ EtkSignals.c 26 Aug 2006 16:03:43 -0000 1.4 @@ -8,10 +8,15 @@ HV *event_hv; SV *event_rv; - if(!strcmp(cbd->signal_name, "mouse_up") || !strcmp(cbd->signal_name, "mouse_down")) + if(!strcmp(cbd->signal_name, "mouse_up")) { - Etk_Event_Mouse_Up_Down *event = value; - event_rv = newSVEventMouseUpDown(event); + Etk_Event_Mouse_Up *event = value; + event_rv = newSVEventMouseUp(event); + } + else if(!strcmp(cbd->signal_name, "mouse_down")) + { + Etk_Event_Mouse_Down *event = value; + event_rv = newSVEventMouseDown(event); } else if(!strcmp(cbd->signal_name, "mouse_move")) { @@ -28,11 +33,15 @@ { event_rv = newSVEtkTreeRowPtr((Etk_Tree_Row *)value); } - else if(!strcmp(cbd->signal_name, "key_down") || !strcmp(cbd->signal_name, "key_up")) + else if(!strcmp(cbd->signal_name, "key_down")) + { + Etk_Event_Key_Down *key_event = value; + event_rv = newSVEventKeyDown(key_event); + } + else if(!strcmp(cbd->signal_name, "key_up")) { - Etk_Event_Key_Up_Down *key_event = value; - event_rv = newSVEventKeyUpDown(key_event); - + Etk_Event_Key_Up *key_event = value; + event_rv = newSVEventKeyUp(key_event); } else { =================================================================== RCS file: /cvs/e/e17/proto/etk-perl/EtkTypes.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- EtkTypes.c 20 Aug 2006 09:34:33 -0000 1.10 +++ EtkTypes.c 26 Aug 2006 16:03:43 -0000 1.11 @@ -555,7 +555,19 @@ #define I_STORE(A, B)\ hv_store(hv, A, strlen(A), B, 0); -SV * newSVEventKeyUpDown(Etk_Event_Key_Up_Down *ev) { +SV * newSVEventKeyUp(Etk_Event_Key_Up *ev) { + HV * hv; + hv = (HV*)sv_2mortal((SV*)newHV()); + + S_STORE("keyname", ev->keyname) + S_STORE("key", ev->key) + S_STORE("string", ev->string) + I_STORE("timestamp", newSVuv(ev->timestamp)) + + return newRV_inc((SV*)hv); +} + +SV * newSVEventKeyDown(Etk_Event_Key_Down *ev) { HV * hv; hv = (HV*)sv_2mortal((SV*)newHV()); @@ -602,7 +614,7 @@ return newRV_noinc((SV*)hv); } -SV * newSVEventMouseUpDown(Etk_Event_Mouse_Up_Down *ev) { +SV * newSVEventMouseUp(Etk_Event_Mouse_Up *ev) { HV * hv; hv = (HV*)sv_2mortal((SV*)newHV()); @@ -614,10 +626,40 @@ I_STORE("widget.y", newSViv(ev->widget.y)) I_STORE("timestamp", newSVuv(ev->timestamp)) + return newRV_inc((SV*)hv); +} + +SV * newSVEventMouseDown(Etk_Event_Mouse_Down *ev) { + + HV * hv; + hv = (HV*)sv_2mortal((SV*)newHV()); + + I_STORE("button", newSViv(ev->button)) + I_STORE("canvas.x", newSViv(ev->canvas.x)) + I_STORE("canvas.y", newSViv(ev->canvas.y)) + I_STORE("widget.x", newSViv(ev->widget.x)) + I_STORE("widget.y", newSViv(ev->widget.y)) + I_STORE("timestamp", newSVuv(ev->timestamp)) + + return newRV_inc((SV*)hv); +} + +SV * newSVEventMouseIn(Etk_Event_Mouse_In *ev) { + + HV * hv; + hv = (HV*)sv_2mortal((SV*)newHV()); + + I_STORE("buttons", newSViv(ev->buttons)) + I_STORE("canvas.x", newSViv(ev->canvas.x)) + I_STORE("canvas.y", newSViv(ev->canvas.y)) + I_STORE("widget.x", newSViv(ev->widget.x)) + I_STORE("widget.y", newSViv(ev->widget.y)) + I_STORE("timestamp", newSVuv(ev->timestamp)) + return newRV_noinc((SV*)hv); } -SV * newSVEventMouseInOut(Etk_Event_Mouse_In_Out *ev) { +SV * newSVEventMouseOut(Etk_Event_Mouse_Out *ev) { HV * hv; hv = (HV*)sv_2mortal((SV*)newHV()); =================================================================== RCS file: /cvs/e/e17/proto/etk-perl/EtkTypes.h,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- EtkTypes.h 16 Aug 2006 20:21:56 -0000 1.7 +++ EtkTypes.h 26 Aug 2006 16:03:43 -0000 1.8 @@ -163,11 +163,14 @@ SV * newSVEtkMenuItemSeparatorPtr(Etk_Menu_Item_Separator *o); Etk_Menu_Item_Separator *SvEtkMenuItemSeparatorPtr(SV *data); -SV * newSVEventKeyUpDown(Etk_Event_Key_Up_Down *ev); +SV * newSVEventKeyUp(Etk_Event_Key_Up *ev); +SV * newSVEventKeyDown(Etk_Event_Key_Down *ev); SV * newSVEventMouseWheel(Etk_Event_Mouse_Wheel *ev); SV * newSVEventMouseMove(Etk_Event_Mouse_Move *ev); -SV * newSVEventMouseUpDown(Etk_Event_Mouse_Up_Down *ev); -SV * newSVEventMouseInOut(Etk_Event_Mouse_In_Out *ev); +SV * newSVEventMouseUp(Etk_Event_Mouse_Up *ev); +SV * newSVEventMouseDown(Etk_Event_Mouse_Down *ev); +SV * newSVEventMouseIn(Etk_Event_Mouse_In *ev); +SV * newSVEventMouseOut(Etk_Event_Mouse_Out *ev); #endif ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs