X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=src%2Fevent-receiver.cpp;h=f8f8a5572c822c8e21386eb1e58b7e42869399bf;hb=2532ec193354090d2bd34fb8380beb798b4e451e;hp=12ff718059404c901409f46f62a0a0e1518cac8b;hpb=39f003be0e4df1937b5bba66687bdf07b93ef15a;p=guile-irrlicht.git diff --git a/src/event-receiver.cpp b/src/event-receiver.cpp index 12ff718..f8f8a55 100644 --- a/src/event-receiver.cpp +++ b/src/event-receiver.cpp @@ -29,7 +29,7 @@ using namespace irr; SCM -IEventRecevier_make (SCM proc_on_event) +IEventReceiver_make (SCM proc_on_event) { class CustomReceiver : public IEventReceiver { @@ -43,12 +43,13 @@ IEventRecevier_make (SCM proc_on_event) virtual bool OnEvent (const SEvent& event) { - return scm_to_bool (scm_call_1 (scm_on_event, scm_from_pointer ((void*)&event, NULL))); + SCM wrapped_event = scm_from_irr_pointer ("irrlicht irr", "", (void*) &event); + return scm_to_bool (scm_call_1 (scm_on_event, wrapped_event)); } }; CustomReceiver* receiver = new CustomReceiver (proc_on_event); - return scm_from_pointer ((void*)receiver, NULL); + return scm_from_irr_pointer ("irrlicht irr", "", (void*) receiver); } SCM @@ -90,7 +91,7 @@ SEvent_SKeyInput_PressedDown (SCM event) void init_event_receiver (void) { - DEFINE_GSUBR ("IEventRecevier_make", 1, 0, 0, IEventRecevier_make); + DEFINE_GSUBR ("IEventReceiver_make", 1, 0, 0, IEventReceiver_make); DEFINE_GSUBR ("SEvent_EventType", 1, 0, 0, SEvent_EventType); DEFINE_GSUBR ("SEvent_SGUIEvent_Caller", 1, 0, 0, SEvent_SGUIEvent_Caller); DEFINE_GSUBR ("SEvent_SGUIEvent_EventType", 1, 0, 0, SEvent_SGUIEvent_EventType);