(svn r7299) -CodeChange: Train and Aircraft Build window GUI code simplified a bit:

- using one engine list instead of 3
- removed engine filters (loco, wagons, helicopters, etc.)
- EngineList code isolated from GUI (moved to helpers.cpp - reusing CBlobT code which does exactly what is needed for EngineList)
- removed unnecessary  "optimization" (rebuild and sort engine list on each WE_PAINT)
This commit is contained in:
KUDr
2006-11-30 16:03:12 +00:00
parent 3e6f89ca7e
commit 1235172cc7
10 changed files with 305 additions and 391 deletions

View File

@@ -396,20 +396,16 @@ assert_compile(WINDOW_CUSTOM_SIZE >= sizeof(tooltips_d));
typedef struct {
byte vehicle_type;
byte railtype;
union {
byte railtype;
byte acc_planes; // AIRCRAFT_ONLY, ALL, HELICOPTERS_ONLY
} filter;
byte sel_index;
byte show_engine_button;
bool data_invalidated;
bool decenting_sort_order;
bool descending_sort_order;
byte sort_criteria;
EngineID sel_engine;
EngineID rename_engine;
EngineID *list_a;
EngineID *list_b;
EngineID *list_c;
uint16 list_a_length;
uint16 list_b_length;
uint16 list_c_length;
EngineList eng_list;
} buildvehicle_d;
assert_compile(WINDOW_CUSTOM_SIZE >= sizeof(buildvehicle_d));