X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=irrlicht%2Fdevice.scm;h=04b3648e07913f8a689690354d64ff9610c99169;hb=5f5b7536e4f044eb617925db8d4df9b02be3ba7d;hp=9a009ef2cd13f8d5cd3fde000533f10e228a3d1c;hpb=eaa186435f0c641c53841d8d15581525bd542249;p=guile-irrlicht.git diff --git a/irrlicht/device.scm b/irrlicht/device.scm index 9a009ef..04b3648 100644 --- a/irrlicht/device.scm +++ b/irrlicht/device.scm @@ -22,8 +22,9 @@ #:use-module (ice-9 match) #:use-module (system foreign) #:use-module ((irrlicht bindings) #:prefix ffi:) - #:use-module ((irrlicht bindings core) #:prefix ffi-core:) #:use-module ((irrlicht bindings video) #:prefix ffi-video:) + #:use-module (irrlicht dimension2d) + #:use-module (irrlicht util) #:export (create-device get-cursor-control get-file-system @@ -37,7 +38,7 @@ (define* (create-device #:key (device-type 'software) - (window-size '(640 480)) + (window-size (make-dimension2d 640 480)) (bits 16) (fullscreen #f) (stencilbuffer #f) @@ -49,12 +50,13 @@ ('direct3d8 ffi-video:EDT_DIRECT3D8) ('direct3d9 ffi-video:EDT_DIRECT3D9) ('opengl ffi-video:EDT_OPENGL) - ('count ffi-video:EDT_COUNT))) - (wsize (make-c-struct ffi-core:dimension2d window-size))) - (let ((device (ffi:create-device driver wsize bits - (if fullscreen 1 0) - (if stencilbuffer 1 0) - (if vsync 1 0)))) + ('count ffi-video:EDT_COUNT)))) + (let ((device (ffi:create-device driver + (dimension2d-pointer window-size) + bits + (bool->integer fullscreen) + (bool->integer stencilbuffer) + (bool->integer vsync)))) (if (null-pointer? device) #f device)))) (define (get-cursor-control device) @@ -73,13 +75,13 @@ (ffi:get-scene-manager device)) (define (is-window-active? device) - (if (> (ffi:is-window-active device) 0) #t #f)) + (integer->bool (ffi:is-window-active device))) (define (set-window-caption! device text) (ffi:set-window-caption device (string->pointer text))) (define (device-run? device) - (if (> (ffi:run device) 0) #t #f)) + (integer->bool (ffi:run device))) (define (device-drop! device) - (if (> (ffi:drop device) 0) #t #f)) + (integer->bool (ffi:drop device)))