@ -46,7 +46,6 @@ static const NWidgetPart _nested_group_widgets[] = {
NWidget ( NWID_HORIZONTAL ) ,
/* left part */
NWidget ( NWID_VERTICAL ) ,
NWidget ( WWT_PANEL , COLOUR_GREY ) , SetMinimalTextLines ( 1 , WD_DROPDOWNTEXT_TOP + WD_DROPDOWNTEXT_BOTTOM ) , SetFill ( 1 , 0 ) , EndContainer ( ) ,
NWidget ( WWT_PANEL , COLOUR_GREY , WID_GL_ALL_VEHICLES ) , SetFill ( 1 , 0 ) , EndContainer ( ) ,
NWidget ( WWT_PANEL , COLOUR_GREY , WID_GL_DEFAULT_VEHICLES ) , SetFill ( 1 , 0 ) , EndContainer ( ) ,
NWidget ( NWID_HORIZONTAL ) ,
@ -54,18 +53,18 @@ static const NWidgetPart _nested_group_widgets[] = {
SetFill ( 1 , 0 ) , SetResize ( 0 , 1 ) , SetScrollbar ( WID_GL_LIST_GROUP_SCROLLBAR ) ,
NWidget ( NWID_VSCROLLBAR , COLOUR_GREY , WID_GL_LIST_GROUP_SCROLLBAR ) ,
EndContainer ( ) ,
NWidget ( WWT_PANEL , COLOUR_GREY , WID_GL_INFO ) , SetFill ( 1 , 0 ) , EndContainer ( ) ,
NWidget ( WWT_PANEL , COLOUR_GREY , WID_GL_INFO ) , SetFill ( 1 , 1) , SetMinimalTextLines ( 3 , WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM ) , EndContainer ( ) ,
NWidget ( NWID_HORIZONTAL ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_CREATE_GROUP ) , SetFill ( 0 , 1 ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_CREATE_GROUP ) ,
SetDataTip ( SPR_GROUP_CREATE_TRAIN , STR_GROUP_CREATE_TOOLTIP ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_DELETE_GROUP ) , SetFill ( 0 , 1 ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_DELETE_GROUP ) ,
SetDataTip ( SPR_GROUP_DELETE_TRAIN , STR_GROUP_DELETE_TOOLTIP ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_RENAME_GROUP ) , SetFill ( 0 , 1 ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_RENAME_GROUP ) ,
SetDataTip ( SPR_GROUP_RENAME_TRAIN , STR_GROUP_RENAME_TOOLTIP ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_LIVERY_GROUP ) , SetFill ( 0 , 1 ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_LIVERY_GROUP ) ,
SetDataTip ( SPR_GROUP_LIVERY_TRAIN , STR_GROUP_LIVERY_TOOLTIP ) ,
NWidget ( WWT_PANEL , COLOUR_GREY ) , SetFill ( 1 , 1 ) , EndContainer ( ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_REPLACE_PROTECTION ) , SetFill ( 0 , 1 ) ,
NWidget ( WWT_PANEL , COLOUR_GREY ) , SetFill ( 1 , 0 ) , EndContainer ( ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_REPLACE_PROTECTION ) ,
SetDataTip ( SPR_GROUP_REPLACE_OFF_TRAIN , STR_GROUP_REPLACE_PROTECTION_TOOLTIP ) ,
EndContainer ( ) ,
EndContainer ( ) ,
@ -87,14 +86,14 @@ static const NWidgetPart _nested_group_widgets[] = {
EndContainer ( ) ,
NWidget ( WWT_PANEL , COLOUR_GREY ) , SetMinimalSize ( 1 , 0 ) , SetFill ( 1 , 1 ) , SetResize ( 1 , 0 ) , EndContainer ( ) ,
NWidget ( NWID_HORIZONTAL ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_GREY , WID_GL_AVAILABLE_VEHICLES ) , SetMinimalSize ( 106 , 12 ) , SetFill ( 0 , 1 ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_GREY , WID_GL_AVAILABLE_VEHICLES ) , SetMinimalSize ( 106 , 12 ) ,
SetDataTip ( STR_BLACK_STRING , STR_VEHICLE_LIST_AVAILABLE_ENGINES_TOOLTIP ) ,
NWidget ( WWT_PANEL , COLOUR_GREY ) , SetMinimalSize ( 0 , 12 ) , SetFill ( 1 , 1 ) , SetResize ( 1 , 0 ) , EndContainer ( ) ,
NWidget ( WWT_DROPDOWN , COLOUR_GREY , WID_GL_MANAGE_VEHICLES_DROPDOWN ) , SetMinimalSize ( 118 , 12 ) , SetFill ( 0 , 1 ) ,
NWidget ( WWT_PANEL , COLOUR_GREY ) , SetMinimalSize ( 0 , 12 ) , SetFill ( 1 , 0 ) , SetResize ( 1 , 0 ) , EndContainer ( ) ,
NWidget ( WWT_DROPDOWN , COLOUR_GREY , WID_GL_MANAGE_VEHICLES_DROPDOWN ) , SetMinimalSize ( 118 , 12 ) ,
SetDataTip ( STR_VEHICLE_LIST_MANAGE_LIST , STR_VEHICLE_LIST_MANAGE_LIST_TOOLTIP ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_STOP_ALL ) , SetMinimalSize ( 12 , 12 ) , SetFill ( 0 , 1 ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_STOP_ALL ) , SetMinimalSize ( 12 , 12 ) ,
SetDataTip ( SPR_FLAG_VEH_STOPPED , STR_VEHICLE_LIST_MASS_STOP_LIST_TOOLTIP ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_START_ALL ) , SetMinimalSize ( 12 , 12 ) , SetFill ( 0 , 1 ) ,
NWidget ( WWT_PUSHIMGBTN , COLOUR_GREY , WID_GL_START_ALL ) , SetMinimalSize ( 12 , 12 ) ,
SetDataTip ( SPR_FLAG_VEH_RUNNING , STR_VEHICLE_LIST_MASS_START_LIST_TOOLTIP ) ,
NWidget ( WWT_RESIZEBOX , COLOUR_GREY ) ,
EndContainer ( ) ,
@ -229,7 +228,7 @@ private:
this - > column_size [ VGC_NUMBER ] = GetStringBoundingBox ( STR_GROUP_COUNT_WITH_SUBGROUP ) ;
this - > tiny_step_height = std : : max ( this - > tiny_step_height , this - > column_size [ VGC_NUMBER ] . height ) ;
this - > tiny_step_height + = WD_ MATRIX_TOP ;
this - > tiny_step_height + = WD_ FRAMERECT_TOP + WD_FRAMERECT_BOTTOM ;
return WD_FRAMERECT_LEFT + 8 +
this - > column_size [ VGC_FOLD ] . width + 2 +
@ -255,7 +254,7 @@ private:
{
/* Highlight the group if a vehicle is dragged over it */
if ( g_id = = this - > group_over ) {
GfxFillRect ( left + WD_FRAMERECT_LEFT , y + WD_FRAMERECT_TOP , right - WD_FRAMERECT_RIGHT , y + this - > tiny_step_height - WD_FRAMERECT_BOTTOM - WD_MATRIX_TOP , _colour_gradient [ COLOUR_GREY ] [ 7 ] ) ;
GfxFillRect ( left + WD_FRAMERECT_LEFT , y + WD_FRAMERECT_TOP + 1 , right - WD_FRAMERECT_RIGHT , y + this - > tiny_step_height - WD_FRAMERECT_BOTTOM - 1 , _colour_gradient [ COLOUR_GREY ] [ 7 ] ) ;
}
if ( g_id = = NEW_GROUP ) return ;
@ -386,7 +385,7 @@ public:
resize - > height = this - > tiny_step_height ;
/* Minimum height is the height of the list widget minus all and default vehicles... */
size - > height = 4 * GetVehicleListHeight ( this - > vli . vtype , this - > tiny_step_height ) - 2 * this - > tiny_step_height ;
size - > height = 4 * GetVehicleListHeight ( this - > vli . vtype , this - > tiny_step_height ) ;
/* ... minus the buttons at the bottom ... */
uint max_icon_height = GetSpriteSize ( this - > GetWidget < NWidgetCore > ( WID_GL_CREATE_GROUP ) - > widget_data ) . height ;
@ -429,11 +428,6 @@ public:
* size = maxdim ( * size , d ) ;
break ;
}
case WID_GL_INFO : {
size - > height = ( FONT_HEIGHT_NORMAL * 3 ) + WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM ;
break ;
}
}
}
@ -555,11 +549,11 @@ public:
{
switch ( widget ) {
case WID_GL_ALL_VEHICLES :
DrawGroupInfo ( r . top + WD_FRAMERECT_TOP , r . left , r . right , ALL_GROUP ) ;
DrawGroupInfo ( r . top , r . left , r . right , ALL_GROUP ) ;
break ;
case WID_GL_DEFAULT_VEHICLES :
DrawGroupInfo ( r . top + WD_FRAMERECT_TOP , r . left , r . right , DEFAULT_GROUP ) ;
DrawGroupInfo ( r . top , r . left , r . right , DEFAULT_GROUP ) ;
break ;
case WID_GL_INFO : {
@ -600,7 +594,7 @@ public:
}
case WID_GL_LIST_GROUP : {
int y1 = r . top + WD_FRAMERECT_TOP ;
int y1 = r . top ;
int max = std : : min < size_t > ( this - > group_sb - > GetPosition ( ) + this - > group_sb - > GetCapacity ( ) , this - > groups . size ( ) ) ;
for ( int i = this - > group_sb - > GetPosition ( ) ; i < max ; + + i ) {
const Group * g = this - > groups [ i ] ;