From a13791c23b25dc9e6936ebb3ae22678a547692a6 Mon Sep 17 00:00:00 2001 From: Charles Dang Date: Fri, 8 Jun 2018 19:16:52 +1100 Subject: [PATCH] GUI2: removed now-redundant type parameter from build_single_widget_and_cast_to (cherry-picked from commit 34195ae6548131ef00aa894b4f82c7312fa140da) --- src/gui/core/window_builder.hpp | 5 ++--- src/gui/dialogs/drop_down_menu.cpp | 4 ++-- src/gui/dialogs/preferences_dialog.cpp | 6 +++--- src/gui/widgets/scrollbar_container.cpp | 2 +- 4 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/gui/core/window_builder.hpp b/src/gui/core/window_builder.hpp index 20c1b065670..177b144e700 100644 --- a/src/gui/core/window_builder.hpp +++ b/src/gui/core/window_builder.hpp @@ -99,13 +99,12 @@ widget* build_single_widget_instance_helper(const std::string& type, const confi * @tparam T The final widget type. The widget pointer will be * cast to this. * - * @param type String ID of the widget type. * @param cfg Data config to pass to the widget's builder. */ template -T* build_single_widget_instance(const std::string& type, const config& cfg = config()) +T* build_single_widget_instance(const config& cfg = config()) { - return dynamic_cast(build_single_widget_instance_helper(type, cfg)); + return dynamic_cast(build_single_widget_instance_helper(T::type(), cfg)); } struct builder_grid : public builder_widget diff --git a/src/gui/dialogs/drop_down_menu.cpp b/src/gui/dialogs/drop_down_menu.cpp index 0abaaad9567..24ff3c02359 100644 --- a/src/gui/dialogs/drop_down_menu.cpp +++ b/src/gui/dialogs/drop_down_menu.cpp @@ -137,7 +137,7 @@ void drop_down_menu::pre_show(window& window) find_widget(&new_row, "panel", false).set_tooltip(entry["tooltip"]); if(entry.has_attribute("image")) { - image* img = build_single_widget_instance("image"); + image* img = build_single_widget_instance(); img->set_label(entry["image"]); grid* mi_grid = dynamic_cast(new_row.find("menu_item", false)); @@ -147,7 +147,7 @@ void drop_down_menu::pre_show(window& window) } if(entry.has_attribute("checkbox")) { - toggle_button* checkbox = build_single_widget_instance("toggle_button"); + toggle_button* checkbox = build_single_widget_instance(); checkbox->set_id("checkbox"); checkbox->set_value_bool(entry["checkbox"].to_bool(false)); diff --git a/src/gui/dialogs/preferences_dialog.cpp b/src/gui/dialogs/preferences_dialog.cpp index 02544c5140a..94937db539f 100644 --- a/src/gui/dialogs/preferences_dialog.cpp +++ b/src/gui/dialogs/preferences_dialog.cpp @@ -646,7 +646,7 @@ void preferences_dialog::post_build(window& window) } case ADVANCED_PREF_TYPE::SLIDER: { - slider* setter_widget = build_single_widget_instance("slider", config {"definition", "minimal"}); + slider* setter_widget = build_single_widget_instance(config {"definition", "minimal"}); setter_widget->set_id("setter"); // Maximum must be set first or this will assert setter_widget->set_value_range(option["min"].to_int(), option["max"].to_int()); @@ -693,7 +693,7 @@ void preferences_dialog::post_build(window& window) selected = 0; } - menu_button* setter_widget = build_single_widget_instance("menu_button"); + menu_button* setter_widget = build_single_widget_instance(); setter_widget->set_id("setter"); details_grid.swap_child("setter", setter_widget, true); @@ -718,7 +718,7 @@ void preferences_dialog::post_build(window& window) case ADVANCED_PREF_TYPE::SPECIAL: { //main_grid->remove_child("setter"); - image* value_widget = build_single_widget_instance("image"); + image* value_widget = build_single_widget_instance(); value_widget->set_label("icons/arrows/arrows_blank_right_25.png~CROP(3,3,18,18)"); main_grid->swap_child("value", value_widget, true); diff --git a/src/gui/widgets/scrollbar_container.cpp b/src/gui/widgets/scrollbar_container.cpp index c4ffe9ac6b6..a9b4b9a28da 100644 --- a/src/gui/widgets/scrollbar_container.cpp +++ b/src/gui/widgets/scrollbar_container.cpp @@ -759,7 +759,7 @@ void scrollbar_container::finalize_setup() } /***** Setup the content *****/ - content_ = build_single_widget_instance("spacer"); + content_ = build_single_widget_instance(); // TODO: possibly move this unique_ptr casting functionality to a helper function. content_grid_.reset(dynamic_cast(get_grid().swap_child("_content_grid", content_, true).release()));