Fix bitwise operation between different enumeration types

On C++20 doing bitwise operation between different enumeration types
is deprecated.
This commit is contained in:
Tulio Leao 2023-01-10 19:48:06 -03:00 committed by GitHub
parent 3c6f93a98a
commit 07d5f73f5d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 17 additions and 15 deletions

View File

@ -570,7 +570,8 @@ static void WidgetCaptionDraw(rct_drawpixelinfo* dpi, rct_window& w, WidgetIndex
}
topLeft.x += width / 2;
DrawTextEllipsised(
dpi, topLeft, width, widget->text, Formatter::Common(), { COLOUR_WHITE | COLOUR_FLAG_OUTLINE, TextAlignment::CENTRE });
dpi, topLeft, width, widget->text, Formatter::Common(),
{ COLOUR_WHITE | static_cast<uint8_t>(COLOUR_FLAG_OUTLINE), TextAlignment::CENTRE });
}
/**

View File

@ -641,7 +641,8 @@ public:
auto screenCoords = windowPos + ScreenCoordsXY{ 0, 2 };
DrawResearchItem(
dpi, _draggedItem, width, screenCoords, STR_WINDOW_COLOUR_2_STRINGID, { COLOUR_BLACK | COLOUR_FLAG_OUTLINE });
dpi, _draggedItem, width, screenCoords, STR_WINDOW_COLOUR_2_STRINGID,
{ COLOUR_BLACK | static_cast<uint8_t>(COLOUR_FLAG_OUTLINE) });
}
void Init(ResearchItem& researchItem, const ScreenCoordsXY& editorPos, int objectSelectionScrollWidth)

View File

@ -307,7 +307,7 @@ public:
if (frame_no >= TabAnimationLoops[_currentTab])
frame_no = 0;
widget_invalidate(*this, WIDX_TAB_1 + _currentTab);
widget_invalidate(*this, WIDX_TAB_1 + static_cast<int32_t>(_currentTab));
if (new_ride.SelectedRide.Type != RIDE_TYPE_NULL && new_ride.selected_ride_countdown-- == 0)
{
@ -705,7 +705,7 @@ private:
{
pressed_widgets &= ~(1 << (WIDX_TAB_1 + i));
}
pressed_widgets |= 1LL << (WIDX_TAB_1 + _currentTab);
pressed_widgets |= 1LL << (WIDX_TAB_1 + static_cast<int32_t>(_currentTab));
}
void RefreshWidgetSizing()
@ -880,7 +880,7 @@ private:
void DrawTabImage(rct_drawpixelinfo& dpi, NewRideTabId tab, int32_t spriteIndex)
{
WidgetIndex widgetIndex = WIDX_TAB_1 + tab;
WidgetIndex widgetIndex = WIDX_TAB_1 + static_cast<int32_t>(tab);
if (widgets[widgetIndex].type != WindowWidgetType::Empty && !WidgetIsDisabled(*this, widgetIndex))
{

View File

@ -885,7 +885,7 @@ static void WindowRideDrawTabImage(rct_drawpixelinfo* dpi, rct_window* w, int32_
*/
static void WindowRideDrawTabMain(rct_drawpixelinfo* dpi, rct_window* w)
{
WidgetIndex widgetIndex = WIDX_TAB_1 + WINDOW_RIDE_PAGE_MAIN;
WidgetIndex widgetIndex = WIDX_TAB_1 + static_cast<int32_t>(WINDOW_RIDE_PAGE_MAIN);
if (!WidgetIsDisabled(*w, widgetIndex))
{
auto ride = get_ride(w->rideId);
@ -923,7 +923,7 @@ static void WindowRideDrawTabMain(rct_drawpixelinfo* dpi, rct_window* w)
*/
static void WindowRideDrawTabVehicle(rct_drawpixelinfo* dpi, rct_window* w)
{
WidgetIndex widgetIndex = WIDX_TAB_1 + WINDOW_RIDE_PAGE_VEHICLE;
WidgetIndex widgetIndex = WIDX_TAB_1 + static_cast<int32_t>(WINDOW_RIDE_PAGE_VEHICLE);
const auto& widget = w->widgets[widgetIndex];
if (!WidgetIsDisabled(*w, widgetIndex))
@ -994,7 +994,7 @@ static void WindowRideDrawTabVehicle(rct_drawpixelinfo* dpi, rct_window* w)
*/
static void WindowRideDrawTabCustomer(rct_drawpixelinfo* dpi, rct_window* w)
{
WidgetIndex widgetIndex = WIDX_TAB_1 + WINDOW_RIDE_PAGE_CUSTOMER;
WidgetIndex widgetIndex = WIDX_TAB_1 + static_cast<int32_t>(WINDOW_RIDE_PAGE_CUSTOMER);
if (!WidgetIsDisabled(*w, widgetIndex))
{

View File

@ -533,7 +533,7 @@ public:
}
else
{
ThemeSetFlags(ThemeGetFlags() ^ UITHEME_FLAG_USE_LIGHTS_PARK);
ThemeSetFlags(ThemeGetFlags() ^ static_cast<uint8_t>(UITHEME_FLAG_USE_LIGHTS_PARK));
ThemeSave();
window_invalidate_all();
}
@ -545,7 +545,7 @@ public:
}
else
{
ThemeSetFlags(ThemeGetFlags() ^ UITHEME_FLAG_USE_ALTERNATIVE_SCENARIO_SELECT_FONT);
ThemeSetFlags(ThemeGetFlags() ^ static_cast<uint8_t>(UITHEME_FLAG_USE_ALTERNATIVE_SCENARIO_SELECT_FONT));
ThemeSave();
window_invalidate_all();
}
@ -557,7 +557,7 @@ public:
}
else
{
ThemeSetFlags(ThemeGetFlags() ^ UITHEME_FLAG_USE_FULL_BOTTOM_TOOLBAR);
ThemeSetFlags(ThemeGetFlags() ^ static_cast<uint8_t>(UITHEME_FLAG_USE_FULL_BOTTOM_TOOLBAR));
ThemeSave();
window_invalidate_all();
}

View File

@ -922,7 +922,7 @@ static void WindowTopToolbarPaint(rct_window* w, rct_drawpixelinfo* dpi)
{
DrawTextBasic(
dpi, screenPos + ScreenCoordsXY{ 26, 2 }, STR_OVERLAY_CLEARANCE_CHECKS_DISABLED, {},
{ COLOUR_DARK_ORANGE | COLOUR_FLAG_OUTLINE, TextAlignment::RIGHT });
{ COLOUR_DARK_ORANGE | static_cast<uint8_t>(COLOUR_FLAG_OUTLINE), TextAlignment::RIGHT });
}
}
@ -996,7 +996,7 @@ static void WindowTopToolbarPaint(rct_window* w, rct_drawpixelinfo* dpi)
ft.Add<int32_t>(network_get_num_visible_players());
DrawTextBasic(
dpi, screenPos + ScreenCoordsXY{ 23, 1 }, STR_COMMA16, ft,
{ COLOUR_WHITE | COLOUR_FLAG_OUTLINE, TextAlignment::RIGHT });
{ COLOUR_WHITE | static_cast<uint8_t>(COLOUR_FLAG_OUTLINE), TextAlignment::RIGHT });
}
}

View File

@ -189,8 +189,8 @@ enum
COLOUR_FLAG_8 = (1 << 8)
};
#define TRANSLUCENT(x) ((x) | COLOUR_FLAG_TRANSLUCENT)
#define NOT_TRANSLUCENT(x) ((x) & ~COLOUR_FLAG_TRANSLUCENT)
#define TRANSLUCENT(x) ((x) | static_cast<uint8_t>(COLOUR_FLAG_TRANSLUCENT))
#define NOT_TRANSLUCENT(x) ((x) & ~static_cast<uint8_t>(COLOUR_FLAG_TRANSLUCENT))
#define BASE_COLOUR(x) ((x)&0x1F)
struct rct_colour_map