@ -568,8 +568,13 @@ public:
this - > SetWidgetLoweredState ( WID_NG_REFRESH , sel ! = nullptr & & sel - > refreshing ) ;
/* 'NewGRF Settings' button invisible if no NewGRF is used */
this - > GetWidget < NWidgetStacked > ( WID_NG_NEWGRF_SEL ) - > SetDisplayedPlane ( sel = = nullptr | | sel - > status ! = NGLS_ONLINE | | sel - > info . grfconfig = = nullptr ) ;
this - > GetWidget < NWidgetStacked > ( WID_NG_NEWGRF_MISSING_SEL ) - > SetDisplayedPlane ( sel = = nullptr | | sel - > status ! = NGLS_ONLINE | | sel - > info . grfconfig = = nullptr | | ! sel - > info . version_compatible | | sel - > info . compatible ) ;
bool changed = false ;
changed | = this - > GetWidget < NWidgetStacked > ( WID_NG_NEWGRF_SEL ) - > SetDisplayedPlane ( sel = = nullptr | | sel - > status ! = NGLS_ONLINE | | sel - > info . grfconfig = = nullptr ? SZSP_NONE : 0 ) ;
changed | = this - > GetWidget < NWidgetStacked > ( WID_NG_NEWGRF_MISSING_SEL ) - > SetDisplayedPlane ( sel = = nullptr | | sel - > status ! = NGLS_ONLINE | | sel - > info . grfconfig = = nullptr | | ! sel - > info . version_compatible | | sel - > info . compatible ? SZSP_NONE : 0 ) ;
if ( changed ) {
this - > ReInit ( ) ;
return ;
}
# ifdef __EMSCRIPTEN__
this - > SetWidgetDisabledState ( WID_NG_SEARCH_INTERNET , true ) ;
@ -866,11 +871,11 @@ static const NWidgetPart _nested_network_game_widgets[] = {
NWidget ( WWT_DEFSIZEBOX , COLOUR_LIGHT_BLUE ) ,
EndContainer ( ) ,
NWidget ( WWT_PANEL , COLOUR_LIGHT_BLUE , WID_NG_MAIN ) ,
NWidget ( NWID_VERTICAL ) , SetPIP ( 10, 7 , 0 ) ,
NWidget ( NWID_HORIZONTAL ) , SetPIP ( 10, 7 , 1 0) ,
NWidget ( NWID_VERTICAL ) , SetPIP ( 0, WidgetDimensions : : unscaled . vsep_wide , 0 ) , SetPadding ( WidgetDimensions : : unscaled . sparse_resize ) ,
NWidget ( NWID_HORIZONTAL ) , SetPIP ( 0, WidgetDimensions : : unscaled . hsep_wide , 0) ,
/* LEFT SIDE */
NWidget ( NWID_VERTICAL ) , SetPIP ( 0 , 7 , 0 ) ,
NWidget ( NWID_HORIZONTAL ) , SetPIP ( 0 , 7 , 0 ) ,
NWidget ( NWID_VERTICAL ) , SetPIP ( 0 , WidgetDimensions : : unscaled . vsep_wide , 0 ) ,
NWidget ( NWID_HORIZONTAL ) , SetPIP ( 0 , WidgetDimensions : : unscaled . hsep_normal , 0 ) ,
NWidget ( WWT_TEXT , COLOUR_LIGHT_BLUE , WID_NG_FILTER_LABEL ) , SetDataTip ( STR_LIST_FILTER_TITLE , STR_NULL ) ,
NWidget ( WWT_EDITBOX , COLOUR_LIGHT_BLUE , WID_NG_FILTER ) , SetMinimalSize ( 251 , 12 ) , SetFill ( 1 , 0 ) , SetResize ( 1 , 0 ) ,
SetDataTip ( STR_LIST_FILTER_OSKTITLE , STR_LIST_FILTER_TOOLTIP ) ,
@ -895,29 +900,23 @@ static const NWidgetPart _nested_network_game_widgets[] = {
EndContainer ( ) ,
EndContainer ( ) ,
/* RIGHT SIDE */
NWidget ( NWID_VERTICAL ) , SetPIP ( 0 , 7 , 0 ) ,
NWidget ( NWID_HORIZONTAL ) , SetPIP ( 0 , 7 , 0 ) ,
NWidget ( NWID_VERTICAL ) , SetPIP ( 0 , WidgetDimensions : : unscaled . vsep_wide , 0 ) ,
NWidget ( NWID_HORIZONTAL ) , SetPIP ( 0 , WidgetDimensions : : unscaled . hsep_normal , 0 ) ,
NWidget ( WWT_TEXT , COLOUR_LIGHT_BLUE , WID_NG_CLIENT_LABEL ) , SetDataTip ( STR_NETWORK_SERVER_LIST_PLAYER_NAME , STR_NULL ) ,
NWidget ( WWT_EDITBOX , COLOUR_LIGHT_BLUE , WID_NG_CLIENT ) , SetMinimalSize ( 151 , 12 ) , SetFill ( 1 , 0 ) , SetResize ( 1 , 0 ) ,
SetDataTip ( STR_NETWORK_SERVER_LIST_PLAYER_NAME_OSKTITLE , STR_NETWORK_SERVER_LIST_ENTER_NAME_TOOLTIP ) ,
EndContainer ( ) ,
NWidget ( WWT_PANEL , COLOUR_LIGHT_BLUE , WID_NG_DETAILS ) ,
NWidget ( NWID_VERTICAL , NC_EQUALSIZE ) , SetPIP ( 5 , 5 , 5 ) ,
NWidget ( WWT_EMPTY , INVALID_COLOUR , WID_NG_DETAILS_SPACER ) , SetMinimalSize ( 140 , 0 ) , SetMinimalTextLines ( 15 , 24 + WidgetDimensions : : unscaled . vsep_normal ) , SetResize ( 0 , 1 ) , SetFill ( 1 , 1 ) , // Make sure it's at least this wide
NWidget ( NWID_HORIZONTAL , NC_NONE ) , SetPIP ( 5 , 5 , 5 ) ,
NWidget ( NWID_SELECTION , INVALID_COLOUR , WID_NG_NEWGRF_MISSING_SEL ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_NEWGRF_MISSING ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_BUTTON , STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_TOOLTIP ) ,
NWidget ( NWID_SPACER ) , SetFill ( 1 , 0 ) ,
EndContainer ( ) ,
NWidget ( NWID_VERTICAL , NC_EQUALSIZE ) , SetPIP ( 0 , WidgetDimensions : : unscaled . vsep_sparse , 0 ) ,
NWidget ( WWT_PANEL , COLOUR_LIGHT_BLUE , WID_NG_DETAILS ) , SetMinimalSize ( 140 , 0 ) , SetMinimalTextLines ( 15 , 0 ) , SetResize ( 0 , 1 ) ,
EndContainer ( ) ,
NWidget ( NWID_VERTICAL , NC_EQUALSIZE ) ,
NWidget ( NWID_SELECTION , INVALID_COLOUR , WID_NG_NEWGRF_MISSING_SEL ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_NEWGRF_MISSING ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_BUTTON , STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_TOOLTIP ) ,
EndContainer ( ) ,
NWidget ( NWID_HORIZONTAL , NC_EQUALSIZE ) , SetPIP ( 5 , 5 , 5 ) ,
NWidget ( NWID_SPACER ) , SetFill ( 1 , 0 ) ,
NWidget ( NWID_SELECTION , INVALID_COLOUR , WID_NG_NEWGRF_SEL ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_NEWGRF ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_INTRO_NEWGRF_SETTINGS , STR_NULL ) ,
NWidget ( NWID_SPACER ) , SetFill ( 1 , 0 ) ,
EndContainer ( ) ,
NWidget ( NWID_SELECTION , INVALID_COLOUR , WID_NG_NEWGRF_SEL ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_NEWGRF ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_INTRO_NEWGRF_SETTINGS , STR_NULL ) ,
EndContainer ( ) ,
NWidget ( NWID_HORIZONTAL , NC_EQUALSIZE ) , SetPIP ( 5 , 5 , 5 ) ,
NWidget ( NWID_HORIZONTAL , NC_EQUALSIZE ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_JOIN ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_NETWORK_SERVER_LIST_JOIN_GAME , STR_NULL ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_REFRESH ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_NETWORK_SERVER_LIST_REFRESH , STR_NETWORK_SERVER_LIST_REFRESH_TOOLTIP ) ,
EndContainer ( ) ,
@ -926,23 +925,19 @@ static const NWidgetPart _nested_network_game_widgets[] = {
EndContainer ( ) ,
EndContainer ( ) ,
/* BOTTOM */
NWidget ( NWID_HORIZONTAL ) ,
NWidget ( NWID_VERTICAL ) ,
NWidget ( NWID_HORIZONTAL , NC_EQUALSIZE ) , SetPIP ( 10 , 7 , 4 ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_SEARCH_INTERNET ) , SetResize ( 1 , 0 ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_NETWORK_SERVER_LIST_SEARCH_SERVER_INTERNET , STR_NETWORK_SERVER_LIST_SEARCH_SERVER_INTERNET_TOOLTIP ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_SEARCH_LAN ) , SetResize ( 1 , 0 ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_NETWORK_SERVER_LIST_SEARCH_SERVER_LAN , STR_NETWORK_SERVER_LIST_SEARCH_SERVER_LAN_TOOLTIP ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_ADD ) , SetResize ( 1 , 0 ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_NETWORK_SERVER_LIST_ADD_SERVER , STR_NETWORK_SERVER_LIST_ADD_SERVER_TOOLTIP ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_START ) , SetResize ( 1 , 0 ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_NETWORK_SERVER_LIST_START_SERVER , STR_NETWORK_SERVER_LIST_START_SERVER_TOOLTIP ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_CANCEL ) , SetResize ( 1 , 0 ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_BUTTON_CANCEL , STR_NULL ) ,
EndContainer ( ) ,
NWidget ( NWID_SPACER ) , SetMinimalSize ( 0 , 6 ) , SetResize ( 1 , 0 ) , SetFill ( 1 , 0 ) ,
EndContainer ( ) ,
NWidget ( NWID_VERTICAL ) ,
NWidget ( NWID_SPACER ) , SetFill ( 0 , 1 ) ,
NWidget ( WWT_RESIZEBOX , COLOUR_LIGHT_BLUE ) ,
EndContainer ( ) ,
NWidget ( NWID_HORIZONTAL , NC_EQUALSIZE ) , SetPIP ( 0 , WidgetDimensions : : unscaled . hsep_wide , 0 ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_SEARCH_INTERNET ) , SetResize ( 1 , 0 ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_NETWORK_SERVER_LIST_SEARCH_SERVER_INTERNET , STR_NETWORK_SERVER_LIST_SEARCH_SERVER_INTERNET_TOOLTIP ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_SEARCH_LAN ) , SetResize ( 1 , 0 ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_NETWORK_SERVER_LIST_SEARCH_SERVER_LAN , STR_NETWORK_SERVER_LIST_SEARCH_SERVER_LAN_TOOLTIP ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_ADD ) , SetResize ( 1 , 0 ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_NETWORK_SERVER_LIST_ADD_SERVER , STR_NETWORK_SERVER_LIST_ADD_SERVER_TOOLTIP ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_START ) , SetResize ( 1 , 0 ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_NETWORK_SERVER_LIST_START_SERVER , STR_NETWORK_SERVER_LIST_START_SERVER_TOOLTIP ) ,
NWidget ( WWT_PUSHTXTBTN , COLOUR_WHITE , WID_NG_CANCEL ) , SetResize ( 1 , 0 ) , SetFill ( 1 , 0 ) , SetDataTip ( STR_BUTTON_CANCEL , STR_NULL ) ,
EndContainer ( ) ,
EndContainer ( ) ,
/* Resize button. */
NWidget ( NWID_HORIZONTAL ) ,
NWidget ( NWID_SPACER ) , SetFill ( 1 , 0 ) , SetResize ( 1 , 0 ) ,
NWidget ( WWT_RESIZEBOX , COLOUR_LIGHT_BLUE ) ,
EndContainer ( ) ,
EndContainer ( ) ,
} ;