X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=irrlicht%2Firr.scm;h=e105ff7a5565bfe16e0ccddb770e6b4a7e7616e9;hb=f5aa151d55cb005c0bda47b5101390447e5005ad;hp=07e506acdeaefc9ff62518fceb042382b35ea52d;hpb=8c5c5f5fc4aef51c5dfa515b3a8eee67de3b8e9b;p=guile-irrlicht.git diff --git a/irrlicht/irr.scm b/irrlicht/irr.scm index 07e506a..e105ff7 100644 --- a/irrlicht/irr.scm +++ b/irrlicht/irr.scm @@ -25,12 +25,59 @@ ;; IReferenceCounted -(define-class ()) +(define-class () + (irr-class #:init-value "IReferenceCounted")) -(export ) +(define-method (drop! (obj )) + (let ((drop (get-irrlicht-proc "drop" obj))) + (drop obj))) + +(export drop!) + + +;; SEvent +(define-class () + (irr-class #:init-value "SEvent")) + +(define-method (get-event-key (event )) + (let ((SKeyInput_Key (get-irrlicht-proc "SKeyInput_Key" event))) + (SKeyInput_Key event))) + +(define-method (get-event-key-pressed (event )) + (let ((SKeyInput_PressedDown (get-irrlicht-proc "SKeyInput_PressedDown" event))) + (SKeyInput_PressedDown event))) + +(define-method (get-event-type (event )) + (let ((EventType (get-irrlicht-proc "EventType" event))) + (EventType event))) + +(export get-event-key get-event-key-pressed get-event-type) ;; IEventReceiver -(define-class ()) +(define-class () + (irr-class #:init-value "IEventReceiver")) + +(define (make-event-receiver proc-on-event) + (let ((IEventReceiver_make (get-irrlicht-proc "IEventReceiver_make"))) + (IEventReceiver_make proc-on-event))) + +(export make-event-receiver) + + +;; SKeyMap +(define-class () + (irr-class #:init-value "SKeyMap")) + +(export ) + + +;; ITimer +(define-class () + (irr-class #:init-value "ITimer")) + +(define-method (get-time (timer )) + (let ((getTime (get-irrlicht-proc "getTime" timer))) + (getTime timer))) -(export ) +(export get-time)