]> git.jsancho.org Git - guile-irrlicht.git/blobdiff - irrlicht/gui.scm
set-max!
[guile-irrlicht.git] / irrlicht / gui.scm
index 5e2017bbfcb6bb788276303d89a814ef0ad93121..900b680f3466e829c4242bc1b4b4fd1495e2e9df 100644 (file)
 (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)
     (let ((addImage (get-irrlicht-proc "addImage" gui-environment parent)))
       (addImage gui-environment image pos use-alpha-channel parent id text))))
 
+(define-method (add-scrollbar! (gui-environment <gui-environment>) horizontal rectangle . rest)
+  (let-keywords rest #f
+        ((parent (make <gui-element>))
+         (id -1))
+    (let ((addScrollBar (get-irrlicht-proc "addScrollBar" gui-environment parent)))
+      (addScrollBar gui-environment horizontal rectangle parent id))))
+
 (define-method (add-static-text! (gui-environment <gui-environment>) text rectangle . rest)
   (let-keywords rest #f
         ((border #f)
   (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-scrollbar! add-static-text! draw-all
+        get-built-in-font get-font get-skin)
 
 
 ;; IGUIStaticText
   (irr-class #:init-value "IGUIFont"))
 
 (export <gui-font>)
+
+
+;; IGUIButton
+(define-class <gui-button> (<gui-element>)
+  (irr-class #:init-value "IGUIButton"))
+
+(export <gui-button>)
+
+
+;; IGUIScrollBar
+(define-class <gui-scrollbar> (<gui-element>)
+  (irr-class #:init-value "IGUIScrollBar"))
+
+(define-method (set-max! (scrollbar <gui-scrollbar>) max)
+  (let ((setMax (get-irrlicht-proc "setMax" scrollbar)))
+    (setMax scrollbar max)))
+
+(export <gui-scrollbar> set-max!)