From ed7c9c4cb83da887a2a7f1b7f5fc1656057977e7 Mon Sep 17 00:00:00 2001 From: gregorycu Date: Sat, 24 Jan 2015 20:40:27 +1100 Subject: Settings fixes Make the GameGlobalShaderConstantSetter use the settings callback (8% perf improvement in game loop) Ensure variable is set Ensure settings callback is threadsafe --- src/fontengine.cpp | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) (limited to 'src/fontengine.cpp') diff --git a/src/fontengine.cpp b/src/fontengine.cpp index 79d53c989..3b82a3c47 100644 --- a/src/fontengine.cpp +++ b/src/fontengine.cpp @@ -36,7 +36,7 @@ with this program; if not, write to the Free Software Foundation, Inc., FontEngine* g_fontengine = NULL; /** callback to be used on change of font size setting */ -static void font_setting_changed(const std::string) { +static void font_setting_changed(const std::string, void *userdata) { g_fontengine->readSettings(); } @@ -91,22 +91,22 @@ FontEngine::FontEngine(Settings* main_settings, gui::IGUIEnvironment* env) : updateSkin(); if (m_currentMode == FM_Standard) { - m_settings->registerChangedCallback("font_size", font_setting_changed); - m_settings->registerChangedCallback("font_path", font_setting_changed); - m_settings->registerChangedCallback("font_shadow", font_setting_changed); - m_settings->registerChangedCallback("font_shadow_alpha", font_setting_changed); + m_settings->registerChangedCallback("font_size", font_setting_changed, NULL); + m_settings->registerChangedCallback("font_path", font_setting_changed, NULL); + m_settings->registerChangedCallback("font_shadow", font_setting_changed, NULL); + m_settings->registerChangedCallback("font_shadow_alpha", font_setting_changed, NULL); } else if (m_currentMode == FM_Fallback) { - m_settings->registerChangedCallback("fallback_font_size", font_setting_changed); - m_settings->registerChangedCallback("fallback_font_path", font_setting_changed); - m_settings->registerChangedCallback("fallback_font_shadow", font_setting_changed); - m_settings->registerChangedCallback("fallback_font_shadow_alpha", font_setting_changed); + m_settings->registerChangedCallback("fallback_font_size", font_setting_changed, NULL); + m_settings->registerChangedCallback("fallback_font_path", font_setting_changed, NULL); + m_settings->registerChangedCallback("fallback_font_shadow", font_setting_changed, NULL); + m_settings->registerChangedCallback("fallback_font_shadow_alpha", font_setting_changed, NULL); } - m_settings->registerChangedCallback("mono_font_path", font_setting_changed); - m_settings->registerChangedCallback("mono_font_size", font_setting_changed); - m_settings->registerChangedCallback("screen_dpi", font_setting_changed); - m_settings->registerChangedCallback("gui_scaling", font_setting_changed); + m_settings->registerChangedCallback("mono_font_path", font_setting_changed, NULL); + m_settings->registerChangedCallback("mono_font_size", font_setting_changed, NULL); + m_settings->registerChangedCallback("screen_dpi", font_setting_changed, NULL); + m_settings->registerChangedCallback("gui_scaling", font_setting_changed, NULL); } /******************************************************************************/ -- cgit v1.2.3