(define-module (irrlicht gui)
#:use-module (oop goops)
+ #:use-module (ice-9 optargs)
#:use-module (irrlicht base)
- #:use-module (irrlicht foreign))
+ #:use-module (irrlicht foreign)
+ #:use-module (irrlicht io)
+ #:use-module (irrlicht irr))
-;; IVideoDriver
-(define-class <gui-environment> (<irrlicht-base>))
+;; IGUIElement
+(define-class <gui-element> (<attribute-exchanging-object> <event-receiver>))
-(export <gui-environment>)
+(export <gui-element>)
+
+
+;; IGUIEnvironment
+(define-class <gui-environment> (<reference-counted>))
+
+(define-method (add-static-text! (gui-environment <gui-environment>) text rectangle . rest)
+ (let-keywords rest #f
+ ((border #f)
+ (word-wrap #t)
+ (parent (make <gui-element>))
+ (id -1)
+ (fill-background #f))
+ (make <gui-static-text>
+ #:irr-pointer
+ (irr_gui_IGUIEnvironment_addStaticText (irr-pointer gui-environment)
+ text
+ rectangle
+ border
+ word-wrap
+ (irr-pointer parent)
+ id
+ fill-background))))
+
+(export <gui-environment> add-static-text!)
+
+
+;; IGUIStaticText
+(define-class <gui-static-text> (<gui-element>))
+
+(export <gui-static-text>)