X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=irrlicht%2Fgui.scm;h=6f3780583fb907244dd9b8691a7a99d1219ef6c4;hb=b6fcc44908c4fe3c2382d32862cb4815372d2974;hp=75adff1f8d49a18f8d91f081a17f528310f3023d;hpb=b2cce66c3f6e26d1d5442e30b8324218932e11a3;p=guile-irrlicht.git diff --git a/irrlicht/gui.scm b/irrlicht/gui.scm index 75adff1..6f37805 100644 --- a/irrlicht/gui.scm +++ b/irrlicht/gui.scm @@ -67,6 +67,14 @@ (let ((addImage (get-irrlicht-proc "addImage" gui-environment parent))) (addImage gui-environment image pos use-alpha-channel parent id text)))) +(define-method (add-listbox! (gui-environment ) rectangle . rest) + (let-keywords rest #f + ((parent (make )) + (id -1) + (draw-background #f)) + (let ((addListBox (get-irrlicht-proc "addListBox" gui-environment parent))) + (addListBox gui-environment rectangle parent id draw-background)))) + (define-method (add-scrollbar! (gui-environment ) horizontal rectangle . rest) (let-keywords rest #f ((parent (make )) @@ -101,8 +109,8 @@ (let ((getSkin (get-irrlicht-proc "getSkin" gui-environment))) (getSkin gui-environment))) -(export add-button! add-image! add-scrollbar! add-static-text! draw-all - get-built-in-font get-font get-skin) +(export add-button! add-image! add-listbox! add-scrollbar! add-static-text! + draw-all get-built-in-font get-font get-skin) ;; IGUIStaticText @@ -127,13 +135,21 @@ (define-class () (irr-class #:init-value "IGUISkin")) +(define-method (get-color (skin ) color) + (let ((getColor (get-irrlicht-proc "getColor" skin))) + (getColor skin color))) + (define-method (set-font! (skin ) font . rest) (let-keywords rest #f ((which 'default)) (let ((setFont (get-irrlicht-proc "setFont" skin))) (setFont skin font which)))) -(export set-font!) +(define-method (set-color! (skin ) which new-color) + (let ((setColor (get-irrlicht-proc "setColor" skin))) + (setColor skin which new-color))) + +(export get-color set-font! set-color!) ;; IGUIFont @@ -154,4 +170,23 @@ (define-class () (irr-class #:init-value "IGUIScrollBar")) -(export ) +(define-method (get-position (scrollbar )) + (let ((getPos (get-irrlicht-proc "getPos" scrollbar))) + (getPos scrollbar))) + +(define-method (set-max! (scrollbar ) max) + (let ((setMax (get-irrlicht-proc "setMax" scrollbar))) + (setMax scrollbar max))) + +(define-method (set-position! (scrollbar ) pos) + (let ((setPos (get-irrlicht-proc "setPos" scrollbar))) + (setPos scrollbar pos))) + +(export get-position set-max! set-position!) + + +;; IGUIListBox +(define-class () + (irr-class #:init-value "IGUIListBox")) + +(export )