diff --git a/src/openrct2-ui/interface/Window.cpp b/src/openrct2-ui/interface/Window.cpp index 03c7c07250..9aff137c9e 100644 --- a/src/openrct2-ui/interface/Window.cpp +++ b/src/openrct2-ui/interface/Window.cpp @@ -310,23 +310,23 @@ rct_window* WindowCreateCentred( return WindowCreate(pos, width, height, event_handlers, cls, flags); } -static int32_t WindowGetWidgetIndex(rct_window* w, rct_widget* widget) +static int32_t WindowGetWidgetIndex(const rct_window& w, rct_widget* widget) { int32_t i = 0; - for (rct_widget* widget2 = w->widgets; widget2->type != WindowWidgetType::Last; widget2++, i++) + for (rct_widget* widget2 = w.widgets; widget2->type != WindowWidgetType::Last; widget2++, i++) if (widget == widget2) return i; return -1; } -static int32_t WindowGetScrollIndex(rct_window* w, int32_t targetWidgetIndex) +static int32_t WindowGetScrollIndex(const rct_window& w, int32_t targetWidgetIndex) { - if (w->widgets[targetWidgetIndex].type != WindowWidgetType::Scroll) + if (w.widgets[targetWidgetIndex].type != WindowWidgetType::Scroll) return -1; int32_t scrollIndex = 0; rct_widgetindex widgetIndex = 0; - for (rct_widget* widget = w->widgets; widget->type != WindowWidgetType::Last; widget++, widgetIndex++) + for (rct_widget* widget = w.widgets; widget->type != WindowWidgetType::Last; widget++, widgetIndex++) { if (widgetIndex == targetWidgetIndex) break; @@ -337,9 +337,9 @@ static int32_t WindowGetScrollIndex(rct_window* w, int32_t targetWidgetIndex) return scrollIndex; } -static rct_widget* WindowGetScrollWidget(rct_window* w, int32_t scrollIndex) +static rct_widget* WindowGetScrollWidget(const rct_window& w, int32_t scrollIndex) { - for (rct_widget* widget = w->widgets; widget->type != WindowWidgetType::Last; widget++) + for (rct_widget* widget = w.widgets; widget->type != WindowWidgetType::Last; widget++) { if (widget->type != WindowWidgetType::Scroll) continue; @@ -356,9 +356,9 @@ static rct_widget* WindowGetScrollWidget(rct_window* w, int32_t scrollIndex) * * rct2: 0x006E78E3 */ -static void WindowScrollWheelInput(rct_window* w, int32_t scrollIndex, int32_t wheel) +static void WindowScrollWheelInput(rct_window& w, int32_t scrollIndex, int32_t wheel) { - auto& scroll = w->scrolls[scrollIndex]; + auto& scroll = w.scrolls[scrollIndex]; rct_widget* widget = WindowGetScrollWidget(w, scrollIndex); rct_widgetindex widgetIndex = WindowGetWidgetIndex(w, widget); @@ -379,24 +379,24 @@ static void WindowScrollWheelInput(rct_window* w, int32_t scrollIndex, int32_t w scroll.h_left = std::min(std::max(0, scroll.h_left + wheel), size); } - WidgetScrollUpdateThumbs(w, widgetIndex); - widget_invalidate(w, widgetIndex); + WidgetScrollUpdateThumbs(&w, widgetIndex); + widget_invalidate(&w, widgetIndex); } /** * * rct2: 0x006E793B */ -static int32_t WindowWheelInput(rct_window* w, int32_t wheel) +static int32_t WindowWheelInput(rct_window& w, int32_t wheel) { int32_t i = 0; - for (rct_widget* widget = w->widgets; widget->type != WindowWidgetType::Last; widget++) + for (rct_widget* widget = w.widgets; widget->type != WindowWidgetType::Last; widget++) { if (widget->type != WindowWidgetType::Scroll) continue; // Originally always checked first scroll view, bug maybe? - const auto& scroll = w->scrolls[i]; + const auto& scroll = w.scrolls[i]; if (scroll.flags & (HSCROLLBAR_VISIBLE | VSCROLLBAR_VISIBLE)) { WindowScrollWheelInput(w, i, wheel); @@ -412,24 +412,24 @@ static int32_t WindowWheelInput(rct_window* w, int32_t wheel) * * rct2: 0x006E79FB */ -static void WindowViewportWheelInput(rct_window* w, int32_t wheel) +static void WindowViewportWheelInput(rct_window& w, int32_t wheel) { if (gScreenFlags & (SCREEN_FLAGS_TRACK_MANAGER | SCREEN_FLAGS_TITLE_DEMO)) return; if (wheel < 0) - window_zoom_in(w, true); + window_zoom_in(&w, true); else if (wheel > 0) - window_zoom_out(w, true); + window_zoom_out(&w, true); } -static bool WindowOtherWheelInput(rct_window* w, rct_widgetindex widgetIndex, int32_t wheel) +static bool WindowOtherWheelInput(rct_window& w, rct_widgetindex widgetIndex, int32_t wheel) { // HACK: Until we have a new window system that allows us to add new events like mouse wheel easily, // this selective approach will have to do. // Allow mouse wheel scrolling to increment or decrement the land tool size for various windows - auto widgetType = w->widgets[widgetIndex].type; + auto widgetType = w.widgets[widgetIndex].type; // Lower widgetIndex once or twice we got a type that matches, to allow scrolling on the increase/decrease buttons too int32_t attempts = 0; @@ -443,7 +443,7 @@ static bool WindowOtherWheelInput(rct_window* w, rct_widgetindex widgetIndex, in if (attempts > 0) { // Verify that the previous button was of the same type - auto previousType = w->widgets[widgetIndex + 1].type; + auto previousType = w.widgets[widgetIndex + 1].type; if (previousType != widgetType) { return false; @@ -464,7 +464,7 @@ static bool WindowOtherWheelInput(rct_window* w, rct_widgetindex widgetIndex, in } widgetIndex--; - widgetType = w->widgets[widgetIndex].type; + widgetType = w.widgets[widgetIndex].type; } rct_widgetindex buttonWidgetIndex; @@ -488,22 +488,22 @@ static bool WindowOtherWheelInput(rct_window* w, rct_widgetindex widgetIndex, in return false; } - if (WidgetIsDisabled(w, buttonWidgetIndex)) + if (WidgetIsDisabled(&w, buttonWidgetIndex)) { return false; } - auto button1Type = w->widgets[widgetIndex + 1].type; - auto button1Image = w->widgets[widgetIndex + 1].image; - auto button2Type = w->widgets[widgetIndex + 2].type; - auto button2Image = w->widgets[widgetIndex + 2].image; + auto button1Type = w.widgets[widgetIndex + 1].type; + auto button1Image = w.widgets[widgetIndex + 1].image; + auto button2Type = w.widgets[widgetIndex + 2].type; + auto button2Image = w.widgets[widgetIndex + 2].image; if (button1Type != expectedType || button2Type != expectedType || button1Image != expectedContent[0] || button2Image != expectedContent[1]) { return false; } - window_event_mouse_down_call(w, buttonWidgetIndex); + window_event_mouse_down_call(&w, buttonWidgetIndex); return true; } @@ -532,7 +532,7 @@ void WindowAllWheelInput() // Check if main window if (w->classification == WC_MAIN_WINDOW || w->classification == WC_VIEWPORT) { - WindowViewportWheelInput(w, relative_wheel); + WindowViewportWheelInput(*w, relative_wheel); return; } @@ -543,24 +543,24 @@ void WindowAllWheelInput() const auto& widget = w->widgets[widgetIndex]; if (widget.type == WindowWidgetType::Scroll) { - int32_t scrollIndex = WindowGetScrollIndex(w, widgetIndex); + int32_t scrollIndex = WindowGetScrollIndex(*w, widgetIndex); const auto& scroll = w->scrolls[scrollIndex]; if (scroll.flags & (HSCROLLBAR_VISIBLE | VSCROLLBAR_VISIBLE)) { - WindowScrollWheelInput(w, WindowGetScrollIndex(w, widgetIndex), pixel_scroll); + WindowScrollWheelInput(*w, WindowGetScrollIndex(*w, widgetIndex), pixel_scroll); return; } } else { - if (WindowOtherWheelInput(w, widgetIndex, pixel_scroll)) + if (WindowOtherWheelInput(*w, widgetIndex, pixel_scroll)) { return; } } // Check other scroll views on window - if (WindowWheelInput(w, pixel_scroll)) + if (WindowWheelInput(*w, pixel_scroll)) return; } } @@ -576,7 +576,7 @@ void ApplyScreenSaverLockSetting() * Initialises scroll widgets to their virtual size. * rct2: 0x006EAEB8 */ -void WindowInitScrollWidgets(rct_window* w) +void WindowInitScrollWidgets(rct_window& w) { rct_widget* widget; int32_t widget_index, scroll_index; @@ -584,7 +584,7 @@ void WindowInitScrollWidgets(rct_window* w) widget_index = 0; scroll_index = 0; - for (widget = w->widgets; widget->type != WindowWidgetType::Last; widget++) + for (widget = w.widgets; widget->type != WindowWidgetType::Last; widget++) { if (widget->type != WindowWidgetType::Scroll) { @@ -592,11 +592,11 @@ void WindowInitScrollWidgets(rct_window* w) continue; } - auto& scroll = w->scrolls[scroll_index]; + auto& scroll = w.scrolls[scroll_index]; scroll.flags = 0; width = 0; height = 0; - window_get_scroll_size(w, scroll_index, &width, &height); + window_get_scroll_size(&w, scroll_index, &width, &height); scroll.h_left = 0; scroll.h_right = width + 1; scroll.v_top = 0; @@ -607,7 +607,7 @@ void WindowInitScrollWidgets(rct_window* w) if (widget->content & SCROLL_VERTICAL) scroll.flags |= VSCROLLBAR_VISIBLE; - WidgetScrollUpdateThumbs(w, widget_index); + WidgetScrollUpdateThumbs(&w, widget_index); widget_index++; scroll_index++; @@ -618,31 +618,31 @@ void WindowInitScrollWidgets(rct_window* w) * * rct2: 0x006EB15C */ -void WindowDrawWidgets(rct_window* w, rct_drawpixelinfo* dpi) +void WindowDrawWidgets(rct_window& w, rct_drawpixelinfo* dpi) { rct_widget* widget; rct_widgetindex widgetIndex; - if ((w->flags & WF_TRANSPARENT) && !(w->flags & WF_NO_BACKGROUND)) + if ((w.flags & WF_TRANSPARENT) && !(w.flags & WF_NO_BACKGROUND)) gfx_filter_rect( - dpi, { w->windowPos, w->windowPos + ScreenCoordsXY{ w->width - 1, w->height - 1 } }, FilterPaletteID::Palette51); + dpi, { w.windowPos, w.windowPos + ScreenCoordsXY{ w.width - 1, w.height - 1 } }, FilterPaletteID::Palette51); // todo: some code missing here? Between 006EB18C and 006EB260 widgetIndex = 0; - for (widget = w->widgets; widget->type != WindowWidgetType::Last; widget++) + for (widget = w.widgets; widget->type != WindowWidgetType::Last; widget++) { if (widget->IsVisible()) { // Check if widget is outside the draw region - if (w->windowPos.x + widget->left < dpi->x + dpi->width && w->windowPos.x + widget->right >= dpi->x) + if (w.windowPos.x + widget->left < dpi->x + dpi->width && w.windowPos.x + widget->right >= dpi->x) { - if (w->windowPos.y + widget->top < dpi->y + dpi->height && w->windowPos.y + widget->bottom >= dpi->y) + if (w.windowPos.y + widget->top < dpi->y + dpi->height && w.windowPos.y + widget->bottom >= dpi->y) { - if (w->IsLegacy()) - WidgetDraw(dpi, w, widgetIndex); + if (w.IsLegacy()) + WidgetDraw(dpi, &w, widgetIndex); else - w->OnDrawWidget(widgetIndex, *dpi); + w.OnDrawWidget(widgetIndex, *dpi); } } } @@ -651,10 +651,10 @@ void WindowDrawWidgets(rct_window* w, rct_drawpixelinfo* dpi) // todo: something missing here too? Between 006EC32B and 006EC369 - if (w->flags & WF_WHITE_BORDER_MASK) + if (w.flags & WF_WHITE_BORDER_MASK) { gfx_fill_rect_inset( - dpi, { w->windowPos, w->windowPos + ScreenCoordsXY{ w->width - 1, w->height - 1 } }, COLOUR_WHITE, + dpi, { w.windowPos, w.windowPos + ScreenCoordsXY{ w.width - 1, w.height - 1 } }, COLOUR_WHITE, INSET_RECT_FLAG_FILL_NONE); } } @@ -663,19 +663,19 @@ void WindowDrawWidgets(rct_window* w, rct_drawpixelinfo* dpi) * * rct2: 0x006EA776 */ -static void WindowInvalidatePressedImageButton(rct_window* w) +static void WindowInvalidatePressedImageButton(const rct_window& w) { rct_widgetindex widgetIndex; rct_widget* widget; widgetIndex = 0; - for (widget = w->widgets; widget->type != WindowWidgetType::Last; widget++, widgetIndex++) + for (widget = w.widgets; widget->type != WindowWidgetType::Last; widget++, widgetIndex++) { if (widget->type != WindowWidgetType::ImgBtn) continue; - if (WidgetIsPressed(w, widgetIndex) || WidgetIsActiveTool(w, widgetIndex)) - gfx_set_dirty_blocks({ w->windowPos, w->windowPos + ScreenCoordsXY{ w->width, w->height } }); + if (WidgetIsPressed(&w, widgetIndex) || WidgetIsActiveTool(&w, widgetIndex)) + gfx_set_dirty_blocks({ w.windowPos, w.windowPos + ScreenCoordsXY{ w.width, w.height } }); } } @@ -687,7 +687,7 @@ void InvalidateAllWindowsAfterInput() { window_visit_each([](rct_window* w) { window_update_scroll_widgets(w); - WindowInvalidatePressedImageButton(w); + WindowInvalidatePressedImageButton(*w); window_event_resize_call(w); }); } @@ -699,7 +699,7 @@ bool Window::IsLegacy() void Window::OnDraw(rct_drawpixelinfo& dpi) { - WindowDrawWidgets(this, &dpi); + WindowDrawWidgets(*this, &dpi); } void Window::OnDrawWidget(rct_widgetindex widgetIndex, rct_drawpixelinfo& dpi) @@ -709,7 +709,7 @@ void Window::OnDrawWidget(rct_widgetindex widgetIndex, rct_drawpixelinfo& dpi) void Window::InitScrollWidgets() { - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); } void Window::InvalidateWidget(rct_widgetindex widgetIndex) @@ -744,7 +744,7 @@ void Window::SetCheckboxValue(rct_widgetindex widgetIndex, bool value) void Window::DrawWidgets(rct_drawpixelinfo& dpi) { - WindowDrawWidgets(this, &dpi); + WindowDrawWidgets(*this, &dpi); } void Window::Close() diff --git a/src/openrct2-ui/scripting/CustomListView.cpp b/src/openrct2-ui/scripting/CustomListView.cpp index 97274c4d30..eb11890117 100644 --- a/src/openrct2-ui/scripting/CustomListView.cpp +++ b/src/openrct2-ui/scripting/CustomListView.cpp @@ -237,7 +237,7 @@ void CustomListView::SetScrollbars(ScrollbarType value, bool initialising) else widget->content = 0; } - WindowInitScrollWidgets(ParentWindow); + WindowInitScrollWidgets(*ParentWindow); Invalidate(); } } diff --git a/src/openrct2-ui/scripting/CustomWindow.cpp b/src/openrct2-ui/scripting/CustomWindow.cpp index 739072f9ad..fbf0a98c39 100644 --- a/src/openrct2-ui/scripting/CustomWindow.cpp +++ b/src/openrct2-ui/scripting/CustomWindow.cpp @@ -531,7 +531,7 @@ namespace OpenRCT2::Ui::Windows void OnDraw(rct_drawpixelinfo& dpi) override { - WindowDrawWidgets(this, &dpi); + WindowDrawWidgets(*this, &dpi); DrawTabImages(dpi); if (viewport != nullptr) { @@ -829,7 +829,7 @@ namespace OpenRCT2::Ui::Windows Invalidate(); window_event_resize_call(this); window_event_invalidate_call(this); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); Invalidate(); InvokeEventHandler(info.Owner, info.Desc.OnTabChange); @@ -950,7 +950,7 @@ namespace OpenRCT2::Ui::Windows widgetList.push_back(WIDGETS_END); widgets = widgetList.data(); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); UpdateViewport(); } diff --git a/src/openrct2-ui/windows/About.cpp b/src/openrct2-ui/windows/About.cpp index 0aab0f7803..7d2366a465 100644 --- a/src/openrct2-ui/windows/About.cpp +++ b/src/openrct2-ui/windows/About.cpp @@ -94,7 +94,7 @@ public: { widgets = _windowAboutOpenRCT2Widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); SetPage(WINDOW_ABOUT_PAGE_OPENRCT2); } @@ -171,7 +171,7 @@ private: widgets = _windowAboutPageWidgets[p]; pressed_widgets |= (p == WINDOW_ABOUT_PAGE_RCT2) ? (1ULL << WIDX_TAB_ABOUT_RCT2) : (1ULL << WIDX_TAB_ABOUT_OPENRCT2); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); Invalidate(); } diff --git a/src/openrct2-ui/windows/Banner.cpp b/src/openrct2-ui/windows/Banner.cpp index 2b577c8d9a..55634603fc 100644 --- a/src/openrct2-ui/windows/Banner.cpp +++ b/src/openrct2-ui/windows/Banner.cpp @@ -126,7 +126,7 @@ public: void OnOpen() override { widgets = window_banner_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); } void Initialise(rct_windownumber _number) diff --git a/src/openrct2-ui/windows/Changelog.cpp b/src/openrct2-ui/windows/Changelog.cpp index f95c09df9e..80a02dee82 100644 --- a/src/openrct2-ui/windows/Changelog.cpp +++ b/src/openrct2-ui/windows/Changelog.cpp @@ -111,7 +111,7 @@ public: { widgets = _windowChangelogWidgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); min_width = MIN_WW; min_height = MIN_WH; max_width = MIN_WW; diff --git a/src/openrct2-ui/windows/Cheats.cpp b/src/openrct2-ui/windows/Cheats.cpp index 8b7c5cc119..6024725715 100644 --- a/src/openrct2-ui/windows/Cheats.cpp +++ b/src/openrct2-ui/windows/Cheats.cpp @@ -430,7 +430,7 @@ public: if (widgets != targetWidgets) { widgets = targetWidgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); } pressed_widgets = 0; diff --git a/src/openrct2-ui/windows/ClearScenery.cpp b/src/openrct2-ui/windows/ClearScenery.cpp index b436af3ff5..48b10fa580 100644 --- a/src/openrct2-ui/windows/ClearScenery.cpp +++ b/src/openrct2-ui/windows/ClearScenery.cpp @@ -65,7 +65,7 @@ public: { widgets = window_clear_scenery_widgets; hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); window_push_others_below(this); gLandToolSize = 2; diff --git a/src/openrct2-ui/windows/CustomCurrency.cpp b/src/openrct2-ui/windows/CustomCurrency.cpp index 4c9c55b279..5786424a84 100644 --- a/src/openrct2-ui/windows/CustomCurrency.cpp +++ b/src/openrct2-ui/windows/CustomCurrency.cpp @@ -53,7 +53,7 @@ public: { widgets = window_custom_currency_widgets; hold_down_widgets = (1ULL << WIDX_RATE_UP) | (1ULL << WIDX_RATE_DOWN); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); colours[0] = COLOUR_LIGHT_BROWN; colours[1] = COLOUR_LIGHT_BROWN; colours[2] = COLOUR_LIGHT_BROWN; diff --git a/src/openrct2-ui/windows/DemolishRidePrompt.cpp b/src/openrct2-ui/windows/DemolishRidePrompt.cpp index 7068f5e823..f436c0eede 100644 --- a/src/openrct2-ui/windows/DemolishRidePrompt.cpp +++ b/src/openrct2-ui/windows/DemolishRidePrompt.cpp @@ -53,7 +53,7 @@ public: void OnOpen() override { widgets = window_ride_demolish_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); } void OnMouseUp(rct_widgetindex widgetIndex) override @@ -75,7 +75,7 @@ public: void OnDraw(rct_drawpixelinfo& dpi) override { - WindowDrawWidgets(this, &dpi); + WindowDrawWidgets(*this, &dpi); auto currentRide = get_ride(rideId); if (currentRide != nullptr) diff --git a/src/openrct2-ui/windows/EditorObjectSelection.cpp b/src/openrct2-ui/windows/EditorObjectSelection.cpp index edf5845adf..a4250151c9 100644 --- a/src/openrct2-ui/windows/EditorObjectSelection.cpp +++ b/src/openrct2-ui/windows/EditorObjectSelection.cpp @@ -272,7 +272,7 @@ public: _filter_flags = gConfigInterface.object_selection_filter_flags; std::fill_n(_filter_string, sizeof(_filter_string), 0x00); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); selected_tab = 0; selected_list_item = -1; diff --git a/src/openrct2-ui/windows/EditorObjectiveOptions.cpp b/src/openrct2-ui/windows/EditorObjectiveOptions.cpp index e21ca36609..311f8e70b6 100644 --- a/src/openrct2-ui/windows/EditorObjectiveOptions.cpp +++ b/src/openrct2-ui/windows/EditorObjectiveOptions.cpp @@ -206,7 +206,7 @@ rct_window* WindowEditorObjectiveOptionsOpen() w->widgets = window_editor_objective_options_main_widgets; w->pressed_widgets = 0; w->hold_down_widgets = window_editor_objective_options_page_hold_down_widgets[WINDOW_EDITOR_OBJECTIVE_OPTIONS_PAGE_MAIN]; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->selected_tab = WINDOW_EDITOR_OBJECTIVE_OPTIONS_PAGE_MAIN; w->no_list_items = 0; w->selected_list_item = -1; @@ -281,7 +281,7 @@ static void WindowEditorObjectiveOptionsSetPage(rct_window* w, int32_t page) WindowEditorObjectiveOptionsUpdateDisabledWidgets(w); window_event_resize_call(w); window_event_invalidate_call(w); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->Invalidate(); } @@ -717,7 +717,7 @@ static void WindowEditorObjectiveOptionsMainInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowEditorObjectiveOptionsSetPressedTab(w); @@ -772,7 +772,7 @@ static void WindowEditorObjectiveOptionsMainPaint(rct_window* w, rct_drawpixelin int32_t width; rct_string_id stringId; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowEditorObjectiveOptionsDrawTabImages(w, dpi); // Objective label @@ -1026,7 +1026,7 @@ static void WindowEditorObjectiveOptionsRidesInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowEditorObjectiveOptionsSetPressedTab(w); @@ -1044,7 +1044,7 @@ static void WindowEditorObjectiveOptionsRidesInvalidate(rct_window* w) */ static void WindowEditorObjectiveOptionsRidesPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowEditorObjectiveOptionsDrawTabImages(w, dpi); DrawTextBasic( diff --git a/src/openrct2-ui/windows/EditorScenarioOptions.cpp b/src/openrct2-ui/windows/EditorScenarioOptions.cpp index af44adfd46..ad6ee88b11 100644 --- a/src/openrct2-ui/windows/EditorScenarioOptions.cpp +++ b/src/openrct2-ui/windows/EditorScenarioOptions.cpp @@ -289,7 +289,7 @@ rct_window* WindowEditorScenarioOptionsOpen() 280, 148, window_editor_scenario_options_page_events[0], WC_EDITOR_SCENARIO_OPTIONS, WF_NO_SCROLLING); w->widgets = window_editor_scenario_options_widgets[0]; w->hold_down_widgets = window_editor_scenario_options_page_hold_down_widgets[0]; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->page = 0; return w; @@ -363,7 +363,7 @@ static void WindowEditorScenarioOptionsSetPage(rct_window* w, int32_t page) w->Invalidate(); window_event_resize_call(w); window_event_invalidate_call(w); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->Invalidate(); } @@ -568,7 +568,7 @@ static void WindowEditorScenarioOptionsFinancialInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowEditorScenarioOptionsSetPressedTab(w); @@ -616,7 +616,7 @@ static void WindowEditorScenarioOptionsFinancialPaint(rct_window* w, rct_drawpix { ScreenCoordsXY screenCoords{}; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowEditorScenarioOptionsDrawTabImages(w, dpi); const auto& initialCashWidget = w->widgets[WIDX_INITIAL_CASH]; @@ -855,7 +855,7 @@ static void WindowEditorScenarioOptionsGuestsInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowEditorScenarioOptionsSetPressedTab(w); @@ -899,7 +899,7 @@ static void WindowEditorScenarioOptionsGuestsPaint(rct_window* w, rct_drawpixeli { ScreenCoordsXY screenCoords{}; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowEditorScenarioOptionsDrawTabImages(w, dpi); const auto& cashPerGuestWidget = w->widgets[WIDX_CASH_PER_GUEST]; @@ -1190,7 +1190,7 @@ static void WindowEditorScenarioOptionsParkInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowEditorScenarioOptionsSetPressedTab(w); @@ -1260,7 +1260,7 @@ static void WindowEditorScenarioOptionsParkPaint(rct_window* w, rct_drawpixelinf { ScreenCoordsXY screenCoords{}; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowEditorScenarioOptionsDrawTabImages(w, dpi); const auto& landCostWidget = w->widgets[WIDX_LAND_COST]; diff --git a/src/openrct2-ui/windows/Finances.cpp b/src/openrct2-ui/windows/Finances.cpp index fb9fa4126f..d29855a42f 100644 --- a/src/openrct2-ui/windows/Finances.cpp +++ b/src/openrct2-ui/windows/Finances.cpp @@ -296,7 +296,7 @@ public: if (widgets != targetWidgets) { widgets = targetWidgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); } for (auto i = 0; i < WINDOW_FINANCES_PAGE_COUNT; i++) @@ -464,7 +464,7 @@ public: window_event_resize_call(this); window_event_invalidate_call(this); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); // Scroll summary all the way to the right, initially. if (p == WINDOW_FINANCES_PAGE_SUMMARY) diff --git a/src/openrct2-ui/windows/Footpath.cpp b/src/openrct2-ui/windows/Footpath.cpp index 4918cd2640..9e7d0b6c00 100644 --- a/src/openrct2-ui/windows/Footpath.cpp +++ b/src/openrct2-ui/windows/Footpath.cpp @@ -207,7 +207,7 @@ rct_window* WindowFootpathOpen() window = WindowCreate(ScreenCoordsXY(0, 29), WW, WH, &window_footpath_events, WC_FOOTPATH, 0); window->widgets = window_footpath_widgets; - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); window_push_others_right(window); show_gridlines(); @@ -636,7 +636,7 @@ static void WindowFootpathDrawDropdownButtons(rct_window* w, rct_drawpixelinfo* static void WindowFootpathPaint(rct_window* w, rct_drawpixelinfo* dpi) { ScreenCoordsXY screenCoords; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowFootpathDrawDropdownButtons(w, dpi); if (!WidgetIsDisabled(w, WIDX_CONSTRUCT)) diff --git a/src/openrct2-ui/windows/GameBottomToolbar.cpp b/src/openrct2-ui/windows/GameBottomToolbar.cpp index b67fd8420b..a7e35f95a5 100644 --- a/src/openrct2-ui/windows/GameBottomToolbar.cpp +++ b/src/openrct2-ui/windows/GameBottomToolbar.cpp @@ -120,7 +120,7 @@ rct_window* WindowGameBottomToolbarOpen() window->widgets = window_game_bottom_toolbar_widgets; window->frame_no = 0; - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); // Reset the middle widget to not show by default. // If it is required to be shown news_update will reshow it. @@ -370,7 +370,7 @@ static void WindowGameBottomToolbarPaint(rct_window* w, rct_drawpixelinfo* dpi) gfx_filter_rect(dpi, { leftTop, rightBottom }, FilterPaletteID::Palette51); } - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowGameBottomToolbarDrawLeftPanel(dpi, w); WindowGameBottomToolbarDrawRightPanel(dpi, w); diff --git a/src/openrct2-ui/windows/GuestList.cpp b/src/openrct2-ui/windows/GuestList.cpp index 4b59598ae8..07e03449c3 100644 --- a/src/openrct2-ui/windows/GuestList.cpp +++ b/src/openrct2-ui/windows/GuestList.cpp @@ -154,7 +154,7 @@ public: void OnOpen() override { widgets = window_guest_list_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); _selectedTab = TabId::Summarised; _selectedView = GuestViewType::Thoughts; diff --git a/src/openrct2-ui/windows/InstallTrack.cpp b/src/openrct2-ui/windows/InstallTrack.cpp index c894d81ba9..548f33912c 100644 --- a/src/openrct2-ui/windows/InstallTrack.cpp +++ b/src/openrct2-ui/windows/InstallTrack.cpp @@ -119,7 +119,7 @@ rct_window* WindowInstallTrackOpen(const utf8* path) rct_window* w = WindowCreate(ScreenCoordsXY(x, y), WW, WH, &window_install_track_events, WC_INSTALL_TRACK, 0); w->widgets = window_install_track_widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->track_list.track_list_being_updated = false; window_push_others_right(w); @@ -197,7 +197,7 @@ static void WindowInstallTrackInvalidate(rct_window* w) */ static void WindowInstallTrackPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); // Track preview rct_widget* widget = &window_install_track_widgets[WIDX_TRACK_PREVIEW]; diff --git a/src/openrct2-ui/windows/Land.cpp b/src/openrct2-ui/windows/Land.cpp index cb384f4e2f..2341460a92 100644 --- a/src/openrct2-ui/windows/Land.cpp +++ b/src/openrct2-ui/windows/Land.cpp @@ -71,7 +71,7 @@ public: { widgets = window_land_widgets; hold_down_widgets = (1ULL << WIDX_DECREMENT) | (1ULL << WIDX_INCREMENT); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); window_push_others_below(this); gLandToolSize = 1; diff --git a/src/openrct2-ui/windows/LandRights.cpp b/src/openrct2-ui/windows/LandRights.cpp index a952a0d238..b47212a19c 100644 --- a/src/openrct2-ui/windows/LandRights.cpp +++ b/src/openrct2-ui/windows/LandRights.cpp @@ -59,7 +59,7 @@ public: { widgets = window_land_rights_widgets; hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); window_push_others_below(this); _landRightsMode = LAND_RIGHTS_MODE_BUY_LAND; pressed_widgets = (1ULL << WIDX_BUY_LAND_RIGHTS); diff --git a/src/openrct2-ui/windows/LoadSave.cpp b/src/openrct2-ui/windows/LoadSave.cpp index dee3d0f376..0bbd2b5f25 100644 --- a/src/openrct2-ui/windows/LoadSave.cpp +++ b/src/openrct2-ui/windows/LoadSave.cpp @@ -325,7 +325,7 @@ rct_window* WindowLoadsaveOpen( openrct2_assert(true, "Unsupported load/save type: %d", type & 0x0F); } - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); WindowLoadsaveComputeMaxDateWidth(); return w; @@ -447,7 +447,7 @@ static void WindowLoadsaveMouseup(rct_window* w, rct_widgetindex widgetIndex) case WIDX_UP: WindowLoadsavePopulateList(w, isSave, _parentDirectory, _extensionPattern); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->no_list_items = static_cast(_listItems.size()); break; @@ -472,7 +472,7 @@ static void WindowLoadsaveMouseup(rct_window* w, rct_widgetindex widgetIndex) { // If user cancels file dialog, refresh list WindowLoadsavePopulateList(w, isSave, _directory, _extensionPattern); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->no_list_items = static_cast(_listItems.size()); } } @@ -508,7 +508,7 @@ static void WindowLoadsaveMouseup(rct_window* w, rct_widgetindex widgetIndex) case WIDX_DEFAULT: WindowLoadsavePopulateList(w, isSave, GetInitialDirectoryByType(_type).c_str(), _extensionPattern); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->no_list_items = static_cast(_listItems.size()); break; } @@ -540,7 +540,7 @@ static void WindowLoadsaveScrollmousedown(rct_window* w, int32_t scrollIndex, co safe_strcpy(directory, _listItems[selectedItem].path.c_str(), sizeof(directory)); WindowLoadsavePopulateList(w, includeNewItem, directory, _extensionPattern); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->no_list_items = static_cast(_listItems.size()); } @@ -596,7 +596,7 @@ static void WindowLoadsaveTextinput(rct_window* w, rct_widgetindex widgetIndex, w->selected_list_item = -1; WindowLoadsavePopulateList(w, (_type & 1) == LOADSAVETYPE_SAVE, path, _extensionPattern); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->no_list_items = static_cast(_listItems.size()); w->Invalidate(); @@ -692,7 +692,7 @@ static void WindowLoadsaveInvalidate(rct_window* w) static void WindowLoadsavePaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); if (_shortenedDirectory[0] == '\0') { @@ -1158,7 +1158,7 @@ static rct_window* WindowOverwritePromptOpen(const char* name, const char* path) OVERWRITE_WW, OVERWRITE_WH, &window_overwrite_prompt_events, WC_LOADSAVE_OVERWRITE_PROMPT, WF_STICK_TO_FRONT); w->widgets = window_overwrite_prompt_widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->flags |= WF_TRANSPARENT; w->colours[0] = TRANSLUCENT(COLOUR_BORDEAUX_RED); @@ -1193,7 +1193,7 @@ static void WindowOverwritePromptMouseup(rct_window* w, rct_widgetindex widgetIn static void WindowOverwritePromptPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); auto ft = Formatter(); ft.Add(STR_STRING); diff --git a/src/openrct2-ui/windows/MapGen.cpp b/src/openrct2-ui/windows/MapGen.cpp index 9a756e0a7e..de66ba1e9b 100644 --- a/src/openrct2-ui/windows/MapGen.cpp +++ b/src/openrct2-ui/windows/MapGen.cpp @@ -438,7 +438,7 @@ rct_window* WindowMapgenOpen() w->event_handlers = PageEvents[WINDOW_MAPGEN_PAGE_BASE]; w->pressed_widgets = PressedWidgets[WINDOW_MAPGEN_PAGE_BASE]; w->disabled_widgets = PageDisabledWidgets[WINDOW_MAPGEN_PAGE_BASE]; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); _heightmapLoaded = false; @@ -667,7 +667,7 @@ static void WindowMapgenBaseInvalidate(rct_window* w) if (w->widgets != PageWidgets[WINDOW_MAPGEN_PAGE_BASE]) { w->widgets = PageWidgets[WINDOW_MAPGEN_PAGE_BASE]; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } // Only allow linking the map size when X and Y are the same @@ -733,7 +733,7 @@ static void WindowMapgenDrawDropdownButtons( static void WindowMapgenBasePaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowMapgenDrawTabImages(dpi, w); WindowMapgenDrawDropdownButtons(w, dpi, WIDX_FLOOR_TEXTURE, WIDX_WALL_TEXTURE); @@ -817,7 +817,7 @@ static void WindowMapgenRandomInvalidate(rct_window* w) if (w->widgets != PageWidgets[WINDOW_MAPGEN_PAGE_RANDOM]) { w->widgets = PageWidgets[WINDOW_MAPGEN_PAGE_RANDOM]; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } w->pressed_widgets = 0; @@ -831,7 +831,7 @@ static void WindowMapgenRandomInvalidate(rct_window* w) static void WindowMapgenRandomPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowMapgenDrawTabImages(dpi, w); } @@ -1015,7 +1015,7 @@ static void WindowMapgenSimplexInvalidate(rct_window* w) if (w->widgets != PageWidgets[WINDOW_MAPGEN_PAGE_SIMPLEX]) { w->widgets = PageWidgets[WINDOW_MAPGEN_PAGE_SIMPLEX]; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } // Only allow linking the map size when X and Y are the same @@ -1047,7 +1047,7 @@ static void WindowMapgenSimplexInvalidate(rct_window* w) static void WindowMapgenSimplexPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowMapgenDrawTabImages(dpi, w); WindowMapgenDrawDropdownButtons(w, dpi, WIDX_SIMPLEX_FLOOR_TEXTURE, WIDX_SIMPLEX_WALL_TEXTURE); @@ -1240,7 +1240,7 @@ static void WindowMapgenHeightmapInvalidate(rct_window* w) if (w->widgets != PageWidgets[WINDOW_MAPGEN_PAGE_HEIGHTMAP]) { w->widgets = PageWidgets[WINDOW_MAPGEN_PAGE_HEIGHTMAP]; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WidgetSetCheckboxValue(w, WIDX_HEIGHTMAP_SMOOTH_HEIGHTMAP, _heightmapSmoothMap); @@ -1252,7 +1252,7 @@ static void WindowMapgenHeightmapInvalidate(rct_window* w) static void WindowMapgenHeightmapPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowMapgenDrawTabImages(dpi, w); const colour_t enabledColour = w->colours[1]; @@ -1345,7 +1345,7 @@ static void WindowMapgenSetPage(rct_window* w, int32_t page) WidgetSetEnabled(w, WIDX_HEIGHTMAP_WATER_LEVEL_DOWN, true); } - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->Invalidate(); } diff --git a/src/openrct2-ui/windows/MazeConstruction.cpp b/src/openrct2-ui/windows/MazeConstruction.cpp index 3d31ba9774..c1bea746a2 100644 --- a/src/openrct2-ui/windows/MazeConstruction.cpp +++ b/src/openrct2-ui/windows/MazeConstruction.cpp @@ -94,7 +94,7 @@ public: void OnOpen() override { widgets = window_maze_construction_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); rideId = _currentRideIndex; show_gridlines(); } diff --git a/src/openrct2-ui/windows/Multiplayer.cpp b/src/openrct2-ui/windows/Multiplayer.cpp index 0028179b8c..57664af40e 100644 --- a/src/openrct2-ui/windows/Multiplayer.cpp +++ b/src/openrct2-ui/windows/Multiplayer.cpp @@ -259,7 +259,7 @@ static void WindowMultiplayerSetPage(rct_window* w, int32_t page) window_event_resize_call(w); window_event_invalidate_call(w); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->Invalidate(); } @@ -403,7 +403,7 @@ static void WindowMultiplayerInformationInvalidate(rct_window* w) static void WindowMultiplayerInformationPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowMultiplayerDrawTabImages(w, dpi); rct_drawpixelinfo clippedDPI; @@ -561,7 +561,7 @@ static void WindowMultiplayerPlayersPaint(rct_window* w, rct_drawpixelinfo* dpi) { rct_string_id stringId; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowMultiplayerDrawTabImages(w, dpi); // Number of players @@ -841,7 +841,7 @@ static void WindowMultiplayerGroupsPaint(rct_window* w, rct_drawpixelinfo* dpi) { thread_local std::string _buffer; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowMultiplayerDrawTabImages(w, dpi); rct_widget* widget = &window_multiplayer_groups_widgets[WIDX_DEFAULT_GROUP]; @@ -989,7 +989,7 @@ static void WindowMultiplayerOptionsInvalidate(rct_window* w) static void WindowMultiplayerOptionsPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowMultiplayerDrawTabImages(w, dpi); } diff --git a/src/openrct2-ui/windows/NetworkStatus.cpp b/src/openrct2-ui/windows/NetworkStatus.cpp index a01dec9718..cc00579177 100644 --- a/src/openrct2-ui/windows/NetworkStatus.cpp +++ b/src/openrct2-ui/windows/NetworkStatus.cpp @@ -66,7 +66,7 @@ rct_window* WindowNetworkStatusOpen(const char* text, close_callback onClose) window = WindowCreateCentred(420, 90, &window_network_status_events, WC_NETWORK_STATUS, WF_10 | WF_TRANSPARENT); window->widgets = window_network_status_widgets; - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); window->no_list_items = 0; window->selected_list_item = -1; window->frame_no = 0; @@ -153,7 +153,7 @@ static void WindowNetworkStatusInvalidate(rct_window* w) static void WindowNetworkStatusPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); thread_local std::string _buffer; _buffer.assign("{BLACK}"); diff --git a/src/openrct2-ui/windows/NewCampaign.cpp b/src/openrct2-ui/windows/NewCampaign.cpp index 6b19b0de70..03a75a692f 100644 --- a/src/openrct2-ui/windows/NewCampaign.cpp +++ b/src/openrct2-ui/windows/NewCampaign.cpp @@ -156,7 +156,7 @@ public: { widgets = window_new_campaign_widgets; hold_down_widgets = (1ULL << WIDX_WEEKS_INCREASE_BUTTON) | (1ULL << WIDX_WEEKS_DECREASE_BUTTON); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); } void SetCampaign(int16_t campaignType) diff --git a/src/openrct2-ui/windows/NewRide.cpp b/src/openrct2-ui/windows/NewRide.cpp index e346a840f6..e925789a9c 100644 --- a/src/openrct2-ui/windows/NewRide.cpp +++ b/src/openrct2-ui/windows/NewRide.cpp @@ -456,7 +456,7 @@ rct_window* WindowNewRideOpen() w = WindowCreateAutoPos(WW, WH, &window_new_ride_events, WC_CONSTRUCT_RIDE, WF_10); w->widgets = window_new_ride_widgets; WindowNewRidePopulateList(); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->frame_no = 0; w->new_ride.SelectedRide = { RIDE_TYPE_NULL, OBJECT_ENTRY_INDEX_NULL }; @@ -589,7 +589,7 @@ static void WindowNewRideRefreshWidgetSizing(rct_window* w) w->Invalidate(); } - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } static void WindowNewRideSetPressedTab(rct_window* w) @@ -791,7 +791,7 @@ static void WindowNewRideInvalidate(rct_window* w) */ static void WindowNewRidePaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowNewRideDrawTabImages(dpi, w); if (_windowNewRideCurrentTab != WINDOW_NEW_RIDE_PAGE_RESEARCH) diff --git a/src/openrct2-ui/windows/News.cpp b/src/openrct2-ui/windows/News.cpp index 73273b7ef2..f7e49ed1eb 100644 --- a/src/openrct2-ui/windows/News.cpp +++ b/src/openrct2-ui/windows/News.cpp @@ -57,7 +57,7 @@ public: void OnOpen() override { widgets = window_news_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); _pressedNewsItemIndex = -1; int32_t w = 0, h = 0; diff --git a/src/openrct2-ui/windows/ObjectLoadError.cpp b/src/openrct2-ui/windows/ObjectLoadError.cpp index 2a242c65b3..9aa99f59f9 100644 --- a/src/openrct2-ui/windows/ObjectLoadError.cpp +++ b/src/openrct2-ui/windows/ObjectLoadError.cpp @@ -392,7 +392,7 @@ public: { widgets = window_object_load_error_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); colours[0] = COLOUR_LIGHT_BLUE; colours[1] = COLOUR_LIGHT_BLUE; colours[2] = COLOUR_LIGHT_BLUE; @@ -485,7 +485,7 @@ public: void OnDraw(rct_drawpixelinfo& dpi) override { - WindowDrawWidgets(this, &dpi); + WindowDrawWidgets(*this, &dpi); // Draw explanatory message auto ft = Formatter(); diff --git a/src/openrct2-ui/windows/PatrolArea.cpp b/src/openrct2-ui/windows/PatrolArea.cpp index 187340e979..b36eaccd3a 100644 --- a/src/openrct2-ui/windows/PatrolArea.cpp +++ b/src/openrct2-ui/windows/PatrolArea.cpp @@ -56,7 +56,7 @@ public: { widgets = PatrolAreaWidgets; hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); window_push_others_below(this); gLandToolSize = 4; } diff --git a/src/openrct2-ui/windows/Player.cpp b/src/openrct2-ui/windows/Player.cpp index ab9398374b..7da0f633e7 100644 --- a/src/openrct2-ui/windows/Player.cpp +++ b/src/openrct2-ui/windows/Player.cpp @@ -163,7 +163,7 @@ rct_window* WindowPlayerOpen(uint8_t id) window->event_handlers = window_player_page_events[WINDOW_PLAYER_PAGE_OVERVIEW]; window->pressed_widgets = 0; - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); WindowPlayerSetPage(window, WINDOW_PLAYER_PAGE_OVERVIEW); return window; @@ -302,7 +302,7 @@ void WindowPlayerOverviewUpdate(rct_window* w) void WindowPlayerOverviewPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowPlayerDrawTabImages(dpi, w); int32_t player = network_get_player_index(static_cast(w->number)); @@ -370,7 +370,7 @@ void WindowPlayerOverviewInvalidate(rct_window* w) if (window_player_page_widgets[w->page] != w->widgets) { w->widgets = window_player_page_widgets[w->page]; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } w->pressed_widgets &= ~(WIDX_TAB_1); @@ -463,7 +463,7 @@ void WindowPlayerStatisticsInvalidate(rct_window* w) if (window_player_page_widgets[w->page] != w->widgets) { w->widgets = window_player_page_widgets[w->page]; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } w->pressed_widgets &= ~(WIDX_TAB_1); @@ -485,7 +485,7 @@ void WindowPlayerStatisticsInvalidate(rct_window* w) void WindowPlayerStatisticsPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowPlayerDrawTabImages(dpi, w); int32_t player = network_get_player_index(static_cast(w->number)); @@ -525,7 +525,7 @@ static void WindowPlayerSetPage(rct_window* w, int32_t page) w->Invalidate(); window_event_resize_call(w); window_event_invalidate_call(w); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->Invalidate(); if (page == WINDOW_PLAYER_PAGE_OVERVIEW) diff --git a/src/openrct2-ui/windows/RefurbishRidePrompt.cpp b/src/openrct2-ui/windows/RefurbishRidePrompt.cpp index 7519796346..02ef33f6a3 100644 --- a/src/openrct2-ui/windows/RefurbishRidePrompt.cpp +++ b/src/openrct2-ui/windows/RefurbishRidePrompt.cpp @@ -52,7 +52,7 @@ public: void OnOpen() override { widgets = window_ride_refurbish_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); } void OnMouseUp(rct_widgetindex widgetIndex) override @@ -74,7 +74,7 @@ public: void OnDraw(rct_drawpixelinfo& dpi) override { - WindowDrawWidgets(this, &dpi); + WindowDrawWidgets(*this, &dpi); auto currentRide = get_ride(rideId); if (currentRide != nullptr) diff --git a/src/openrct2-ui/windows/Research.cpp b/src/openrct2-ui/windows/Research.cpp index a40330f955..7741caac70 100644 --- a/src/openrct2-ui/windows/Research.cpp +++ b/src/openrct2-ui/windows/Research.cpp @@ -184,7 +184,7 @@ rct_window* WindowResearchOpen() w->event_handlers = window_research_page_events[0]; w->pressed_widgets = 0; w->disabled_widgets = 0; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); return w; } @@ -233,7 +233,7 @@ static void WindowResearchDevelopmentInvalidate(rct_window* w) if (w->widgets != window_research_page_widgets[WINDOW_RESEARCH_PAGE_DEVELOPMENT]) { w->widgets = window_research_page_widgets[WINDOW_RESEARCH_PAGE_DEVELOPMENT]; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowResearchSetPressedTab(w); @@ -255,7 +255,7 @@ static void WindowResearchDevelopmentInvalidate(rct_window* w) */ static void WindowResearchDevelopmentPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowResearchDrawTabImages(dpi, w); WindowResearchDevelopmentPagePaint(w, dpi, WIDX_CURRENTLY_IN_DEVELOPMENT_GROUP); @@ -480,7 +480,7 @@ static void WindowResearchFundingInvalidate(rct_window* w) if (w->widgets != window_research_page_widgets[WINDOW_RESEARCH_PAGE_FUNDING]) { w->widgets = window_research_page_widgets[WINDOW_RESEARCH_PAGE_FUNDING]; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowResearchSetPressedTab(w); @@ -533,7 +533,7 @@ static void WindowResearchFundingInvalidate(rct_window* w) */ static void WindowResearchFundingPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowResearchDrawTabImages(dpi, w); WindowResearchFundingPagePaint(w, dpi, WIDX_RESEARCH_FUNDING); @@ -584,7 +584,7 @@ static void WindowResearchSetPage(rct_window* w, int32_t page) window_event_resize_call(w); window_event_invalidate_call(w); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->Invalidate(); } diff --git a/src/openrct2-ui/windows/Ride.cpp b/src/openrct2-ui/windows/Ride.cpp index d895a79d61..bd2497fb7f 100644 --- a/src/openrct2-ui/windows/Ride.cpp +++ b/src/openrct2-ui/windows/Ride.cpp @@ -1254,7 +1254,7 @@ static rct_window* WindowRideOpenStation(Ride* ride, StationIndex stationIndex) w->event_handlers = window_ride_page_events[w->page]; w->pressed_widgets = 0; WindowRideDisableTabs(w); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); // View for (int32_t i = stationIndex.ToUnderlying(); i >= 0; i--) @@ -1391,7 +1391,7 @@ rct_window* WindowRideOpenVehicle(Vehicle* vehicle) w->event_handlers = window_ride_page_events[w->page]; w->pressed_widgets = 0; WindowRideDisableTabs(w); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->ride.view = view; WindowRideInitViewport(w); @@ -1449,7 +1449,7 @@ static void WindowRideSetPage(rct_window* w, int32_t page) window_event_resize_call(w); window_event_invalidate_call(w); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->Invalidate(); if (listen != 0 && w->viewport != nullptr) @@ -2287,7 +2287,7 @@ static void WindowRideMainInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowRideSetPressedTab(w); @@ -2561,7 +2561,7 @@ static void WindowRideMainPaint(rct_window* w, rct_drawpixelinfo* dpi) { rct_widget* widget; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowRideDrawTabImages(dpi, w); // Viewport and ear icon @@ -2784,7 +2784,7 @@ static void WindowRideVehicleInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowRideSetPressedTab(w); @@ -2866,7 +2866,7 @@ static void WindowRideVehicleInvalidate(rct_window* w) */ static void WindowRideVehiclePaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowRideDrawTabImages(dpi, w); auto ride = get_ride(w->rideId); @@ -3463,7 +3463,7 @@ static void WindowRideOperatingInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowRideSetPressedTab(w); @@ -3700,7 +3700,7 @@ static void WindowRideOperatingInvalidate(rct_window* w) */ static void WindowRideOperatingPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowRideDrawTabImages(dpi, w); auto ride = get_ride(w->rideId); @@ -4053,7 +4053,7 @@ static void WindowRideMaintenanceInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowRideSetPressedTab(w); @@ -4097,7 +4097,7 @@ static void WindowRideMaintenanceInvalidate(rct_window* w) */ static void WindowRideMaintenancePaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowRideDrawTabImages(dpi, w); auto ride = get_ride(w->rideId); @@ -4618,7 +4618,7 @@ static void WindowRideColourInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowRideSetPressedTab(w); @@ -4868,7 +4868,7 @@ static void WindowRideColourPaint(rct_window* w, rct_drawpixelinfo* dpi) if (ride == nullptr) return; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowRideDrawTabImages(dpi, w); // Track / shop item preview @@ -5196,7 +5196,7 @@ static void WindowRideMusicInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowRideSetPressedTab(w); @@ -5243,7 +5243,7 @@ static void WindowRideMusicInvalidate(rct_window* w) */ static void WindowRideMusicPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowRideDrawTabImages(dpi, w); } @@ -5568,7 +5568,7 @@ static void WindowRideMeasurementsInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowRideSetPressedTab(w); @@ -5619,7 +5619,7 @@ static void WindowRideMeasurementsInvalidate(rct_window* w) */ static void WindowRideMeasurementsPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowRideDrawTabImages(dpi, w); if (window_ride_measurements_widgets[WIDX_SAVE_DESIGN].type == WindowWidgetType::Button) @@ -6048,7 +6048,7 @@ static void WindowRideGraphsInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowRideSetPressedTab(w); @@ -6106,7 +6106,7 @@ static void WindowRideGraphsInvalidate(rct_window* w) */ static void WindowRideGraphsPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowRideDrawTabImages(dpi, w); } @@ -6612,7 +6612,7 @@ static void WindowRideIncomeInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowRideSetPressedTab(w); @@ -6725,7 +6725,7 @@ static void WindowRideIncomePaint(rct_window* w, rct_drawpixelinfo* dpi) money64 profit; ShopItem primaryItem, secondaryItem; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowRideDrawTabImages(dpi, w); auto ride = get_ride(w->rideId); @@ -6914,7 +6914,7 @@ static void WindowRideCustomerInvalidate(rct_window* w) if (w->widgets != widgets) { w->widgets = widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); } WindowRideSetPressedTab(w); @@ -6952,7 +6952,7 @@ static void WindowRideCustomerPaint(rct_window* w, rct_drawpixelinfo* dpi) int16_t popularity, satisfaction, queueTime; rct_string_id stringId; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowRideDrawTabImages(dpi, w); auto ride = get_ride(w->rideId); diff --git a/src/openrct2-ui/windows/RideList.cpp b/src/openrct2-ui/windows/RideList.cpp index 1710a39187..37bcf0d393 100644 --- a/src/openrct2-ui/windows/RideList.cpp +++ b/src/openrct2-ui/windows/RideList.cpp @@ -164,7 +164,7 @@ public: void OnOpen() override { widgets = window_ride_list_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); page = PAGE_RIDES; selected_list_item = -1; frame_no = 0; @@ -513,7 +513,7 @@ public: */ void OnDraw(rct_drawpixelinfo& dpi) override { - WindowDrawWidgets(this, &dpi); + WindowDrawWidgets(*this, &dpi); DrawTabImages(&dpi); // Draw number of attractions on bottom diff --git a/src/openrct2-ui/windows/SavePrompt.cpp b/src/openrct2-ui/windows/SavePrompt.cpp index 630c7685cc..566e8943cd 100644 --- a/src/openrct2-ui/windows/SavePrompt.cpp +++ b/src/openrct2-ui/windows/SavePrompt.cpp @@ -146,7 +146,7 @@ rct_window* WindowSavePromptOpen() window = WindowCreateCentred(width, height, &window_save_prompt_events, WC_SAVE_PROMPT, WF_TRANSPARENT | WF_STICK_TO_FRONT); window->widgets = widgets; - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); // Pause the game if not network play. if (network_get_mode() == NETWORK_MODE_NONE) @@ -238,7 +238,7 @@ static void WindowSavePromptMouseup(rct_window* w, rct_widgetindex widgetIndex) static void WindowSavePromptPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); } static void WindowSavePromptCallback(int32_t result, const utf8* path) diff --git a/src/openrct2-ui/windows/ScenarioSelect.cpp b/src/openrct2-ui/windows/ScenarioSelect.cpp index f2cbc54666..d80757d34d 100644 --- a/src/openrct2-ui/windows/ScenarioSelect.cpp +++ b/src/openrct2-ui/windows/ScenarioSelect.cpp @@ -194,7 +194,7 @@ rct_window* WindowScenarioselectOpen(std::function callb WindowScenarioselectInitTabs(window); InitialiseListItems(window); - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); window->highlighted_scenario = nullptr; return window; @@ -284,7 +284,7 @@ static void WindowScenarioselectMousedown(rct_window* w, rct_widgetindex widgetI w->Invalidate(); window_event_resize_call(w); window_event_invalidate_call(w); - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->Invalidate(); } } @@ -440,7 +440,7 @@ static void WindowScenarioselectPaint(rct_window* w, rct_drawpixelinfo* dpi) int32_t format; const scenario_index_entry* scenario; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); format = ScenarioSelectUseSmallFont() ? STR_SMALL_WINDOW_COLOUR_2_STRINGID : STR_WINDOW_COLOUR_2_STRINGID; FontSpriteBase fontSpriteBase = ScenarioSelectUseSmallFont() ? FontSpriteBase::SMALL : FontSpriteBase::MEDIUM; diff --git a/src/openrct2-ui/windows/SceneryScatter.cpp b/src/openrct2-ui/windows/SceneryScatter.cpp index e9b2ffad08..f4060cca00 100644 --- a/src/openrct2-ui/windows/SceneryScatter.cpp +++ b/src/openrct2-ui/windows/SceneryScatter.cpp @@ -59,7 +59,7 @@ public: { widgets = window_scenery_scatter_widgets; hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); window_push_others_below(this); gWindowSceneryScatterEnabled = true; @@ -178,7 +178,7 @@ public: void OnDraw(rct_drawpixelinfo& dpi) override { - WindowDrawWidgets(this, &dpi); + WindowDrawWidgets(*this, &dpi); // Draw area as a number for tool sizes bigger than 7 if (gWindowSceneryScatterSize > MAX_TOOL_SIZE_WITH_SPRITE) diff --git a/src/openrct2-ui/windows/ServerList.cpp b/src/openrct2-ui/windows/ServerList.cpp index 9f339d60d7..d8f760b3a1 100644 --- a/src/openrct2-ui/windows/ServerList.cpp +++ b/src/openrct2-ui/windows/ServerList.cpp @@ -129,7 +129,7 @@ rct_window* WindowServerListOpen() window_server_list_widgets[WIDX_PLAYER_NAME_INPUT].string = _playerName; window->widgets = window_server_list_widgets; - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); window->no_list_items = 0; window->selected_list_item = -1; window->frame_no = 0; @@ -380,7 +380,7 @@ static void WindowServerListInvalidate(rct_window* w) static void WindowServerListPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); DrawTextBasic( dpi, w->windowPos + ScreenCoordsXY{ 6, w->widgets[WIDX_PLAYER_NAME_INPUT].top }, STR_PLAYER_NAME, {}, { COLOUR_WHITE }); diff --git a/src/openrct2-ui/windows/ShortcutKeys.cpp b/src/openrct2-ui/windows/ShortcutKeys.cpp index 79ddc33140..1d27803733 100644 --- a/src/openrct2-ui/windows/ShortcutKeys.cpp +++ b/src/openrct2-ui/windows/ShortcutKeys.cpp @@ -95,7 +95,7 @@ public: void OnOpen() override { widgets = window_shortcut_change_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); } void OnClose() override @@ -445,7 +445,7 @@ private: _widgets.push_back(WIDGETS_END); widgets = _widgets.data(); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); } void SetTab(size_t index) diff --git a/src/openrct2-ui/windows/Sign.cpp b/src/openrct2-ui/windows/Sign.cpp index 4afc0e0753..ef7a609a12 100644 --- a/src/openrct2-ui/windows/Sign.cpp +++ b/src/openrct2-ui/windows/Sign.cpp @@ -81,7 +81,7 @@ public: void OnOpen() override { widgets = window_sign_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); } /* diff --git a/src/openrct2-ui/windows/StaffFirePrompt.cpp b/src/openrct2-ui/windows/StaffFirePrompt.cpp index 8268e43f1d..b83fbfe668 100644 --- a/src/openrct2-ui/windows/StaffFirePrompt.cpp +++ b/src/openrct2-ui/windows/StaffFirePrompt.cpp @@ -65,7 +65,7 @@ rct_window* WindowStaffFirePromptOpen(Peep* peep) w = WindowCreateCentred(WW, WH, &window_staff_fire_events, WC_FIRE_PROMPT, WF_TRANSPARENT); w->widgets = window_staff_fire_widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->number = peep->sprite_index.ToUnderlying(); @@ -98,7 +98,7 @@ static void WindowStaffFireMouseup(rct_window* w, rct_widgetindex widgetIndex) */ static void WindowStaffFirePaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); Peep* peep = GetEntity(EntityId::FromUnderlying(w->number)); auto ft = Formatter(); diff --git a/src/openrct2-ui/windows/StaffList.cpp b/src/openrct2-ui/windows/StaffList.cpp index 3388493c86..9205d00145 100644 --- a/src/openrct2-ui/windows/StaffList.cpp +++ b/src/openrct2-ui/windows/StaffList.cpp @@ -104,7 +104,7 @@ public: void OnOpen() override { widgets = window_staff_list_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); widgets[WIDX_STAFF_LIST_UNIFORM_COLOUR_PICKER].type = WindowWidgetType::Empty; min_width = WW; diff --git a/src/openrct2-ui/windows/TextInput.cpp b/src/openrct2-ui/windows/TextInput.cpp index 9e275fa386..9280c65131 100644 --- a/src/openrct2-ui/windows/TextInput.cpp +++ b/src/openrct2-ui/windows/TextInput.cpp @@ -61,7 +61,7 @@ public: void OnOpen() override { widgets = window_text_input_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); SetParentWindow(nullptr, 0); } diff --git a/src/openrct2-ui/windows/Themes.cpp b/src/openrct2-ui/windows/Themes.cpp index 1fce4fc112..afa2bdf935 100644 --- a/src/openrct2-ui/windows/Themes.cpp +++ b/src/openrct2-ui/windows/Themes.cpp @@ -328,7 +328,7 @@ rct_window* WindowThemesOpen() WindowThemesInitVars(); - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); window->list_information_type = 0; _colour_index_1 = -1; _colour_index_2 = -1; @@ -810,7 +810,7 @@ void WindowThemesInvalidate(rct_window* w) void WindowThemesPaint(rct_window* w, rct_drawpixelinfo* dpi) { // Widgets - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); WindowThemesDrawTabImages(dpi, w); if (_selected_tab == WINDOW_THEMES_TAB_SETTINGS) diff --git a/src/openrct2-ui/windows/TileInspector.cpp b/src/openrct2-ui/windows/TileInspector.cpp index d0cbe5114e..504c33b688 100644 --- a/src/openrct2-ui/windows/TileInspector.cpp +++ b/src/openrct2-ui/windows/TileInspector.cpp @@ -527,7 +527,7 @@ rct_window* WindowTileInspectorOpen() window->max_width = MAX_WW; window->max_height = MAX_WH; windowTileInspectorSelectedIndex = -1; - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); windowTileInspectorTileSelected = false; @@ -1720,7 +1720,7 @@ static void WindowTileInspectorInvalidate(rct_window* w) static void WindowTileInspectorPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); ScreenCoordsXY screenCoords(w->windowPos.x, w->windowPos.y); diff --git a/src/openrct2-ui/windows/TitleExit.cpp b/src/openrct2-ui/windows/TitleExit.cpp index 7b6192f0ad..f326b9ce9b 100644 --- a/src/openrct2-ui/windows/TitleExit.cpp +++ b/src/openrct2-ui/windows/TitleExit.cpp @@ -47,7 +47,7 @@ rct_window* WindowTitleExitOpen() ScreenCoordsXY(context_get_width() - 40, context_get_height() - 64), 40, 64, &window_title_exit_events, WC_TITLE_EXIT, WF_STICK_TO_BACK | WF_TRANSPARENT); window->widgets = window_title_exit_widgets; - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); return window; } @@ -76,5 +76,5 @@ static void WindowTitleExitMouseup(rct_window* w, rct_widgetindex widgetIndex) */ static void WindowTitleExitPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); } diff --git a/src/openrct2-ui/windows/TitleLogo.cpp b/src/openrct2-ui/windows/TitleLogo.cpp index d79c1e55f3..f926bc9384 100644 --- a/src/openrct2-ui/windows/TitleLogo.cpp +++ b/src/openrct2-ui/windows/TitleLogo.cpp @@ -47,7 +47,7 @@ rct_window* WindowTitleLogoOpen() rct_window* window = WindowCreate( ScreenCoordsXY(0, 0), WW, WH, &window_title_logo_events, WC_TITLE_LOGO, WF_STICK_TO_BACK | WF_TRANSPARENT); window->widgets = window_title_logo_widgets; - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); window->colours[0] = TRANSLUCENT(COLOUR_GREY); window->colours[1] = TRANSLUCENT(COLOUR_GREY); window->colours[2] = TRANSLUCENT(COLOUR_GREY); diff --git a/src/openrct2-ui/windows/TitleMenu.cpp b/src/openrct2-ui/windows/TitleMenu.cpp index 285435ffbc..76e7d7fc80 100644 --- a/src/openrct2-ui/windows/TitleMenu.cpp +++ b/src/openrct2-ui/windows/TitleMenu.cpp @@ -110,7 +110,7 @@ rct_window* WindowTitleMenuOpen() window->windowPos.x = (context_get_width() - window->width) / 2; window->colours[1] = TRANSLUCENT(COLOUR_LIGHT_ORANGE); - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); return window; } @@ -296,5 +296,5 @@ static void WindowTitleMenuInvalidate(rct_window* w) static void WindowTitleMenuPaint(rct_window* w, rct_drawpixelinfo* dpi) { gfx_filter_rect(dpi, _filterRect, FilterPaletteID::Palette51); - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); } diff --git a/src/openrct2-ui/windows/TitleOptions.cpp b/src/openrct2-ui/windows/TitleOptions.cpp index e2d19ec69d..ef32768382 100644 --- a/src/openrct2-ui/windows/TitleOptions.cpp +++ b/src/openrct2-ui/windows/TitleOptions.cpp @@ -43,7 +43,7 @@ rct_window* WindowTitleOptionsOpen() ScreenCoordsXY(context_get_width() - 80, 0), 80, 15, &window_title_options_events, WC_TITLE_OPTIONS, WF_STICK_TO_BACK | WF_TRANSPARENT); window->widgets = window_title_options_widgets; - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); return window; } @@ -63,5 +63,5 @@ static void WindowTitleOptionsMouseup(rct_window* w, rct_widgetindex widgetIndex static void WindowTitleOptionsPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); } diff --git a/src/openrct2-ui/windows/TopToolbar.cpp b/src/openrct2-ui/windows/TopToolbar.cpp index 9877ff6d46..b324060304 100644 --- a/src/openrct2-ui/windows/TopToolbar.cpp +++ b/src/openrct2-ui/windows/TopToolbar.cpp @@ -342,7 +342,7 @@ rct_window* WindowTopToolbarOpen() WF_STICK_TO_FRONT | WF_TRANSPARENT | WF_NO_BACKGROUND); window->widgets = window_top_toolbar_widgets; - WindowInitScrollWidgets(window); + WindowInitScrollWidgets(*window); return window; } @@ -884,7 +884,7 @@ static void WindowTopToolbarPaint(rct_window* w, rct_drawpixelinfo* dpi) { int32_t imgId; - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); ScreenCoordsXY screenPos{}; // Draw staff button image (setting masks to the staff colours) diff --git a/src/openrct2-ui/windows/TrackDesignManage.cpp b/src/openrct2-ui/windows/TrackDesignManage.cpp index dda4d46ff5..5ab5237f19 100644 --- a/src/openrct2-ui/windows/TrackDesignManage.cpp +++ b/src/openrct2-ui/windows/TrackDesignManage.cpp @@ -99,7 +99,7 @@ rct_window* WindowTrackManageOpen(TrackDesignFileRef* tdFileRef) rct_window* w = WindowCreateCentred( WW, WH, &window_track_manage_events, WC_MANAGE_TRACK_DESIGN, WF_STICK_TO_FRONT | WF_TRANSPARENT); w->widgets = window_track_manage_widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); rct_window* trackDesignListWindow = window_find_by_class(WC_TRACK_DESIGN_LIST); if (trackDesignListWindow != nullptr) @@ -190,7 +190,7 @@ static void WindowTrackManageTextinput(rct_window* w, rct_widgetindex widgetInde static void WindowTrackManagePaint(rct_window* w, rct_drawpixelinfo* dpi) { Formatter::Common().Add(_trackDesignFileReference->name.c_str()); - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); } /** @@ -208,7 +208,7 @@ static void WindowTrackDeletePromptOpen() std::max(TOP_TOOLBAR_HEIGHT + 1, (screenWidth - WW_DELETE_PROMPT) / 2), (screenHeight - WH_DELETE_PROMPT) / 2), WW_DELETE_PROMPT, WH_DELETE_PROMPT, &window_track_delete_prompt_events, WC_TRACK_DELETE_PROMPT, WF_STICK_TO_FRONT); w->widgets = window_track_delete_prompt_widgets; - WindowInitScrollWidgets(w); + WindowInitScrollWidgets(*w); w->flags |= WF_TRANSPARENT; } @@ -245,7 +245,7 @@ static void WindowTrackDeletePromptMouseup(rct_window* w, rct_widgetindex widget */ static void WindowTrackDeletePromptPaint(rct_window* w, rct_drawpixelinfo* dpi) { - WindowDrawWidgets(w, dpi); + WindowDrawWidgets(*w, dpi); auto ft = Formatter(); ft.Add(_trackDesignFileReference->name.c_str()); diff --git a/src/openrct2-ui/windows/TrackDesignPlace.cpp b/src/openrct2-ui/windows/TrackDesignPlace.cpp index 0a271bfbea..e2bbc3dd69 100644 --- a/src/openrct2-ui/windows/TrackDesignPlace.cpp +++ b/src/openrct2-ui/windows/TrackDesignPlace.cpp @@ -78,7 +78,7 @@ public: void OnOpen() override { widgets = window_track_place_widgets; - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); tool_set(*this, WIDX_PRICE, Tool::Crosshair); input_set_flag(INPUT_FLAG_6, true); window_push_others_right(this); @@ -288,7 +288,7 @@ public: { auto ft = Formatter::Common(); ft.Add(_trackDesign->name.c_str()); - WindowDrawWidgets(this, &dpi); + WindowDrawWidgets(*this, &dpi); // Draw mini tile preview rct_drawpixelinfo clippedDpi; diff --git a/src/openrct2-ui/windows/TrackList.cpp b/src/openrct2-ui/windows/TrackList.cpp index badc1aec00..9121830dcd 100644 --- a/src/openrct2-ui/windows/TrackList.cpp +++ b/src/openrct2-ui/windows/TrackList.cpp @@ -213,7 +213,7 @@ public: widgets[WIDX_BACK].type = WindowWidgetType::TableHeader; } - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); track_list.track_list_being_updated = false; track_list.reload_track_designs = false; // Start with first track highlighted diff --git a/src/openrct2-ui/windows/ViewClipping.cpp b/src/openrct2-ui/windows/ViewClipping.cpp index aaa4fce357..5843551b6d 100644 --- a/src/openrct2-ui/windows/ViewClipping.cpp +++ b/src/openrct2-ui/windows/ViewClipping.cpp @@ -274,7 +274,7 @@ public: void OnDraw(rct_drawpixelinfo& dpi) override { - WindowDrawWidgets(this, &dpi); + WindowDrawWidgets(*this, &dpi); // Clip height value auto screenCoords = this->windowPos + ScreenCoordsXY{ 8, this->widgets[WIDX_CLIP_HEIGHT_VALUE].top }; @@ -345,7 +345,7 @@ public: { this->widgets = window_view_clipping_widgets; this->hold_down_widgets = (1ULL << WIDX_CLIP_HEIGHT_INCREASE) | (1UL << WIDX_CLIP_HEIGHT_DECREASE); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); _clipHeightDisplayType = DisplayType::DisplayUnits; diff --git a/src/openrct2-ui/windows/Water.cpp b/src/openrct2-ui/windows/Water.cpp index 54cecaeccf..5f4e02e2ba 100644 --- a/src/openrct2-ui/windows/Water.cpp +++ b/src/openrct2-ui/windows/Water.cpp @@ -47,7 +47,7 @@ public: { widgets = window_water_widgets; hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT); - WindowInitScrollWidgets(this); + WindowInitScrollWidgets(*this); window_push_others_below(this); gLandToolSize = 1; diff --git a/src/openrct2/interface/Window.h b/src/openrct2/interface/Window.h index caa60fad19..508318c32e 100644 --- a/src/openrct2/interface/Window.h +++ b/src/openrct2/interface/Window.h @@ -711,7 +711,7 @@ void window_invalidate_all(); void widget_invalidate(rct_window* w, rct_widgetindex widgetIndex); void widget_invalidate_by_class(rct_windowclass cls, rct_widgetindex widgetIndex); void widget_invalidate_by_number(rct_windowclass cls, rct_windownumber number, rct_widgetindex widgetIndex); -void WindowInitScrollWidgets(rct_window* w); +void WindowInitScrollWidgets(rct_window& w); void window_update_scroll_widgets(rct_window* w); int32_t window_get_scroll_data_index(rct_window* w, rct_widgetindex widget_index); @@ -735,7 +735,7 @@ void window_show_textinput(rct_window* w, rct_widgetindex widgetIndex, uint16_t void window_draw_all(rct_drawpixelinfo* dpi, int32_t left, int32_t top, int32_t right, int32_t bottom); void window_draw(rct_drawpixelinfo* dpi, rct_window* w, int32_t left, int32_t top, int32_t right, int32_t bottom); -void WindowDrawWidgets(rct_window* w, rct_drawpixelinfo* dpi); +void WindowDrawWidgets(rct_window& w, rct_drawpixelinfo* dpi); void window_draw_viewport(rct_drawpixelinfo* dpi, rct_window* w); void window_set_position(rct_window* w, const ScreenCoordsXY& screenCoords);