# HG changeset patch # User rubidium # Date 1232755016 0 # Node ID 338906f990f434801775304c64c4f24786a378b3 # Parent 4e96c520e9caca78f65c6cc13d3aca5f4edf3acb (svn r15247) -Change: show a lock near the password/join button in the company window whenever the company is password protected diff --git a/src/company_gui.cpp b/src/company_gui.cpp --- a/src/company_gui.cpp +++ b/src/company_gui.cpp @@ -1071,7 +1071,7 @@ { WWT_PUSHTXTBTN, RESIZE_NONE, COLOUR_GREY, 0, 179, 158, 169, STR_7077_BUY_25_SHARE_IN_COMPANY, STR_7079_BUY_25_SHARE_IN_THIS_COMPANY}, { WWT_PUSHTXTBTN, RESIZE_NONE, COLOUR_GREY, 180, 359, 158, 169, STR_7078_SELL_25_SHARE_IN_COMPANY, STR_707A_SELL_25_SHARE_IN_THIS_COMPANY}, { WWT_PUSHTXTBTN, RESIZE_NONE, COLOUR_GREY, 266, 355, 138, 149, STR_COMPANY_PASSWORD, STR_COMPANY_PASSWORD_TOOLTIP}, -{ WWT_PUSHTXTBTN, RESIZE_NONE, COLOUR_GREY, 266, 355, 46, 57, STR_COMPANY_JOIN, STR_COMPANY_JOIN_TIP}, +{ WWT_PUSHTXTBTN, RESIZE_NONE, COLOUR_GREY, 266, 355, 138, 149, STR_COMPANY_JOIN, STR_COMPANY_JOIN_TIP}, { WIDGETS_END}, }; @@ -1217,6 +1217,12 @@ this->DrawWidgets(); +#ifdef ENABLE_NETWORK + if (_networking && NetworkCompanyIsPassworded(c->index)) { + DrawSprite(SPR_LOCK, PAL_NONE, this->widget[CW_WIDGET_COMPANY_JOIN].left - 10, this->widget[CW_WIDGET_COMPANY_JOIN].top + 2); + } +#endif /* ENABLE_NETWORK */ + /* Company manager's face */ DrawCompanyManagerFace(c->face, c->colour, 2, 16); diff --git a/src/network/network_client.cpp b/src/network/network_client.cpp --- a/src/network/network_client.cpp +++ b/src/network/network_client.cpp @@ -872,6 +872,7 @@ DEF_CLIENT_RECEIVE_COMMAND(PACKET_SERVER_COMPANY_UPDATE) { _network_company_passworded = p->Recv_uint16(); + InvalidateWindowClasses(WC_COMPANY); return NETWORK_RECV_STATUS_OKAY; } diff --git a/src/network/network_server.cpp b/src/network/network_server.cpp --- a/src/network/network_server.cpp +++ b/src/network/network_server.cpp @@ -28,6 +28,7 @@ #include "../company_func.h" #include "../company_gui.h" #include "../settings_type.h" +#include "../window_func.h" #include "table/strings.h" @@ -1720,6 +1721,7 @@ if (NetworkCompanyIsPassworded(company_id) == passworded) return; SB(_network_company_passworded, company_id, 1, !!passworded); + InvalidateWindowClasses(WC_COMPANY); NetworkClientSocket *cs; FOR_ALL_CLIENT_SOCKETS(cs) {