X-Git-Url: https://git.jsancho.org/?p=guile-irrlicht.git;a=blobdiff_plain;f=src%2FIGUIEnvironment.cpp;h=de4f9f6ad0c58707144ea1d19bfed8482d984ed6;hp=c0a2a06a5ccd5f55ce96c5a1fa9cb7b1be6bbdf9;hb=56de371557044d3b7acc14cb94cc46641be906d9;hpb=03d4e13abc392abec3ef9cb6a97d83a5ae722ca8 diff --git a/src/IGUIEnvironment.cpp b/src/IGUIEnvironment.cpp index c0a2a06..de4f9f6 100644 --- a/src/IGUIEnvironment.cpp +++ b/src/IGUIEnvironment.cpp @@ -21,7 +21,10 @@ #include #include +#include "IGUIElement.h" #include "IGUIEnvironment.h" +#include "IGUIStaticText.h" +#include "rect.h" #include "util.h" extern "C" { @@ -30,10 +33,33 @@ extern "C" { init_gui_environment (void) { init_gui_environment_type (); + scm_c_define_gsubr ("add-static-text!", 8, 0, 0, (scm_t_subr)irr_gui_addStaticText); } DEFINE_WRAPPED_TYPE (irr::gui::IGUIEnvironment*, "gui-environment", init_gui_environment_type, wrap_gui_environment, unwrap_gui_environment); + SCM + irr_gui_addStaticText (SCM wrappedGUIEnvironment, + SCM text, + SCM rectangle, + SCM border, + SCM wordWrap, + SCM parent, + SCM id, + SCM fillBackground) + { + irr::gui::IGUIEnvironment* guienv = unwrap_gui_environment (wrappedGUIEnvironment); + irr::gui::IGUIStaticText* staticText = + guienv->addStaticText (scm_to_wide_char_string (text), + scm_to_rect_s32 (rectangle), + scm_to_bool (border), + scm_to_bool (wordWrap), + scm_is_false (parent) ? 0 : unwrap_gui_element (parent), + scm_to_int32 (id), + scm_to_bool (fillBackground)); + return wrap_gui_static_text (staticText); + } + }