From 7805c1c189e7584ec526d5cd6ab6c666eeacdbfa Mon Sep 17 00:00:00 2001 From: Rubidium Date: Thu, 1 May 2025 17:07:46 +0200 Subject: [PATCH] Codechange: use std::string_view for ini_key --- src/ai/ai_gui.cpp | 2 +- src/airport_gui.cpp | 2 +- src/bootstrap_gui.cpp | 8 ++++---- src/company_gui.cpp | 4 ++-- src/console_gui.cpp | 2 +- src/date_gui.cpp | 2 +- src/dock_gui.cpp | 4 ++-- src/dropdown.cpp | 2 +- src/engine_gui.cpp | 2 +- src/error_gui.cpp | 4 ++-- src/genworld_gui.cpp | 8 ++++---- src/goal_gui.cpp | 8 ++++---- src/help_gui.cpp | 2 +- src/highscore_gui.cpp | 4 ++-- src/intro_gui.cpp | 2 +- src/main_gui.cpp | 2 +- src/misc_gui.cpp | 10 +++++----- src/music_gui.cpp | 2 +- src/network/network_chat_gui.cpp | 2 +- src/network/network_content_gui.cpp | 2 +- src/network/network_gui.cpp | 8 ++++---- src/newgrf_gui.cpp | 2 +- src/news_gui.cpp | 10 +++++----- src/osk_gui.cpp | 2 +- src/rail_gui.cpp | 4 ++-- src/road_gui.cpp | 2 +- src/settings_gui.cpp | 2 +- src/signs_gui.cpp | 2 +- src/statusbar_gui.cpp | 2 +- src/tests/test_window_desc.cpp | 6 +++--- src/toolbar_gui.cpp | 4 ++-- src/window.cpp | 9 ++++----- src/window_gui.h | 4 ++-- 33 files changed, 65 insertions(+), 66 deletions(-) diff --git a/src/ai/ai_gui.cpp b/src/ai/ai_gui.cpp index 711441c564..04c39eb30d 100644 --- a/src/ai/ai_gui.cpp +++ b/src/ai/ai_gui.cpp @@ -84,7 +84,7 @@ static constexpr NWidgetPart _nested_ai_config_widgets[] = { /** Window definition for the configure AI window. */ static WindowDesc _ai_config_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_GAME_OPTIONS, WC_NONE, {}, _nested_ai_config_widgets diff --git a/src/airport_gui.cpp b/src/airport_gui.cpp index c06dccbf49..5b58df17ca 100644 --- a/src/airport_gui.cpp +++ b/src/airport_gui.cpp @@ -618,7 +618,7 @@ static constexpr NWidgetPart _nested_build_airport_widgets[] = { }; static WindowDesc _build_airport_desc( - WDP_AUTO, nullptr, 0, 0, + WDP_AUTO, {}, 0, 0, WC_BUILD_STATION, WC_BUILD_TOOLBAR, WindowDefaultFlag::Construction, _nested_build_airport_widgets diff --git a/src/bootstrap_gui.cpp b/src/bootstrap_gui.cpp index 44bce54ca8..8d9897b51d 100644 --- a/src/bootstrap_gui.cpp +++ b/src/bootstrap_gui.cpp @@ -42,7 +42,7 @@ static constexpr NWidgetPart _background_widgets[] = { * Window description for the background window to prevent smearing. */ static WindowDesc _background_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_BOOTSTRAP, WC_NONE, WindowDefaultFlag::NoClose, _background_widgets @@ -78,7 +78,7 @@ static constexpr NWidgetPart _nested_bootstrap_errmsg_widgets[] = { /** Window description for the error window. */ static WindowDesc _bootstrap_errmsg_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_BOOTSTRAP, WC_NONE, {WindowDefaultFlag::Modal, WindowDefaultFlag::NoClose}, _nested_bootstrap_errmsg_widgets @@ -135,7 +135,7 @@ static constexpr NWidgetPart _nested_bootstrap_download_status_window_widgets[] /** Window description for the download window */ static WindowDesc _bootstrap_download_status_window_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_NETWORK_STATUS_WINDOW, WC_NONE, {WindowDefaultFlag::Modal, WindowDefaultFlag::NoClose}, _nested_bootstrap_download_status_window_widgets @@ -187,7 +187,7 @@ static constexpr NWidgetPart _bootstrap_query_widgets[] = { /** The window description for the query. */ static WindowDesc _bootstrap_query_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_CONFIRM_POPUP_QUERY, WC_NONE, WindowDefaultFlag::NoClose, _bootstrap_query_widgets diff --git a/src/company_gui.cpp b/src/company_gui.cpp index f7fcdaa168..2fc4e69a86 100644 --- a/src/company_gui.cpp +++ b/src/company_gui.cpp @@ -1708,7 +1708,7 @@ public: /** Company manager face selection window description */ static WindowDesc _select_company_manager_face_desc( - WDP_AUTO, nullptr, 0, 0, + WDP_AUTO, {}, 0, 0, WC_COMPANY_MANAGER_FACE, WC_NONE, WindowDefaultFlag::Construction, _nested_select_company_manager_face_widgets @@ -2616,7 +2616,7 @@ static constexpr NWidgetPart _nested_buy_company_widgets[] = { }; static WindowDesc _buy_company_desc( - WDP_AUTO, nullptr, 0, 0, + WDP_AUTO, {}, 0, 0, WC_BUY_COMPANY, WC_NONE, WindowDefaultFlag::Construction, _nested_buy_company_widgets diff --git a/src/console_gui.cpp b/src/console_gui.cpp index b383232476..a3cf57c437 100644 --- a/src/console_gui.cpp +++ b/src/console_gui.cpp @@ -137,7 +137,7 @@ static constexpr NWidgetPart _nested_console_window_widgets[] = { }; static WindowDesc _console_window_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_CONSOLE, WC_NONE, {}, _nested_console_window_widgets diff --git a/src/date_gui.cpp b/src/date_gui.cpp index ec451c1986..6c40fd2309 100644 --- a/src/date_gui.cpp +++ b/src/date_gui.cpp @@ -196,7 +196,7 @@ static constexpr NWidgetPart _nested_set_date_widgets[] = { /** Description of the date setting window. */ static WindowDesc _set_date_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_SET_DATE, WC_NONE, {}, _nested_set_date_widgets diff --git a/src/dock_gui.cpp b/src/dock_gui.cpp index 2175713df5..2a2528e082 100644 --- a/src/dock_gui.cpp +++ b/src/dock_gui.cpp @@ -507,7 +507,7 @@ static constexpr NWidgetPart _nested_build_dock_station_widgets[] = { }; static WindowDesc _build_dock_station_desc( - WDP_AUTO, nullptr, 0, 0, + WDP_AUTO, {}, 0, 0, WC_BUILD_STATION, WC_BUILD_TOOLBAR, WindowDefaultFlag::Construction, _nested_build_dock_station_widgets @@ -602,7 +602,7 @@ static constexpr NWidgetPart _nested_build_docks_depot_widgets[] = { }; static WindowDesc _build_docks_depot_desc( - WDP_AUTO, nullptr, 0, 0, + WDP_AUTO, {}, 0, 0, WC_BUILD_DEPOT, WC_BUILD_TOOLBAR, WindowDefaultFlag::Construction, _nested_build_docks_depot_widgets diff --git a/src/dropdown.cpp b/src/dropdown.cpp index eb2ad63cbb..27f41572c5 100644 --- a/src/dropdown.cpp +++ b/src/dropdown.cpp @@ -65,7 +65,7 @@ static constexpr NWidgetPart _nested_dropdown_menu_widgets[] = { }; static WindowDesc _dropdown_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_DROPDOWN_MENU, WC_NONE, WindowDefaultFlag::NoFocus, _nested_dropdown_menu_widgets diff --git a/src/engine_gui.cpp b/src/engine_gui.cpp index 355b3b3a51..e219a45ff2 100644 --- a/src/engine_gui.cpp +++ b/src/engine_gui.cpp @@ -141,7 +141,7 @@ struct EnginePreviewWindow : Window { }; static WindowDesc _engine_preview_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_ENGINE_PREVIEW, WC_NONE, WindowDefaultFlag::Construction, _nested_engine_preview_widgets diff --git a/src/error_gui.cpp b/src/error_gui.cpp index b9aa748da5..1a22c27267 100644 --- a/src/error_gui.cpp +++ b/src/error_gui.cpp @@ -44,7 +44,7 @@ static constexpr NWidgetPart _nested_errmsg_widgets[] = { }; static WindowDesc _errmsg_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_ERRMSG, WC_NONE, {}, _nested_errmsg_widgets @@ -64,7 +64,7 @@ static constexpr NWidgetPart _nested_errmsg_face_widgets[] = { }; static WindowDesc _errmsg_face_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_ERRMSG, WC_NONE, {}, _nested_errmsg_face_widgets diff --git a/src/genworld_gui.cpp b/src/genworld_gui.cpp index 31e23303b4..a3079d471d 100644 --- a/src/genworld_gui.cpp +++ b/src/genworld_gui.cpp @@ -975,14 +975,14 @@ struct GenerateLandscapeWindow : public Window { }; static WindowDesc _generate_landscape_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_GENERATE_LANDSCAPE, WC_NONE, {}, _nested_generate_landscape_widgets ); static WindowDesc _heightmap_load_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_GENERATE_LANDSCAPE, WC_NONE, {}, _nested_heightmap_load_widgets @@ -1282,7 +1282,7 @@ static constexpr NWidgetPart _nested_create_scenario_widgets[] = { }; static WindowDesc _create_scenario_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_GENERATE_LANDSCAPE, WC_NONE, {}, _nested_create_scenario_widgets @@ -1308,7 +1308,7 @@ static constexpr NWidgetPart _nested_generate_progress_widgets[] = { static WindowDesc _generate_progress_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_MODAL_PROGRESS, WC_NONE, WindowDefaultFlag::NoClose, _nested_generate_progress_widgets diff --git a/src/goal_gui.cpp b/src/goal_gui.cpp index cccb600371..ed9920219e 100644 --- a/src/goal_gui.cpp +++ b/src/goal_gui.cpp @@ -440,25 +440,25 @@ static constexpr auto _nested_goal_question_widgets_error = NestedGoalWidgets static WindowDesc _goal_question_list_desc[] = { { - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_GOAL_QUESTION, WC_NONE, WindowDefaultFlag::Construction, _nested_goal_question_widgets_question, }, { - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_GOAL_QUESTION, WC_NONE, WindowDefaultFlag::Construction, _nested_goal_question_widgets_info, }, { - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_GOAL_QUESTION, WC_NONE, WindowDefaultFlag::Construction, _nested_goal_question_widgets_warning, }, { - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_GOAL_QUESTION, WC_NONE, WindowDefaultFlag::Construction, _nested_goal_question_widgets_error, diff --git a/src/help_gui.cpp b/src/help_gui.cpp index 43493d0897..b15e50bdb4 100644 --- a/src/help_gui.cpp +++ b/src/help_gui.cpp @@ -202,7 +202,7 @@ static constexpr NWidgetPart _nested_helpwin_widgets[] = { }; static WindowDesc _helpwin_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_HELPWIN, WC_NONE, {}, _nested_helpwin_widgets diff --git a/src/highscore_gui.cpp b/src/highscore_gui.cpp index fc71a31f79..be1f5bb760 100644 --- a/src/highscore_gui.cpp +++ b/src/highscore_gui.cpp @@ -214,14 +214,14 @@ static constexpr NWidgetPart _nested_highscore_widgets[] = { }; static WindowDesc _highscore_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_HIGHSCORE, WC_NONE, {}, _nested_highscore_widgets ); static WindowDesc _endgame_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_ENDSCREEN, WC_NONE, {}, _nested_highscore_widgets diff --git a/src/intro_gui.cpp b/src/intro_gui.cpp index b4c74c3cd4..5dac9a182d 100644 --- a/src/intro_gui.cpp +++ b/src/intro_gui.cpp @@ -443,7 +443,7 @@ static constexpr NWidgetPart _nested_select_game_widgets[] = { }; static WindowDesc _select_game_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_SELECT_GAME, WC_NONE, WindowDefaultFlag::NoClose, _nested_select_game_widgets diff --git a/src/main_gui.cpp b/src/main_gui.cpp index 913aa5d64b..0444f84c6c 100644 --- a/src/main_gui.cpp +++ b/src/main_gui.cpp @@ -522,7 +522,7 @@ struct MainWindow : Window }; static WindowDesc _main_window_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_MAIN_WINDOW, WC_NONE, WindowDefaultFlag::NoClose, _nested_main_window_widgets, diff --git a/src/misc_gui.cpp b/src/misc_gui.cpp index 8317ff3c57..fc2a633b4f 100644 --- a/src/misc_gui.cpp +++ b/src/misc_gui.cpp @@ -58,7 +58,7 @@ static constexpr NWidgetPart _nested_land_info_widgets[] = { }; static WindowDesc _land_info_desc( - WDP_AUTO, nullptr, 0, 0, + WDP_AUTO, {}, 0, 0, WC_LAND_INFO, WC_NONE, {}, _nested_land_info_widgets @@ -336,7 +336,7 @@ static constexpr NWidgetPart _nested_about_widgets[] = { }; static WindowDesc _about_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_GAME_OPTIONS, WC_NONE, {}, _nested_about_widgets @@ -591,7 +591,7 @@ static constexpr NWidgetPart _nested_tooltips_widgets[] = { }; static WindowDesc _tool_tips_desc( - WDP_MANUAL, nullptr, 0, 0, // Coordinates and sizes are not used, + WDP_MANUAL, {}, 0, 0, // Coordinates and sizes are not used, WC_TOOLTIPS, WC_NONE, {WindowDefaultFlag::NoFocus, WindowDefaultFlag::NoClose}, _nested_tooltips_widgets @@ -991,7 +991,7 @@ static constexpr NWidgetPart _nested_query_string_widgets[] = { }; static WindowDesc _query_string_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_QUERY_STRING, WC_NONE, {}, _nested_query_string_widgets @@ -1130,7 +1130,7 @@ static constexpr NWidgetPart _nested_query_widgets[] = { }; static WindowDesc _query_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_CONFIRM_POPUP_QUERY, WC_NONE, WindowDefaultFlag::Modal, _nested_query_widgets diff --git a/src/music_gui.cpp b/src/music_gui.cpp index 1d237bcb28..6b1ac051fd 100644 --- a/src/music_gui.cpp +++ b/src/music_gui.cpp @@ -661,7 +661,7 @@ static constexpr NWidgetPart _nested_music_track_selection_widgets[] = { }; static WindowDesc _music_track_selection_desc( - WDP_AUTO, nullptr, 0, 0, + WDP_AUTO, {}, 0, 0, WC_MUSIC_TRACK_SELECTION, WC_NONE, {}, _nested_music_track_selection_widgets diff --git a/src/network/network_chat_gui.cpp b/src/network/network_chat_gui.cpp index b410c3577a..84fce1e53f 100644 --- a/src/network/network_chat_gui.cpp +++ b/src/network/network_chat_gui.cpp @@ -427,7 +427,7 @@ static constexpr NWidgetPart _nested_chat_window_widgets[] = { /** The description of the chat window. */ static WindowDesc _chat_window_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_SEND_NETWORK_MSG, WC_NONE, {}, _nested_chat_window_widgets diff --git a/src/network/network_content_gui.cpp b/src/network/network_content_gui.cpp index 522efedf7a..be629022a0 100644 --- a/src/network/network_content_gui.cpp +++ b/src/network/network_content_gui.cpp @@ -99,7 +99,7 @@ static constexpr NWidgetPart _nested_network_content_download_status_window_widg /** Window description for the download window */ static WindowDesc _network_content_download_status_window_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_NETWORK_STATUS_WINDOW, WC_NONE, WindowDefaultFlag::Modal, _nested_network_content_download_status_window_widgets diff --git a/src/network/network_gui.cpp b/src/network/network_gui.cpp index fdee4d1475..2527ba7c99 100644 --- a/src/network/network_gui.cpp +++ b/src/network/network_gui.cpp @@ -1203,7 +1203,7 @@ static constexpr NWidgetPart _nested_network_start_server_window_widgets[] = { }; static WindowDesc _network_start_server_window_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_NETWORK_WINDOW, WC_NONE, {}, _nested_network_start_server_window_widgets @@ -2159,7 +2159,7 @@ static constexpr NWidgetPart _nested_network_join_status_window_widgets[] = { }; static WindowDesc _network_join_status_window_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_NETWORK_STATUS_WINDOW, WC_NONE, WindowDefaultFlag::Modal, _nested_network_join_status_window_widgets @@ -2266,7 +2266,7 @@ static constexpr NWidgetPart _nested_network_ask_relay_widgets[] = { }; static WindowDesc _network_ask_relay_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_NETWORK_ASK_RELAY, WC_NONE, WindowDefaultFlag::Modal, _nested_network_ask_relay_widgets @@ -2364,7 +2364,7 @@ static constexpr NWidgetPart _nested_network_ask_survey_widgets[] = { }; static WindowDesc _network_ask_survey_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_NETWORK_ASK_SURVEY, WC_NONE, WindowDefaultFlag::Modal, _nested_network_ask_survey_widgets diff --git a/src/newgrf_gui.cpp b/src/newgrf_gui.cpp index 2296518438..ddd057ab1b 100644 --- a/src/newgrf_gui.cpp +++ b/src/newgrf_gui.cpp @@ -2152,7 +2152,7 @@ static constexpr NWidgetPart _nested_scan_progress_widgets[] = { /** Description of the widgets and other settings of the window. */ static WindowDesc _scan_progress_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_MODAL_PROGRESS, WC_NONE, {}, _nested_scan_progress_widgets diff --git a/src/news_gui.cpp b/src/news_gui.cpp index 8445579b74..0e85c551c1 100644 --- a/src/news_gui.cpp +++ b/src/news_gui.cpp @@ -127,7 +127,7 @@ static constexpr NWidgetPart _nested_normal_news_widgets[] = { }; static WindowDesc _normal_news_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_NEWS_WINDOW, WC_NONE, {}, _nested_normal_news_widgets @@ -175,7 +175,7 @@ static constexpr NWidgetPart _nested_vehicle_news_widgets[] = { }; static WindowDesc _vehicle_news_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_NEWS_WINDOW, WC_NONE, {}, _nested_vehicle_news_widgets @@ -220,7 +220,7 @@ static constexpr NWidgetPart _nested_company_news_widgets[] = { }; static WindowDesc _company_news_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_NEWS_WINDOW, WC_NONE, {}, _nested_company_news_widgets @@ -254,7 +254,7 @@ static constexpr NWidgetPart _nested_thin_news_widgets[] = { }; static WindowDesc _thin_news_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_NEWS_WINDOW, WC_NONE, {}, _nested_thin_news_widgets @@ -290,7 +290,7 @@ static constexpr NWidgetPart _nested_small_news_widgets[] = { }; static WindowDesc _small_news_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_NEWS_WINDOW, WC_NONE, {}, _nested_small_news_widgets diff --git a/src/osk_gui.cpp b/src/osk_gui.cpp index 585c267f9f..0e67c0a09e 100644 --- a/src/osk_gui.cpp +++ b/src/osk_gui.cpp @@ -339,7 +339,7 @@ static constexpr NWidgetPart _nested_osk_widgets[] = { }; static WindowDesc _osk_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_OSK, WC_NONE, {}, _nested_osk_widgets diff --git a/src/rail_gui.cpp b/src/rail_gui.cpp index 118e70442b..137e17ad8e 100644 --- a/src/rail_gui.cpp +++ b/src/rail_gui.cpp @@ -1697,7 +1697,7 @@ static constexpr NWidgetPart _nested_signal_builder_widgets[] = { /** Signal selection window description */ static WindowDesc _signal_builder_desc( - WDP_AUTO, nullptr, 0, 0, + WDP_AUTO, {}, 0, 0, WC_BUILD_SIGNAL, WC_BUILD_TOOLBAR, WindowDefaultFlag::Construction, _nested_signal_builder_widgets @@ -1778,7 +1778,7 @@ static constexpr NWidgetPart _nested_build_depot_widgets[] = { }; static WindowDesc _build_depot_desc( - WDP_AUTO, nullptr, 0, 0, + WDP_AUTO, {}, 0, 0, WC_BUILD_DEPOT, WC_BUILD_TOOLBAR, WindowDefaultFlag::Construction, _nested_build_depot_widgets diff --git a/src/road_gui.cpp b/src/road_gui.cpp index 904a4e35b0..67fb5d620b 100644 --- a/src/road_gui.cpp +++ b/src/road_gui.cpp @@ -1167,7 +1167,7 @@ static constexpr NWidgetPart _nested_build_road_depot_widgets[] = { }; static WindowDesc _build_road_depot_desc( - WDP_AUTO, nullptr, 0, 0, + WDP_AUTO, {}, 0, 0, WC_BUILD_DEPOT, WC_BUILD_TOOLBAR, WindowDefaultFlag::Construction, _nested_build_road_depot_widgets diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp index f0c6861a82..4f2c76fdc7 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp @@ -2149,7 +2149,7 @@ static constexpr NWidgetPart _nested_cust_currency_widgets[] = { }; static WindowDesc _cust_currency_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_CUSTOM_CURRENCY, WC_NONE, {}, _nested_cust_currency_widgets diff --git a/src/signs_gui.cpp b/src/signs_gui.cpp index 692211b028..687968150c 100644 --- a/src/signs_gui.cpp +++ b/src/signs_gui.cpp @@ -544,7 +544,7 @@ static constexpr NWidgetPart _nested_query_sign_edit_widgets[] = { }; static WindowDesc _query_sign_edit_desc( - WDP_CENTER, nullptr, 0, 0, + WDP_CENTER, {}, 0, 0, WC_QUERY_STRING, WC_NONE, WindowDefaultFlag::Construction, _nested_query_sign_edit_widgets diff --git a/src/statusbar_gui.cpp b/src/statusbar_gui.cpp index 2db43dc391..a146d8fceb 100644 --- a/src/statusbar_gui.cpp +++ b/src/statusbar_gui.cpp @@ -219,7 +219,7 @@ static constexpr NWidgetPart _nested_main_status_widgets[] = { }; static WindowDesc _main_status_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_STATUS_BAR, WC_NONE, {WindowDefaultFlag::NoFocus, WindowDefaultFlag::NoClose}, _nested_main_status_widgets diff --git a/src/tests/test_window_desc.cpp b/src/tests/test_window_desc.cpp index ce50dc41d1..af12075f3d 100644 --- a/src/tests/test_window_desc.cpp +++ b/src/tests/test_window_desc.cpp @@ -32,11 +32,11 @@ private: TEST_CASE("WindowDesc - ini_key uniqueness") { - std::set seen; + std::set seen; for (const WindowDesc *window_desc : *_window_descs) { - if (window_desc->ini_key == nullptr) continue; + if (window_desc->ini_key.empty()) continue; CAPTURE(window_desc->ini_key); CHECK((seen.find(window_desc->ini_key) == std::end(seen))); @@ -49,7 +49,7 @@ TEST_CASE("WindowDesc - ini_key validity") { const WindowDesc *window_desc = GENERATE(from_range(std::begin(*_window_descs), std::end(*_window_descs))); - bool has_inikey = window_desc->ini_key != nullptr; + bool has_inikey = !window_desc->ini_key.empty(); bool has_widget = std::any_of(std::begin(window_desc->nwid_parts), std::end(window_desc->nwid_parts), [](const NWidgetPart &part) { return part.type == WWT_DEFSIZEBOX || part.type == WWT_STICKYBOX; }); INFO(fmt::format("{}:{}", window_desc->source_location.file_name(), window_desc->source_location.line())); diff --git a/src/toolbar_gui.cpp b/src/toolbar_gui.cpp index 16a1949c12..4aecc3d4fe 100644 --- a/src/toolbar_gui.cpp +++ b/src/toolbar_gui.cpp @@ -2242,7 +2242,7 @@ static constexpr NWidgetPart _nested_toolbar_normal_widgets[] = { }; static WindowDesc _toolb_normal_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_MAIN_TOOLBAR, WC_NONE, {WindowDefaultFlag::NoFocus, WindowDefaultFlag::NoClose}, _nested_toolbar_normal_widgets, @@ -2585,7 +2585,7 @@ static constexpr NWidgetPart _nested_toolb_scen_widgets[] = { }; static WindowDesc _toolb_scen_desc( - WDP_MANUAL, nullptr, 0, 0, + WDP_MANUAL, {}, 0, 0, WC_MAIN_TOOLBAR, WC_NONE, {WindowDefaultFlag::NoFocus, WindowDefaultFlag::NoClose}, _nested_toolb_scen_widgets, diff --git a/src/window.cpp b/src/window.cpp index 6603d310cb..c1cd7f30cd 100644 --- a/src/window.cpp +++ b/src/window.cpp @@ -104,7 +104,7 @@ std::vector *_window_descs = nullptr; std::string _windows_file; /** Window description constructor. */ -WindowDesc::WindowDesc(WindowPosition def_pos, const char *ini_key, int16_t def_width_trad, int16_t def_height_trad, +WindowDesc::WindowDesc(WindowPosition def_pos, std::string_view ini_key, int16_t def_width_trad, int16_t def_height_trad, WindowClass window_class, WindowClass parent_class, WindowDefaultFlags flags, const std::span nwid_parts, HotkeyList *hotkeys, const std::source_location location) : @@ -156,7 +156,7 @@ void WindowDesc::LoadFromConfig() IniFile ini; ini.LoadFromDisk(_windows_file, NO_DIRECTORY); for (WindowDesc *wd : *_window_descs) { - if (wd->ini_key == nullptr) continue; + if (wd->ini_key.empty()) continue; IniLoadWindowSettings(ini, wd->ini_key, wd); } } @@ -166,8 +166,7 @@ void WindowDesc::LoadFromConfig() */ static bool DescSorter(WindowDesc * const &a, WindowDesc * const &b) { - if (a->ini_key != nullptr && b->ini_key != nullptr) return strcmp(a->ini_key, b->ini_key) < 0; - return a->ini_key != nullptr; + return a->ini_key < b->ini_key; } /** @@ -181,7 +180,7 @@ void WindowDesc::SaveToConfig() IniFile ini; ini.LoadFromDisk(_windows_file, NO_DIRECTORY); for (WindowDesc *wd : *_window_descs) { - if (wd->ini_key == nullptr) continue; + if (wd->ini_key.empty()) continue; IniSaveWindowSettings(ini, wd->ini_key, wd); } ini.SaveToDisk(_windows_file); diff --git a/src/window_gui.h b/src/window_gui.h index 1de43573d2..35289253b7 100644 --- a/src/window_gui.h +++ b/src/window_gui.h @@ -166,7 +166,7 @@ struct HotkeyList; */ struct WindowDesc { - WindowDesc(WindowPosition default_pos, const char *ini_key, int16_t def_width_trad, int16_t def_height_trad, + WindowDesc(WindowPosition default_pos, std::string_view ini_key, int16_t def_width_trad, int16_t def_height_trad, WindowClass window_class, WindowClass parent_class, WindowDefaultFlags flags, const std::span nwid_parts, HotkeyList *hotkeys = nullptr, const std::source_location location = std::source_location::current()); @@ -177,7 +177,7 @@ struct WindowDesc { const WindowPosition default_pos; ///< Preferred position of the window. @see WindowPosition() const WindowClass cls; ///< Class of the window, @see WindowClass. const WindowClass parent_cls; ///< Class of the parent window. @see WindowClass - const char *ini_key; ///< Key to store window defaults in openttd.cfg. \c nullptr if nothing shall be stored. + const std::string_view ini_key; ///< Key to store window defaults in openttd.cfg. An empty string if nothing shall be stored. const WindowDefaultFlags flags; ///< Flags. @see WindowDefaultFlag const std::span nwid_parts; ///< Span of nested widget parts describing the window. const HotkeyList *hotkeys; ///< Hotkeys for the window.