src/group_gui.cpp
changeset 8970 da7261f48b7e
parent 8962 1b263c69799d
child 8974 4d93998b3c1d
equal deleted inserted replaced
8969:6d1c74e0e2cd 8970:da7261f48b7e
   204 
   204 
   205 	w->widget[GRP_WIDGET_LIST_GROUP].data = (w->vscroll.cap << 8) + 1;
   205 	w->widget[GRP_WIDGET_LIST_GROUP].data = (w->vscroll.cap << 8) + 1;
   206 	w->widget[GRP_WIDGET_LIST_VEHICLE].data = (w->vscroll2.cap << 8) + 1;
   206 	w->widget[GRP_WIDGET_LIST_VEHICLE].data = (w->vscroll2.cap << 8) + 1;
   207 
   207 
   208 	switch (gv->vehicle_type) {
   208 	switch (gv->vehicle_type) {
   209 		default: NOT_REACHED(); break;
   209 		default: NOT_REACHED();
   210 		case VEH_TRAIN:    gv->_sorting = &_sorting.train;    break;
   210 		case VEH_TRAIN:    gv->_sorting = &_sorting.train;    break;
   211 		case VEH_ROAD:     gv->_sorting = &_sorting.roadveh;  break;
   211 		case VEH_ROAD:     gv->_sorting = &_sorting.roadveh;  break;
   212 		case VEH_SHIP:     gv->_sorting = &_sorting.ship;     break;
   212 		case VEH_SHIP:     gv->_sorting = &_sorting.ship;     break;
   213 		case VEH_AIRCRAFT: gv->_sorting = &_sorting.aircraft; break;
   213 		case VEH_AIRCRAFT: gv->_sorting = &_sorting.aircraft; break;
   214 	}
   214 	}
   215 
   215 
   216 	gv->sort_list = NULL;
   216 	gv->sort_list = NULL;
   217 	gv->vehicle_type = (VehicleType)GB(w->window_number, 11, 5);
   217 	gv->vehicle_type = (VehicleType)GB(w->window_number, 11, 5);
   218 	gv->l.sort_type = gv->_sorting->criteria;
   218 	gv->l.sort_type = gv->_sorting->criteria;
   219 	gv->l.flags = VL_REBUILD | (gv->_sorting->order ? VL_DESC : VL_NONE);
   219 	gv->l.flags = VL_REBUILD | (gv->_sorting->order ? VL_DESC : VL_NONE);
   220 	gv->l.resort_timer = DAY_TICKS * PERIODIC_RESORT_DAYS;	// Set up resort timer
   220 	gv->l.resort_timer = DAY_TICKS * PERIODIC_RESORT_DAYS; // Set up resort timer
   221 
   221 
   222 	gl->sort_list = NULL;
   222 	gl->sort_list = NULL;
   223 	gl->l.flags = VL_REBUILD | VL_NONE;
   223 	gl->l.flags = VL_REBUILD | VL_NONE;
   224 	gl->l.resort_timer = DAY_TICKS * PERIODIC_RESORT_DAYS;	// Set up resort timer
   224 	gl->l.resort_timer = DAY_TICKS * PERIODIC_RESORT_DAYS; // Set up resort timer
   225 
   225 
   226 	gv->group_sel = ALL_GROUP;
   226 	gv->group_sel = ALL_GROUP;
   227 	gv->vehicle_sel = INVALID_VEHICLE;
   227 	gv->vehicle_sel = INVALID_VEHICLE;
   228 
   228 
   229 	switch (gv->vehicle_type) {
   229 	switch (gv->vehicle_type) {
   396 						break;
   396 						break;
   397 					case VEH_AIRCRAFT:
   397 					case VEH_AIRCRAFT:
   398 						w->widget[GRP_WIDGET_CAPTION].data =  STR_A009_AIRCRAFT;
   398 						w->widget[GRP_WIDGET_CAPTION].data =  STR_A009_AIRCRAFT;
   399 						w->widget[GRP_WIDGET_REPLACE_PROTECTION].data = SPR_GROUP_REPLACE_OFF_AIRCRAFT;
   399 						w->widget[GRP_WIDGET_REPLACE_PROTECTION].data = SPR_GROUP_REPLACE_OFF_AIRCRAFT;
   400 						break;
   400 						break;
   401 					default: NOT_REACHED(); break;
   401 					default: NOT_REACHED();
   402 				}
   402 				}
   403 			} else {
   403 			} else {
   404 				const Group *g = GetGroup(gv->group_sel);
   404 				const Group *g = GetGroup(gv->group_sel);
   405 
   405 
   406 				SetDParam(0, g->index);
   406 				SetDParam(0, g->index);
   421 						break;
   421 						break;
   422 					case VEH_AIRCRAFT:
   422 					case VEH_AIRCRAFT:
   423 						w->widget[GRP_WIDGET_CAPTION].data = STR_GROUP_AIRCRAFTS_CAPTION;
   423 						w->widget[GRP_WIDGET_CAPTION].data = STR_GROUP_AIRCRAFTS_CAPTION;
   424 						w->widget[GRP_WIDGET_REPLACE_PROTECTION].data = (g->replace_protection) ? SPR_GROUP_REPLACE_ON_AIRCRAFT : SPR_GROUP_REPLACE_OFF_AIRCRAFT;
   424 						w->widget[GRP_WIDGET_REPLACE_PROTECTION].data = (g->replace_protection) ? SPR_GROUP_REPLACE_ON_AIRCRAFT : SPR_GROUP_REPLACE_OFF_AIRCRAFT;
   425 						break;
   425 						break;
   426 					default: NOT_REACHED(); break;
   426 					default: NOT_REACHED();
   427 				}
   427 				}
   428 			}
   428 			}
   429 
   429 
   430 			/* Set text of sort by dropdown */
   430 			/* Set text of sort by dropdown */
   431 			w->widget[GRP_WIDGET_SORT_BY_DROPDOWN].data = _vehicle_sort_listing[gv->l.sort_type];
   431 			w->widget[GRP_WIDGET_SORT_BY_DROPDOWN].data = _vehicle_sort_listing[gv->l.sort_type];
   451 					break;
   451 					break;
   452 				case VEH_AIRCRAFT:
   452 				case VEH_AIRCRAFT:
   453 					str_all_veh = STR_GROUP_ALL_AIRCRAFTS;
   453 					str_all_veh = STR_GROUP_ALL_AIRCRAFTS;
   454 					str_no_group_veh = STR_GROUP_DEFAULT_AIRCRAFTS;
   454 					str_no_group_veh = STR_GROUP_DEFAULT_AIRCRAFTS;
   455 					break;
   455 					break;
   456 				default: NOT_REACHED(); break;
   456 				default: NOT_REACHED();
   457 			}
   457 			}
   458 			DrawString(10, y1, str_all_veh, IsAllGroupID(gv->group_sel) ? TC_WHITE : TC_BLACK);
   458 			DrawString(10, y1, str_all_veh, IsAllGroupID(gv->group_sel) ? TC_WHITE : TC_BLACK);
   459 
   459 
   460 			y1 += 13;
   460 			y1 += 13;
   461 
   461 
   598 
   598 
   599 					const Group *g = GetGroup(gv->group_sel);
   599 					const Group *g = GetGroup(gv->group_sel);
   600 
   600 
   601 					SetDParam(0, g->index);
   601 					SetDParam(0, g->index);
   602 					ShowQueryString(STR_GROUP_NAME, STR_GROUP_RENAME_CAPTION, 31, 150, w, CS_ALPHANUMERAL);
   602 					ShowQueryString(STR_GROUP_NAME, STR_GROUP_RENAME_CAPTION, 31, 150, w, CS_ALPHANUMERAL);
   603 				}	break;
   603 				} break;
   604 
   604 
   605 
   605 
   606 				case GRP_WIDGET_AVAILABLE_VEHICLES:
   606 				case GRP_WIDGET_AVAILABLE_VEHICLES:
   607 					ShowBuildVehicleWindow(0, gv->vehicle_type);
   607 					ShowBuildVehicleWindow(0, gv->vehicle_type);
   608 					break;
   608 					break;