X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=src%2Fgui.cpp;h=8b435df8b5b227caac640e9ab510595c873abdd2;hb=bf2cb00e2ef19e2eb33557f900405f836ebe65a3;hp=bcc1cef441ff88c9da05f5d8832f8c0edba94b62;hpb=15be0323f62a228707f616c25c4b87cd1d68766f;p=guile-irrlicht.git diff --git a/src/gui.cpp b/src/gui.cpp index bcc1cef..8b435df 100644 --- a/src/gui.cpp +++ b/src/gui.cpp @@ -21,102 +21,26 @@ #include #include - -#include "color.h" -#include "gsubr.h" #include "gui.h" -#include "gui-button.h" -#include "gui-edit-box.h" -#include "gui-element.h" #include "gui-environment.h" -#include "gui-font.h" -#include "gui-image.h" +#include "gui-in-out-fader.h" +#include "gui-listbox.h" +#include "gui-scrollbar.h" #include "gui-skin.h" -#include "gui-static-text.h" #include "gui-toolbar.h" + extern "C" { void init_gui (void) { - // Init objects - init_gui_button (); - init_gui_edit_box (); - init_gui_element (); init_gui_environment (); - init_gui_font (); - init_gui_image (); + init_gui_in_out_fader (); + init_gui_listbox (); + init_gui_scrollbar (); init_gui_skin (); - init_gui_static_text (); init_gui_toolbar (); - - // Shared procedures (used by two or more objects) - DEFINE_GSUBR ("add-button!", 1, 1, 1, irr_gui_addButton); - DEFINE_GSUBR ("get-font", 1, 1, 1, irr_gui_getFont); - DEFINE_GSUBR ("set-override-color!", 2, 0, 0, irr_gui_setOverrideColor); - } - - SCM - irr_gui_addButton (SCM wrapped_obj, - SCM rectangle, - SCM rest) - { - if (gui_toolbar_p (wrapped_obj)) - { - return irr_gui_IGUIToolBar_addButton (wrapped_obj, rest); - } - else if (gui_environment_p (wrapped_obj)) - { - return irr_gui_IGUIEnvironment_addButton (wrapped_obj, rectangle, rest); - } - else - { - scm_error (scm_arg_type_key, NULL, "Cannot add button to object: ~S", - scm_list_1 (wrapped_obj), scm_list_1 (wrapped_obj)); - } - } - - SCM - irr_gui_getFont (SCM wrapped_obj, - SCM filename, - SCM rest) - { - if (gui_environment_p (wrapped_obj)) - { - return irr_gui_IGUIEnvironment_getFont (wrapped_obj, filename); - } - else if (gui_skin_p (wrapped_obj)) - { - return irr_gui_IGUISkin_getFont (wrapped_obj, rest); - } - else - { - scm_error (scm_arg_type_key, NULL, "Cannot get font from object: ~S", - scm_list_1 (wrapped_obj), scm_list_1 (wrapped_obj)); - } - } - - SCM - irr_gui_setOverrideColor (SCM wrapped_obj, - SCM color) - { -#define SET_OVERRIDE_COLOR(OBJ) OBJ->setOverrideColor (scm_to_color (color)); - - if (gui_edit_box_p (wrapped_obj)) - { - SET_OVERRIDE_COLOR (unwrap_gui_edit_box (wrapped_obj)); - } - else if (gui_static_text_p (wrapped_obj)) - { - SET_OVERRIDE_COLOR (unwrap_gui_static_text (wrapped_obj)); - } - else - { - scm_error (scm_arg_type_key, NULL, "Cannot set override color to object: ~S", - scm_list_1 (wrapped_obj), scm_list_1 (wrapped_obj)); - } - return SCM_UNSPECIFIED; } }