From 96ce7f706fe2fb4628291b5d290c7ac165495ba2 Mon Sep 17 00:00:00 2001 From: Aaron van Geffen Date: Fri, 10 May 2024 22:14:10 +0200 Subject: [PATCH] Move widget constants from Windows.h to Widget.h --- src/openrct2-ui/interface/Widget.cpp | 8 +++----- src/openrct2-ui/interface/Window.cpp | 2 +- src/openrct2/interface/Widget.h | 18 +++++++++++++++++- src/openrct2/interface/Window.cpp | 4 ++-- src/openrct2/interface/Window.h | 14 +------------- src/openrct2/paint/Painter.cpp | 3 ++- 6 files changed, 26 insertions(+), 23 deletions(-) diff --git a/src/openrct2-ui/interface/Widget.cpp b/src/openrct2-ui/interface/Widget.cpp index 729c260976..577cd9ca73 100644 --- a/src/openrct2-ui/interface/Widget.cpp +++ b/src/openrct2-ui/interface/Widget.cpp @@ -9,8 +9,6 @@ #include "Widget.h" -#include "Window.h" - #include #include #include @@ -567,13 +565,13 @@ static void WidgetCaptionDraw(DrawPixelInfo& dpi, WindowBase& w, WidgetIndex wid int32_t width = widget->width() - 4; if ((widget + 1)->type == WindowWidgetType::CloseBox) { - width -= CloseButtonWidth; + width -= kCloseButtonWidth; if ((widget + 2)->type == WindowWidgetType::CloseBox) - width -= CloseButtonWidth; + width -= kCloseButtonWidth; } topLeft.x += width / 2; if (Config::Get().interface.WindowButtonsOnTheLeft) - topLeft.x += CloseButtonWidth; + topLeft.x += kCloseButtonWidth; DrawTextEllipsised( dpi, topLeft, width, widget->text, Formatter::Common(), diff --git a/src/openrct2-ui/interface/Window.cpp b/src/openrct2-ui/interface/Window.cpp index eb16115823..5a28c969f0 100644 --- a/src/openrct2-ui/interface/Window.cpp +++ b/src/openrct2-ui/interface/Window.cpp @@ -828,7 +828,7 @@ void WindowAlignTabs(WindowBase* w, WidgetIndex start_tab_id, WidgetIndex end_ta ScreenCoordsXY WindowGetViewportSoundIconPos(WindowBase& w) { - const uint8_t buttonOffset = (Config::Get().interface.WindowButtonsOnTheLeft) ? CloseButtonWidth + 2 : 0; + const uint8_t buttonOffset = (Config::Get().interface.WindowButtonsOnTheLeft) ? kCloseButtonWidth + 2 : 0; return w.windowPos + ScreenCoordsXY{ 2 + buttonOffset, 2 }; } diff --git a/src/openrct2/interface/Widget.h b/src/openrct2/interface/Widget.h index 2f387ee342..2f395de441 100644 --- a/src/openrct2/interface/Widget.h +++ b/src/openrct2/interface/Widget.h @@ -9,7 +9,11 @@ #pragma once -#include "Window.h" +#include + +struct WindowBase; + +using WidgetIndex = int16_t; enum class WindowWidgetType : uint8_t { @@ -39,6 +43,18 @@ enum class WindowWidgetType : uint8_t Last = 26, }; +constexpr uint8_t kCloseButtonWidth = 10; + +constexpr int32_t kScrollableRowHeight = 12; +constexpr uint8_t kListRowHeight = 12; +constexpr uint8_t kTableCellHeight = 12; +constexpr uint8_t kButtonFaceHeight = 12; +constexpr uint8_t kSpinnerHeight = 12; +constexpr uint8_t kDropdownHeight = 12; + +constexpr uint16_t kTextInputSize = 1024; +constexpr uint16_t kTopToolbarHeight = 27; + enum { SCROLL_HORIZONTAL = (1 << 0), diff --git a/src/openrct2/interface/Window.cpp b/src/openrct2/interface/Window.cpp index cb8dcc9397..20acef0871 100644 --- a/src/openrct2/interface/Window.cpp +++ b/src/openrct2/interface/Window.cpp @@ -1849,11 +1849,11 @@ void WindowBase::ResizeFrame() if (Config::Get().interface.WindowButtonsOnTheLeft) { widgets[2].left = 2; - widgets[2].right = 2 + CloseButtonWidth; + widgets[2].right = 2 + kCloseButtonWidth; } else { - widgets[2].left = width - 3 - CloseButtonWidth; + widgets[2].left = width - 3 - kCloseButtonWidth; widgets[2].right = width - 3; } } diff --git a/src/openrct2/interface/Window.h b/src/openrct2/interface/Window.h index 061031569e..e1b64c8d62 100644 --- a/src/openrct2/interface/Window.h +++ b/src/openrct2/interface/Window.h @@ -18,6 +18,7 @@ #include "../windows/TileInspectorGlobals.h" #include "../world/Location.hpp" #include "../world/ScenerySelection.h" +#include "Widget.h" #include "WindowClasses.h" #include "ZoomLevel.h" @@ -39,20 +40,7 @@ enum class CursorID : uint8_t; enum class RideConstructionState : uint8_t; enum class CloseWindowModifier : uint8_t; -constexpr uint8_t CloseButtonWidth = 10; - -constexpr int32_t kScrollableRowHeight = 12; -constexpr uint8_t kListRowHeight = 12; -constexpr uint8_t kTableCellHeight = 12; -constexpr uint8_t kButtonFaceHeight = 12; -constexpr uint8_t kSpinnerHeight = 12; -constexpr uint8_t kDropdownHeight = 12; - -constexpr uint16_t kTextInputSize = 1024; -constexpr uint16_t kTopToolbarHeight = 27; - using rct_windownumber = uint16_t; -using WidgetIndex = int16_t; struct WindowIdentifier { diff --git a/src/openrct2/paint/Painter.cpp b/src/openrct2/paint/Painter.cpp index 705f2dd0c5..f887082363 100644 --- a/src/openrct2/paint/Painter.cpp +++ b/src/openrct2/paint/Painter.cpp @@ -18,6 +18,7 @@ #include "../drawing/Text.h" #include "../interface/Chat.h" #include "../interface/InteractiveConsole.h" +#include "../interface/Widget.h" #include "../localisation/FormatCodes.h" #include "../localisation/Formatting.h" #include "../localisation/Language.h" @@ -133,7 +134,7 @@ void Painter::PaintFPS(DrawPixelInfo& dpi) const bool isTitle = gScreenFlags == SCREEN_FLAGS_TITLE_DEMO; if (!isTitle && Config::Get().interface.ToolbarButtonsCentred) { - screenCoords.y = 30; // kTopToolbarHeight; don't want to include Window.h here + screenCoords.y = kTopToolbarHeight + 3; } DrawText(dpi, screenCoords, { COLOUR_WHITE }, buffer);