Use consistent left-shift notation for widgets (#14956)

This commit is contained in:
Hielke Morsink 2021-06-26 14:23:15 +02:00 committed by GitHub
parent acd45e6f75
commit e54dc7e466
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
59 changed files with 654 additions and 645 deletions

View File

@ -392,7 +392,7 @@ namespace OpenRCT2::Ui::Windows
{
number = GetNewWindowNumber();
custom_info = new CustomWindowInfo(owner, desc);
enabled_widgets = (1 << WIDX_CLOSE);
enabled_widgets = (1ULL << WIDX_CLOSE);
// Set window tab
page = desc.TabIndex.value_or(0);

View File

@ -114,9 +114,9 @@ public:
void OnOpen() override
{
widgets = window_banner_widgets;
enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_BANNER_TEXT) | (1 << WIDX_BANNER_NO_ENTRY)
| (1 << WIDX_BANNER_DEMOLISH) | (1 << WIDX_MAIN_COLOUR) | (1 << WIDX_TEXT_COLOUR_DROPDOWN)
| (1 << WIDX_TEXT_COLOUR_DROPDOWN_BUTTON);
enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_BANNER_TEXT) | (1ULL << WIDX_BANNER_NO_ENTRY)
| (1ULL << WIDX_BANNER_DEMOLISH) | (1ULL << WIDX_MAIN_COLOUR) | (1ULL << WIDX_TEXT_COLOUR_DROPDOWN)
| (1ULL << WIDX_TEXT_COLOUR_DROPDOWN_BUTTON);
WindowInitScrollWidgets(this);
}

View File

@ -94,7 +94,7 @@ public:
}
_personality = WV_NEW_VERSION_INFO;
NewVersionProcessInfo();
enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_OPEN_URL);
enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_OPEN_URL);
widgets[WIDX_OPEN_URL].type = WindowWidgetType::Button;
return true;
@ -103,7 +103,7 @@ public:
{
return false;
}
enabled_widgets = (1 << WIDX_CLOSE);
enabled_widgets = (1ULL << WIDX_CLOSE);
_personality = WV_CHANGELOG;
return true;

View File

@ -81,9 +81,9 @@ rct_window* window_clear_scenery_open()
window = WindowCreate(
ScreenCoordsXY(context_get_width() - WW, 29), WW, WH, &window_clear_scenery_events, WC_CLEAR_SCENERY, 0);
window->widgets = window_clear_scenery_widgets;
window->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_INCREMENT) | (1 << WIDX_DECREMENT) | (1 << WIDX_PREVIEW)
| (1 << WIDX_SMALL_SCENERY) | (1 << WIDX_LARGE_SCENERY) | (1 << WIDX_FOOTPATH);
window->hold_down_widgets = (1 << WIDX_INCREMENT) | (1 << WIDX_DECREMENT);
window->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT)
| (1ULL << WIDX_PREVIEW) | (1ULL << WIDX_SMALL_SCENERY) | (1ULL << WIDX_LARGE_SCENERY) | (1ULL << WIDX_FOOTPATH);
window->hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT);
WindowInitScrollWidgets(window);
window_push_others_below(window);
@ -202,8 +202,8 @@ static void window_clear_scenery_update(rct_window* w)
static void window_clear_scenery_invalidate(rct_window* w)
{
// Set the preview image button to be pressed down
w->pressed_widgets = (1 << WIDX_PREVIEW) | (gClearSmallScenery ? (1 << WIDX_SMALL_SCENERY) : 0)
| (gClearLargeScenery ? (1 << WIDX_LARGE_SCENERY) : 0) | (gClearFootpath ? (1 << WIDX_FOOTPATH) : 0);
w->pressed_widgets = (1ULL << WIDX_PREVIEW) | (gClearSmallScenery ? (1ULL << WIDX_SMALL_SCENERY) : 0)
| (gClearLargeScenery ? (1ULL << WIDX_LARGE_SCENERY) : 0) | (gClearFootpath ? (1ULL << WIDX_FOOTPATH) : 0);
// Update the preview image (for tool sizes up to 7)
window_clear_scenery_widgets[WIDX_PREVIEW].image = LandTool::SizeToSpriteIndex(gLandToolSize);

View File

@ -71,10 +71,10 @@ rct_window* custom_currency_window_open()
window = WindowCreateCentred(400, 100, &_windowCustomCurrencyEvents, WC_CUSTOM_CURRENCY_CONFIG, 0);
window->widgets = window_custom_currency_widgets;
window->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_RATE) | (1 << WIDX_RATE_UP) | (1 << WIDX_RATE_DOWN)
| (1 << WIDX_SYMBOL_TEXT) | (1 << WIDX_AFFIX_DROPDOWN) | (1 << WIDX_AFFIX_DROPDOWN_BUTTON);
window->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_RATE) | (1ULL << WIDX_RATE_UP) | (1ULL << WIDX_RATE_DOWN)
| (1ULL << WIDX_SYMBOL_TEXT) | (1ULL << WIDX_AFFIX_DROPDOWN) | (1ULL << WIDX_AFFIX_DROPDOWN_BUTTON);
window->hold_down_widgets = (1 << WIDX_RATE_UP) | (1 << WIDX_RATE_DOWN);
window->hold_down_widgets = (1ULL << WIDX_RATE_UP) | (1ULL << WIDX_RATE_DOWN);
WindowInitScrollWidgets(window);
window->colours[0] = COLOUR_LIGHT_BROWN;
window->colours[1] = COLOUR_LIGHT_BROWN;

View File

@ -71,8 +71,9 @@ rct_window* window_debug_paint_open()
&window_debug_paint_events, WC_DEBUG_PAINT, WF_STICK_TO_FRONT | WF_TRANSPARENT);
window->widgets = window_debug_paint_widgets;
window->enabled_widgets = (1 << WIDX_TOGGLE_SHOW_WIDE_PATHS) | (1 << WIDX_TOGGLE_SHOW_BLOCKED_TILES)
| (1 << WIDX_TOGGLE_SHOW_BOUND_BOXES) | (1 << WIDX_TOGGLE_SHOW_SEGMENT_HEIGHTS) | (1 << WIDX_TOGGLE_SHOW_DIRTY_VISUALS);
window->enabled_widgets = (1ULL << WIDX_TOGGLE_SHOW_WIDE_PATHS) | (1ULL << WIDX_TOGGLE_SHOW_BLOCKED_TILES)
| (1ULL << WIDX_TOGGLE_SHOW_BOUND_BOXES) | (1ULL << WIDX_TOGGLE_SHOW_SEGMENT_HEIGHTS)
| (1ULL << WIDX_TOGGLE_SHOW_DIRTY_VISUALS);
WindowInitScrollWidgets(window);
window_push_others_below(window);

View File

@ -82,7 +82,7 @@ rct_window* window_ride_demolish_prompt_open(Ride* ride)
}
w->widgets = window_ride_demolish_widgets;
w->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_CANCEL) | (1 << WIDX_DEMOLISH);
w->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_CANCEL) | (1ULL << WIDX_DEMOLISH);
WindowInitScrollWidgets(w);
w->number = ride->id;
_demolishRideCost = -ride_get_refund_price(ride);
@ -107,7 +107,7 @@ rct_window* window_ride_refurbish_prompt_open(Ride* ride)
}
w->widgets = window_ride_refurbish_widgets;
w->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_CANCEL) | (1 << WIDX_REFURBISH);
w->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_CANCEL) | (1ULL << WIDX_REFURBISH);
WindowInitScrollWidgets(w);
w->number = ride->id;
_demolishRideCost = -ride_get_refund_price(ride);

View File

@ -110,8 +110,8 @@ rct_window* window_editor_bottom_toolbar_open()
WC_BOTTOM_TOOLBAR, WF_STICK_TO_FRONT | WF_TRANSPARENT | WF_NO_BACKGROUND);
window->widgets = window_editor_bottom_toolbar_widgets;
window->enabled_widgets |= (1 << WIDX_PREVIOUS_STEP_BUTTON) | (1 << WIDX_NEXT_STEP_BUTTON) | (1 << WIDX_PREVIOUS_IMAGE)
| (1 << WIDX_NEXT_IMAGE);
window->enabled_widgets |= (1ULL << WIDX_PREVIOUS_STEP_BUTTON) | (1ULL << WIDX_NEXT_STEP_BUTTON)
| (1ULL << WIDX_PREVIOUS_IMAGE) | (1ULL << WIDX_NEXT_IMAGE);
WindowInitScrollWidgets(window);
set_all_scenery_items_invented();

View File

@ -256,8 +256,8 @@ rct_window* window_editor_inventions_list_open()
w = WindowCreateCentred(
WW, WH, &window_editor_inventions_list_events, WC_EDITOR_INVENTION_LIST, WF_NO_SCROLLING | WF_RESIZABLE);
w->widgets = window_editor_inventions_list_widgets;
w->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_RESIZE) | (1 << WIDX_TAB_1) | (1 << WIDX_RANDOM_SHUFFLE)
| (1 << WIDX_MOVE_ITEMS_TO_BOTTOM) | (1 << WIDX_MOVE_ITEMS_TO_TOP);
w->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_RESIZE) | (1ULL << WIDX_TAB_1) | (1ULL << WIDX_RANDOM_SHUFFLE)
| (1ULL << WIDX_MOVE_ITEMS_TO_BOTTOM) | (1ULL << WIDX_MOVE_ITEMS_TO_TOP);
WindowInitScrollWidgets(w);
w->selected_tab = 0;
w->research_item = nullptr;
@ -447,8 +447,8 @@ static void window_editor_inventions_list_cursor(
*/
static void window_editor_inventions_list_invalidate(rct_window* w)
{
w->pressed_widgets |= 1 << WIDX_PREVIEW;
w->pressed_widgets |= 1 << WIDX_TAB_1;
w->pressed_widgets |= 1ULL << WIDX_PREVIEW;
w->pressed_widgets |= 1ULL << WIDX_TAB_1;
w->widgets[WIDX_CLOSE].type = gScreenFlags & SCREEN_FLAGS_SCENARIO_EDITOR ? WindowWidgetType::Empty
: WindowWidgetType::CloseBox;

View File

@ -381,9 +381,9 @@ rct_window* window_editor_object_selection_open()
window->widgets = _window_editor_object_selection_widgets.data();
window->widgets[WIDX_FILTER_TEXT_BOX].string = _filter_string;
window->enabled_widgets = (1 << WIDX_ADVANCED) | (1 << WIDX_INSTALL_TRACK) | (1 << WIDX_FILTER_DROPDOWN)
| (1 << WIDX_FILTER_TEXT_BOX) | (1 << WIDX_FILTER_CLEAR_BUTTON) | (1 << WIDX_CLOSE) | (1 << WIDX_LIST_SORT_TYPE)
| (1UL << WIDX_LIST_SORT_RIDE);
window->enabled_widgets = (1ULL << WIDX_ADVANCED) | (1ULL << WIDX_INSTALL_TRACK) | (1ULL << WIDX_FILTER_DROPDOWN)
| (1ULL << WIDX_FILTER_TEXT_BOX) | (1ULL << WIDX_FILTER_CLEAR_BUTTON) | (1ULL << WIDX_CLOSE)
| (1ULL << WIDX_LIST_SORT_TYPE) | (1UL << WIDX_LIST_SORT_RIDE);
_filter_flags = gConfigInterface.object_selection_filter_flags;
std::fill_n(_filter_string, sizeof(_filter_string), 0x00);
@ -808,12 +808,12 @@ static void window_editor_object_selection_invalidate(rct_window* w)
w->widgets[WIDX_FILTER_DROPDOWN].right = w->width - 137;
// Set pressed widgets
w->pressed_widgets |= 1 << WIDX_PREVIEW;
w->pressed_widgets |= 1ULL << WIDX_PREVIEW;
window_editor_object_selection_set_pressed_tab(w);
if (w->list_information_type & 1)
w->pressed_widgets |= (1 << WIDX_ADVANCED);
w->pressed_widgets |= (1ULL << WIDX_ADVANCED);
else
w->pressed_widgets &= ~(1 << WIDX_ADVANCED);
w->pressed_widgets &= ~(1ULL << WIDX_ADVANCED);
// Set window title and buttons
auto ft = Formatter::Common();
@ -886,15 +886,16 @@ static void window_editor_object_selection_invalidate(rct_window* w)
if (ridePage)
{
w->enabled_widgets |= (1 << WIDX_FILTER_RIDE_TAB_ALL) | (1 << WIDX_FILTER_RIDE_TAB_TRANSPORT)
| (1 << WIDX_FILTER_RIDE_TAB_GENTLE) | (1 << WIDX_FILTER_RIDE_TAB_COASTER) | (1 << WIDX_FILTER_RIDE_TAB_THRILL)
| (1 << WIDX_FILTER_RIDE_TAB_WATER) | (1 << WIDX_FILTER_RIDE_TAB_STALL);
w->enabled_widgets |= (1ULL << WIDX_FILTER_RIDE_TAB_ALL) | (1ULL << WIDX_FILTER_RIDE_TAB_TRANSPORT)
| (1ULL << WIDX_FILTER_RIDE_TAB_GENTLE) | (1ULL << WIDX_FILTER_RIDE_TAB_COASTER)
| (1ULL << WIDX_FILTER_RIDE_TAB_THRILL) | (1ULL << WIDX_FILTER_RIDE_TAB_WATER)
| (1ULL << WIDX_FILTER_RIDE_TAB_STALL);
for (int32_t i = 0; i < 7; i++)
w->pressed_widgets &= ~(1 << (WIDX_FILTER_RIDE_TAB_ALL + i));
if ((_filter_flags & FILTER_RIDES) == FILTER_RIDES)
w->pressed_widgets |= (1 << WIDX_FILTER_RIDE_TAB_ALL);
w->pressed_widgets |= (1ULL << WIDX_FILTER_RIDE_TAB_ALL);
else
{
for (int32_t i = 0; i < 6; i++)
@ -927,9 +928,10 @@ static void window_editor_object_selection_invalidate(rct_window* w)
else
{
w->enabled_widgets &= ~(
(1 << WIDX_FILTER_RIDE_TAB_ALL) | (1 << WIDX_FILTER_RIDE_TAB_TRANSPORT) | (1 << WIDX_FILTER_RIDE_TAB_GENTLE)
| (1 << WIDX_FILTER_RIDE_TAB_COASTER) | (1 << WIDX_FILTER_RIDE_TAB_THRILL) | (1 << WIDX_FILTER_RIDE_TAB_WATER)
| (1 << WIDX_FILTER_RIDE_TAB_STALL));
(1ULL << WIDX_FILTER_RIDE_TAB_ALL) | (1ULL << WIDX_FILTER_RIDE_TAB_TRANSPORT)
| (1ULL << WIDX_FILTER_RIDE_TAB_GENTLE) | (1ULL << WIDX_FILTER_RIDE_TAB_COASTER)
| (1ULL << WIDX_FILTER_RIDE_TAB_THRILL) | (1ULL << WIDX_FILTER_RIDE_TAB_WATER)
| (1ULL << WIDX_FILTER_RIDE_TAB_STALL));
for (int32_t i = WIDX_FILTER_RIDE_TAB_FRAME; i <= WIDX_FILTER_RIDE_TAB_STALL; i++)
w->widgets[i].type = WindowWidgetType::Empty;

View File

@ -176,31 +176,31 @@ static rct_window_event_list *window_editor_objective_options_page_events[] = {
#pragma region Enabled widgets
static uint64_t window_editor_objective_options_page_enabled_widgets[] = {
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_OBJECTIVE) |
(1 << WIDX_OBJECTIVE_DROPDOWN) |
(1 << WIDX_OBJECTIVE_ARG_1_INCREASE) |
(1 << WIDX_OBJECTIVE_ARG_1_DECREASE) |
(1 << WIDX_OBJECTIVE_ARG_2_INCREASE) |
(1 << WIDX_OBJECTIVE_ARG_2_DECREASE) |
(1 << WIDX_PARK_NAME) |
(1 << WIDX_SCENARIO_NAME) |
(1 << WIDX_CATEGORY) |
(1 << WIDX_CATEGORY_DROPDOWN) |
(1 << WIDX_DETAILS),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_OBJECTIVE) |
(1ULL << WIDX_OBJECTIVE_DROPDOWN) |
(1ULL << WIDX_OBJECTIVE_ARG_1_INCREASE) |
(1ULL << WIDX_OBJECTIVE_ARG_1_DECREASE) |
(1ULL << WIDX_OBJECTIVE_ARG_2_INCREASE) |
(1ULL << WIDX_OBJECTIVE_ARG_2_DECREASE) |
(1ULL << WIDX_PARK_NAME) |
(1ULL << WIDX_SCENARIO_NAME) |
(1ULL << WIDX_CATEGORY) |
(1ULL << WIDX_CATEGORY_DROPDOWN) |
(1ULL << WIDX_DETAILS),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2)
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2)
};
static uint64_t window_editor_objective_options_page_hold_down_widgets[] = {
(1 << WIDX_OBJECTIVE_ARG_1_INCREASE) |
(1 << WIDX_OBJECTIVE_ARG_1_DECREASE) |
(1 << WIDX_OBJECTIVE_ARG_2_INCREASE) |
(1 << WIDX_OBJECTIVE_ARG_2_DECREASE),
(1ULL << WIDX_OBJECTIVE_ARG_1_INCREASE) |
(1ULL << WIDX_OBJECTIVE_ARG_1_DECREASE) |
(1ULL << WIDX_OBJECTIVE_ARG_2_INCREASE) |
(1ULL << WIDX_OBJECTIVE_ARG_2_DECREASE),
0
};
@ -270,7 +270,7 @@ static void window_editor_objective_options_draw_tab_images(rct_window* w, rct_d
gfx_draw_sprite(dpi, ImageId(spriteIndex), w->windowPos + ScreenCoordsXY{ widget->left, widget->top });
// Tab 2
if (!(w->disabled_widgets & (1 << WIDX_TAB_2)))
if (!(w->disabled_widgets & (1ULL << WIDX_TAB_2)))
{
widget = &w->widgets[WIDX_TAB_2];
spriteIndex = SPR_TAB_RIDE_0;
@ -1125,10 +1125,10 @@ static void window_editor_objective_options_update_disabled_widgets(rct_window*
const auto& rideManager = GetRideManager();
if (std::any_of(rideManager.begin(), rideManager.end(), [](const Ride& ride) { return ride.IsRide(); }))
{
w->disabled_widgets &= ~(1 << WIDX_TAB_2);
w->disabled_widgets &= ~(1ULL << WIDX_TAB_2);
}
else
{
w->disabled_widgets |= (1 << WIDX_TAB_2);
w->disabled_widgets |= (1ULL << WIDX_TAB_2);
}
}

View File

@ -639,13 +639,13 @@ static void window_editor_scenario_options_financial_invalidate(rct_window* w)
if (((gScreenFlags & SCREEN_FLAGS_SCENARIO_EDITOR) && (gParkFlags & PARK_FLAGS_NO_MONEY_SCENARIO))
|| (!(gScreenFlags & SCREEN_FLAGS_SCENARIO_EDITOR) && (gParkFlags & PARK_FLAGS_NO_MONEY)))
{
w->pressed_widgets |= (1 << WIDX_NO_MONEY);
w->pressed_widgets |= (1ULL << WIDX_NO_MONEY);
for (int32_t i = WIDX_INITIAL_CASH; i <= WIDX_FORBID_MARKETING; i++)
w->widgets[i].type = WindowWidgetType::Empty;
}
else
{
w->pressed_widgets &= ~(1 << WIDX_NO_MONEY);
w->pressed_widgets &= ~(1ULL << WIDX_NO_MONEY);
w->widgets[WIDX_INITIAL_CASH].type = WindowWidgetType::Spinner;
w->widgets[WIDX_INITIAL_CASH_INCREASE].type = WindowWidgetType::Button;
w->widgets[WIDX_INITIAL_CASH_DECREASE].type = WindowWidgetType::Button;
@ -662,9 +662,9 @@ static void window_editor_scenario_options_financial_invalidate(rct_window* w)
}
if (gParkFlags & PARK_FLAGS_FORBID_MARKETING_CAMPAIGN)
w->pressed_widgets |= (1 << WIDX_FORBID_MARKETING);
w->pressed_widgets |= (1ULL << WIDX_FORBID_MARKETING);
else
w->pressed_widgets &= ~(1 << WIDX_FORBID_MARKETING);
w->pressed_widgets &= ~(1ULL << WIDX_FORBID_MARKETING);
w->widgets[WIDX_CLOSE].type = (gScreenFlags & SCREEN_FLAGS_SCENARIO_EDITOR) ? WindowWidgetType::Empty
: WindowWidgetType::CloseBox;
@ -933,15 +933,15 @@ static void window_editor_scenario_options_guests_invalidate(rct_window* w)
// Guests prefer less intense rides checkbox
if (gParkFlags & PARK_FLAGS_PREF_LESS_INTENSE_RIDES)
w->pressed_widgets |= (1 << WIDX_GUEST_PREFER_LESS_INTENSE_RIDES);
w->pressed_widgets |= (1ULL << WIDX_GUEST_PREFER_LESS_INTENSE_RIDES);
else
w->pressed_widgets &= ~(1 << WIDX_GUEST_PREFER_LESS_INTENSE_RIDES);
w->pressed_widgets &= ~(1ULL << WIDX_GUEST_PREFER_LESS_INTENSE_RIDES);
// Guests prefer more intense rides checkbox
if (gParkFlags & PARK_FLAGS_PREF_MORE_INTENSE_RIDES)
w->pressed_widgets |= (1 << WIDX_GUEST_PREFER_MORE_INTENSE_RIDES);
w->pressed_widgets |= (1ULL << WIDX_GUEST_PREFER_MORE_INTENSE_RIDES);
else
w->pressed_widgets &= ~(1 << WIDX_GUEST_PREFER_MORE_INTENSE_RIDES);
w->pressed_widgets &= ~(1ULL << WIDX_GUEST_PREFER_MORE_INTENSE_RIDES);
w->widgets[WIDX_CLOSE].type = (gScreenFlags & SCREEN_FLAGS_SCENARIO_EDITOR) ? WindowWidgetType::Empty
: WindowWidgetType::CloseBox;
@ -1285,22 +1285,22 @@ static void window_editor_scenario_options_park_invalidate(rct_window* w)
// Set checkboxes
pressedWidgets = w->pressed_widgets;
pressedWidgets &= ~(1 << WIDX_FORBID_TREE_REMOVAL);
pressedWidgets &= ~(1 << WIDX_FORBID_LANDSCAPE_CHANGES);
pressedWidgets &= ~(1 << WIDX_FORBID_HIGH_CONSTRUCTION);
pressedWidgets &= ~(1 << WIDX_HARD_PARK_RATING);
pressedWidgets &= ~(1 << WIDX_HARD_GUEST_GENERATION);
pressedWidgets &= ~(1ULL << WIDX_FORBID_TREE_REMOVAL);
pressedWidgets &= ~(1ULL << WIDX_FORBID_LANDSCAPE_CHANGES);
pressedWidgets &= ~(1ULL << WIDX_FORBID_HIGH_CONSTRUCTION);
pressedWidgets &= ~(1ULL << WIDX_HARD_PARK_RATING);
pressedWidgets &= ~(1ULL << WIDX_HARD_GUEST_GENERATION);
if (gParkFlags & PARK_FLAGS_FORBID_TREE_REMOVAL)
pressedWidgets |= (1 << WIDX_FORBID_TREE_REMOVAL);
pressedWidgets |= (1ULL << WIDX_FORBID_TREE_REMOVAL);
if (gParkFlags & PARK_FLAGS_FORBID_LANDSCAPE_CHANGES)
pressedWidgets |= (1 << WIDX_FORBID_LANDSCAPE_CHANGES);
pressedWidgets |= (1ULL << WIDX_FORBID_LANDSCAPE_CHANGES);
if (gParkFlags & PARK_FLAGS_FORBID_HIGH_CONSTRUCTION)
pressedWidgets |= (1 << WIDX_FORBID_HIGH_CONSTRUCTION);
pressedWidgets |= (1ULL << WIDX_FORBID_HIGH_CONSTRUCTION);
if (gParkFlags & PARK_FLAGS_DIFFICULT_PARK_RATING)
pressedWidgets |= (1 << WIDX_HARD_PARK_RATING);
pressedWidgets |= (1ULL << WIDX_HARD_PARK_RATING);
if (gParkFlags & PARK_FLAGS_DIFFICULT_GUEST_GENERATION)
pressedWidgets |= (1 << WIDX_HARD_GUEST_GENERATION);
pressedWidgets |= (1ULL << WIDX_HARD_GUEST_GENERATION);
w->pressed_widgets = pressedWidgets;

View File

@ -212,10 +212,10 @@ rct_window* window_footpath_open()
window = WindowCreate(ScreenCoordsXY(0, 29), 106, 381, &window_footpath_events, WC_FOOTPATH, 0);
window->widgets = window_footpath_widgets;
window->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_FOOTPATH_TYPE) | (1 << WIDX_QUEUELINE_TYPE)
| (1 << WIDX_DIRECTION_NW) | (1 << WIDX_DIRECTION_NE) | (1 << WIDX_DIRECTION_SW) | (1 << WIDX_DIRECTION_SE)
| (1 << WIDX_SLOPEDOWN) | (1 << WIDX_LEVEL) | (1 << WIDX_SLOPEUP) | (1 << WIDX_CONSTRUCT) | (1 << WIDX_REMOVE)
| (1 << WIDX_CONSTRUCT_ON_LAND) | (1 << WIDX_CONSTRUCT_BRIDGE_OR_TUNNEL);
window->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_FOOTPATH_TYPE) | (1ULL << WIDX_QUEUELINE_TYPE)
| (1ULL << WIDX_DIRECTION_NW) | (1ULL << WIDX_DIRECTION_NE) | (1ULL << WIDX_DIRECTION_SW) | (1ULL << WIDX_DIRECTION_SE)
| (1ULL << WIDX_SLOPEDOWN) | (1ULL << WIDX_LEVEL) | (1ULL << WIDX_SLOPEUP) | (1ULL << WIDX_CONSTRUCT)
| (1ULL << WIDX_REMOVE) | (1ULL << WIDX_CONSTRUCT_ON_LAND) | (1ULL << WIDX_CONSTRUCT_BRIDGE_OR_TUNNEL);
WindowInitScrollWidgets(window);
window_push_others_right(window);
@ -561,10 +561,10 @@ static void window_footpath_update(rct_window* w)
static void window_footpath_invalidate(rct_window* w)
{
// Press / unpress footpath and queue type buttons
w->pressed_widgets &= ~(1 << WIDX_FOOTPATH_TYPE);
w->pressed_widgets &= ~(1 << WIDX_QUEUELINE_TYPE);
w->pressed_widgets |= _footpathSelectedType == SELECTED_PATH_TYPE_NORMAL ? (1 << WIDX_FOOTPATH_TYPE)
: (1 << WIDX_QUEUELINE_TYPE);
w->pressed_widgets &= ~(1ULL << WIDX_FOOTPATH_TYPE);
w->pressed_widgets &= ~(1ULL << WIDX_QUEUELINE_TYPE);
w->pressed_widgets |= _footpathSelectedType == SELECTED_PATH_TYPE_NORMAL ? (1ULL << WIDX_FOOTPATH_TYPE)
: (1ULL << WIDX_QUEUELINE_TYPE);
// Enable / disable construct button
window_footpath_widgets[WIDX_CONSTRUCT].type = _footpathConstructionMode == PATH_CONSTRUCTION_MODE_BRIDGE_OR_TUNNEL
@ -594,7 +594,7 @@ static void window_footpath_paint(rct_window* w, rct_drawpixelinfo* dpi)
ScreenCoordsXY screenCoords;
WindowDrawWidgets(w, dpi);
if (!(w->disabled_widgets & (1 << WIDX_CONSTRUCT)))
if (!(w->disabled_widgets & (1ULL << WIDX_CONSTRUCT)))
{
// Get construction image
uint8_t direction = (_footpathConstructDirection + get_current_rotation()) % 4;
@ -1159,23 +1159,23 @@ static void window_footpath_set_enabled_and_pressed_widgets()
int32_t slope = gFootpathConstructSlope;
if (slope == TILE_ELEMENT_SLOPE_SE_SIDE_UP)
{
pressedWidgets |= (1 << WIDX_SLOPEDOWN);
pressedWidgets |= (1ULL << WIDX_SLOPEDOWN);
}
else if (slope == TILE_ELEMENT_SLOPE_FLAT)
{
pressedWidgets |= (1 << WIDX_LEVEL);
pressedWidgets |= (1ULL << WIDX_LEVEL);
}
else
{
pressedWidgets |= (1 << WIDX_SLOPEUP);
pressedWidgets |= (1ULL << WIDX_SLOPEUP);
}
// Enable / disable directional widgets
direction = _footpathConstructValidDirections;
if (direction != INVALID_DIRECTION)
{
disabledWidgets |= (1 << WIDX_DIRECTION_NW) | (1 << WIDX_DIRECTION_NE) | (1 << WIDX_DIRECTION_SW)
| (1 << WIDX_DIRECTION_SE);
disabledWidgets |= (1ULL << WIDX_DIRECTION_NW) | (1ULL << WIDX_DIRECTION_NE) | (1ULL << WIDX_DIRECTION_SW)
| (1ULL << WIDX_DIRECTION_SE);
direction = (direction + currentRotation) & 3;
disabledWidgets &= ~(1 << (WIDX_DIRECTION_NW + direction));
@ -1184,9 +1184,9 @@ static void window_footpath_set_enabled_and_pressed_widgets()
else
{
// Disable all bridge mode widgets
disabledWidgets |= (1 << WIDX_DIRECTION_GROUP) | (1 << WIDX_DIRECTION_NW) | (1 << WIDX_DIRECTION_NE)
| (1 << WIDX_DIRECTION_SW) | (1 << WIDX_DIRECTION_SE) | (1 << WIDX_SLOPE_GROUP) | (1 << WIDX_SLOPEDOWN)
| (1 << WIDX_LEVEL) | (1 << WIDX_SLOPEUP) | (1 << WIDX_CONSTRUCT) | (1 << WIDX_REMOVE);
disabledWidgets |= (1ULL << WIDX_DIRECTION_GROUP) | (1ULL << WIDX_DIRECTION_NW) | (1ULL << WIDX_DIRECTION_NE)
| (1ULL << WIDX_DIRECTION_SW) | (1ULL << WIDX_DIRECTION_SE) | (1ULL << WIDX_SLOPE_GROUP) | (1ULL << WIDX_SLOPEDOWN)
| (1ULL << WIDX_LEVEL) | (1ULL << WIDX_SLOPEUP) | (1ULL << WIDX_CONSTRUCT) | (1ULL << WIDX_REMOVE);
}
w->pressed_widgets = pressedWidgets;

View File

@ -116,9 +116,9 @@ rct_window* window_game_bottom_toolbar_open()
ScreenCoordsXY(0, screenHeight - toolbar_height), screenWidth, toolbar_height, &window_game_bottom_toolbar_events,
WC_BOTTOM_TOOLBAR, WF_STICK_TO_FRONT | WF_TRANSPARENT | WF_NO_BACKGROUND);
window->widgets = window_game_bottom_toolbar_widgets;
window->enabled_widgets |= (1 << WIDX_LEFT_OUTSET) | (1 << WIDX_MONEY) | (1 << WIDX_GUESTS) | (1 << WIDX_PARK_RATING)
| (1 << WIDX_MIDDLE_OUTSET) | (1 << WIDX_MIDDLE_INSET) | (1 << WIDX_NEWS_SUBJECT) | (1 << WIDX_NEWS_LOCATE)
| (1 << WIDX_RIGHT_OUTSET) | (1 << WIDX_DATE);
window->enabled_widgets |= (1ULL << WIDX_LEFT_OUTSET) | (1ULL << WIDX_MONEY) | (1ULL << WIDX_GUESTS)
| (1ULL << WIDX_PARK_RATING) | (1ULL << WIDX_MIDDLE_OUTSET) | (1ULL << WIDX_MIDDLE_INSET) | (1ULL << WIDX_NEWS_SUBJECT)
| (1ULL << WIDX_NEWS_LOCATE) | (1ULL << WIDX_RIGHT_OUTSET) | (1ULL << WIDX_DATE);
window->frame_no = 0;
WindowInitScrollWidgets(window);
@ -309,25 +309,25 @@ static void window_game_bottom_toolbar_invalidate(rct_window* w)
window_game_bottom_toolbar_widgets[WIDX_NEWS_LOCATE].type = WindowWidgetType::FlatBtn;
window_game_bottom_toolbar_widgets[WIDX_MIDDLE_OUTSET].colour = 2;
window_game_bottom_toolbar_widgets[WIDX_MIDDLE_INSET].colour = 2;
w->disabled_widgets &= ~(1 << WIDX_NEWS_SUBJECT);
w->disabled_widgets &= ~(1 << WIDX_NEWS_LOCATE);
w->disabled_widgets &= ~(1ULL << WIDX_NEWS_SUBJECT);
w->disabled_widgets &= ~(1ULL << WIDX_NEWS_LOCATE);
// Find out if the news item is no longer valid
auto subjectLoc = News::GetSubjectLocation(newsItem->Type, newsItem->Assoc);
if (subjectLoc == std::nullopt)
w->disabled_widgets |= (1 << WIDX_NEWS_LOCATE);
w->disabled_widgets |= (1ULL << WIDX_NEWS_LOCATE);
if (!(newsItem->TypeHasSubject()))
{
w->disabled_widgets |= (1 << WIDX_NEWS_SUBJECT);
w->disabled_widgets |= (1ULL << WIDX_NEWS_SUBJECT);
window_game_bottom_toolbar_widgets[WIDX_NEWS_SUBJECT].type = WindowWidgetType::Empty;
}
if (newsItem->HasButton())
{
w->disabled_widgets |= (1 << WIDX_NEWS_SUBJECT);
w->disabled_widgets |= (1 << WIDX_NEWS_LOCATE);
w->disabled_widgets |= (1ULL << WIDX_NEWS_SUBJECT);
w->disabled_widgets |= (1ULL << WIDX_NEWS_LOCATE);
}
}
}

View File

@ -270,73 +270,73 @@ void window_guest_set_colours();
// 0x981D3C
static constexpr const uint32_t window_guest_page_enabled_widgets[] = {
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7) |
(1 << WIDX_RENAME)|
(1 << WIDX_PICKUP)|
(1 << WIDX_LOCATE)|
(1 << WIDX_TRACK),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7) |
(1ULL << WIDX_RENAME)|
(1ULL << WIDX_PICKUP)|
(1ULL << WIDX_LOCATE)|
(1ULL << WIDX_TRACK),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7) |
(1 << WIDX_RIDE_SCROLL),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7) |
(1ULL << WIDX_RIDE_SCROLL),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7)
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7)
};
static constexpr const rct_size16 window_guest_page_sizes[][2] = {
@ -489,22 +489,22 @@ void window_guest_disable_widgets(rct_window* w)
if (peep->CanBePickedUp())
{
if (w->disabled_widgets & (1 << WIDX_PICKUP))
if (w->disabled_widgets & (1ULL << WIDX_PICKUP))
w->Invalidate();
}
else
{
disabled_widgets = (1 << WIDX_PICKUP);
if (!(w->disabled_widgets & (1 << WIDX_PICKUP)))
disabled_widgets = (1ULL << WIDX_PICKUP);
if (!(w->disabled_widgets & (1ULL << WIDX_PICKUP)))
w->Invalidate();
}
if (gParkFlags & PARK_FLAGS_NO_MONEY)
{
disabled_widgets |= (1 << WIDX_TAB_4); // Disable finance tab if no money
disabled_widgets |= (1ULL << WIDX_TAB_4); // Disable finance tab if no money
}
if (!gConfigGeneral.debugging_tools)
{
disabled_widgets |= (1 << WIDX_TAB_7); // Disable debug tab when debug tools not turned on
disabled_widgets |= (1ULL << WIDX_TAB_7); // Disable debug tab when debug tools not turned on
}
w->disabled_widgets = disabled_widgets;
}
@ -733,7 +733,7 @@ void window_guest_viewport_init(rct_window* w)
*/
static void window_guest_overview_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
{
if (w->disabled_widgets & (1 << WIDX_TAB_1))
if (w->disabled_widgets & (1ULL << WIDX_TAB_1))
return;
rct_widget* widget = &w->widgets[WIDX_TAB_1];
@ -805,7 +805,7 @@ static void window_guest_overview_tab_paint(rct_window* w, rct_drawpixelinfo* dp
*/
static void window_guest_stats_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
{
if (w->disabled_widgets & (1 << WIDX_TAB_2))
if (w->disabled_widgets & (1ULL << WIDX_TAB_2))
return;
rct_widget* widget = &w->widgets[WIDX_TAB_2];
@ -843,7 +843,7 @@ static void window_guest_stats_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
*/
static void window_guest_rides_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
{
if (w->disabled_widgets & (1 << WIDX_TAB_3))
if (w->disabled_widgets & (1ULL << WIDX_TAB_3))
return;
rct_widget* widget = &w->widgets[WIDX_TAB_3];
@ -865,7 +865,7 @@ static void window_guest_rides_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
*/
static void window_guest_finance_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
{
if (w->disabled_widgets & (1 << WIDX_TAB_4))
if (w->disabled_widgets & (1ULL << WIDX_TAB_4))
return;
rct_widget* widget = &w->widgets[WIDX_TAB_4];
@ -887,7 +887,7 @@ static void window_guest_finance_tab_paint(rct_window* w, rct_drawpixelinfo* dpi
*/
static void window_guest_thoughts_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
{
if (w->disabled_widgets & (1 << WIDX_TAB_5))
if (w->disabled_widgets & (1ULL << WIDX_TAB_5))
return;
rct_widget* widget = &w->widgets[WIDX_TAB_5];
@ -909,7 +909,7 @@ static void window_guest_thoughts_tab_paint(rct_window* w, rct_drawpixelinfo* dp
*/
static void window_guest_inventory_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
{
if (w->disabled_widgets & (1 << WIDX_TAB_6))
if (w->disabled_widgets & (1ULL << WIDX_TAB_6))
return;
rct_widget* widget = &w->widgets[WIDX_TAB_6];
@ -920,7 +920,7 @@ static void window_guest_inventory_tab_paint(rct_window* w, rct_drawpixelinfo* d
static void window_guest_debug_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
{
if (w->disabled_widgets & (1 << WIDX_TAB_7))
if (w->disabled_widgets & (1ULL << WIDX_TAB_7))
return;
rct_widget* widget = &w->widgets[WIDX_TAB_7];
@ -1030,10 +1030,10 @@ void window_guest_overview_invalidate(rct_window* w)
{
return;
}
w->pressed_widgets &= ~(1 << WIDX_TRACK);
w->pressed_widgets &= ~(1ULL << WIDX_TRACK);
if (peep->PeepFlags & PEEP_FLAGS_TRACKING)
{
w->pressed_widgets |= (1 << WIDX_TRACK);
w->pressed_widgets |= (1ULL << WIDX_TRACK);
}
window_guest_overview_widgets[WIDX_VIEWPORT].right = w->width - 26;

View File

@ -151,9 +151,9 @@ public:
void OnOpen() override
{
widgets = window_guest_list_widgets;
enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_PAGE_DROPDOWN) | (1 << WIDX_PAGE_DROPDOWN_BUTTON)
| (1 << WIDX_INFO_TYPE_DROPDOWN) | (1 << WIDX_INFO_TYPE_DROPDOWN_BUTTON) | (1 << WIDX_MAP) | (1 << WIDX_TRACKING)
| (1 << WIDX_TAB_1) | (1 << WIDX_TAB_2) | (1 << WIDX_FILTER_BY_NAME);
enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_PAGE_DROPDOWN) | (1ULL << WIDX_PAGE_DROPDOWN_BUTTON)
| (1ULL << WIDX_INFO_TYPE_DROPDOWN) | (1ULL << WIDX_INFO_TYPE_DROPDOWN_BUTTON) | (1ULL << WIDX_MAP)
| (1ULL << WIDX_TRACKING) | (1ULL << WIDX_TAB_1) | (1ULL << WIDX_TAB_2) | (1ULL << WIDX_FILTER_BY_NAME);
WindowInitScrollWidgets(this);
_selectedTab = TabId::Individual;

View File

@ -113,8 +113,8 @@ rct_window* window_install_track_open(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;
w->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_ROTATE) | (1 << WIDX_TOGGLE_SCENERY) | (1 << WIDX_INSTALL)
| (1 << WIDX_CANCEL);
w->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_ROTATE) | (1ULL << WIDX_TOGGLE_SCENERY) | (1ULL << WIDX_INSTALL)
| (1ULL << WIDX_CANCEL);
WindowInitScrollWidgets(w);
w->track_list.track_list_being_updated = false;
window_push_others_right(w);
@ -176,14 +176,14 @@ static void window_install_track_mouseup(rct_window* w, rct_widgetindex widgetIn
*/
static void window_install_track_invalidate(rct_window* w)
{
w->pressed_widgets |= 1 << WIDX_TRACK_PREVIEW;
w->pressed_widgets |= 1ULL << WIDX_TRACK_PREVIEW;
if (!gTrackDesignSceneryToggle)
{
w->pressed_widgets |= (1 << WIDX_TOGGLE_SCENERY);
w->pressed_widgets |= (1ULL << WIDX_TOGGLE_SCENERY);
}
else
{
w->pressed_widgets &= ~(1 << WIDX_TOGGLE_SCENERY);
w->pressed_widgets &= ~(1ULL << WIDX_TOGGLE_SCENERY);
}
}

View File

@ -68,9 +68,9 @@ public:
void OnOpen() override
{
widgets = window_land_widgets;
enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_DECREMENT) | (1 << WIDX_INCREMENT) | (1 << WIDX_FLOOR)
| (1 << WIDX_WALL) | (1 << WIDX_MOUNTAINMODE) | (1 << WIDX_PAINTMODE) | (1 << WIDX_PREVIEW);
hold_down_widgets = (1 << WIDX_DECREMENT) | (1 << WIDX_INCREMENT);
enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_DECREMENT) | (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_FLOOR)
| (1ULL << WIDX_WALL) | (1ULL << WIDX_MOUNTAINMODE) | (1ULL << WIDX_PAINTMODE) | (1ULL << WIDX_PREVIEW);
hold_down_widgets = (1ULL << WIDX_DECREMENT) | (1ULL << WIDX_INCREMENT);
WindowInitScrollWidgets(this);
window_push_others_below(this);

View File

@ -94,14 +94,14 @@ rct_window* window_land_rights_open()
window = WindowCreate(ScreenCoordsXY(context_get_width() - 98, 29), 98, 94, &window_land_rights_events, WC_LAND_RIGHTS, 0);
window->widgets = window_land_rights_widgets;
window->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_DECREMENT) | (1 << WIDX_INCREMENT) | (1 << WIDX_PREVIEW)
| (1 << WIDX_BUY_LAND_RIGHTS) | (1 << WIDX_BUY_CONSTRUCTION_RIGHTS);
window->hold_down_widgets = (1 << WIDX_INCREMENT) | (1 << WIDX_DECREMENT);
window->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_DECREMENT) | (1ULL << WIDX_INCREMENT)
| (1ULL << WIDX_PREVIEW) | (1ULL << WIDX_BUY_LAND_RIGHTS) | (1ULL << WIDX_BUY_CONSTRUCTION_RIGHTS);
window->hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT);
WindowInitScrollWidgets(window);
window_push_others_below(window);
_landRightsMode = LAND_RIGHTS_MODE_BUY_LAND;
window->pressed_widgets = (1 << WIDX_BUY_LAND_RIGHTS);
window->pressed_widgets = (1ULL << WIDX_BUY_LAND_RIGHTS);
gLandToolSize = 1;
@ -219,10 +219,10 @@ static void window_land_rights_update(rct_window* w)
static void window_land_rights_invalidate(rct_window* w)
{
// Set the preview image button to be pressed down
w->pressed_widgets |= (1 << WIDX_PREVIEW)
| (1 << ((_landRightsMode == LAND_RIGHTS_MODE_BUY_LAND) ? WIDX_BUY_LAND_RIGHTS : WIDX_BUY_CONSTRUCTION_RIGHTS));
w->pressed_widgets |= (1ULL << WIDX_PREVIEW)
| (1ULL << ((_landRightsMode == LAND_RIGHTS_MODE_BUY_LAND) ? WIDX_BUY_LAND_RIGHTS : WIDX_BUY_CONSTRUCTION_RIGHTS));
w->pressed_widgets &= ~(
1
1ULL
<< ((_landRightsMode == LAND_RIGHTS_MODE_BUY_CONSTRUCTION_RIGHTS) ? WIDX_BUY_LAND_RIGHTS
: WIDX_BUY_CONSTRUCTION_RIGHTS));
@ -232,23 +232,23 @@ static void window_land_rights_invalidate(rct_window* w)
// Disable ownership and/or construction buying functions if there are no tiles left for sale
if (gLandRemainingOwnershipSales == 0)
{
w->disabled_widgets |= (1 << WIDX_BUY_LAND_RIGHTS);
w->disabled_widgets |= (1ULL << WIDX_BUY_LAND_RIGHTS);
window_land_rights_widgets[WIDX_BUY_LAND_RIGHTS].tooltip = STR_NO_LAND_RIGHTS_FOR_SALE_TIP;
}
else
{
w->disabled_widgets &= ~(1 << WIDX_BUY_LAND_RIGHTS);
w->disabled_widgets &= ~(1ULL << WIDX_BUY_LAND_RIGHTS);
window_land_rights_widgets[WIDX_BUY_LAND_RIGHTS].tooltip = STR_BUY_LAND_RIGHTS_TIP;
}
if (gLandRemainingConstructionSales == 0)
{
w->disabled_widgets |= (1 << WIDX_BUY_CONSTRUCTION_RIGHTS);
w->disabled_widgets |= (1ULL << WIDX_BUY_CONSTRUCTION_RIGHTS);
window_land_rights_widgets[WIDX_BUY_CONSTRUCTION_RIGHTS].tooltip = STR_NO_CONSTRUCTION_RIGHTS_FOR_SALE_TIP;
}
else
{
w->disabled_widgets &= ~(1 << WIDX_BUY_CONSTRUCTION_RIGHTS);
w->disabled_widgets &= ~(1ULL << WIDX_BUY_CONSTRUCTION_RIGHTS);
window_land_rights_widgets[WIDX_BUY_CONSTRUCTION_RIGHTS].tooltip = STR_BUY_CONSTRUCTION_RIGHTS_TIP;
}
}

View File

@ -265,8 +265,8 @@ rct_window* window_loadsave_open(
{
w = WindowCreateCentred(WW, WH, &window_loadsave_events, WC_LOADSAVE, WF_STICK_TO_FRONT | WF_RESIZABLE);
w->widgets = window_loadsave_widgets;
w->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_UP) | (1 << WIDX_NEW_FOLDER) | (1 << WIDX_NEW_FILE)
| (1 << WIDX_SORT_NAME) | (1 << WIDX_SORT_DATE) | (1 << WIDX_BROWSE) | (1 << WIDX_DEFAULT);
w->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_UP) | (1ULL << WIDX_NEW_FOLDER) | (1ULL << WIDX_NEW_FILE)
| (1ULL << WIDX_SORT_NAME) | (1ULL << WIDX_SORT_DATE) | (1ULL << WIDX_BROWSE) | (1ULL << WIDX_DEFAULT);
w->min_width = WW;
w->min_height = WH / 2;
@ -275,8 +275,8 @@ rct_window* window_loadsave_open(
if (!hasFilePicker)
{
w->enabled_widgets &= ~(1 << WIDX_BROWSE);
w->disabled_widgets |= (1 << WIDX_BROWSE);
w->enabled_widgets &= ~(1ULL << WIDX_BROWSE);
w->disabled_widgets |= (1ULL << WIDX_BROWSE);
window_loadsave_widgets[WIDX_BROWSE].type = WindowWidgetType::Empty;
}
}
@ -834,7 +834,7 @@ static void window_loadsave_populate_list(rct_window* w, int32_t includeNewItem,
if (str_is_null_or_empty(directory) && drives)
{
// List Windows drives
w->disabled_widgets |= (1 << WIDX_NEW_FILE) | (1 << WIDX_NEW_FOLDER) | (1 << WIDX_UP);
w->disabled_widgets |= (1ULL << WIDX_NEW_FILE) | (1ULL << WIDX_NEW_FOLDER) | (1ULL << WIDX_UP);
for (int32_t x = 0; x < 26; x++)
{
if (drives & (1 << x))
@ -878,13 +878,13 @@ static void window_loadsave_populate_list(rct_window* w, int32_t includeNewItem,
// Disable the Up button if the current directory is the root directory
if (str_is_null_or_empty(_parentDirectory) && !drives)
w->disabled_widgets |= (1 << WIDX_UP);
w->disabled_widgets |= (1ULL << WIDX_UP);
else
w->disabled_widgets &= ~(1 << WIDX_UP);
w->disabled_widgets &= ~(1ULL << WIDX_UP);
// Re-enable the "new" buttons if these were disabled
w->disabled_widgets &= ~(1 << WIDX_NEW_FILE);
w->disabled_widgets &= ~(1 << WIDX_NEW_FOLDER);
w->disabled_widgets &= ~(1ULL << WIDX_NEW_FILE);
w->disabled_widgets &= ~(1ULL << WIDX_NEW_FOLDER);
// List all directories
auto subDirectories = Path::GetDirectories(absoluteDirectory);
@ -1161,7 +1161,7 @@ static rct_window* window_overwrite_prompt_open(const char* name, const char* pa
w = WindowCreateCentred(
OVERWRITE_WW, OVERWRITE_WH, &window_overwrite_prompt_events, WC_LOADSAVE_OVERWRITE_PROMPT, WF_STICK_TO_FRONT);
w->widgets = window_overwrite_prompt_widgets;
w->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_OVERWRITE_CANCEL) | (1 << WIDX_OVERWRITE_OVERWRITE);
w->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_OVERWRITE_CANCEL) | (1ULL << WIDX_OVERWRITE_OVERWRITE);
WindowInitScrollWidgets(w);

View File

@ -238,15 +238,16 @@ rct_window* window_map_open()
w = WindowCreateAutoPos(245, 259, &window_map_events, WC_MAP, WF_10);
w->widgets = window_map_widgets;
w->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_PEOPLE_TAB) | (1 << WIDX_RIDES_TAB) | (1 << WIDX_MAP_SIZE_SPINNER)
| (1 << WIDX_MAP_SIZE_SPINNER_UP) | (1 << WIDX_MAP_SIZE_SPINNER_DOWN) | (1 << WIDX_LAND_TOOL)
| (1 << WIDX_LAND_TOOL_SMALLER) | (1 << WIDX_LAND_TOOL_LARGER) | (1 << WIDX_SET_LAND_RIGHTS)
| (1 << WIDX_LAND_OWNED_CHECKBOX) | (1 << WIDX_CONSTRUCTION_RIGHTS_OWNED_CHECKBOX) | (1 << WIDX_LAND_SALE_CHECKBOX)
| (1 << WIDX_CONSTRUCTION_RIGHTS_SALE_CHECKBOX) | (1 << WIDX_BUILD_PARK_ENTRANCE) | (1 << WIDX_ROTATE_90)
| (1 << WIDX_PEOPLE_STARTING_POSITION) | (1 << WIDX_MAP_GENERATOR);
w->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_PEOPLE_TAB) | (1ULL << WIDX_RIDES_TAB)
| (1ULL << WIDX_MAP_SIZE_SPINNER) | (1ULL << WIDX_MAP_SIZE_SPINNER_UP) | (1ULL << WIDX_MAP_SIZE_SPINNER_DOWN)
| (1ULL << WIDX_LAND_TOOL) | (1ULL << WIDX_LAND_TOOL_SMALLER) | (1ULL << WIDX_LAND_TOOL_LARGER)
| (1ULL << WIDX_SET_LAND_RIGHTS) | (1ULL << WIDX_LAND_OWNED_CHECKBOX)
| (1ULL << WIDX_CONSTRUCTION_RIGHTS_OWNED_CHECKBOX) | (1ULL << WIDX_LAND_SALE_CHECKBOX)
| (1ULL << WIDX_CONSTRUCTION_RIGHTS_SALE_CHECKBOX) | (1ULL << WIDX_BUILD_PARK_ENTRANCE) | (1ULL << WIDX_ROTATE_90)
| (1ULL << WIDX_PEOPLE_STARTING_POSITION) | (1ULL << WIDX_MAP_GENERATOR);
w->hold_down_widgets = (1 << WIDX_MAP_SIZE_SPINNER_UP) | (1 << WIDX_MAP_SIZE_SPINNER_DOWN) | (1 << WIDX_LAND_TOOL_LARGER)
| (1 << WIDX_LAND_TOOL_SMALLER);
w->hold_down_widgets = (1ULL << WIDX_MAP_SIZE_SPINNER_UP) | (1ULL << WIDX_MAP_SIZE_SPINNER_DOWN)
| (1ULL << WIDX_LAND_TOOL_LARGER) | (1ULL << WIDX_LAND_TOOL_SMALLER);
WindowInitScrollWidgets(w);
@ -694,16 +695,16 @@ static void window_map_invalidate(rct_window* w)
pressedWidgets |= (1ULL << WIDX_LAND_TOOL);
if (_activeTool & (1 << 3))
pressedWidgets |= (1 << WIDX_LAND_SALE_CHECKBOX);
pressedWidgets |= (1ULL << WIDX_LAND_SALE_CHECKBOX);
if (_activeTool & (1 << 2))
pressedWidgets |= (1 << WIDX_CONSTRUCTION_RIGHTS_SALE_CHECKBOX);
pressedWidgets |= (1ULL << WIDX_CONSTRUCTION_RIGHTS_SALE_CHECKBOX);
if (_activeTool & (1 << 1))
pressedWidgets |= (1 << WIDX_LAND_OWNED_CHECKBOX);
pressedWidgets |= (1ULL << WIDX_LAND_OWNED_CHECKBOX);
if (_activeTool & (1 << 0))
pressedWidgets |= (1 << WIDX_CONSTRUCTION_RIGHTS_OWNED_CHECKBOX);
pressedWidgets |= (1ULL << WIDX_CONSTRUCTION_RIGHTS_OWNED_CHECKBOX);
w->pressed_widgets = pressedWidgets;

View File

@ -780,9 +780,9 @@ static void window_mapgen_random_invalidate(rct_window* w)
w->pressed_widgets = 0;
if (_randomTerrain)
w->pressed_widgets |= 1 << WIDX_RANDOM_TERRAIN;
w->pressed_widgets |= 1ULL << WIDX_RANDOM_TERRAIN;
if (_placeTrees)
w->pressed_widgets |= 1 << WIDX_RANDOM_PLACE_TREES;
w->pressed_widgets |= 1ULL << WIDX_RANDOM_PLACE_TREES;
window_mapgen_set_pressed_tab(w);
}

View File

@ -111,10 +111,10 @@ static rct_widget *window_multiplayer_page_widgets[] = {
};
static constexpr const uint64_t window_multiplayer_page_enabled_widgets[] = {
(1 << WIDX_CLOSE) | (1 << WIDX_TAB1) | (1 << WIDX_TAB2) | (1 << WIDX_TAB3) | (1 << WIDX_TAB4),
(1 << WIDX_CLOSE) | (1 << WIDX_TAB1) | (1 << WIDX_TAB2) | (1 << WIDX_TAB3) | (1 << WIDX_TAB4),
(1 << WIDX_CLOSE) | (1 << WIDX_TAB1) | (1 << WIDX_TAB2) | (1 << WIDX_TAB3) | (1 << WIDX_TAB4) | (1 << WIDX_DEFAULT_GROUP) | (1 << WIDX_DEFAULT_GROUP_DROPDOWN) | (1 << WIDX_ADD_GROUP) | (1 << WIDX_REMOVE_GROUP) | (1 << WIDX_RENAME_GROUP) | (1 << WIDX_SELECTED_GROUP) | (1 << WIDX_SELECTED_GROUP_DROPDOWN),
(1 << WIDX_CLOSE) | (1 << WIDX_TAB1) | (1 << WIDX_TAB2) | (1 << WIDX_TAB3) | (1 << WIDX_TAB4) | (1 << WIDX_LOG_CHAT_CHECKBOX) | (1 << WIDX_LOG_SERVER_ACTIONS_CHECKBOX) | (1 << WIDX_KNOWN_KEYS_ONLY_CHECKBOX),
(1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB1) | (1ULL << WIDX_TAB2) | (1ULL << WIDX_TAB3) | (1ULL << WIDX_TAB4),
(1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB1) | (1ULL << WIDX_TAB2) | (1ULL << WIDX_TAB3) | (1ULL << WIDX_TAB4),
(1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB1) | (1ULL << WIDX_TAB2) | (1ULL << WIDX_TAB3) | (1ULL << WIDX_TAB4) | (1ULL << WIDX_DEFAULT_GROUP) | (1ULL << WIDX_DEFAULT_GROUP_DROPDOWN) | (1ULL << WIDX_ADD_GROUP) | (1ULL << WIDX_REMOVE_GROUP) | (1ULL << WIDX_RENAME_GROUP) | (1ULL << WIDX_SELECTED_GROUP) | (1ULL << WIDX_SELECTED_GROUP_DROPDOWN),
(1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB1) | (1ULL << WIDX_TAB2) | (1ULL << WIDX_TAB3) | (1ULL << WIDX_TAB4) | (1ULL << WIDX_LOG_CHAT_CHECKBOX) | (1ULL << WIDX_LOG_SERVER_ACTIONS_CHECKBOX) | (1ULL << WIDX_KNOWN_KEYS_ONLY_CHECKBOX),
};
static constexpr rct_string_id WindowMultiplayerPageTitles[] = {

View File

@ -109,7 +109,7 @@ rct_window* window_music_credits_open()
window = WindowCreateCentred(510, 314, &window_music_credits_events, WC_MUSIC_CREDITS, 0);
window->widgets = window_music_credits_widgets;
window->enabled_widgets = 1 << WIDX_CLOSE;
window->enabled_widgets = 1ULL << WIDX_CLOSE;
WindowInitScrollWidgets(window);
window->colours[0] = COLOUR_LIGHT_BLUE;

View File

@ -66,7 +66,7 @@ rct_window* window_network_status_open(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;
window->enabled_widgets = 1 << WIDX_CLOSE;
window->enabled_widgets = 1ULL << WIDX_CLOSE;
WindowInitScrollWidgets(window);
window->no_list_items = 0;
window->selected_list_item = -1;

View File

@ -150,9 +150,9 @@ public:
void OnOpen() override
{
widgets = window_new_campaign_widgets;
enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_RIDE_DROPDOWN) | (1 << WIDX_RIDE_DROPDOWN_BUTTON)
| (1 << WIDX_WEEKS_INCREASE_BUTTON) | (1 << WIDX_WEEKS_DECREASE_BUTTON) | (1 << WIDX_START_BUTTON);
hold_down_widgets = (1 << WIDX_WEEKS_INCREASE_BUTTON) | (1 << WIDX_WEEKS_DECREASE_BUTTON);
enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_RIDE_DROPDOWN) | (1ULL << WIDX_RIDE_DROPDOWN_BUTTON)
| (1ULL << WIDX_WEEKS_INCREASE_BUTTON) | (1ULL << WIDX_WEEKS_DECREASE_BUTTON) | (1ULL << WIDX_START_BUTTON);
hold_down_widgets = (1ULL << WIDX_WEEKS_INCREASE_BUTTON) | (1ULL << WIDX_WEEKS_DECREASE_BUTTON);
WindowInitScrollWidgets(this);
}

View File

@ -429,9 +429,9 @@ rct_window* window_new_ride_open()
w = WindowCreateAutoPos(WW, WH, &window_new_ride_events, WC_CONSTRUCT_RIDE, WF_10);
w->widgets = window_new_ride_widgets;
w->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_TAB_1) | (1 << WIDX_TAB_2) | (1 << WIDX_TAB_3) | (1 << WIDX_TAB_4)
| (1 << WIDX_TAB_5) | (1 << WIDX_TAB_6) | (1 << WIDX_TAB_7) | (1 << WIDX_LAST_DEVELOPMENT_BUTTON)
| (1 << WIDX_RESEARCH_FUNDING_BUTTON);
w->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB_1) | (1ULL << WIDX_TAB_2) | (1ULL << WIDX_TAB_3)
| (1ULL << WIDX_TAB_4) | (1ULL << WIDX_TAB_5) | (1ULL << WIDX_TAB_6) | (1ULL << WIDX_TAB_7)
| (1ULL << WIDX_LAST_DEVELOPMENT_BUTTON) | (1ULL << WIDX_RESEARCH_FUNDING_BUTTON);
window_new_ride_populate_list();
WindowInitScrollWidgets(w);

View File

@ -54,7 +54,7 @@ public:
void OnOpen() override
{
widgets = window_news_widgets;
enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_SETTINGS);
enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_SETTINGS);
WindowInitScrollWidgets(this);
_pressedNewsItemIndex = -1;

View File

@ -111,7 +111,8 @@ rct_window* window_news_options_open()
{
window = WindowCreateCentred(400, 300, &window_news_options_events, WC_NOTIFICATION_OPTIONS, 0);
window->widgets = window_news_options_widgets;
window->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_TAB_PARK) | (1 << WIDX_TAB_RIDE) | (1 << WIDX_TAB_GUEST);
window->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB_PARK) | (1ULL << WIDX_TAB_RIDE)
| (1ULL << WIDX_TAB_GUEST);
WindowInitScrollWidgets(window);
window->colours[0] = COLOUR_GREY;
window->colours[1] = COLOUR_LIGHT_BLUE;

View File

@ -412,8 +412,8 @@ rct_window* window_object_load_error_open(utf8* path, size_t numMissingObjects,
window = WindowCreateCentred(WW, WH, &window_object_load_error_events, WC_OBJECT_LOAD_ERROR, 0);
window->widgets = window_object_load_error_widgets;
window->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_COPY_CURRENT) | (1 << WIDX_COPY_ALL)
| (1 << WIDX_DOWNLOAD_ALL);
window->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_COPY_CURRENT) | (1ULL << WIDX_COPY_ALL)
| (1ULL << WIDX_DOWNLOAD_ALL);
WindowInitScrollWidgets(window);
window->colours[0] = COLOUR_LIGHT_BLUE;

View File

@ -432,120 +432,120 @@ static void window_options_update_height_markers();
#pragma region Enabled Widgets
#define MAIN_OPTIONS_ENABLED_WIDGETS \
(1 << WIDX_CLOSE) | \
(1 << WIDX_TAB_1) | \
(1 << WIDX_TAB_2) | \
(1 << WIDX_TAB_3) | \
(1 << WIDX_TAB_4) | \
(1 << WIDX_TAB_5) | \
(1 << WIDX_TAB_6) | \
(1 << WIDX_TAB_7)
(1ULL << WIDX_CLOSE) | \
(1ULL << WIDX_TAB_1) | \
(1ULL << WIDX_TAB_2) | \
(1ULL << WIDX_TAB_3) | \
(1ULL << WIDX_TAB_4) | \
(1ULL << WIDX_TAB_5) | \
(1ULL << WIDX_TAB_6) | \
(1ULL << WIDX_TAB_7)
static uint64_t window_options_page_enabled_widgets[] = {
MAIN_OPTIONS_ENABLED_WIDGETS |
(1 << WIDX_RESOLUTION) |
(1 << WIDX_RESOLUTION_DROPDOWN) |
(1 << WIDX_FULLSCREEN) |
(1 << WIDX_FULLSCREEN_DROPDOWN) |
(1 << WIDX_DRAWING_ENGINE) |
(1 << WIDX_DRAWING_ENGINE_DROPDOWN) |
(1 << WIDX_UNCAP_FPS_CHECKBOX) |
(1 << WIDX_USE_VSYNC_CHECKBOX) |
(1 << WIDX_SHOW_FPS_CHECKBOX) |
(1 << WIDX_MULTITHREADING_CHECKBOX) |
(1 << WIDX_MINIMIZE_FOCUS_LOSS) |
(1 << WIDX_STEAM_OVERLAY_PAUSE) |
(1 << WIDX_DISABLE_SCREENSAVER_LOCK) |
(1 << WIDX_SCALE) |
(1 << WIDX_SCALE_UP) |
(1 << WIDX_SCALE_DOWN) |
(1 << WIDX_SCALE_QUALITY) |
(1 << WIDX_SCALE_QUALITY_DROPDOWN),
(1ULL << WIDX_RESOLUTION) |
(1ULL << WIDX_RESOLUTION_DROPDOWN) |
(1ULL << WIDX_FULLSCREEN) |
(1ULL << WIDX_FULLSCREEN_DROPDOWN) |
(1ULL << WIDX_DRAWING_ENGINE) |
(1ULL << WIDX_DRAWING_ENGINE_DROPDOWN) |
(1ULL << WIDX_UNCAP_FPS_CHECKBOX) |
(1ULL << WIDX_USE_VSYNC_CHECKBOX) |
(1ULL << WIDX_SHOW_FPS_CHECKBOX) |
(1ULL << WIDX_MULTITHREADING_CHECKBOX) |
(1ULL << WIDX_MINIMIZE_FOCUS_LOSS) |
(1ULL << WIDX_STEAM_OVERLAY_PAUSE) |
(1ULL << WIDX_DISABLE_SCREENSAVER_LOCK) |
(1ULL << WIDX_SCALE) |
(1ULL << WIDX_SCALE_UP) |
(1ULL << WIDX_SCALE_DOWN) |
(1ULL << WIDX_SCALE_QUALITY) |
(1ULL << WIDX_SCALE_QUALITY_DROPDOWN),
MAIN_OPTIONS_ENABLED_WIDGETS |
(1 << WIDX_TILE_SMOOTHING_CHECKBOX) |
(1 << WIDX_GRIDLINES_CHECKBOX) |
(1 << WIDX_UPPER_CASE_BANNERS_CHECKBOX) |
(1 << WIDX_SHOW_GUEST_PURCHASES_CHECKBOX) |
(1 << WIDX_TRANSPARENT_SCREENSHOTS_CHECKBOX) |
(1 << WIDX_VIRTUAL_FLOOR) |
(1 << WIDX_VIRTUAL_FLOOR_DROPDOWN) |
(1 << WIDX_DAY_NIGHT_CHECKBOX) |
(1 << WIDX_ENABLE_LIGHT_FX_CHECKBOX) |
(1 << WIDX_ENABLE_LIGHT_FX_FOR_VEHICLES_CHECKBOX) |
(1 << WIDX_RENDER_WEATHER_EFFECTS_CHECKBOX) |
(1 << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX),
(1ULL << WIDX_TILE_SMOOTHING_CHECKBOX) |
(1ULL << WIDX_GRIDLINES_CHECKBOX) |
(1ULL << WIDX_UPPER_CASE_BANNERS_CHECKBOX) |
(1ULL << WIDX_SHOW_GUEST_PURCHASES_CHECKBOX) |
(1ULL << WIDX_TRANSPARENT_SCREENSHOTS_CHECKBOX) |
(1ULL << WIDX_VIRTUAL_FLOOR) |
(1ULL << WIDX_VIRTUAL_FLOOR_DROPDOWN) |
(1ULL << WIDX_DAY_NIGHT_CHECKBOX) |
(1ULL << WIDX_ENABLE_LIGHT_FX_CHECKBOX) |
(1ULL << WIDX_ENABLE_LIGHT_FX_FOR_VEHICLES_CHECKBOX) |
(1ULL << WIDX_RENDER_WEATHER_EFFECTS_CHECKBOX) |
(1ULL << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX),
MAIN_OPTIONS_ENABLED_WIDGETS |
(1 << WIDX_LANGUAGE) |
(1 << WIDX_LANGUAGE_DROPDOWN) |
(1 << WIDX_CURRENCY) |
(1 << WIDX_CURRENCY_DROPDOWN) |
(1 << WIDX_DISTANCE) |
(1 << WIDX_DISTANCE_DROPDOWN) |
(1 << WIDX_TEMPERATURE) |
(1 << WIDX_TEMPERATURE_DROPDOWN) |
(1 << WIDX_HEIGHT_LABELS) |
(1 << WIDX_HEIGHT_LABELS_DROPDOWN) |
(1 << WIDX_DATE_FORMAT) |
(1 << WIDX_DATE_FORMAT_DROPDOWN),
(1ULL << WIDX_LANGUAGE) |
(1ULL << WIDX_LANGUAGE_DROPDOWN) |
(1ULL << WIDX_CURRENCY) |
(1ULL << WIDX_CURRENCY_DROPDOWN) |
(1ULL << WIDX_DISTANCE) |
(1ULL << WIDX_DISTANCE_DROPDOWN) |
(1ULL << WIDX_TEMPERATURE) |
(1ULL << WIDX_TEMPERATURE_DROPDOWN) |
(1ULL << WIDX_HEIGHT_LABELS) |
(1ULL << WIDX_HEIGHT_LABELS_DROPDOWN) |
(1ULL << WIDX_DATE_FORMAT) |
(1ULL << WIDX_DATE_FORMAT_DROPDOWN),
MAIN_OPTIONS_ENABLED_WIDGETS |
(1 << WIDX_SOUND) |
(1 << WIDX_SOUND_DROPDOWN) |
(1 << WIDX_MASTER_SOUND_CHECKBOX) |
(1 << WIDX_SOUND_CHECKBOX) |
(1 << WIDX_MUSIC_CHECKBOX) |
(1 << WIDX_AUDIO_FOCUS_CHECKBOX) |
(1 << WIDX_TITLE_MUSIC) |
(1 << WIDX_TITLE_MUSIC_DROPDOWN),
(1ULL << WIDX_SOUND) |
(1ULL << WIDX_SOUND_DROPDOWN) |
(1ULL << WIDX_MASTER_SOUND_CHECKBOX) |
(1ULL << WIDX_SOUND_CHECKBOX) |
(1ULL << WIDX_MUSIC_CHECKBOX) |
(1ULL << WIDX_AUDIO_FOCUS_CHECKBOX) |
(1ULL << WIDX_TITLE_MUSIC) |
(1ULL << WIDX_TITLE_MUSIC_DROPDOWN),
MAIN_OPTIONS_ENABLED_WIDGETS |
(1 << WIDX_SCREEN_EDGE_SCROLLING) |
(1 << WIDX_TRAP_CURSOR) |
(1 << WIDX_INVERT_DRAG) |
(1 << WIDX_ZOOM_TO_CURSOR) |
(1 << WIDX_HOTKEY_DROPDOWN) |
(1 << WIDX_TOOLBAR_SHOW_FINANCES) |
(1 << WIDX_TOOLBAR_SHOW_RESEARCH) |
(1 << WIDX_TOOLBAR_SHOW_CHEATS) |
(1 << WIDX_TOOLBAR_SHOW_NEWS) |
(1 << WIDX_THEMES) |
(1 << WIDX_THEMES_DROPDOWN) |
(1 << WIDX_THEMES_BUTTON) |
(1 << WIDX_TOOLBAR_SHOW_MUTE) |
(1 << WIDX_TOOLBAR_SHOW_CHAT) |
(1 << WIDX_TOOLBAR_SHOW_ZOOM),
(1ULL << WIDX_SCREEN_EDGE_SCROLLING) |
(1ULL << WIDX_TRAP_CURSOR) |
(1ULL << WIDX_INVERT_DRAG) |
(1ULL << WIDX_ZOOM_TO_CURSOR) |
(1ULL << WIDX_HOTKEY_DROPDOWN) |
(1ULL << WIDX_TOOLBAR_SHOW_FINANCES) |
(1ULL << WIDX_TOOLBAR_SHOW_RESEARCH) |
(1ULL << WIDX_TOOLBAR_SHOW_CHEATS) |
(1ULL << WIDX_TOOLBAR_SHOW_NEWS) |
(1ULL << WIDX_THEMES) |
(1ULL << WIDX_THEMES_DROPDOWN) |
(1ULL << WIDX_THEMES_BUTTON) |
(1ULL << WIDX_TOOLBAR_SHOW_MUTE) |
(1ULL << WIDX_TOOLBAR_SHOW_CHAT) |
(1ULL << WIDX_TOOLBAR_SHOW_ZOOM),
MAIN_OPTIONS_ENABLED_WIDGETS |
(1 << WIDX_REAL_NAME_CHECKBOX) |
(1 << WIDX_AUTO_STAFF_PLACEMENT) |
(1 << WIDX_TITLE_SEQUENCE) |
(1 << WIDX_TITLE_SEQUENCE_DROPDOWN) |
(1 << WIDX_TITLE_SEQUENCE_BUTTON) |
(1 << WIDX_TITLE_SEQUENCE_RANDOM) |
(1 << WIDX_SCENARIO_GROUPING) |
(1 << WIDX_SCENARIO_GROUPING_DROPDOWN) |
(1 << WIDX_SCENARIO_UNLOCKING) |
(1 << WIDX_ALLOW_EARLY_COMPLETION) |
(1 << WIDX_AUTO_OPEN_SHOPS) |
(1 << WIDX_DEFAULT_INSPECTION_INTERVAL) |
(1 << WIDX_DEFAULT_INSPECTION_INTERVAL_DROPDOWN),
(1ULL << WIDX_REAL_NAME_CHECKBOX) |
(1ULL << WIDX_AUTO_STAFF_PLACEMENT) |
(1ULL << WIDX_TITLE_SEQUENCE) |
(1ULL << WIDX_TITLE_SEQUENCE_DROPDOWN) |
(1ULL << WIDX_TITLE_SEQUENCE_BUTTON) |
(1ULL << WIDX_TITLE_SEQUENCE_RANDOM) |
(1ULL << WIDX_SCENARIO_GROUPING) |
(1ULL << WIDX_SCENARIO_GROUPING_DROPDOWN) |
(1ULL << WIDX_SCENARIO_UNLOCKING) |
(1ULL << WIDX_ALLOW_EARLY_COMPLETION) |
(1ULL << WIDX_AUTO_OPEN_SHOPS) |
(1ULL << WIDX_DEFAULT_INSPECTION_INTERVAL) |
(1ULL << WIDX_DEFAULT_INSPECTION_INTERVAL_DROPDOWN),
MAIN_OPTIONS_ENABLED_WIDGETS |
(1 << WIDX_DEBUGGING_TOOLS) |
(1 << WIDX_ALLOW_LOADING_WITH_INCORRECT_CHECKSUM) |
(1 << WIDX_SAVE_PLUGIN_DATA_CHECKBOX) |
(1 << WIDX_STAY_CONNECTED_AFTER_DESYNC) |
(1 << WIDX_ALWAYS_NATIVE_LOADSAVE) |
(1 << WIDX_AUTOSAVE) |
(1 << WIDX_AUTOSAVE_DROPDOWN) |
(1 << WIDX_AUTOSAVE_AMOUNT) |
(1 << WIDX_AUTOSAVE_AMOUNT_UP) |
(1 << WIDX_AUTOSAVE_AMOUNT_DOWN) |
(1 << WIDX_PATH_TO_RCT1_TEXT) |
(1 << WIDX_PATH_TO_RCT1_BUTTON) |
(1 << WIDX_PATH_TO_RCT1_CLEAR),
(1ULL << WIDX_DEBUGGING_TOOLS) |
(1ULL << WIDX_ALLOW_LOADING_WITH_INCORRECT_CHECKSUM) |
(1ULL << WIDX_SAVE_PLUGIN_DATA_CHECKBOX) |
(1ULL << WIDX_STAY_CONNECTED_AFTER_DESYNC) |
(1ULL << WIDX_ALWAYS_NATIVE_LOADSAVE) |
(1ULL << WIDX_AUTOSAVE) |
(1ULL << WIDX_AUTOSAVE_DROPDOWN) |
(1ULL << WIDX_AUTOSAVE_AMOUNT) |
(1ULL << WIDX_AUTOSAVE_AMOUNT_UP) |
(1ULL << WIDX_AUTOSAVE_AMOUNT_DOWN) |
(1ULL << WIDX_PATH_TO_RCT1_TEXT) |
(1ULL << WIDX_PATH_TO_RCT1_BUTTON) |
(1ULL << WIDX_PATH_TO_RCT1_CLEAR),
};
// clang-format on
@ -829,23 +829,23 @@ static void window_options_display_invalidate(rct_window* w)
// Disable resolution dropdown on "Windowed" and "Fullscreen (desktop)"
if (gConfigGeneral.fullscreen_mode != static_cast<int32_t>(OpenRCT2::Ui::FULLSCREEN_MODE::FULLSCREEN))
{
w->disabled_widgets |= (1 << WIDX_RESOLUTION_DROPDOWN);
w->disabled_widgets |= (1 << WIDX_RESOLUTION);
w->disabled_widgets |= (1ULL << WIDX_RESOLUTION_DROPDOWN);
w->disabled_widgets |= (1ULL << WIDX_RESOLUTION);
}
else
{
w->disabled_widgets &= ~(1 << WIDX_RESOLUTION_DROPDOWN);
w->disabled_widgets &= ~(1 << WIDX_RESOLUTION);
w->disabled_widgets &= ~(1ULL << WIDX_RESOLUTION_DROPDOWN);
w->disabled_widgets &= ~(1ULL << WIDX_RESOLUTION);
}
// Disable Steam Overlay checkbox when using software rendering.
if (gConfigGeneral.drawing_engine == DrawingEngine::Software)
{
w->disabled_widgets |= (1 << WIDX_STEAM_OVERLAY_PAUSE);
w->disabled_widgets |= (1ULL << WIDX_STEAM_OVERLAY_PAUSE);
}
else
{
w->disabled_widgets &= ~(1 << WIDX_STEAM_OVERLAY_PAUSE);
w->disabled_widgets &= ~(1ULL << WIDX_STEAM_OVERLAY_PAUSE);
}
// Disable scaling quality dropdown when using software rendering or when using an integer scalar.
@ -853,23 +853,23 @@ static void window_options_display_invalidate(rct_window* w)
if (gConfigGeneral.drawing_engine == DrawingEngine::Software
|| gConfigGeneral.window_scale == std::floor(gConfigGeneral.window_scale))
{
w->disabled_widgets |= (1 << WIDX_SCALE_QUALITY);
w->disabled_widgets |= (1 << WIDX_SCALE_QUALITY_DROPDOWN);
w->disabled_widgets |= (1ULL << WIDX_SCALE_QUALITY);
w->disabled_widgets |= (1ULL << WIDX_SCALE_QUALITY_DROPDOWN);
}
else
{
w->disabled_widgets &= ~(1 << WIDX_SCALE_QUALITY);
w->disabled_widgets &= ~(1 << WIDX_SCALE_QUALITY_DROPDOWN);
w->disabled_widgets &= ~(1ULL << WIDX_SCALE_QUALITY);
w->disabled_widgets &= ~(1ULL << WIDX_SCALE_QUALITY_DROPDOWN);
}
// Disable changing VSync for Software engine, as we can't control its use of VSync
if (gConfigGeneral.drawing_engine == DrawingEngine::Software)
{
w->disabled_widgets |= (1 << WIDX_USE_VSYNC_CHECKBOX);
w->disabled_widgets |= (1ULL << WIDX_USE_VSYNC_CHECKBOX);
}
else
{
w->disabled_widgets &= ~(1 << WIDX_USE_VSYNC_CHECKBOX);
w->disabled_widgets &= ~(1ULL << WIDX_USE_VSYNC_CHECKBOX);
}
WidgetSetCheckboxValue(w, WIDX_UNCAP_FPS_CHECKBOX, gConfigGeneral.uncap_fps);
@ -1058,11 +1058,11 @@ static void window_options_rendering_invalidate(rct_window* w)
WidgetSetCheckboxValue(w, WIDX_ENABLE_LIGHT_FX_CHECKBOX, gConfigGeneral.enable_light_fx);
if (gConfigGeneral.day_night_cycle && gConfigGeneral.drawing_engine == DrawingEngine::SoftwareWithHardwareDisplay)
{
w->disabled_widgets &= ~(1 << WIDX_ENABLE_LIGHT_FX_CHECKBOX);
w->disabled_widgets &= ~(1ULL << WIDX_ENABLE_LIGHT_FX_CHECKBOX);
}
else
{
w->disabled_widgets |= (1 << WIDX_ENABLE_LIGHT_FX_CHECKBOX);
w->disabled_widgets |= (1ULL << WIDX_ENABLE_LIGHT_FX_CHECKBOX);
gConfigGeneral.enable_light_fx = false;
}
@ -1070,11 +1070,11 @@ static void window_options_rendering_invalidate(rct_window* w)
if (gConfigGeneral.day_night_cycle && gConfigGeneral.drawing_engine == DrawingEngine::SoftwareWithHardwareDisplay
&& gConfigGeneral.enable_light_fx)
{
w->disabled_widgets &= ~(1 << WIDX_ENABLE_LIGHT_FX_FOR_VEHICLES_CHECKBOX);
w->disabled_widgets &= ~(1ULL << WIDX_ENABLE_LIGHT_FX_FOR_VEHICLES_CHECKBOX);
}
else
{
w->disabled_widgets |= (1 << WIDX_ENABLE_LIGHT_FX_FOR_VEHICLES_CHECKBOX);
w->disabled_widgets |= (1ULL << WIDX_ENABLE_LIGHT_FX_FOR_VEHICLES_CHECKBOX);
gConfigGeneral.enable_light_fx_for_vehicles = false;
}
@ -1084,13 +1084,13 @@ static void window_options_rendering_invalidate(rct_window* w)
if (!gConfigGeneral.render_weather_effects && !gConfigGeneral.render_weather_gloom)
{
WidgetSetCheckboxValue(w, WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX, true);
w->enabled_widgets &= ~(1 << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX);
w->disabled_widgets |= (1 << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX);
w->enabled_widgets &= ~(1ULL << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX);
w->disabled_widgets |= (1ULL << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX);
}
else
{
w->enabled_widgets |= (1 << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX);
w->disabled_widgets &= ~(1 << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX);
w->enabled_widgets |= (1ULL << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX);
w->disabled_widgets &= ~(1ULL << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX);
}
window_options_common_invalidate_after(w);
@ -1926,13 +1926,13 @@ static void window_options_misc_invalidate(rct_window* w)
// Disable title sequence dropdown if set to random
if (gConfigInterface.random_title_sequence)
{
w->disabled_widgets |= (1 << WIDX_TITLE_SEQUENCE_DROPDOWN);
w->disabled_widgets |= (1 << WIDX_TITLE_SEQUENCE);
w->disabled_widgets |= (1ULL << WIDX_TITLE_SEQUENCE_DROPDOWN);
w->disabled_widgets |= (1ULL << WIDX_TITLE_SEQUENCE);
}
else
{
w->disabled_widgets &= ~(1 << WIDX_TITLE_SEQUENCE_DROPDOWN);
w->disabled_widgets &= ~(1 << WIDX_TITLE_SEQUENCE);
w->disabled_widgets &= ~(1ULL << WIDX_TITLE_SEQUENCE_DROPDOWN);
w->disabled_widgets &= ~(1ULL << WIDX_TITLE_SEQUENCE);
}
if (gConfigGeneral.scenario_select_mode == SCENARIO_SELECT_MODE_DIFFICULTY)

View File

@ -281,77 +281,77 @@ static rct_window_event_list *window_park_page_events[] = {
#pragma region Enabled widgets
static uint32_t window_park_page_enabled_widgets[] = {
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7) |
(1 << WIDX_OPEN_OR_CLOSE) |
(1 << WIDX_BUY_LAND_RIGHTS) |
(1 << WIDX_LOCATE) |
(1 << WIDX_RENAME) |
(1 << WIDX_CLOSE_LIGHT) |
(1 << WIDX_OPEN_LIGHT),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7) |
(1ULL << WIDX_OPEN_OR_CLOSE) |
(1ULL << WIDX_BUY_LAND_RIGHTS) |
(1ULL << WIDX_LOCATE) |
(1ULL << WIDX_RENAME) |
(1ULL << WIDX_CLOSE_LIGHT) |
(1ULL << WIDX_OPEN_LIGHT),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7) |
(1 << WIDX_INCREASE_PRICE) |
(1 << WIDX_DECREASE_PRICE),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7) |
(1ULL << WIDX_INCREASE_PRICE) |
(1ULL << WIDX_DECREASE_PRICE),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7) |
(1 << WIDX_ENTER_NAME),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7) |
(1ULL << WIDX_ENTER_NAME),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_TAB_4) |
(1 << WIDX_TAB_5) |
(1 << WIDX_TAB_6) |
(1 << WIDX_TAB_7)
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_TAB_4) |
(1ULL << WIDX_TAB_5) |
(1ULL << WIDX_TAB_6) |
(1ULL << WIDX_TAB_7)
};
static uint32_t window_park_page_hold_down_widgets[] = {
@ -359,8 +359,8 @@ static uint32_t window_park_page_hold_down_widgets[] = {
0,
0,
(1 << WIDX_INCREASE_PRICE) |
(1 << WIDX_DECREASE_PRICE),
(1ULL << WIDX_INCREASE_PRICE) |
(1ULL << WIDX_DECREASE_PRICE),
0,
0,
@ -432,7 +432,7 @@ static rct_window* window_park_open()
static void window_park_set_disabled_tabs(rct_window* w)
{
// Disable price tab if money is disabled
w->disabled_widgets = (gParkFlags & PARK_FLAGS_NO_MONEY) ? (1 << WIDX_TAB_4) : 0;
w->disabled_widgets = (gParkFlags & PARK_FLAGS_NO_MONEY) ? (1ULL << WIDX_TAB_4) : 0;
}
static void window_park_prepare_window_title_text()
@ -642,9 +642,9 @@ static void window_park_entrance_invalidate(rct_window* w)
// Only allow closing of park for guest / rating objective
if (gScenarioObjective.Type == OBJECTIVE_GUESTS_AND_RATING)
w->disabled_widgets |= (1 << WIDX_OPEN_OR_CLOSE) | (1 << WIDX_CLOSE_LIGHT) | (1 << WIDX_OPEN_LIGHT);
w->disabled_widgets |= (1ULL << WIDX_OPEN_OR_CLOSE) | (1ULL << WIDX_CLOSE_LIGHT) | (1ULL << WIDX_OPEN_LIGHT);
else
w->disabled_widgets &= ~((1 << WIDX_OPEN_OR_CLOSE) | (1 << WIDX_CLOSE_LIGHT) | (1 << WIDX_OPEN_LIGHT));
w->disabled_widgets &= ~((1ULL << WIDX_OPEN_OR_CLOSE) | (1ULL << WIDX_CLOSE_LIGHT) | (1ULL << WIDX_OPEN_LIGHT));
// Only allow purchase of land when there is money
if (gParkFlags & PARK_FLAGS_NO_MONEY)
@ -1698,13 +1698,13 @@ static void window_park_draw_tab_images(rct_drawpixelinfo* dpi, rct_window* w)
int32_t sprite_idx;
// Entrance tab
if (!(w->disabled_widgets & (1 << WIDX_TAB_1)))
if (!(w->disabled_widgets & (1ULL << WIDX_TAB_1)))
gfx_draw_sprite(
dpi, ImageId(SPR_TAB_PARK_ENTRANCE),
w->windowPos + ScreenCoordsXY{ w->widgets[WIDX_TAB_1].left, w->widgets[WIDX_TAB_1].top });
// Rating tab
if (!(w->disabled_widgets & (1 << WIDX_TAB_2)))
if (!(w->disabled_widgets & (1ULL << WIDX_TAB_2)))
{
sprite_idx = SPR_TAB_GRAPH_0;
if (w->page == WINDOW_PARK_PAGE_RATING)
@ -1720,7 +1720,7 @@ static void window_park_draw_tab_images(rct_drawpixelinfo* dpi, rct_window* w)
}
// Guests tab
if (!(w->disabled_widgets & (1 << WIDX_TAB_3)))
if (!(w->disabled_widgets & (1ULL << WIDX_TAB_3)))
{
sprite_idx = SPR_TAB_GRAPH_0;
if (w->page == WINDOW_PARK_PAGE_GUESTS)
@ -1739,7 +1739,7 @@ static void window_park_draw_tab_images(rct_drawpixelinfo* dpi, rct_window* w)
}
// Price tab
if (!(w->disabled_widgets & (1 << WIDX_TAB_4)))
if (!(w->disabled_widgets & (1ULL << WIDX_TAB_4)))
{
sprite_idx = SPR_TAB_ADMISSION_0;
if (w->page == WINDOW_PARK_PAGE_PRICE)
@ -1749,7 +1749,7 @@ static void window_park_draw_tab_images(rct_drawpixelinfo* dpi, rct_window* w)
}
// Statistics tab
if (!(w->disabled_widgets & (1 << WIDX_TAB_5)))
if (!(w->disabled_widgets & (1ULL << WIDX_TAB_5)))
{
sprite_idx = SPR_TAB_STATS_0;
if (w->page == WINDOW_PARK_PAGE_STATS)
@ -1759,7 +1759,7 @@ static void window_park_draw_tab_images(rct_drawpixelinfo* dpi, rct_window* w)
}
// Objective tab
if (!(w->disabled_widgets & (1 << WIDX_TAB_6)))
if (!(w->disabled_widgets & (1ULL << WIDX_TAB_6)))
{
sprite_idx = SPR_TAB_OBJECTIVE_0;
if (w->page == WINDOW_PARK_PAGE_OBJECTIVE)
@ -1769,7 +1769,7 @@ static void window_park_draw_tab_images(rct_drawpixelinfo* dpi, rct_window* w)
}
// Awards tab
if (!(w->disabled_widgets & (1 << WIDX_TAB_7)))
if (!(w->disabled_widgets & (1ULL << WIDX_TAB_7)))
gfx_draw_sprite(
dpi, ImageId(SPR_TAB_AWARDS),
w->windowPos + ScreenCoordsXY{ w->widgets[WIDX_TAB_7].left, w->widgets[WIDX_TAB_7].top });

View File

@ -130,17 +130,17 @@ static void window_player_update_viewport(rct_window *w, bool scroll);
static void window_player_update_title(rct_window* w);
static uint32_t window_player_page_enabled_widgets[] = {
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_GROUP) |
(1 << WIDX_GROUP_DROPDOWN) |
(1 << WIDX_LOCATE) |
(1 << WIDX_KICK),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_GROUP) |
(1ULL << WIDX_GROUP_DROPDOWN) |
(1ULL << WIDX_LOCATE) |
(1ULL << WIDX_KICK),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2)
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2)
};
// clang-format on

View File

@ -141,23 +141,23 @@ static rct_window_event_list *window_research_page_events[] = {
#pragma region Enabled widgets
static uint32_t window_research_page_enabled_widgets[] = {
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_LAST_DEVELOPMENT_BUTTON),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_LAST_DEVELOPMENT_BUTTON),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_RESEARCH_FUNDING) |
(1 << WIDX_RESEARCH_FUNDING_DROPDOWN_BUTTON) |
(1 << WIDX_TRANSPORT_RIDES) |
(1 << WIDX_GENTLE_RIDES) |
(1 << WIDX_ROLLER_COASTERS) |
(1 << WIDX_THRILL_RIDES) |
(1 << WIDX_WATER_RIDES) |
(1 << WIDX_SHOPS_AND_STALLS) |
(1 << WIDX_SCENERY_AND_THEMING)
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_RESEARCH_FUNDING) |
(1ULL << WIDX_RESEARCH_FUNDING_DROPDOWN_BUTTON) |
(1ULL << WIDX_TRANSPORT_RIDES) |
(1ULL << WIDX_GENTLE_RIDES) |
(1ULL << WIDX_ROLLER_COASTERS) |
(1ULL << WIDX_THRILL_RIDES) |
(1ULL << WIDX_WATER_RIDES) |
(1ULL << WIDX_SHOPS_AND_STALLS) |
(1ULL << WIDX_SCENERY_AND_THEMING)
};
#pragma endregion

View File

@ -1113,45 +1113,45 @@ static void window_ride_disable_tabs(rct_window* w)
const auto& rtd = ride->GetRideTypeDescriptor();
if (!rtd.HasFlag(RIDE_TYPE_FLAG_HAS_DATA_LOGGING))
disabled_tabs |= (1 << WIDX_TAB_8); // 0x800
disabled_tabs |= (1ULL << WIDX_TAB_8); // 0x800
if (ride->type == RIDE_TYPE_MINI_GOLF)
disabled_tabs |= (1 << WIDX_TAB_2 | 1 << WIDX_TAB_3 | 1 << WIDX_TAB_4); // 0xE0
disabled_tabs |= (1ULL << WIDX_TAB_2 | 1ULL << WIDX_TAB_3 | 1ULL << WIDX_TAB_4); // 0xE0
if (rtd.HasFlag(RIDE_TYPE_FLAG_NO_VEHICLES))
disabled_tabs |= (1 << WIDX_TAB_2); // 0x20
disabled_tabs |= (1ULL << WIDX_TAB_2); // 0x20
if (!rtd.HasFlag(RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_MAIN) && !rtd.HasFlag(RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_ADDITIONAL)
&& !rtd.HasFlag(RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_SUPPORTS) && !rtd.HasFlag(RIDE_TYPE_FLAG_HAS_VEHICLE_COLOURS)
&& !rtd.HasFlag(RIDE_TYPE_FLAG_HAS_ENTRANCE_EXIT))
{
disabled_tabs |= (1 << WIDX_TAB_5); // 0x100
disabled_tabs |= (1ULL << WIDX_TAB_5); // 0x100
}
if (rtd.HasFlag(RIDE_TYPE_FLAG_IS_SHOP))
disabled_tabs |= (1 << WIDX_TAB_3 | 1 << WIDX_TAB_4 | 1 << WIDX_TAB_7); // 0x4C0
disabled_tabs |= (1ULL << WIDX_TAB_3 | 1ULL << WIDX_TAB_4 | 1ULL << WIDX_TAB_7); // 0x4C0
if (!rtd.HasFlag(RIDE_TYPE_FLAG_ALLOW_MUSIC))
{
disabled_tabs |= (1 << WIDX_TAB_6); // 0x200
disabled_tabs |= (1ULL << WIDX_TAB_6); // 0x200
}
if (ride->type == RIDE_TYPE_CASH_MACHINE || ride->type == RIDE_TYPE_FIRST_AID || (gParkFlags & PARK_FLAGS_NO_MONEY) != 0)
disabled_tabs |= (1 << WIDX_TAB_9); // 0x1000
disabled_tabs |= (1ULL << WIDX_TAB_9); // 0x1000
if ((gScreenFlags & SCREEN_FLAGS_TRACK_DESIGNER) != 0)
disabled_tabs |= (1 << WIDX_TAB_4 | 1 << WIDX_TAB_6 | 1 << WIDX_TAB_9 | 1 << WIDX_TAB_10); // 0x3280
disabled_tabs |= (1ULL << WIDX_TAB_4 | 1ULL << WIDX_TAB_6 | 1ULL << WIDX_TAB_9 | 1ULL << WIDX_TAB_10); // 0x3280
rct_ride_entry* rideEntry = get_ride_entry(ride->subtype);
if (rideEntry == nullptr)
{
disabled_tabs |= 1 << WIDX_TAB_2 | 1 << WIDX_TAB_3 | 1 << WIDX_TAB_4 | 1 << WIDX_TAB_5 | 1 << WIDX_TAB_6
| 1 << WIDX_TAB_7 | 1 << WIDX_TAB_8 | 1 << WIDX_TAB_9 | 1 << WIDX_TAB_10;
disabled_tabs |= 1ULL << WIDX_TAB_2 | 1ULL << WIDX_TAB_3 | 1ULL << WIDX_TAB_4 | 1ULL << WIDX_TAB_5 | 1ULL << WIDX_TAB_6
| 1ULL << WIDX_TAB_7 | 1ULL << WIDX_TAB_8 | 1ULL << WIDX_TAB_9 | 1ULL << WIDX_TAB_10;
}
else if ((rideEntry->flags & RIDE_ENTRY_FLAG_DISABLE_COLOUR_TAB) != 0)
{
disabled_tabs |= (1 << WIDX_TAB_5);
disabled_tabs |= (1ULL << WIDX_TAB_5);
}
w->disabled_widgets = disabled_tabs;
@ -2329,9 +2329,9 @@ static void window_ride_main_invalidate(rct_window* w)
if (ride == nullptr)
return;
w->disabled_widgets &= ~((1 << WIDX_DEMOLISH) | (1 << WIDX_CONSTRUCTION));
w->disabled_widgets &= ~((1ULL << WIDX_DEMOLISH) | (1ULL << WIDX_CONSTRUCTION));
if (ride->lifecycle_flags & (RIDE_LIFECYCLE_INDESTRUCTIBLE | RIDE_LIFECYCLE_INDESTRUCTIBLE_TRACK))
w->disabled_widgets |= (1 << WIDX_DEMOLISH);
w->disabled_widgets |= (1ULL << WIDX_DEMOLISH);
auto ft = Formatter::Common();
ride->FormatNameTo(ft);
@ -3509,7 +3509,7 @@ static void window_ride_operating_invalidate(rct_window* w)
ft.Add<uint16_t>(ride->max_waiting_time);
if (ride->depart_flags & RIDE_DEPART_WAIT_FOR_LOAD)
w->pressed_widgets |= (1 << WIDX_LOAD_CHECKBOX);
w->pressed_widgets |= (1ULL << WIDX_LOAD_CHECKBOX);
}
else
{
@ -3529,13 +3529,13 @@ static void window_ride_operating_invalidate(rct_window* w)
}
if (ride->depart_flags & RIDE_DEPART_LEAVE_WHEN_ANOTHER_ARRIVES)
w->pressed_widgets |= (1 << WIDX_LEAVE_WHEN_ANOTHER_ARRIVES_CHECKBOX);
w->pressed_widgets |= (1ULL << WIDX_LEAVE_WHEN_ANOTHER_ARRIVES_CHECKBOX);
if (ride->depart_flags & RIDE_DEPART_SYNCHRONISE_WITH_ADJACENT_STATIONS)
w->pressed_widgets |= (1 << WIDX_SYNCHRONISE_WITH_ADJACENT_STATIONS_CHECKBOX);
w->pressed_widgets |= (1ULL << WIDX_SYNCHRONISE_WITH_ADJACENT_STATIONS_CHECKBOX);
if (ride->depart_flags & RIDE_DEPART_WAIT_FOR_MINIMUM_LENGTH)
w->pressed_widgets |= (1 << WIDX_MINIMUM_LENGTH_CHECKBOX);
w->pressed_widgets |= (1ULL << WIDX_MINIMUM_LENGTH_CHECKBOX);
if (ride->depart_flags & RIDE_DEPART_WAIT_FOR_MAXIMUM_LENGTH)
w->pressed_widgets |= (1 << WIDX_MAXIMUM_LENGTH_CHECKBOX);
w->pressed_widgets |= (1ULL << WIDX_MAXIMUM_LENGTH_CHECKBOX);
// Mode specific functionality
ft.Rewind();
@ -3612,7 +3612,7 @@ static void window_ride_operating_invalidate(rct_window* w)
window_ride_operating_widgets[WIDX_MODE_TWEAK].text = format;
window_ride_operating_widgets[WIDX_MODE_TWEAK_INCREASE].type = WindowWidgetType::Button;
window_ride_operating_widgets[WIDX_MODE_TWEAK_DECREASE].type = WindowWidgetType::Button;
w->pressed_widgets &= ~(1 << WIDX_LEAVE_WHEN_ANOTHER_ARRIVES_CHECKBOX);
w->pressed_widgets &= ~(1ULL << WIDX_LEAVE_WHEN_ANOTHER_ARRIVES_CHECKBOX);
}
else
{
@ -4012,12 +4012,12 @@ static void window_ride_maintenance_invalidate(rct_window* w)
if (ride->GetRideTypeDescriptor().AvailableBreakdowns == 0 || !(ride->lifecycle_flags & RIDE_LIFECYCLE_EVER_BEEN_OPENED))
{
w->disabled_widgets |= (1 << WIDX_REFURBISH_RIDE);
w->disabled_widgets |= (1ULL << WIDX_REFURBISH_RIDE);
window_ride_maintenance_widgets[WIDX_REFURBISH_RIDE].tooltip = STR_CANT_REFURBISH_NOT_NEEDED;
}
else
{
w->disabled_widgets &= ~(1 << WIDX_REFURBISH_RIDE);
w->disabled_widgets &= ~(1ULL << WIDX_REFURBISH_RIDE);
window_ride_maintenance_widgets[WIDX_REFURBISH_RIDE].tooltip = STR_REFURBISH_RIDE_TIP;
}
}
@ -5129,15 +5129,15 @@ static void window_ride_music_invalidate(rct_window* w)
auto isMusicActivated = (ride->lifecycle_flags & RIDE_LIFECYCLE_MUSIC) != 0;
if (isMusicActivated)
{
w->pressed_widgets |= (1 << WIDX_PLAY_MUSIC);
w->disabled_widgets &= ~(1 << WIDX_MUSIC);
w->disabled_widgets &= ~(1 << WIDX_MUSIC_DROPDOWN);
w->pressed_widgets |= (1ULL << WIDX_PLAY_MUSIC);
w->disabled_widgets &= ~(1ULL << WIDX_MUSIC);
w->disabled_widgets &= ~(1ULL << WIDX_MUSIC_DROPDOWN);
}
else
{
w->pressed_widgets &= ~(1 << WIDX_PLAY_MUSIC);
w->disabled_widgets |= (1 << WIDX_MUSIC);
w->disabled_widgets |= (1 << WIDX_MUSIC_DROPDOWN);
w->pressed_widgets &= ~(1ULL << WIDX_PLAY_MUSIC);
w->disabled_widgets |= (1ULL << WIDX_MUSIC);
w->disabled_widgets |= (1ULL << WIDX_MUSIC_DROPDOWN);
}
window_ride_anchor_border_widgets(w);
@ -5504,12 +5504,12 @@ static void window_ride_measurements_invalidate(rct_window* w)
window_ride_measurements_widgets[WIDX_CANCEL_DESIGN].type = WindowWidgetType::Empty;
window_ride_measurements_widgets[WIDX_SAVE_TRACK_DESIGN].type = WindowWidgetType::FlatBtn;
w->disabled_widgets |= (1 << WIDX_SAVE_TRACK_DESIGN);
w->disabled_widgets |= (1ULL << WIDX_SAVE_TRACK_DESIGN);
if (ride->lifecycle_flags & RIDE_LIFECYCLE_TESTED)
{
if (ride->excitement != RIDE_RATING_UNDEFINED)
{
w->disabled_widgets &= ~(1 << WIDX_SAVE_TRACK_DESIGN);
w->disabled_widgets &= ~(1ULL << WIDX_SAVE_TRACK_DESIGN);
window_ride_measurements_widgets[WIDX_SAVE_TRACK_DESIGN].tooltip = STR_SAVE_TRACK_DESIGN;
}
}
@ -5959,10 +5959,10 @@ static void window_ride_graphs_invalidate(rct_window* w)
ride->FormatNameTo(ft);
// Set pressed graph button type
w->pressed_widgets &= ~(1 << WIDX_GRAPH_VELOCITY);
w->pressed_widgets &= ~(1 << WIDX_GRAPH_ALTITUDE);
w->pressed_widgets &= ~(1 << WIDX_GRAPH_VERTICAL);
w->pressed_widgets &= ~(1 << WIDX_GRAPH_LATERAL);
w->pressed_widgets &= ~(1ULL << WIDX_GRAPH_VELOCITY);
w->pressed_widgets &= ~(1ULL << WIDX_GRAPH_ALTITUDE);
w->pressed_widgets &= ~(1ULL << WIDX_GRAPH_VERTICAL);
w->pressed_widgets &= ~(1ULL << WIDX_GRAPH_LATERAL);
w->pressed_widgets |= (1LL << (WIDX_GRAPH_VELOCITY + (w->list_information_type & 0xFF)));
// Hide graph buttons that are not applicable
@ -6519,8 +6519,8 @@ static void window_ride_income_invalidate(rct_window* w)
return;
// Primary item
w->pressed_widgets &= ~(1 << WIDX_PRIMARY_PRICE_SAME_THROUGHOUT_PARK);
w->disabled_widgets &= ~(1 << WIDX_PRIMARY_PRICE);
w->pressed_widgets &= ~(1ULL << WIDX_PRIMARY_PRICE_SAME_THROUGHOUT_PARK);
w->disabled_widgets &= ~(1ULL << WIDX_PRIMARY_PRICE);
window_ride_income_widgets[WIDX_PRIMARY_PRICE_LABEL].tooltip = STR_NONE;
window_ride_income_widgets[WIDX_PRIMARY_PRICE].tooltip = STR_NONE;
@ -6528,7 +6528,7 @@ static void window_ride_income_invalidate(rct_window* w)
// If ride prices are locked, do not allow setting the price, unless we're dealing with a shop or toilet.
if (!park_ride_prices_unlocked() && rideEntry->shop_item[0] == ShopItem::None && ride->type != RIDE_TYPE_TOILETS)
{
w->disabled_widgets |= (1 << WIDX_PRIMARY_PRICE);
w->disabled_widgets |= (1ULL << WIDX_PRIMARY_PRICE);
window_ride_income_widgets[WIDX_PRIMARY_PRICE_LABEL].tooltip = STR_RIDE_INCOME_ADMISSION_PAY_FOR_ENTRY_TIP;
window_ride_income_widgets[WIDX_PRIMARY_PRICE].tooltip = STR_RIDE_INCOME_ADMISSION_PAY_FOR_ENTRY_TIP;
}
@ -6551,7 +6551,7 @@ static void window_ride_income_invalidate(rct_window* w)
window_ride_income_widgets[WIDX_PRIMARY_PRICE_SAME_THROUGHOUT_PARK].type = WindowWidgetType::Checkbox;
if (shop_item_has_common_price(primaryItem))
w->pressed_widgets |= (1 << WIDX_PRIMARY_PRICE_SAME_THROUGHOUT_PARK);
w->pressed_widgets |= (1ULL << WIDX_PRIMARY_PRICE_SAME_THROUGHOUT_PARK);
window_ride_income_widgets[WIDX_PRIMARY_PRICE_LABEL].text = GetShopItemDescriptor(primaryItem).Naming.PriceLabel;
}
@ -6579,9 +6579,9 @@ static void window_ride_income_invalidate(rct_window* w)
else
{
// Set same price throughout park checkbox
w->pressed_widgets &= ~(1 << WIDX_SECONDARY_PRICE_SAME_THROUGHOUT_PARK);
w->pressed_widgets &= ~(1ULL << WIDX_SECONDARY_PRICE_SAME_THROUGHOUT_PARK);
if (shop_item_has_common_price(secondaryItem))
w->pressed_widgets |= (1 << WIDX_SECONDARY_PRICE_SAME_THROUGHOUT_PARK);
w->pressed_widgets |= (1ULL << WIDX_SECONDARY_PRICE_SAME_THROUGHOUT_PARK);
// Show widgets
window_ride_income_widgets[WIDX_SECONDARY_PRICE_LABEL].type = WindowWidgetType::Label;

View File

@ -685,10 +685,10 @@ static void window_ride_construction_mouseup(rct_window* w, rct_widgetindex widg
static void window_ride_construction_resize(rct_window* w)
{
window_ride_construction_update_enabled_track_pieces();
w->enabled_widgets &= ~(1 << WIDX_CONSTRUCT);
w->enabled_widgets &= ~(1ULL << WIDX_CONSTRUCT);
if (_rideConstructionState != RIDE_CONSTRUCTION_STATE_PLACE)
{
w->enabled_widgets |= (1 << WIDX_CONSTRUCT);
w->enabled_widgets |= (1ULL << WIDX_CONSTRUCT);
}
auto ride = get_ride(_currentRideIndex);
@ -3115,7 +3115,7 @@ static void window_ride_construction_update_widgets(rct_window* w)
window_ride_construction_widgets[WIDX_BANK_RIGHT].right = 83;
window_ride_construction_widgets[WIDX_BANK_RIGHT].top = 139;
window_ride_construction_widgets[WIDX_BANK_RIGHT].bottom = 148;
w->hold_down_widgets |= (1 << WIDX_BANK_STRAIGHT) | (1 << WIDX_BANK_RIGHT);
w->hold_down_widgets |= (1ULL << WIDX_BANK_STRAIGHT) | (1ULL << WIDX_BANK_RIGHT);
}
window_ride_construction_widgets[WIDX_BANKING_GROUPBOX].right = 162;
@ -3143,10 +3143,10 @@ static void window_ride_construction_update_widgets(rct_window* w)
}
uint64_t pressedWidgets = w->pressed_widgets
& ((1 << WIDX_BACKGROUND) | (1 << WIDX_TITLE) | (1 << WIDX_CLOSE) | (1 << WIDX_DIRECTION_GROUPBOX)
| (1 << WIDX_SLOPE_GROUPBOX) | (1 << WIDX_BANKING_GROUPBOX) | (1 << WIDX_CONSTRUCT) | (1 << WIDX_DEMOLISH)
| (1 << WIDX_PREVIOUS_SECTION) | (1 << WIDX_NEXT_SECTION) | (1 << WIDX_ENTRANCE_EXIT_GROUPBOX) | (1 << WIDX_ENTRANCE)
| (1 << WIDX_EXIT));
& ((1ULL << WIDX_BACKGROUND) | (1ULL << WIDX_TITLE) | (1ULL << WIDX_CLOSE) | (1ULL << WIDX_DIRECTION_GROUPBOX)
| (1ULL << WIDX_SLOPE_GROUPBOX) | (1ULL << WIDX_BANKING_GROUPBOX) | (1ULL << WIDX_CONSTRUCT)
| (1ULL << WIDX_DEMOLISH) | (1ULL << WIDX_PREVIOUS_SECTION) | (1ULL << WIDX_NEXT_SECTION)
| (1ULL << WIDX_ENTRANCE_EXIT_GROUPBOX) | (1ULL << WIDX_ENTRANCE) | (1ULL << WIDX_EXIT));
window_ride_construction_widgets[WIDX_CONSTRUCT].type = WindowWidgetType::Empty;
window_ride_construction_widgets[WIDX_DEMOLISH].type = WindowWidgetType::FlatBtn;
@ -3277,7 +3277,7 @@ static void window_ride_construction_update_widgets(rct_window* w)
}
if (_currentTrackLiftHill & CONSTRUCTION_LIFT_HILL_SELECTED)
pressedWidgets |= (1 << WIDX_CHAIN_LIFT);
pressedWidgets |= (1ULL << WIDX_CHAIN_LIFT);
w->pressed_widgets = pressedWidgets;
w->Invalidate();

View File

@ -189,12 +189,12 @@ rct_window* window_ride_list_open()
{
window = WindowCreateAutoPos(340, 240, &window_ride_list_events, WC_RIDE_LIST, WF_10 | WF_RESIZABLE);
window->widgets = window_ride_list_widgets;
window->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_OPEN_CLOSE_ALL) | (1 << WIDX_CURRENT_INFORMATION_TYPE)
| (1 << WIDX_INFORMATION_TYPE_DROPDOWN) | (1 << WIDX_SORT) | (1 << WIDX_TAB_1) | (1 << WIDX_TAB_2)
| (1 << WIDX_TAB_3) | (1 << WIDX_CLOSE_LIGHT) | (1 << WIDX_OPEN_LIGHT);
window->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_OPEN_CLOSE_ALL) | (1ULL << WIDX_CURRENT_INFORMATION_TYPE)
| (1ULL << WIDX_INFORMATION_TYPE_DROPDOWN) | (1ULL << WIDX_SORT) | (1ULL << WIDX_TAB_1) | (1ULL << WIDX_TAB_2)
| (1ULL << WIDX_TAB_3) | (1ULL << WIDX_CLOSE_LIGHT) | (1ULL << WIDX_OPEN_LIGHT);
if (network_get_mode() != NETWORK_MODE_CLIENT)
{
window->enabled_widgets |= (1 << WIDX_QUICK_DEMOLISH);
window->enabled_widgets |= (1ULL << WIDX_QUICK_DEMOLISH);
}
WindowInitScrollWidgets(window);
window->page = PAGE_RIDES;

View File

@ -136,7 +136,7 @@ rct_window* window_save_prompt_open()
else
{
widgets = window_save_prompt_widgets;
enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_SAVE) | (1 << WIDX_DONT_SAVE) | (1 << WIDX_CANCEL);
enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_SAVE) | (1ULL << WIDX_DONT_SAVE) | (1ULL << WIDX_CANCEL);
width = WW_SAVE;
height = WH_SAVE;
}

View File

@ -182,8 +182,8 @@ rct_window* window_scenarioselect_open(std::function<void(std::string_view)> cal
windowWidth, windowHeight, &window_scenarioselect_events, WC_SCENARIO_SELECT,
WF_10 | (titleEditor ? WF_STICK_TO_FRONT : 0));
window->widgets = window_scenarioselect_widgets;
window->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_TAB1) | (1 << WIDX_TAB2) | (1 << WIDX_TAB3) | (1 << WIDX_TAB4)
| (1 << WIDX_TAB5) | (1 << WIDX_TAB6) | (1 << WIDX_TAB7) | (1 << WIDX_TAB8);
window->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB1) | (1ULL << WIDX_TAB2) | (1ULL << WIDX_TAB3)
| (1ULL << WIDX_TAB4) | (1ULL << WIDX_TAB5) | (1ULL << WIDX_TAB6) | (1ULL << WIDX_TAB7) | (1ULL << WIDX_TAB8);
window_scenarioselect_init_tabs(window);
initialise_list_items(window);
@ -409,8 +409,8 @@ static void window_scenarioselect_scrollmouseover(rct_window* w, int32_t scrollI
static void window_scenarioselect_invalidate(rct_window* w)
{
w->pressed_widgets &= ~(
(1 << WIDX_CLOSE) | (1 << WIDX_TAB1) | (1 << WIDX_TAB2) | (1 << WIDX_TAB3) | (1 << WIDX_TAB4) | (1 << WIDX_TAB5)
| (1 << WIDX_TAB6) | (1 << WIDX_TAB7) | (1 << WIDX_TAB8));
(1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB1) | (1ULL << WIDX_TAB2) | (1ULL << WIDX_TAB3) | (1ULL << WIDX_TAB4)
| (1ULL << WIDX_TAB5) | (1ULL << WIDX_TAB6) | (1ULL << WIDX_TAB7) | (1ULL << WIDX_TAB8));
w->pressed_widgets |= 1LL << (w->selected_tab + WIDX_TAB1);

View File

@ -440,15 +440,17 @@ rct_window* window_scenery_open()
&window_scenery_events, WC_SCENERY, WF_NO_SCROLLING);
window->widgets = window_scenery_widgets;
window->enabled_widgets = (1 << WIDX_SCENERY_CLOSE) | (1 << WIDX_SCENERY_ROTATE_OBJECTS_BUTTON) | (1 << WIDX_SCENERY_TAB_1)
| (1 << WIDX_SCENERY_TAB_2) | (1 << WIDX_SCENERY_TAB_3) | (1 << WIDX_SCENERY_TAB_4) | (1 << WIDX_SCENERY_TAB_5)
| (1 << WIDX_SCENERY_TAB_6) | (1 << WIDX_SCENERY_TAB_7) | (1 << WIDX_SCENERY_TAB_8) | (1 << WIDX_SCENERY_TAB_9)
| (1 << WIDX_SCENERY_TAB_10) | (1 << WIDX_SCENERY_TAB_11) | (1 << WIDX_SCENERY_TAB_12) | (1 << WIDX_SCENERY_TAB_13)
| (1 << WIDX_SCENERY_TAB_14) | (1 << WIDX_SCENERY_TAB_15) | (1 << WIDX_SCENERY_TAB_16) | (1 << WIDX_SCENERY_TAB_17)
| (1 << WIDX_SCENERY_TAB_18) | (1 << WIDX_SCENERY_TAB_19) | (1 << WIDX_SCENERY_TAB_20)
| (1 << WIDX_SCENERY_PRIMARY_COLOUR_BUTTON) | (1 << WIDX_SCENERY_SECONDARY_COLOUR_BUTTON)
| (1 << WIDX_SCENERY_REPAINT_SCENERY_BUTTON) | (1 << WIDX_SCENERY_TERTIARY_COLOUR_BUTTON)
| (1 << WIDX_SCENERY_EYEDROPPER_BUTTON) | (1ULL << WIDX_SCENERY_BUILD_CLUSTER_BUTTON);
window->enabled_widgets = (1ULL << WIDX_SCENERY_CLOSE) | (1ULL << WIDX_SCENERY_ROTATE_OBJECTS_BUTTON)
| (1ULL << WIDX_SCENERY_TAB_1) | (1ULL << WIDX_SCENERY_TAB_2) | (1ULL << WIDX_SCENERY_TAB_3)
| (1ULL << WIDX_SCENERY_TAB_4) | (1ULL << WIDX_SCENERY_TAB_5) | (1ULL << WIDX_SCENERY_TAB_6)
| (1ULL << WIDX_SCENERY_TAB_7) | (1ULL << WIDX_SCENERY_TAB_8) | (1ULL << WIDX_SCENERY_TAB_9)
| (1ULL << WIDX_SCENERY_TAB_10) | (1ULL << WIDX_SCENERY_TAB_11) | (1ULL << WIDX_SCENERY_TAB_12)
| (1ULL << WIDX_SCENERY_TAB_13) | (1ULL << WIDX_SCENERY_TAB_14) | (1ULL << WIDX_SCENERY_TAB_15)
| (1ULL << WIDX_SCENERY_TAB_16) | (1ULL << WIDX_SCENERY_TAB_17) | (1ULL << WIDX_SCENERY_TAB_18)
| (1ULL << WIDX_SCENERY_TAB_19) | (1ULL << WIDX_SCENERY_TAB_20) | (1ULL << WIDX_SCENERY_PRIMARY_COLOUR_BUTTON)
| (1ULL << WIDX_SCENERY_SECONDARY_COLOUR_BUTTON) | (1ULL << WIDX_SCENERY_REPAINT_SCENERY_BUTTON)
| (1ULL << WIDX_SCENERY_TERTIARY_COLOUR_BUTTON) | (1ULL << WIDX_SCENERY_EYEDROPPER_BUTTON)
| (1ULL << WIDX_SCENERY_BUILD_CLUSTER_BUTTON);
WindowInitScrollWidgets(window);
window_scenery_update_scroll(window);
@ -961,9 +963,9 @@ void window_scenery_invalidate(rct_window* w)
w->pressed_widgets = 0;
w->pressed_widgets |= 1ULL << (tabIndex + WIDX_SCENERY_TAB_1);
if (gWindowSceneryPaintEnabled == 1)
w->pressed_widgets |= (1 << WIDX_SCENERY_REPAINT_SCENERY_BUTTON);
w->pressed_widgets |= (1ULL << WIDX_SCENERY_REPAINT_SCENERY_BUTTON);
if (gWindowSceneryEyedropperEnabled)
w->pressed_widgets |= (1 << WIDX_SCENERY_EYEDROPPER_BUTTON);
w->pressed_widgets |= (1ULL << WIDX_SCENERY_EYEDROPPER_BUTTON);
if (gWindowSceneryScatterEnabled)
w->pressed_widgets |= (1ULL << WIDX_SCENERY_BUILD_CLUSTER_BUTTON);

View File

@ -83,9 +83,9 @@ rct_window* window_scenery_scatter_open()
window = WindowCreateAutoPos(86, 100, &window_clear_scenery_events, WC_SCENERY_SCATTER, 0);
window->widgets = window_scenery_scatter_widgets;
window->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_INCREMENT) | (1 << WIDX_DECREMENT) | (1 << WIDX_PREVIEW)
| (1 << WIDX_DENSITY_LOW) | (1 << WIDX_DENSITY_MEDIUM) | (1 << WIDX_DENSITY_HIGH);
window->hold_down_widgets = (1 << WIDX_INCREMENT) | (1 << WIDX_DECREMENT);
window->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT)
| (1ULL << WIDX_PREVIEW) | (1ULL << WIDX_DENSITY_LOW) | (1ULL << WIDX_DENSITY_MEDIUM) | (1ULL << WIDX_DENSITY_HIGH);
window->hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT);
WindowInitScrollWidgets(window);
window_push_others_below(window);
@ -185,21 +185,21 @@ static void window_scenery_scatter_inputsize(rct_window* w, rct_widgetindex widg
static void window_scenery_scatter_invalidate(rct_window* w)
{
// Set the preview image button to be pressed down
w->pressed_widgets = (1 << WIDX_PREVIEW);
w->pressed_widgets = (1ULL << WIDX_PREVIEW);
// Set density buttons' pressed state.
switch (gWindowSceneryScatterDensity)
{
case ScatterToolDensity::LowDensity:
w->pressed_widgets |= (1 << WIDX_DENSITY_LOW);
w->pressed_widgets |= (1ULL << WIDX_DENSITY_LOW);
break;
case ScatterToolDensity::MediumDensity:
w->pressed_widgets |= (1 << WIDX_DENSITY_MEDIUM);
w->pressed_widgets |= (1ULL << WIDX_DENSITY_MEDIUM);
break;
case ScatterToolDensity::HighDensity:
w->pressed_widgets |= (1 << WIDX_DENSITY_HIGH);
w->pressed_widgets |= (1ULL << WIDX_DENSITY_HIGH);
break;
}

View File

@ -129,8 +129,8 @@ rct_window* window_server_list_open()
window_server_list_widgets[WIDX_PLAYER_NAME_INPUT].string = _playerName;
window->widgets = window_server_list_widgets;
window->enabled_widgets
= ((1 << WIDX_CLOSE) | (1 << WIDX_PLAYER_NAME_INPUT) | (1 << WIDX_FETCH_SERVERS) | (1 << WIDX_ADD_SERVER)
| (1 << WIDX_START_SERVER));
= ((1ULL << WIDX_CLOSE) | (1ULL << WIDX_PLAYER_NAME_INPUT) | (1ULL << WIDX_FETCH_SERVERS) | (1ULL << WIDX_ADD_SERVER)
| (1ULL << WIDX_START_SERVER));
WindowInitScrollWidgets(window);
window->no_list_items = 0;
window->selected_list_item = -1;

View File

@ -101,10 +101,10 @@ rct_window* window_server_start_open()
window_server_start_widgets[WIDX_PASSWORD_INPUT].string = _password;
window->widgets = window_server_start_widgets;
window->enabled_widgets
= ((1 << WIDX_CLOSE) | (1 << WIDX_PORT_INPUT) | (1 << WIDX_NAME_INPUT) | (1 << WIDX_DESCRIPTION_INPUT)
| (1 << WIDX_GREETING_INPUT) | (1 << WIDX_PASSWORD_INPUT) | (1 << WIDX_MAXPLAYERS) | (1 << WIDX_MAXPLAYERS_INCREASE)
| (1 << WIDX_MAXPLAYERS_DECREASE) | (1 << WIDX_ADVERTISE_CHECKBOX) | (1 << WIDX_START_SERVER)
| (1 << WIDX_LOAD_SERVER));
= ((1ULL << WIDX_CLOSE) | (1ULL << WIDX_PORT_INPUT) | (1ULL << WIDX_NAME_INPUT) | (1ULL << WIDX_DESCRIPTION_INPUT)
| (1ULL << WIDX_GREETING_INPUT) | (1ULL << WIDX_PASSWORD_INPUT) | (1ULL << WIDX_MAXPLAYERS)
| (1ULL << WIDX_MAXPLAYERS_INCREASE) | (1ULL << WIDX_MAXPLAYERS_DECREASE) | (1ULL << WIDX_ADVERTISE_CHECKBOX)
| (1ULL << WIDX_START_SERVER) | (1ULL << WIDX_LOAD_SERVER));
WindowInitScrollWidgets(window);
window->no_list_items = 0;
window->selected_list_item = -1;

View File

@ -422,7 +422,7 @@ private:
void InitialiseWidgets()
{
enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_RESET);
enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_RESET);
_widgets.clear();
_widgets.insert(_widgets.begin(), std::begin(window_shortcut_widgets), std::end(window_shortcut_widgets) - 1);

View File

@ -73,8 +73,8 @@ public:
void OnOpen() override
{
widgets = window_sign_widgets;
enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_SIGN_TEXT) | (1 << WIDX_SIGN_DEMOLISH) | (1 << WIDX_MAIN_COLOUR)
| (1 << WIDX_TEXT_COLOUR);
enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_SIGN_TEXT) | (1ULL << WIDX_SIGN_DEMOLISH)
| (1ULL << WIDX_MAIN_COLOUR) | (1ULL << WIDX_TEXT_COLOUR);
WindowInitScrollWidgets(this);
}

View File

@ -203,30 +203,30 @@ static rct_window_event_list *window_staff_page_events[] = {
};
static constexpr const uint32_t window_staff_page_enabled_widgets[] = {
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_PICKUP) |
(1 << WIDX_PATROL) |
(1 << WIDX_RENAME) |
(1 << WIDX_LOCATE) |
(1 << WIDX_FIRE),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_PICKUP) |
(1ULL << WIDX_PATROL) |
(1ULL << WIDX_RENAME) |
(1ULL << WIDX_LOCATE) |
(1ULL << WIDX_FIRE),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3) |
(1 << WIDX_CHECKBOX_1) |
(1 << WIDX_CHECKBOX_2) |
(1 << WIDX_CHECKBOX_3) |
(1 << WIDX_CHECKBOX_4) |
(1 << WIDX_COSTUME_BTN),
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3) |
(1ULL << WIDX_CHECKBOX_1) |
(1ULL << WIDX_CHECKBOX_2) |
(1ULL << WIDX_CHECKBOX_3) |
(1ULL << WIDX_CHECKBOX_4) |
(1ULL << WIDX_COSTUME_BTN),
(1 << WIDX_CLOSE) |
(1 << WIDX_TAB_1) |
(1 << WIDX_TAB_2) |
(1 << WIDX_TAB_3)
(1ULL << WIDX_CLOSE) |
(1ULL << WIDX_TAB_1) |
(1ULL << WIDX_TAB_2) |
(1ULL << WIDX_TAB_3)
};
// clang-format on
@ -309,20 +309,20 @@ void window_staff_disable_widgets(rct_window* w)
if (peep != nullptr && peep->AssignedStaffType == StaffType::Security)
{
disabled_widgets |= (1 << WIDX_TAB_2);
disabled_widgets |= (1ULL << WIDX_TAB_2);
}
if (w->page == WINDOW_STAFF_OVERVIEW)
{
if (peep->CanBePickedUp())
{
if (w->disabled_widgets & (1 << WIDX_PICKUP))
if (w->disabled_widgets & (1ULL << WIDX_PICKUP))
w->Invalidate();
}
else
{
disabled_widgets |= (1 << WIDX_PICKUP);
if (!(w->disabled_widgets & (1 << WIDX_PICKUP)))
disabled_widgets |= (1ULL << WIDX_PICKUP);
if (!(w->disabled_widgets & (1ULL << WIDX_PICKUP)))
w->Invalidate();
}
}
@ -815,7 +815,7 @@ void window_staff_options_invalidate(rct_window* w)
window_staff_options_widgets[WIDX_COSTUME_BOX].type = WindowWidgetType::Empty;
window_staff_options_widgets[WIDX_COSTUME_BTN].type = WindowWidgetType::Empty;
w->pressed_widgets &= ~(
(1 << WIDX_CHECKBOX_1) | (1 << WIDX_CHECKBOX_2) | (1 << WIDX_CHECKBOX_3) | (1 << WIDX_CHECKBOX_4));
(1ULL << WIDX_CHECKBOX_1) | (1ULL << WIDX_CHECKBOX_2) | (1ULL << WIDX_CHECKBOX_3) | (1ULL << WIDX_CHECKBOX_4));
w->pressed_widgets |= peep->StaffOrders << WIDX_CHECKBOX_1;
break;
case StaffType::Mechanic:
@ -827,7 +827,7 @@ void window_staff_options_invalidate(rct_window* w)
window_staff_options_widgets[WIDX_CHECKBOX_4].type = WindowWidgetType::Empty;
window_staff_options_widgets[WIDX_COSTUME_BOX].type = WindowWidgetType::Empty;
window_staff_options_widgets[WIDX_COSTUME_BTN].type = WindowWidgetType::Empty;
w->pressed_widgets &= ~((1 << WIDX_CHECKBOX_1) | (1 << WIDX_CHECKBOX_2));
w->pressed_widgets &= ~((1ULL << WIDX_CHECKBOX_1) | (1ULL << WIDX_CHECKBOX_2));
w->pressed_widgets |= peep->StaffOrders << WIDX_CHECKBOX_1;
break;
case StaffType::Security:
@ -952,7 +952,7 @@ void window_staff_overview_paint(rct_window* w, rct_drawpixelinfo* dpi)
*/
void window_staff_options_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
{
if (w->disabled_widgets & (1 << WIDX_TAB_2))
if (w->disabled_widgets & (1ULL << WIDX_TAB_2))
return;
rct_widget* widget = &w->widgets[WIDX_TAB_2];
@ -974,7 +974,7 @@ void window_staff_options_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
*/
void window_staff_stats_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
{
if (w->disabled_widgets & (1 << WIDX_TAB_3))
if (w->disabled_widgets & (1ULL << WIDX_TAB_3))
return;
rct_widget* widget = &w->widgets[WIDX_TAB_3];
@ -995,7 +995,7 @@ void window_staff_stats_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
*/
void window_staff_overview_tab_paint(rct_window* w, rct_drawpixelinfo* dpi)
{
if (w->disabled_widgets & (1 << WIDX_TAB_1))
if (w->disabled_widgets & (1ULL << WIDX_TAB_1))
return;
rct_widget* widget = &w->widgets[WIDX_TAB_1];

View File

@ -62,7 +62,7 @@ rct_window* window_staff_fire_prompt_open(Peep* peep)
w = WindowCreateCentred(WW, WH, &window_staff_fire_events, WC_FIRE_PROMPT, WF_TRANSPARENT);
w->widgets = window_staff_fire_widgets;
w->enabled_widgets |= (1 << WIDX_CLOSE) | (1 << WIDX_YES) | (1 << WIDX_CANCEL);
w->enabled_widgets |= (1ULL << WIDX_CLOSE) | (1ULL << WIDX_YES) | (1ULL << WIDX_CANCEL);
WindowInitScrollWidgets(w);

View File

@ -101,11 +101,11 @@ public:
void OnOpen() override
{
widgets = window_staff_list_widgets;
enabled_widgets = (1 << WIDX_STAFF_LIST_CLOSE) | (1 << WIDX_STAFF_LIST_HANDYMEN_TAB)
| (1 << WIDX_STAFF_LIST_MECHANICS_TAB) | (1 << WIDX_STAFF_LIST_SECURITY_TAB)
| (1 << WIDX_STAFF_LIST_ENTERTAINERS_TAB) | (1 << WIDX_STAFF_LIST_HIRE_BUTTON)
| (1 << WIDX_STAFF_LIST_UNIFORM_COLOUR_PICKER) | (1 << WIDX_STAFF_LIST_SHOW_PATROL_AREA_BUTTON)
| (1 << WIDX_STAFF_LIST_MAP) | (1 << WIDX_STAFF_LIST_QUICK_FIRE);
enabled_widgets = (1ULL << WIDX_STAFF_LIST_CLOSE) | (1ULL << WIDX_STAFF_LIST_HANDYMEN_TAB)
| (1ULL << WIDX_STAFF_LIST_MECHANICS_TAB) | (1ULL << WIDX_STAFF_LIST_SECURITY_TAB)
| (1ULL << WIDX_STAFF_LIST_ENTERTAINERS_TAB) | (1ULL << WIDX_STAFF_LIST_HIRE_BUTTON)
| (1ULL << WIDX_STAFF_LIST_UNIFORM_COLOUR_PICKER) | (1ULL << WIDX_STAFF_LIST_SHOW_PATROL_AREA_BUTTON)
| (1ULL << WIDX_STAFF_LIST_MAP) | (1ULL << WIDX_STAFF_LIST_QUICK_FIRE);
WindowInitScrollWidgets(this);
widgets[WIDX_STAFF_LIST_UNIFORM_COLOUR_PICKER].type = WindowWidgetType::Empty;

View File

@ -322,13 +322,14 @@ rct_window* window_themes_open()
window = WindowCreateAutoPos(320, 107, &window_themes_events, WC_THEMES, WF_10 | WF_RESIZABLE);
window->widgets = window_themes_widgets;
window->enabled_widgets = (1 << WIDX_THEMES_CLOSE) | (1 << WIDX_THEMES_SETTINGS_TAB) | (1 << WIDX_THEMES_MAIN_UI_TAB)
| (1 << WIDX_THEMES_PARK_TAB) | (1 << WIDX_THEMES_TOOLS_TAB) | (1 << WIDX_THEMES_RIDE_PEEPS_TAB)
| (1 << WIDX_THEMES_EDITORS_TAB) | (1 << WIDX_THEMES_MISC_TAB) | (1 << WIDX_THEMES_PROMPTS_TAB)
| (1 << WIDX_THEMES_FEATURES_TAB) | (1 << WIDX_THEMES_COLOURBTN_MASK) | (1 << WIDX_THEMES_PRESETS)
| (1 << WIDX_THEMES_PRESETS_DROPDOWN) | (1 << WIDX_THEMES_DUPLICATE_BUTTON) | (1 << WIDX_THEMES_DELETE_BUTTON)
| (1 << WIDX_THEMES_RENAME_BUTTON) | (1 << WIDX_THEMES_RCT1_RIDE_LIGHTS) | (1 << WIDX_THEMES_RCT1_PARK_LIGHTS)
| (1 << WIDX_THEMES_RCT1_SCENARIO_FONT) | (1 << WIDX_THEMES_RCT1_BOTTOM_TOOLBAR);
window->enabled_widgets = (1ULL << WIDX_THEMES_CLOSE) | (1ULL << WIDX_THEMES_SETTINGS_TAB)
| (1ULL << WIDX_THEMES_MAIN_UI_TAB) | (1ULL << WIDX_THEMES_PARK_TAB) | (1ULL << WIDX_THEMES_TOOLS_TAB)
| (1ULL << WIDX_THEMES_RIDE_PEEPS_TAB) | (1ULL << WIDX_THEMES_EDITORS_TAB) | (1ULL << WIDX_THEMES_MISC_TAB)
| (1ULL << WIDX_THEMES_PROMPTS_TAB) | (1ULL << WIDX_THEMES_FEATURES_TAB) | (1ULL << WIDX_THEMES_COLOURBTN_MASK)
| (1ULL << WIDX_THEMES_PRESETS) | (1ULL << WIDX_THEMES_PRESETS_DROPDOWN) | (1ULL << WIDX_THEMES_DUPLICATE_BUTTON)
| (1ULL << WIDX_THEMES_DELETE_BUTTON) | (1ULL << WIDX_THEMES_RENAME_BUTTON) | (1ULL << WIDX_THEMES_RCT1_RIDE_LIGHTS)
| (1ULL << WIDX_THEMES_RCT1_PARK_LIGHTS) | (1ULL << WIDX_THEMES_RCT1_SCENARIO_FONT)
| (1ULL << WIDX_THEMES_RCT1_BOTTOM_TOOLBAR);
window_themes_init_vars();

View File

@ -220,9 +220,10 @@ void window_title_command_editor_open(TitleSequence* sequence, int32_t index, bo
window_title_command_editor_widgets[WIDX_TEXTBOX_X].string = textbox1Buffer;
window_title_command_editor_widgets[WIDX_TEXTBOX_Y].string = textbox2Buffer;
window->widgets = window_title_command_editor_widgets;
window->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_COMMAND) | (1 << WIDX_COMMAND_DROPDOWN) | (1 << WIDX_TEXTBOX_FULL)
| (1 << WIDX_TEXTBOX_X) | (1 << WIDX_TEXTBOX_Y) | (1 << WIDX_INPUT) | (1 << WIDX_INPUT_DROPDOWN) | (1 << WIDX_GET)
| (1 << WIDX_SELECT_SCENARIO) | (1 << WIDX_SELECT_SPRITE) | (1 << WIDX_OKAY) | (1 << WIDX_CANCEL);
window->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_COMMAND) | (1ULL << WIDX_COMMAND_DROPDOWN)
| (1ULL << WIDX_TEXTBOX_FULL) | (1ULL << WIDX_TEXTBOX_X) | (1ULL << WIDX_TEXTBOX_Y) | (1ULL << WIDX_INPUT)
| (1ULL << WIDX_INPUT_DROPDOWN) | (1ULL << WIDX_GET) | (1ULL << WIDX_SELECT_SCENARIO) | (1ULL << WIDX_SELECT_SPRITE)
| (1ULL << WIDX_OKAY) | (1ULL << WIDX_CANCEL);
WindowInitScrollWidgets(window);
rct_widget* const viewportWidget = &window_title_command_editor_widgets[WIDX_VIEWPORT];
@ -741,21 +742,21 @@ static void window_title_command_editor_invalidate(rct_window* w)
// Draw button pressed while the tool is active
if (sprite_selector_tool_is_active())
w->pressed_widgets |= (1 << WIDX_SELECT_SPRITE);
w->pressed_widgets |= (1ULL << WIDX_SELECT_SPRITE);
else
w->pressed_widgets &= ~(1 << WIDX_SELECT_SPRITE);
w->pressed_widgets &= ~(1ULL << WIDX_SELECT_SPRITE);
break;
}
if ((gScreenFlags & SCREEN_FLAGS_TITLE_DEMO) == SCREEN_FLAGS_TITLE_DEMO)
{
w->disabled_widgets |= (1 << WIDX_GET) | (1 << WIDX_SELECT_SPRITE);
w->disabled_widgets |= (1ULL << WIDX_GET) | (1ULL << WIDX_SELECT_SPRITE);
window_title_command_editor_widgets[WIDX_SELECT_SPRITE].tooltip = STR_TITLE_COMMAND_EDITOR_SELECT_SPRITE_TOOLTIP;
}
else
{
w->disabled_widgets &= ~((1 << WIDX_GET) | (1 << WIDX_SELECT_SPRITE));
w->disabled_widgets &= ~((1ULL << WIDX_GET) | (1ULL << WIDX_SELECT_SPRITE));
window_title_command_editor_widgets[WIDX_SELECT_SPRITE].tooltip = STR_NONE;
}
}

View File

@ -214,22 +214,22 @@ void window_title_editor_open(int32_t tab)
window = WindowCreateAutoPos(WW, WH2, &window_title_editor_events, WC_TITLE_EDITOR, WF_10 | WF_RESIZABLE);
window->widgets = window_title_editor_widgets;
window->enabled_widgets = (1 << WIDX_TITLE_EDITOR_CLOSE) | (1 << WIDX_TITLE_EDITOR_PRESETS_TAB)
| (1 << WIDX_TITLE_EDITOR_SAVES_TAB) | (1 << WIDX_TITLE_EDITOR_SCRIPT_TAB) |
window->enabled_widgets = (1ULL << WIDX_TITLE_EDITOR_CLOSE) | (1ULL << WIDX_TITLE_EDITOR_PRESETS_TAB)
| (1ULL << WIDX_TITLE_EDITOR_SAVES_TAB) | (1ULL << WIDX_TITLE_EDITOR_SCRIPT_TAB) |
(1 << WIDX_TITLE_EDITOR_PRESETS) | (1 << WIDX_TITLE_EDITOR_PRESETS_DROPDOWN) | (1 << WIDX_TITLE_EDITOR_NEW_BUTTON)
| (1 << WIDX_TITLE_EDITOR_DUPLICATE_BUTTON) | (1 << WIDX_TITLE_EDITOR_DELETE_BUTTON)
| (1 << WIDX_TITLE_EDITOR_RENAME_BUTTON) |
(1ULL << WIDX_TITLE_EDITOR_PRESETS) | (1ULL << WIDX_TITLE_EDITOR_PRESETS_DROPDOWN)
| (1ULL << WIDX_TITLE_EDITOR_NEW_BUTTON) | (1ULL << WIDX_TITLE_EDITOR_DUPLICATE_BUTTON)
| (1ULL << WIDX_TITLE_EDITOR_DELETE_BUTTON) | (1ULL << WIDX_TITLE_EDITOR_RENAME_BUTTON) |
(1 << WIDX_TITLE_EDITOR_ADD_SAVE) | (1 << WIDX_TITLE_EDITOR_REMOVE_SAVE) | (1 << WIDX_TITLE_EDITOR_RENAME_SAVE)
| (1 << WIDX_TITLE_EDITOR_LOAD_SAVE) |
(1ULL << WIDX_TITLE_EDITOR_ADD_SAVE) | (1ULL << WIDX_TITLE_EDITOR_REMOVE_SAVE) | (1ULL << WIDX_TITLE_EDITOR_RENAME_SAVE)
| (1ULL << WIDX_TITLE_EDITOR_LOAD_SAVE) |
(1 << WIDX_TITLE_EDITOR_INSERT) | (1 << WIDX_TITLE_EDITOR_EDIT) | (1 << WIDX_TITLE_EDITOR_DELETE) |
//(1 << WIDX_TITLE_EDITOR_RELOAD) |
(1 << WIDX_TITLE_EDITOR_SKIP_TO) | (1 << WIDX_TITLE_EDITOR_MOVE_DOWN) | (1 << WIDX_TITLE_EDITOR_MOVE_UP) |
(1ULL << WIDX_TITLE_EDITOR_INSERT) | (1ULL << WIDX_TITLE_EDITOR_EDIT) | (1ULL << WIDX_TITLE_EDITOR_DELETE) |
//(1ULL << WIDX_TITLE_EDITOR_RELOAD) |
(1ULL << WIDX_TITLE_EDITOR_SKIP_TO) | (1ULL << WIDX_TITLE_EDITOR_MOVE_DOWN) | (1ULL << WIDX_TITLE_EDITOR_MOVE_UP) |
(1 << WIDX_TITLE_EDITOR_PLAY) | (1 << WIDX_TITLE_EDITOR_STOP) | (1 << WIDX_TITLE_EDITOR_REPLAY)
| (1 << WIDX_TITLE_EDITOR_SKIP);
(1ULL << WIDX_TITLE_EDITOR_PLAY) | (1ULL << WIDX_TITLE_EDITOR_STOP) | (1ULL << WIDX_TITLE_EDITOR_REPLAY)
| (1ULL << WIDX_TITLE_EDITOR_SKIP);
WindowInitScrollWidgets(window);
window->list_information_type = 0;
@ -784,16 +784,16 @@ static void window_title_editor_invalidate(rct_window* w)
window_title_editor_widgets[WIDX_TITLE_EDITOR_SKIP].bottom = w->height - 16;
if (!(gScreenFlags & SCREEN_FLAGS_TITLE_DEMO) && gScreenFlags != SCREEN_FLAGS_PLAYING)
w->disabled_widgets |= (1 << WIDX_TITLE_EDITOR_PLAY);
w->disabled_widgets |= (1ULL << WIDX_TITLE_EDITOR_PLAY);
else
w->disabled_widgets &= ~(1 << WIDX_TITLE_EDITOR_PLAY);
w->disabled_widgets &= ~(1ULL << WIDX_TITLE_EDITOR_PLAY);
if (!title_is_previewing_sequence())
w->disabled_widgets |= (1 << WIDX_TITLE_EDITOR_REPLAY) | (1 << WIDX_TITLE_EDITOR_STOP) | (1 << WIDX_TITLE_EDITOR_SKIP)
| (1 << WIDX_TITLE_EDITOR_SKIP_TO);
w->disabled_widgets |= (1ULL << WIDX_TITLE_EDITOR_REPLAY) | (1ULL << WIDX_TITLE_EDITOR_STOP)
| (1ULL << WIDX_TITLE_EDITOR_SKIP) | (1ULL << WIDX_TITLE_EDITOR_SKIP_TO);
else
w->disabled_widgets &= ~(
(1 << WIDX_TITLE_EDITOR_REPLAY) | (1 << WIDX_TITLE_EDITOR_STOP) | (1 << WIDX_TITLE_EDITOR_SKIP)
| (1 << WIDX_TITLE_EDITOR_SKIP_TO));
(1ULL << WIDX_TITLE_EDITOR_REPLAY) | (1ULL << WIDX_TITLE_EDITOR_STOP) | (1ULL << WIDX_TITLE_EDITOR_SKIP)
| (1ULL << WIDX_TITLE_EDITOR_SKIP_TO));
}
static void window_title_editor_paint(rct_window* w, rct_drawpixelinfo* dpi)

View File

@ -51,7 +51,7 @@ rct_window* window_title_logo_open()
window->colours[0] = TRANSLUCENT(COLOUR_GREY);
window->colours[1] = TRANSLUCENT(COLOUR_GREY);
window->colours[2] = TRANSLUCENT(COLOUR_GREY);
window->enabled_widgets = (1 << WIDX_LOGO);
window->enabled_widgets = (1ULL << WIDX_LOGO);
return window;
}

View File

@ -77,11 +77,11 @@ rct_window* window_title_menu_open()
window->widgets = window_title_menu_widgets;
window->enabled_widgets
= ((1 << WIDX_START_NEW_GAME) | (1 << WIDX_CONTINUE_SAVED_GAME) |
= ((1ULL << WIDX_START_NEW_GAME) | (1ULL << WIDX_CONTINUE_SAVED_GAME) |
#ifndef DISABLE_NETWORK
(1 << WIDX_MULTIPLAYER) |
(1ULL << WIDX_MULTIPLAYER) |
#endif
(1 << WIDX_GAME_TOOLS));
(1ULL << WIDX_GAME_TOOLS));
rct_widgetindex i = 0;
int32_t x = 0;

View File

@ -797,14 +797,14 @@ static void window_top_toolbar_invalidate(rct_window* w)
// Footpath button pressed down
if (window_find_by_class(WC_FOOTPATH) == nullptr)
w->pressed_widgets &= ~(1 << WIDX_PATH);
w->pressed_widgets &= ~(1ULL << WIDX_PATH);
else
w->pressed_widgets |= (1 << WIDX_PATH);
w->pressed_widgets |= (1ULL << WIDX_PATH);
if (gGamePaused & GAME_PAUSED_NORMAL)
w->pressed_widgets |= (1 << WIDX_PAUSE);
w->pressed_widgets |= (1ULL << WIDX_PAUSE);
else
w->pressed_widgets &= ~(1 << WIDX_PAUSE);
w->pressed_widgets &= ~(1ULL << WIDX_PAUSE);
if (!OpenRCT2::Audio::gGameSoundsOff)
window_top_toolbar_widgets[WIDX_MUTE].image = IMAGE_TYPE_REMAP | SPR_G2_TOOLBAR_MUTE;
@ -835,15 +835,15 @@ static void window_top_toolbar_invalidate(rct_window* w)
if (mainWindow->viewport->zoom == ZoomLevel::min())
{
w->disabled_widgets |= (1 << WIDX_ZOOM_IN);
w->disabled_widgets |= (1ULL << WIDX_ZOOM_IN);
}
else if (mainWindow->viewport->zoom >= ZoomLevel::max())
{
w->disabled_widgets |= (1 << WIDX_ZOOM_OUT);
w->disabled_widgets |= (1ULL << WIDX_ZOOM_OUT);
}
else
{
w->disabled_widgets &= ~((1 << WIDX_ZOOM_IN) | (1 << WIDX_ZOOM_OUT));
w->disabled_widgets &= ~((1ULL << WIDX_ZOOM_IN) | (1ULL << WIDX_ZOOM_OUT));
}
}

View File

@ -95,7 +95,7 @@ rct_window* window_track_manage_open(track_design_file_ref* tdFileRef)
rct_window* w = WindowCreateCentred(
250, 44, &window_track_manage_events, WC_MANAGE_TRACK_DESIGN, WF_STICK_TO_FRONT | WF_TRANSPARENT);
w->widgets = window_track_manage_widgets;
w->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_RENAME) | (1 << WIDX_DELETE);
w->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_RENAME) | (1ULL << WIDX_DELETE);
WindowInitScrollWidgets(w);
rct_window* trackDesignListWindow = window_find_by_class(WC_TRACK_DESIGN_LIST);
@ -203,7 +203,7 @@ static void window_track_delete_prompt_open()
ScreenCoordsXY(std::max(TOP_TOOLBAR_HEIGHT + 1, (screenWidth - 250) / 2), (screenHeight - 44) / 2), 250, 74,
&window_track_delete_prompt_events, WC_TRACK_DELETE_PROMPT, WF_STICK_TO_FRONT);
w->widgets = window_track_delete_prompt_widgets;
w->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_RENAME) | (1 << WIDX_DELETE);
w->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_RENAME) | (1ULL << WIDX_DELETE);
WindowInitScrollWidgets(w);
w->flags |= WF_TRANSPARENT;
}

View File

@ -144,7 +144,7 @@ rct_window* window_track_place_open(const track_design_file_ref* tdFileRef)
rct_window* w = WindowCreate(ScreenCoordsXY(0, 29), 200, 124, &window_track_place_events, WC_TRACK_DESIGN_PLACE, 0);
w->widgets = window_track_place_widgets;
w->enabled_widgets = 1 << WIDX_CLOSE | 1 << WIDX_ROTATE | 1 << WIDX_MIRROR | 1 << WIDX_SELECT_DIFFERENT_DESIGN;
w->enabled_widgets = 1ULL << WIDX_CLOSE | 1ULL << WIDX_ROTATE | 1ULL << WIDX_MIRROR | 1ULL << WIDX_SELECT_DIFFERENT_DESIGN;
WindowInitScrollWidgets(w);
tool_set(w, WIDX_PRICE, Tool::Crosshair);
input_set_flag(INPUT_FLAG_6, true);

View File

@ -454,23 +454,23 @@ static void window_track_list_invalidate(rct_window* w)
if ((gScreenFlags & SCREEN_FLAGS_TRACK_MANAGER) || w->selected_list_item != 0)
{
w->pressed_widgets |= 1 << WIDX_TRACK_PREVIEW;
w->disabled_widgets &= ~(1 << WIDX_TRACK_PREVIEW);
w->pressed_widgets |= 1ULL << WIDX_TRACK_PREVIEW;
w->disabled_widgets &= ~(1ULL << WIDX_TRACK_PREVIEW);
window_track_list_widgets[WIDX_ROTATE].type = WindowWidgetType::FlatBtn;
window_track_list_widgets[WIDX_TOGGLE_SCENERY].type = WindowWidgetType::FlatBtn;
if (gTrackDesignSceneryToggle)
{
w->pressed_widgets &= ~(1 << WIDX_TOGGLE_SCENERY);
w->pressed_widgets &= ~(1ULL << WIDX_TOGGLE_SCENERY);
}
else
{
w->pressed_widgets |= (1 << WIDX_TOGGLE_SCENERY);
w->pressed_widgets |= (1ULL << WIDX_TOGGLE_SCENERY);
}
}
else
{
w->pressed_widgets &= ~(1 << WIDX_TRACK_PREVIEW);
w->disabled_widgets |= (1 << WIDX_TRACK_PREVIEW);
w->pressed_widgets &= ~(1ULL << WIDX_TRACK_PREVIEW);
w->disabled_widgets |= (1ULL << WIDX_TRACK_PREVIEW);
window_track_list_widgets[WIDX_ROTATE].type = WindowWidgetType::Empty;
window_track_list_widgets[WIDX_TOGGLE_SCENERY].type = WindowWidgetType::Empty;
}

View File

@ -66,7 +66,7 @@ rct_window* window_viewport_open()
{
rct_window* w = WindowCreateAutoPos(WW, WH, &window_viewport_events, WC_VIEWPORT, WF_RESIZABLE);
w->widgets = window_viewport_widgets;
w->enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_ZOOM_IN) | (1 << WIDX_ZOOM_OUT) | (1 << WIDX_LOCATE);
w->enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_ZOOM_IN) | (1ULL << WIDX_ZOOM_OUT) | (1ULL << WIDX_LOCATE);
w->number = _viewportNumber++;
// Create viewport
@ -180,9 +180,9 @@ static void window_viewport_invalidate(rct_window* w)
// Set disabled widgets
w->disabled_widgets = 0;
if (viewport->zoom == ZoomLevel::min())
w->disabled_widgets |= 1 << WIDX_ZOOM_IN;
w->disabled_widgets |= 1ULL << WIDX_ZOOM_IN;
if (viewport->zoom >= ZoomLevel::max())
w->disabled_widgets |= 1 << WIDX_ZOOM_OUT;
w->disabled_widgets |= 1ULL << WIDX_ZOOM_OUT;
viewport->pos = w->windowPos + ScreenCoordsXY{ viewportWidget->left, viewportWidget->top };
viewport->width = viewportWidget->width();

View File

@ -45,8 +45,8 @@ public:
void OnOpen() override
{
widgets = window_water_widgets;
enabled_widgets = (1 << WIDX_CLOSE) | (1 << WIDX_DECREMENT) | (1 << WIDX_INCREMENT) | (1 << WIDX_PREVIEW);
hold_down_widgets = (1 << WIDX_INCREMENT) | (1 << WIDX_DECREMENT);
enabled_widgets = (1ULL << WIDX_CLOSE) | (1ULL << WIDX_DECREMENT) | (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_PREVIEW);
hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT);
WindowInitScrollWidgets(this);
window_push_others_below(this);