]> git.jsancho.org Git - guile-irrlicht.git/blobdiff - irrlicht/gui.scm
Get irrlicht objects
[guile-irrlicht.git] / irrlicht / gui.scm
index 641cf4715a46ef90e761b81a53a86da1a8e1c838..70a2f97db51895c86135db6f6515d77e00e6939c 100644 (file)
@@ -1,5 +1,5 @@
 ;;; guile-irrlicht --- FFI bindings for Irrlicht Engine
-;;; Copyright (C) 2019 Javier Sancho <jsf@jsancho.org>
+;;; Copyright (C) 2020 Javier Sancho <jsf@jsancho.org>
 ;;;
 ;;; This file is part of guile-irrlicht.
 ;;;
 
 
 (define-module (irrlicht gui)
-  #:use-module (ice-9 match)
-  #:use-module (system foreign)
-  #:use-module ((irrlicht bindings core) #:prefix ffi-core:)
-  #:use-module ((irrlicht bindings gui) #:prefix ffi-gui:)
-  #:export (add-static-text!
-            gui-draw-all
-            set-visible-cursor!))
+  #:use-module (oop goops)
+  #:use-module (irrlicht base)
+  #:use-module (irrlicht foreign))
 
-(define* (add-static-text! gui-env text rectangle
-                           #:key
-                           (border #f)
-                           (word-wrap #t)
-                           (parent %null-pointer)
-                           (id -1)
-                           (fill-background #f))
-  (ffi-gui:add-static-text gui-env
-                           (string->pointer text)
-                           (make-c-struct ffi-core:rect rectangle)
-                           (if border 1 0)
-                           (if word-wrap 1 0)
-                           parent
-                           id
-                           (if fill-background 1 0)))
 
-(define (gui-draw-all gui-env)
-  (ffi-gui:draw-all gui-env))
+;; IVideoDriver
+(define-class <gui-environment> (<irrlicht-base>))
 
-(define (set-visible-cursor! cursor-control visible)
-  (ffi-gui:set-visible-cursor
-   cursor-control
-   (if visible 1 0)))
+(export <gui-environment>)