From 751c4195946499a762864ec5e906bcc2074bbdbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=CE=B6eh=20Matt?= <5415177+ZehMatt@users.noreply.github.com> Date: Sat, 26 Jun 2021 07:43:05 +0300 Subject: [PATCH] Minor cleanups (#14954) * Fix uninitialized variables in InputManager * Use constexpr for const values * Add break statements instead of implicit fallthrough * Default initialize variables in Cheats window * Default initialize variables in News window * Default initialize window event pointers --- src/openrct2-ui/input/InputManager.h | 4 +- .../interface/ViewportInteraction.cpp | 3 +- src/openrct2-ui/windows/Cheats.cpp | 2 +- src/openrct2-ui/windows/News.cpp | 2 +- src/openrct2-ui/windows/Options.cpp | 2 +- src/openrct2-ui/windows/Ride.cpp | 2 +- src/openrct2-ui/windows/TopToolbar.cpp | 8 +-- src/openrct2/interface/Window.h | 56 +++++++++---------- src/openrct2/paint/Paint.cpp | 2 + 9 files changed, 42 insertions(+), 39 deletions(-) diff --git a/src/openrct2-ui/input/InputManager.h b/src/openrct2-ui/input/InputManager.h index a1f389cd55..04e3e19f8d 100644 --- a/src/openrct2-ui/input/InputManager.h +++ b/src/openrct2-ui/input/InputManager.h @@ -46,11 +46,11 @@ namespace OpenRCT2::Ui class InputManager { private: - uint32_t _lastJoystickCheck; + uint32_t _lastJoystickCheck{}; std::vector _joysticks; std::queue _events; ScreenCoordsXY _viewScroll; - uint32_t _mouseState; + uint32_t _mouseState{}; std::vector _keyboardState; void CheckJoysticks(); diff --git a/src/openrct2-ui/interface/ViewportInteraction.cpp b/src/openrct2-ui/interface/ViewportInteraction.cpp index 120e87c9c5..8211f06472 100644 --- a/src/openrct2-ui/interface/ViewportInteraction.cpp +++ b/src/openrct2-ui/interface/ViewportInteraction.cpp @@ -253,7 +253,8 @@ InteractionInfo ViewportInteractionGetItemRight(const ScreenCoordsXY& screenCoor if ((gScreenFlags & SCREEN_FLAGS_TRACK_DESIGNER) && gS6Info.editor_step != EditorStep::RollercoasterDesigner) return info; - auto flags = static_cast(~EnumsToFlags(ViewportInteractionItem::Terrain, ViewportInteractionItem::Water)); + constexpr auto flags = static_cast( + ~EnumsToFlags(ViewportInteractionItem::Terrain, ViewportInteractionItem::Water)); info = get_map_coordinates_from_pos(screenCoords, flags); auto tileElement = info.Element; diff --git a/src/openrct2-ui/windows/Cheats.cpp b/src/openrct2-ui/windows/Cheats.cpp index 0a5c325f13..03ad9bb394 100644 --- a/src/openrct2-ui/windows/Cheats.cpp +++ b/src/openrct2-ui/windows/Cheats.cpp @@ -446,7 +446,7 @@ static rct_string_id window_cheats_page_titles[] = { class CheatsWindow final : public Window { private: - char _moneySpinnerText[MONEY_STRING_MAXLENGTH]; + char _moneySpinnerText[MONEY_STRING_MAXLENGTH]{}; money32 _moneySpinnerValue = CHEATS_MONEY_DEFAULT; int32_t _selectedStaffSpeed = 1; int32_t _parkRatingSpinnerValue{}; diff --git a/src/openrct2-ui/windows/News.cpp b/src/openrct2-ui/windows/News.cpp index cccbdd6056..af7ef2ed85 100644 --- a/src/openrct2-ui/windows/News.cpp +++ b/src/openrct2-ui/windows/News.cpp @@ -44,7 +44,7 @@ static rct_widget window_news_widgets[] = { class NewsWindow final : public Window { private: - int32_t _pressedNewsItemIndex, _pressedButtonIndex, _suspendUpdateTicks; + int32_t _pressedNewsItemIndex{}, _pressedButtonIndex{}, _suspendUpdateTicks{}; static int32_t CalculateItemHeight() { return 4 * font_get_line_height(FontSpriteBase::SMALL) + 2; diff --git a/src/openrct2-ui/windows/Options.cpp b/src/openrct2-ui/windows/Options.cpp index 002b34980f..8e55c70d7b 100644 --- a/src/openrct2-ui/windows/Options.cpp +++ b/src/openrct2-ui/windows/Options.cpp @@ -1128,7 +1128,7 @@ static void window_options_culture_mousedown(rct_window* w, rct_widgetindex widg break; case WIDX_CURRENCY_DROPDOWN: { - uint32_t num_items = EnumValue(CurrencyType::Count) + 1; // All the currencies plus the separator + constexpr auto num_items = EnumValue(CurrencyType::Count) + 1; // All the currencies plus the separator size_t num_ordinary_currencies = EnumValue(CurrencyType::Count) - 1; // All the currencies except custom currency for (size_t i = 0; i < num_ordinary_currencies; i++) diff --git a/src/openrct2-ui/windows/Ride.cpp b/src/openrct2-ui/windows/Ride.cpp index 1fc4535a46..fe99b1e7d3 100644 --- a/src/openrct2-ui/windows/Ride.cpp +++ b/src/openrct2-ui/windows/Ride.cpp @@ -5414,7 +5414,7 @@ static void window_ride_measurements_tooldown(rct_window* w, rct_widgetindex wid _lastSceneryY = screenCoords.y; _collectTrackDesignScenery = true; // Default to true in case user does not select anything valid - auto flags = EnumsToFlags( + constexpr auto flags = EnumsToFlags( ViewportInteractionItem::Scenery, ViewportInteractionItem::Footpath, ViewportInteractionItem::Wall, ViewportInteractionItem::LargeScenery); auto info = get_map_coordinates_from_pos(screenCoords, flags); diff --git a/src/openrct2-ui/windows/TopToolbar.cpp b/src/openrct2-ui/windows/TopToolbar.cpp index 40ddf51649..613c8b9d2c 100644 --- a/src/openrct2-ui/windows/TopToolbar.cpp +++ b/src/openrct2-ui/windows/TopToolbar.cpp @@ -1167,7 +1167,7 @@ static void sub_6E1F34_update_screen_coords_and_buttons_pressed(bool canRaiseIte if (InputTestPlaceObjectModifier(PLACE_OBJECT_MODIFIER_COPY_Z)) { // CTRL pressed - auto flags = EnumsToFlags( + constexpr auto flags = EnumsToFlags( ViewportInteractionItem::Terrain, ViewportInteractionItem::Ride, ViewportInteractionItem::Scenery, ViewportInteractionItem::Footpath, ViewportInteractionItem::Wall, ViewportInteractionItem::LargeScenery); auto info = get_map_coordinates_from_pos(screenPos, flags); @@ -1337,7 +1337,7 @@ static void sub_6E1F34_small_scenery( // If CTRL not pressed if (!gSceneryCtrlPressed) { - auto flags = EnumsToFlags(ViewportInteractionItem::Terrain, ViewportInteractionItem::Water); + constexpr auto flags = EnumsToFlags(ViewportInteractionItem::Terrain, ViewportInteractionItem::Water); auto info = get_map_coordinates_from_pos(screenPos, flags); gridPos = info.Loc; @@ -1431,7 +1431,7 @@ static void sub_6E1F34_path_item( sub_6E1F34_update_screen_coords_and_buttons_pressed(false, screenPos); // Path bits - auto flags = EnumsToFlags(ViewportInteractionItem::Footpath, ViewportInteractionItem::FootpathItem); + constexpr auto flags = EnumsToFlags(ViewportInteractionItem::Footpath, ViewportInteractionItem::FootpathItem); auto info = get_map_coordinates_from_pos(screenPos, flags); gridPos = info.Loc; @@ -1653,7 +1653,7 @@ static void sub_6E1F34_banner( sub_6E1F34_update_screen_coords_and_buttons_pressed(false, screenPos); // Banner - auto flags = EnumsToFlags(ViewportInteractionItem::Footpath, ViewportInteractionItem::FootpathItem); + constexpr auto flags = EnumsToFlags(ViewportInteractionItem::Footpath, ViewportInteractionItem::FootpathItem); auto info = get_map_coordinates_from_pos(screenPos, flags); gridPos = info.Loc; diff --git a/src/openrct2/interface/Window.h b/src/openrct2/interface/Window.h index 3d2492d6c7..bbfb9bac2e 100644 --- a/src/openrct2/interface/Window.h +++ b/src/openrct2/interface/Window.h @@ -244,34 +244,34 @@ struct viewport_focus struct rct_window_event_list { - void (*close)(struct rct_window*); - void (*mouse_up)(struct rct_window*, rct_widgetindex); - void (*resize)(struct rct_window*); - void (*mouse_down)(struct rct_window*, rct_widgetindex, rct_widget*); - void (*dropdown)(struct rct_window*, rct_widgetindex, int32_t); - void (*unknown_05)(struct rct_window*); - void (*update)(struct rct_window*); - void (*periodic_update)(struct rct_window*); - void (*unknown_08)(struct rct_window*); - void (*tool_update)(struct rct_window*, rct_widgetindex, const ScreenCoordsXY&); - void (*tool_down)(struct rct_window*, rct_widgetindex, const ScreenCoordsXY&); - void (*tool_drag)(struct rct_window*, rct_widgetindex, const ScreenCoordsXY&); - void (*tool_up)(struct rct_window*, rct_widgetindex, const ScreenCoordsXY&); - void (*tool_abort)(struct rct_window*, rct_widgetindex); - void (*unknown_0E)(struct rct_window*); - void (*get_scroll_size)(struct rct_window*, int32_t, int32_t*, int32_t*); - void (*scroll_mousedown)(struct rct_window*, int32_t, const ScreenCoordsXY&); - void (*scroll_mousedrag)(struct rct_window*, int32_t, const ScreenCoordsXY&); - void (*scroll_mouseover)(struct rct_window*, int32_t, const ScreenCoordsXY&); - void (*text_input)(struct rct_window*, rct_widgetindex, char*); - void (*viewport_rotate)(struct rct_window*); - void (*unknown_15)(struct rct_window*, int32_t, int32_t); - OpenRCT2String (*tooltip)(struct rct_window*, const rct_widgetindex, const rct_string_id); - void (*cursor)(struct rct_window*, rct_widgetindex, const ScreenCoordsXY&, CursorID*); - void (*moved)(struct rct_window*, const ScreenCoordsXY&); - void (*invalidate)(struct rct_window*); - void (*paint)(struct rct_window*, rct_drawpixelinfo*); - void (*scroll_paint)(struct rct_window*, rct_drawpixelinfo*, int32_t); + void (*close)(struct rct_window*){}; + void (*mouse_up)(struct rct_window*, rct_widgetindex){}; + void (*resize)(struct rct_window*){}; + void (*mouse_down)(struct rct_window*, rct_widgetindex, rct_widget*){}; + void (*dropdown)(struct rct_window*, rct_widgetindex, int32_t){}; + void (*unknown_05)(struct rct_window*){}; + void (*update)(struct rct_window*){}; + void (*periodic_update)(struct rct_window*){}; + void (*unknown_08)(struct rct_window*){}; + void (*tool_update)(struct rct_window*, rct_widgetindex, const ScreenCoordsXY&){}; + void (*tool_down)(struct rct_window*, rct_widgetindex, const ScreenCoordsXY&){}; + void (*tool_drag)(struct rct_window*, rct_widgetindex, const ScreenCoordsXY&){}; + void (*tool_up)(struct rct_window*, rct_widgetindex, const ScreenCoordsXY&){}; + void (*tool_abort)(struct rct_window*, rct_widgetindex){}; + void (*unknown_0E)(struct rct_window*){}; + void (*get_scroll_size)(struct rct_window*, int32_t, int32_t*, int32_t*){}; + void (*scroll_mousedown)(struct rct_window*, int32_t, const ScreenCoordsXY&){}; + void (*scroll_mousedrag)(struct rct_window*, int32_t, const ScreenCoordsXY&){}; + void (*scroll_mouseover)(struct rct_window*, int32_t, const ScreenCoordsXY&){}; + void (*text_input)(struct rct_window*, rct_widgetindex, char*){}; + void (*viewport_rotate)(struct rct_window*){}; + void (*unknown_15)(struct rct_window*, int32_t, int32_t){}; + OpenRCT2String (*tooltip)(struct rct_window*, const rct_widgetindex, const rct_string_id){}; + void (*cursor)(struct rct_window*, rct_widgetindex, const ScreenCoordsXY&, CursorID*){}; + void (*moved)(struct rct_window*, const ScreenCoordsXY&){}; + void (*invalidate)(struct rct_window*){}; + void (*paint)(struct rct_window*, rct_drawpixelinfo*){}; + void (*scroll_paint)(struct rct_window*, rct_drawpixelinfo*, int32_t){}; typedef void (*fnEventInitializer)(rct_window_event_list&); rct_window_event_list(fnEventInitializer fn) diff --git a/src/openrct2/paint/Paint.cpp b/src/openrct2/paint/Paint.cpp index 1f8137ab29..dcec3ea8b0 100644 --- a/src/openrct2/paint/Paint.cpp +++ b/src/openrct2/paint/Paint.cpp @@ -649,6 +649,7 @@ static uint32_t PaintPSColourifyImage(uint32_t imageId, ViewportInteractionItem case ViewportInteractionItem::Banner: imageId &= 0x7FFFF; imageId |= seeThoughFlags; + break; default: break; } @@ -662,6 +663,7 @@ static uint32_t PaintPSColourifyImage(uint32_t imageId, ViewportInteractionItem case ViewportInteractionItem::Wall: imageId &= 0x7FFFF; imageId |= seeThoughFlags; + break; default: break; }