+ (irr-class #:init-value "IGUIStaticText"))
+
+(define-method (set-override-color! (static-text <gui-static-text>) color)
+ (let ((setOverrideColor (get-irrlicht-proc "setOverrideColor" static-text)))
+ (setOverrideColor static-text color)))
+
+(export <gui-static-text> set-override-color!)
+
+
+;; IGUIImage
+(define-class <gui-image> (<gui-element>)
+ (irr-class #:init-value "IGUIImage"))
+
+(export <gui-image>)
+
+
+;; IGUISkin
+(define-class <gui-skin> (<attribute-exchanging-object>)
+ (irr-class #:init-value "IGUISkin"))
+
+(define-method (get-color (skin <gui-skin>) color)
+ (let ((getColor (get-irrlicht-proc "getColor" skin)))
+ (getColor skin color)))
+
+(define-method (set-font! (skin <gui-skin>) font . rest)
+ (let-keywords rest #f
+ ((which 'default))
+ (let ((setFont (get-irrlicht-proc "setFont" skin)))
+ (setFont skin font which))))
+
+(define-method (set-color! (skin <gui-skin>) which new-color)
+ (let ((setColor (get-irrlicht-proc "setColor" skin)))
+ (setColor skin which new-color)))
+
+(export <gui-skin> get-color set-font! set-color!)
+
+
+;; IGUIFont
+(define-class <gui-font> (<reference-counted>)
+ (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 (get-position (scrollbar <gui-scrollbar>))
+ (let ((getPos (get-irrlicht-proc "getPos" scrollbar)))
+ (getPos scrollbar)))
+
+(define-method (set-max! (scrollbar <gui-scrollbar>) max)
+ (let ((setMax (get-irrlicht-proc "setMax" scrollbar)))
+ (setMax scrollbar max)))
+
+(define-method (set-position! (scrollbar <gui-scrollbar>) pos)
+ (let ((setPos (get-irrlicht-proc "setPos" scrollbar)))
+ (setPos scrollbar pos)))
+
+(export <gui-scrollbar> get-position set-max! set-position!)
+
+
+;; IGUIListBox
+(define-class <gui-listbox> (<gui-element>)
+ (irr-class #:init-value "IGUIListBox"))
+
+(define-method (add-item! (listbox <gui-listbox>) text)
+ (let ((addItem (get-irrlicht-proc "addItem" listbox)))
+ (addItem listbox text)))
+
+(export <gui-listbox> add-item!)
+
+
+;; IGUIEditBox
+(define-class <gui-editbox> (<gui-element>)
+ (irr-class #:init-value "IGUIEditBox"))
+
+(export <gui-editbox>)
+
+
+;; IGUIWindow
+(define-class <gui-window> (<gui-element>)
+ (irr-class #:init-value "IGUIWindow"))
+
+(export <gui-window>)
+
+
+;; IGUIFileOpenDialog
+(define-class <gui-file-open-dialog> (<gui-element>)
+ (irr-class #:init-value "IGUIFileOpenDialog"))
+
+(define-method (get-file-name (dialog <gui-file-open-dialog>))
+ (let ((getFileName (get-irrlicht-proc "getFileName" dialog)))
+ (getFileName dialog)))