X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=irrlicht%2Firr.scm;h=19af56fd58547cb7d6d56d918280280d4f87187a;hb=c4d9e46f268b4f7f738dd77685c632991125cec9;hp=8eeae76ed78645c98b4e9265840fdf3fbe01c916;hpb=564416a9178fd8cef21364c2d921af6c8166115d;p=guile-irrlicht.git diff --git a/irrlicht/irr.scm b/irrlicht/irr.scm index 8eeae76..19af56f 100644 --- a/irrlicht/irr.scm +++ b/irrlicht/irr.scm @@ -21,49 +21,22 @@ (define-module (irrlicht irr) #:use-module (oop goops) #:use-module (irrlicht base) - #:use-module (irrlicht foreign) - #:export ( - - create-device - set-window-caption!)) + #:use-module (irrlicht foreign)) ;; IReferenceCounted -(define-class ()) +(define-class () + (irr-class #:init-value "IReferenceCounted" #:getter irr-class)) +(define-method (drop! (obj )) + (let ((drop (get-irrlicht-proc "drop" obj))) + (drop obj))) -;; IEventReceiver -(define-class ()) - +(export drop!) -;; IrrlichtDevice -(define-class ()) -(define* (create-device #:key - (device-type 'software) - (window-size '(640 480)) - (bits 16) - (fullscreen #f) - (stencilbuffer #f) - (vsync #f) - (receiver (make ))) - (if (not (is-a? receiver )) - (error - "In procedure create-device: Wrong type argument (expecting ):" - receiver)) - - (make - #:irr-pointer - (irr_createDevice - device-type - window-size - bits - fullscreen - stencilbuffer - vsync - (irr-pointer receiver)))) +;; IEventReceiver +(define-class () + (irr-class #:init-value "IEventReceiver" #:getter irr-class)) -(define-method (set-window-caption! (device ) text) - (irr_IrrlichtDevice_setWindowCaption - (irr-pointer device) - text)) +(export )