X-Git-Url: https://git.jsancho.org/?p=guile-irrlicht.git;a=blobdiff_plain;f=src%2Fgui-skin.cpp;h=4d1f0ec254ae8a67eaf1660fea38416b720e9994;hp=cfc9edb7064719ef2224a0de773c4b9ffa8377b5;hb=5780991d786b994724112c97f691d9e2b9f2f1c5;hpb=55e6476fba279b10b7732170a72b31426f973ef5 diff --git a/src/gui-skin.cpp b/src/gui-skin.cpp index cfc9edb..4d1f0ec 100644 --- a/src/gui-skin.cpp +++ b/src/gui-skin.cpp @@ -34,6 +34,7 @@ extern "C" { { init_gui_skin_type (); DEFINE_GSUBR ("get-skin-font", 1, 0, 1, irr_gui_getSkinFont); + DEFINE_GSUBR ("set-skin-font!", 2, 0, 1, irr_gui_setSkinFont); } DEFINE_WRAPPED_TYPE (irr::gui::IGUISkin*, "gui-skin", @@ -55,6 +56,23 @@ extern "C" { return wrap_gui_font (font); } + SCM + irr_gui_setSkinFont (SCM wrapped_gui_skin, + SCM font, + SCM rest) + { + SCM which = scm_from_utf8_symbol ("default"); + + scm_c_bind_keyword_arguments ("get-skin-font", rest, (scm_t_keyword_arguments_flags)0, + scm_from_utf8_keyword ("which"), &which, + SCM_UNDEFINED); + + irr::gui::IGUISkin* skin = unwrap_gui_skin (wrapped_gui_skin); + skin->setFont (unwrap_gui_font (font), + scm_to_default_font (which)); + return SCM_UNSPECIFIED; + } + irr::gui::EGUI_DEFAULT_FONT scm_to_default_font (SCM default_font) {