diff --git a/src/openrct2-ui/WindowManager.cpp b/src/openrct2-ui/WindowManager.cpp index c298259416..cdb28e9881 100644 --- a/src/openrct2-ui/WindowManager.cpp +++ b/src/openrct2-ui/WindowManager.cpp @@ -53,6 +53,8 @@ public: return window_debug_paint_open(); case WC_EDITOR_INVENTION_LIST: return window_editor_inventions_list_open(); + case WC_EDITOR_OBJECT_SELECTION: + return window_editor_object_selection_open(); case WC_EDTIOR_OBJECTIVE_OPTIONS: return window_editor_objective_options_open(); case WC_EDITOR_SCENARIO_OPTIONS: diff --git a/src/openrct2/windows/EditorObjectSelection.cpp b/src/openrct2-ui/windows/EditorObjectSelection.cpp similarity index 98% rename from src/openrct2/windows/EditorObjectSelection.cpp rename to src/openrct2-ui/windows/EditorObjectSelection.cpp index 039d62a557..e0ca0b1c06 100644 --- a/src/openrct2/windows/EditorObjectSelection.cpp +++ b/src/openrct2-ui/windows/EditorObjectSelection.cpp @@ -14,29 +14,32 @@ *****************************************************************************/ #pragma endregion -#include "../config/Config.h" -#include "../Context.h" -#include "../object/ObjectManager.h" -#include "../object/ObjectRepository.h" -#include "../OpenRCT2.h" -#include "../core/Util.hpp" -#include "../core/Memory.hpp" +#include #include -#include "../audio/audio.h" -#include "../Game.h" -#include "../Editor.h" -#include "../interface/widget.h" -#include "../localisation/localisation.h" -#include "../object_list.h" -#include "../ride/ride_data.h" -#include "../ride/RideGroupManager.h" -#include "../sprites.h" -#include "../util/util.h" -#include "../world/LargeScenery.h" -#include "../windows/Intent.h" -#include "_legacy.h" -#include "dropdown.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include enum { FILTER_RCT2 = (1 << 0), @@ -391,16 +394,16 @@ static void visible_list_refresh(rct_window *w) * * rct2: 0x006AA64E */ -void window_editor_object_selection_open() +rct_window * window_editor_object_selection_open() { rct_window* window; window = window_bring_to_front_by_class(WC_EDITOR_OBJECT_SELECTION); if (window != nullptr) - return; + return window; if (!sub_6AB211()) - return; + return nullptr; reset_selected_object_count_and_size(); window = window_create_centred( @@ -440,6 +443,8 @@ void window_editor_object_selection_open() window->max_height = 1000; visible_list_refresh(window); + + return window; } /** diff --git a/src/openrct2-ui/windows/TopToolbar.cpp b/src/openrct2-ui/windows/TopToolbar.cpp index 693b218fa6..629952634a 100644 --- a/src/openrct2-ui/windows/TopToolbar.cpp +++ b/src/openrct2-ui/windows/TopToolbar.cpp @@ -3106,7 +3106,7 @@ static void top_toolbar_debug_menu_dropdown(sint16 dropdownIndex) break; case DDIDX_OBJECT_SELECTION: window_close_all(); - window_editor_object_selection_open(); + context_open_window(WC_EDITOR_OBJECT_SELECTION); break; case DDIDX_INVENTIONS_LIST: context_open_window(WC_EDITOR_INVENTION_LIST); diff --git a/src/openrct2-ui/windows/Window.h b/src/openrct2-ui/windows/Window.h index d21e0ba286..d2b57452bd 100644 --- a/src/openrct2-ui/windows/Window.h +++ b/src/openrct2-ui/windows/Window.h @@ -159,3 +159,5 @@ rct_window * window_tile_inspector_open(); void window_tile_inspector_clear_clipboard(); void window_tile_inspector_set_page(rct_window *w, tile_inspector_page page); void window_tile_inspector_auto_set_buttons(rct_window *w); + +rct_window * window_editor_object_selection_open(); diff --git a/src/openrct2/Editor.cpp b/src/openrct2/Editor.cpp index 239728d9ba..2a1b6c84d7 100644 --- a/src/openrct2/Editor.cpp +++ b/src/openrct2/Editor.cpp @@ -32,7 +32,7 @@ #include "util/util.h" #include "windows/Intent.h" #include "world/Climate.h" - +#include "object/ObjectRepository.h" namespace Editor { @@ -409,7 +409,7 @@ namespace Editor object_manager_unload_all_objects(); } - window_editor_object_selection_open(); + context_open_window(WC_EDITOR_OBJECT_SELECTION); break; case EDITOR_STEP_INVENTIONS_LIST_SET_UP: if (window_find_by_class(WC_EDITOR_INVENTION_LIST)) diff --git a/src/openrct2/interface/console.c b/src/openrct2/interface/console.c index 7275f266ee..3926d424d6 100644 --- a/src/openrct2/interface/console.c +++ b/src/openrct2/interface/console.c @@ -1221,7 +1221,7 @@ static sint32 cc_open(const utf8 **argv, sint32 argc) { if (strcmp(argv[0], "object_selection") == 0 && invalidArguments(&invalidTitle, !title)) { // Only this window should be open for safety reasons window_close_all(); - window_editor_object_selection_open(); + context_open_window(WC_EDITOR_OBJECT_SELECTION); } else if (strcmp(argv[0], "inventions_list") == 0 && invalidArguments(&invalidTitle, !title)) { context_open_window(WC_EDITOR_INVENTION_LIST); } else if (strcmp(argv[0], "scenario_options") == 0 && invalidArguments(&invalidTitle, !title)) { diff --git a/src/openrct2/interface/window.h b/src/openrct2/interface/window.h index 03efe9ae9f..a1817569ce 100644 --- a/src/openrct2/interface/window.h +++ b/src/openrct2/interface/window.h @@ -720,8 +720,6 @@ void ride_construction_toolupdate_entrance_exit(sint32 screenX, sint32 screenY); void ride_construction_toolupdate_construct(sint32 screenX, sint32 screenY); void ride_construction_tooldown_construct(sint32 screenX, sint32 screenY); -void window_editor_object_selection_open(); - void window_bubble_list_item(rct_window* w, sint32 item_position); void window_align_tabs( rct_window *w, rct_widgetindex start_tab_id, rct_widgetindex end_tab_id );