mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-12 10:30:28 +00:00
(svn r8065) -Feature: The station list does now remember the sort settings
This commit is contained in:
parent
8d5a542d9b
commit
91ff746410
@ -266,6 +266,8 @@ static void PlayerStationsWndProc(Window *w, WindowEvent *e)
|
||||
const PlayerID owner = (PlayerID)w->window_number;
|
||||
static byte facilities = FACIL_TRAIN | FACIL_TRUCK_STOP | FACIL_BUS_STOP | FACIL_AIRPORT | FACIL_DOCK;
|
||||
static uint16 cargo_filter = CARGO_ALL_SELECTED;
|
||||
static Listing station_sort = {0, 0};
|
||||
|
||||
plstations_d *sl = &WP(w, plstations_d);
|
||||
|
||||
switch (e->event) {
|
||||
@ -283,7 +285,8 @@ static void PlayerStationsWndProc(Window *w, WindowEvent *e)
|
||||
|
||||
sl->sort_list = NULL;
|
||||
sl->flags = SL_REBUILD;
|
||||
sl->sort_type = 0;
|
||||
sl->sort_type = station_sort.criteria;
|
||||
if (station_sort.order) sl->flags |= SL_ORDER;
|
||||
sl->resort_timer = DAY_TICKS * PERIODIC_RESORT_DAYS;
|
||||
break;
|
||||
}
|
||||
@ -436,6 +439,7 @@ static void PlayerStationsWndProc(Window *w, WindowEvent *e)
|
||||
}
|
||||
case STATIONLIST_WIDGET_SORTBY: /*flip sorting method asc/desc*/
|
||||
sl->flags ^= SL_ORDER; //DESC-flag
|
||||
station_sort.order = GB(sl->flags, 0, 1);
|
||||
sl->flags |= SL_RESORT;
|
||||
w->flags4 |= 5 << WF_TIMEOUT_SHL;
|
||||
LowerWindowWidget(w, STATIONLIST_WIDGET_SORTBY);
|
||||
@ -471,6 +475,7 @@ static void PlayerStationsWndProc(Window *w, WindowEvent *e)
|
||||
if (sl->sort_type != e->we.dropdown.index) {
|
||||
// value has changed -> resort
|
||||
sl->sort_type = e->we.dropdown.index;
|
||||
station_sort.criteria = sl->sort_type;
|
||||
sl->flags |= SL_RESORT;
|
||||
}
|
||||
SetWindowDirty(w);
|
||||
|
Loading…
Reference in New Issue
Block a user