X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=irrlicht%2Firr.scm;h=2c883583d341008a4e814631d53fd66094d33d2f;hb=39f003be0e4df1937b5bba66687bdf07b93ef15a;hp=8704c1598d07856dd3289084f7b7b4baa183b8a5;hpb=c9c098c6a9363eb59f435eb195a4bc5b9098b1dd;p=guile-irrlicht.git diff --git a/irrlicht/irr.scm b/irrlicht/irr.scm index 8704c15..2c88358 100644 --- a/irrlicht/irr.scm +++ b/irrlicht/irr.scm @@ -21,45 +21,29 @@ (define-module (irrlicht irr) #:use-module (oop goops) #:use-module (irrlicht base) - #:use-module (irrlicht foreign) - #:export ( - - create-device)) + #:use-module (irrlicht foreign)) ;; IReferenceCounted (define-class () - (irr-class #:init-value "irr::IReferenceCounted" #:getter irrlicht-class)) + (irr-class #:init-value "IReferenceCounted")) + +(define-method (drop! (obj )) + (let ((drop (get-irrlicht-proc "drop" obj))) + (drop obj))) + +(export drop!) ;; IEventReceiver (define-class () - (irr-class #:init-value "irr::IEventReceiver" #:getter irrlicht-class)) + (irr-class #:init-value "IEventReceiver")) +(export ) -;; IrrlichtDevice -(define-class () - (irr-class #:init-value "irr::IrrlichtDevice" #:getter irrlicht-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)) +;; SKeyMap +(define-class () + (irr-class #:init-value "SKeyMap")) - (make - #:ptr - (irr_createDevice device-type - window-size - bits - fullscreen - stencilbuffer - vsync - (wrapped-obj receiver)))) +(export )