mirror of https://github.com/OpenRCT2/OpenRCT2.git
Clean up dropdowns
Uses constants in more places. Most of the changes were taken from a PR by @wolfreak99
This commit is contained in:
parent
e13dbfa419
commit
50ba63df0e
|
@ -12,10 +12,11 @@
|
|||
- Fix: [#5880] Leaving bumper cars without building causes assertion.
|
||||
- Fix: [#5920] Placing guest spawn doesn't do anything every 3rd click
|
||||
- Fix: [#5939] Crash when importing 'Six Flags Santa Fe'.
|
||||
- Improved: The land tool buttons can now be held down to increase/decrease size.
|
||||
- Improved: [#4301] Leading and trailing whitespace in player name is now removed.
|
||||
- Improved: [#5859] OpenGL rendering performance
|
||||
- Improved: [#5863] Switching drawing engines no longer requires the application to restart.
|
||||
- Improved: The land tool buttons can now be held down to increase/decrease size.
|
||||
- Improved: Dropdowns longer than 32 items overflow into columns.
|
||||
|
||||
0.1.0 (2017-07-12)
|
||||
------------------------------------------------------------------------
|
||||
|
|
|
@ -1207,7 +1207,7 @@ void input_state_widget_pressed(sint32 x, sint32 y, sint32 state, rct_widgetinde
|
|||
goto dropdown_cleanup;
|
||||
}
|
||||
|
||||
if (dropdown_index < 64 && gDropdownItemsDisabled & (1ULL << dropdown_index)) {
|
||||
if (dropdown_index < DROPDOWN_ITEMS_MAX_SIZE && gDropdownItemsDisabled & (1ULL << dropdown_index)) {
|
||||
goto dropdown_cleanup;
|
||||
}
|
||||
|
||||
|
@ -1344,7 +1344,7 @@ void input_state_widget_pressed(sint32 x, sint32 y, sint32 state, rct_widgetinde
|
|||
window_tooltip_show(colourTooltips[dropdown_index], x, y);
|
||||
}
|
||||
|
||||
if (dropdown_index < 64 && gDropdownItemsDisabled & (1ULL << dropdown_index)) {
|
||||
if (dropdown_index < DROPDOWN_ITEMS_MAX_SIZE && gDropdownItemsDisabled & (1ULL << dropdown_index)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -2145,23 +2145,16 @@ static void window_ride_main_mousedown(rct_window *w, rct_widgetindex widgetInde
|
|||
window_ride_show_open_dropdown(w, widget);
|
||||
break;
|
||||
case WIDX_RIDE_TYPE_INCREASE:
|
||||
if (_rideType >= 90) {
|
||||
_rideType = 90;
|
||||
} else {
|
||||
_rideType++;
|
||||
}
|
||||
_rideType = min(RIDE_TYPE_COUNT - 1, _rideType + 1);
|
||||
widget_invalidate(w, WIDX_RIDE_TYPE);
|
||||
break;
|
||||
case WIDX_RIDE_TYPE_DECREASE:
|
||||
if (_rideType == 0) {
|
||||
_rideType = 0;
|
||||
} else {
|
||||
_rideType--;
|
||||
}
|
||||
_rideType = max(0, _rideType -1);
|
||||
widget_invalidate(w, WIDX_RIDE_TYPE);
|
||||
break;
|
||||
case WIDX_RIDE_TYPE_APPLY:
|
||||
if (_rideType <= 90) {
|
||||
if (_rideType < RIDE_TYPE_COUNT)
|
||||
{
|
||||
set_operating_setting(w->number, RIDE_SETTING_RIDE_TYPE, _rideType);
|
||||
}
|
||||
window_invalidate_all();
|
||||
|
@ -2648,14 +2641,14 @@ static void window_ride_vehicle_mousedown(rct_window *w, rct_widgetindex widgetI
|
|||
rideEntry = get_ride_entry_by_ride(ride);
|
||||
|
||||
if(gCheatsShowVehiclesFromOtherTrackTypes && !(ride_type_has_flag(ride->type, RIDE_TYPE_FLAG_FLAT_RIDE) || ride->type==RIDE_TYPE_MAZE || ride->type==RIDE_TYPE_MINI_GOLF)) {
|
||||
selectionShouldBeExpanded=true;
|
||||
rideTypeIterator=0;
|
||||
rideTypeIteratorMax=90;
|
||||
selectionShouldBeExpanded = true;
|
||||
rideTypeIterator = 0;
|
||||
rideTypeIteratorMax = RIDE_TYPE_COUNT - 1;
|
||||
}
|
||||
else {
|
||||
selectionShouldBeExpanded=false;
|
||||
rideTypeIterator=ride->type;
|
||||
rideTypeIteratorMax=ride->type;
|
||||
selectionShouldBeExpanded = false;
|
||||
rideTypeIterator = ride->type;
|
||||
rideTypeIteratorMax = ride->type;
|
||||
}
|
||||
|
||||
switch (widgetIndex) {
|
||||
|
@ -2663,17 +2656,17 @@ static void window_ride_vehicle_mousedown(rct_window *w, rct_widgetindex widgetI
|
|||
selectedIndex = -1;
|
||||
numItems = 0;
|
||||
|
||||
// Dropdowns with more items start acting weird, so cap it to 63.
|
||||
for (; rideTypeIterator<=rideTypeIteratorMax && numItems<=63; rideTypeIterator++) {
|
||||
// Dropdowns with more items start acting weird, so cap it.
|
||||
for (; rideTypeIterator <= rideTypeIteratorMax && numItems < DROPDOWN_ITEMS_MAX_SIZE; rideTypeIterator++) {
|
||||
|
||||
if(selectionShouldBeExpanded && ride_type_has_flag(rideTypeIterator, RIDE_TYPE_FLAG_FLAT_RIDE))
|
||||
continue;
|
||||
if(selectionShouldBeExpanded && (rideTypeIterator==RIDE_TYPE_MAZE || rideTypeIterator==RIDE_TYPE_MINI_GOLF))
|
||||
if(selectionShouldBeExpanded && (rideTypeIterator == RIDE_TYPE_MAZE || rideTypeIterator == RIDE_TYPE_MINI_GOLF))
|
||||
continue;
|
||||
|
||||
rideEntryIndexPtr = get_ride_entry_indices_for_ride_type(rideTypeIterator);
|
||||
|
||||
for (uint8 *currentRideEntryIndex = rideEntryIndexPtr; *currentRideEntryIndex != RIDE_ENTRY_INDEX_NULL && numItems <= 63; currentRideEntryIndex++) {
|
||||
for (uint8 *currentRideEntryIndex = rideEntryIndexPtr; *currentRideEntryIndex != RIDE_ENTRY_INDEX_NULL && numItems < DROPDOWN_ITEMS_MAX_SIZE; currentRideEntryIndex++) {
|
||||
rideEntryIndex = *currentRideEntryIndex;
|
||||
currentRideEntry = get_ride_entry(rideEntryIndex);
|
||||
// Skip if vehicle wants to be separate, unless subtype switching is enabled
|
||||
|
|
Loading…
Reference in New Issue