]> git.jsancho.org Git - guile-irrlicht.git/commitdiff
<gui-button> add-button!
authorJavier Sancho <jsf@jsancho.org>
Sat, 23 May 2020 07:07:32 +0000 (09:07 +0200)
committerJavier Sancho <jsf@jsancho.org>
Sat, 23 May 2020 07:07:32 +0000 (09:07 +0200)
irrlicht.scm
irrlicht/gui.scm

index 5b6481ec8aab5c612865520e5107dc86b5ef92bc..1fc0c4f717cca62a5546a4b968c0e6755be0a9d6 100644 (file)
@@ -40,6 +40,7 @@
                <event-receiver>
                <file-archive>
                <file-system>
                <event-receiver>
                <file-archive>
                <file-system>
+               <gui-button>
                <gui-element>
                <gui-environment>
                <gui-font>
                <gui-element>
                <gui-environment>
                <gui-font>
@@ -62,6 +63,7 @@
                ;; methods
                add-animated-mesh-scene-node!
                add-animator!
                ;; methods
                add-animated-mesh-scene-node!
                add-animator!
+               add-button!
                add-camera-scene-node!
                add-camera-scene-node-fps!
                add-cube-scene-node!
                add-camera-scene-node!
                add-camera-scene-node-fps!
                add-cube-scene-node!
index 5e2017bbfcb6bb788276303d89a814ef0ad93121..86afd9ca5dd6c775e0aae0d3205a0b486e95cb55 100644 (file)
 (define-class <gui-environment> (<reference-counted>)
   (irr-class #:init-value "IGUIEnvironment"))
 
 (define-class <gui-environment> (<reference-counted>)
   (irr-class #:init-value "IGUIEnvironment"))
 
+(define-method (add-button! (gui-environment <gui-environment>) rectangle . rest)
+  (let-keywords rest #f
+        ((parent (make <gui-element>))
+         (id -1)
+         (text "")
+         (tooltiptext ""))
+    (let ((addButton (get-irrlicht-proc "addButton" gui-environment parent)))
+      (addButton gui-environment rectangle parent id text tooltiptext))))
+
 (define-method (add-image! (gui-environment <gui-environment>) image pos . rest)
   (let-keywords rest #f
         ((use-alpha-channel #t)
 (define-method (add-image! (gui-environment <gui-environment>) image pos . rest)
   (let-keywords rest #f
         ((use-alpha-channel #t)
@@ -85,7 +94,8 @@
   (let ((getSkin (get-irrlicht-proc "getSkin" gui-environment)))
     (getSkin gui-environment)))
 
   (let ((getSkin (get-irrlicht-proc "getSkin" gui-environment)))
     (getSkin gui-environment)))
 
-(export <gui-environment> add-image! add-static-text! draw-all get-built-in-font get-font get-skin)
+(export <gui-environment> add-button! add-image! add-static-text! draw-all get-built-in-font
+        get-font get-skin)
 
 
 ;; IGUIStaticText
 
 
 ;; IGUIStaticText
   (irr-class #:init-value "IGUIFont"))
 
 (export <gui-font>)
   (irr-class #:init-value "IGUIFont"))
 
 (export <gui-font>)
+
+
+;; IGUIButton
+(define-class <gui-button> (<gui-element>)
+  (irr-class #:init-value "IGUIButton"))
+
+(export <gui-button>)