Implementation of the Network related GUIs. More...
#include "../stdafx.h"#include "../strings_func.h"#include "../date_func.h"#include "../fios.h"#include "network_client.h"#include "network_gui.h"#include "network_gamelist.h"#include "network.h"#include "network_base.h"#include "network_content.h"#include "../gui.h"#include "network_udp.h"#include "../window_func.h"#include "../gfx_func.h"#include "../widgets/dropdown_func.h"#include "../querystring_gui.h"#include "../sortlist_type.h"#include "../company_func.h"#include "../core/geometry_func.hpp"#include "../genworld.h"#include "../map_type.h"#include "../widgets/network_widget.h"#include "table/strings.h"#include "../table/sprites.h"Go to the source code of this file.
Data Structures | |
| class | NWidgetServerListHeader |
| Full blown container to make it behave exactly as we want :). More... | |
| class | NetworkGameWindow |
| struct | NetworkStartServerWindow |
| struct | NetworkLobbyWindow |
| struct | NetworkClientListPopupWindow |
| Popup selection window to chose an action to perform. More... | |
| struct | NetworkClientListPopupWindow::ClientListAction |
| Container for actions that can be executed. More... | |
| struct | NetworkClientListWindow |
| Main handle for clientlist. More... | |
| struct | NetworkJoinStatusWindow |
| struct | NetworkCompanyPasswordWindow |
Typedefs | |
|
typedef GUIList < NetworkGameList * > | GUIGameServerList |
| typedef uint16 | ServerListPosition |
| typedef void | ClientList_Action_Proc (const NetworkClientInfo *ci) |
| Prototype for ClientList actions. | |
Functions | |
| static void | ShowNetworkStartServerWindow () |
| static void | ShowNetworkLobbyWindow (NetworkGameList *ngl) |
| Show the networklobbywindow with the selected server. | |
| void | SortNetworkLanguages () |
| void | UpdateNetworkGameWindow () |
| Update the network new window because a new server is found on the network. | |
| static NWidgetBase * | MakeResizableHeader (int *biggest_index) |
| void | ShowNetworkGameWindow () |
| NetworkCompanyInfo * | GetLobbyCompanyInfo (CompanyID company) |
| Get the company information of a given company to fill for the lobby. | |
| void | DrawCompanyIcon (CompanyID cid, int x, int y) |
| Draw the icon of a company. | |
| static void | ClientList_Kick (const NetworkClientInfo *ci) |
| static void | ClientList_Ban (const NetworkClientInfo *ci) |
| static void | ClientList_GiveMoney (const NetworkClientInfo *ci) |
| static void | ClientList_SpeakToClient (const NetworkClientInfo *ci) |
| static void | ClientList_SpeakToCompany (const NetworkClientInfo *ci) |
| static void | ClientList_SpeakToAll (const NetworkClientInfo *ci) |
| static void | PopupClientList (ClientID client_id, int x, int y) |
| Show the popup (action list). | |
| void | ShowClientList () |
| void | ShowJoinStatusWindow () |
| void | ShowNetworkNeedPassword (NetworkPasswordType npt) |
| void | ShowNetworkCompanyPasswordWindow (Window *parent) |
Variables | |
| static const StringID | _connection_types_dropdown [] |
| static const StringID | _lan_internet_types_dropdown [] |
| static StringID | _language_dropdown [NETLANG_COUNT+1] = {STR_NULL} |
| static const ServerListPosition | SLP_INVALID = 0xFFFF |
| static const NWidgetPart | _nested_network_game_widgets [] |
| static const WindowDesc | _network_game_window_desc (WDP_CENTER, 1000, 730, WC_NETWORK_WINDOW, WC_NONE, WDF_UNCLICK_BUTTONS, _nested_network_game_widgets, lengthof(_nested_network_game_widgets)) |
| static const NWidgetPart | _nested_network_start_server_window_widgets [] |
| static const WindowDesc | _network_start_server_window_desc (WDP_CENTER, 0, 0, WC_NETWORK_WINDOW, WC_NONE, WDF_UNCLICK_BUTTONS, _nested_network_start_server_window_widgets, lengthof(_nested_network_start_server_window_widgets)) |
| static const NWidgetPart | _nested_network_lobby_window_widgets [] |
| static const WindowDesc | _network_lobby_window_desc (WDP_CENTER, 0, 0, WC_NETWORK_WINDOW, WC_NONE, WDF_UNCLICK_BUTTONS, _nested_network_lobby_window_widgets, lengthof(_nested_network_lobby_window_widgets)) |
| static const NWidgetPart | _nested_client_list_popup_widgets [] |
| static const WindowDesc | _client_list_popup_desc (WDP_AUTO, 0, 0, WC_CLIENT_LIST_POPUP, WC_CLIENT_LIST, 0, _nested_client_list_popup_widgets, lengthof(_nested_client_list_popup_widgets)) |
| static const NWidgetPart | _nested_client_list_widgets [] |
| static const WindowDesc | _client_list_desc (WDP_AUTO, 0, 0, WC_CLIENT_LIST, WC_NONE, 0, _nested_client_list_widgets, lengthof(_nested_client_list_widgets)) |
| NetworkJoinStatus | _network_join_status |
| The status of joining. | |
| uint8 | _network_join_waiting |
| The number of clients waiting in front of us. | |
| uint32 | _network_join_bytes |
| The number of bytes we already downloaded. | |
| uint32 | _network_join_bytes_total |
| The total number of bytes to download. | |
| static const NWidgetPart | _nested_network_join_status_window_widgets [] |
| static const WindowDesc | _network_join_status_window_desc (WDP_CENTER, 0, 0, WC_NETWORK_STATUS_WINDOW, WC_NONE, WDF_MODAL, _nested_network_join_status_window_widgets, lengthof(_nested_network_join_status_window_widgets)) |
| static const NWidgetPart | _nested_network_company_password_window_widgets [] |
| static const WindowDesc | _network_company_password_window_desc (WDP_AUTO, 0, 0, WC_COMPANY_PASSWORD_WINDOW, WC_NONE, WDF_UNCLICK_BUTTONS, _nested_network_company_password_window_widgets, lengthof(_nested_network_company_password_window_widgets)) |
Implementation of the Network related GUIs.
Definition in file network_gui.cpp.
| typedef void ClientList_Action_Proc(const NetworkClientInfo *ci) |
Prototype for ClientList actions.
| ci | The information about the current client. |
Definition at line 1656 of file network_gui.cpp.
| void DrawCompanyIcon | ( | CompanyID | c, | |
| int | x, | |||
| int | y | |||
| ) |
Draw the icon of a company.
| c | Company that needs its icon drawn. | |
| x | Horizontal coordinate of the icon. | |
| y | Vertical coordinate of the icon. |
Definition at line 133 of file company_cmd.cpp.
References DrawSprite().
Referenced by TownAuthorityWindow::DrawRatings(), NetworkClientListWindow::DrawWidget(), PerformanceRatingDetailWindow::DrawWidget(), CompanyLeagueWindow::DrawWidget(), GraphLegendWindow::DrawWidget(), and CheatWindow::DrawWidget().
| NetworkCompanyInfo* GetLobbyCompanyInfo | ( | CompanyID | company | ) |
Get the company information of a given company to fill for the lobby.
| company | the company to get the company info struct from. |
Definition at line 1640 of file network_gui.cpp.
References FindWindowById(), WC_NETWORK_WINDOW, and WN_NETWORK_WINDOW_LOBBY.
Referenced by NetworkLobbyWindow::OnPaint(), and ClientNetworkGameSocketHandler::Receive_SERVER_COMPANY_INFO().
| static void ShowNetworkLobbyWindow | ( | NetworkGameList * | ngl | ) | [static] |
Show the networklobbywindow with the selected server.
| ngl | Selected game pointer which is passed to the new window. |
Definition at line 1624 of file network_gui.cpp.
References _settings_client, DeleteWindowById(), NetworkSettings::last_host, NetworkSettings::last_port, ClientSettings::network, NetworkUDPQueryServer(), WC_NETWORK_WINDOW, WN_NETWORK_WINDOW_GAME, and WN_NETWORK_WINDOW_START.
| void UpdateNetworkGameWindow | ( | ) |
Update the network new window because a new server is found on the network.
| unselect | unselect the currently selected item |
Definition at line 75 of file network_gui.cpp.
References InvalidateWindowData(), WC_NETWORK_WINDOW, and WN_NETWORK_WINDOW_GAME.
Referenced by NetworkGameListAddItem(), NetworkGameListHandleDelayedInsert(), NetworkGameListRemoveItem(), and ClientNetworkUDPSocketHandler::Receive_SERVER_RESPONSE().
const StringID _connection_types_dropdown[] [static] |
{
STR_NETWORK_START_SERVER_LAN_INTERNET,
STR_NETWORK_START_SERVER_INTERNET_ADVERTISE,
INVALID_STRING_ID
}
Definition at line 44 of file network_gui.cpp.
const StringID _lan_internet_types_dropdown[] [static] |
{
STR_NETWORK_SERVER_LIST_LAN,
STR_NETWORK_SERVER_LIST_INTERNET,
INVALID_STRING_ID
}
Definition at line 50 of file network_gui.cpp.
const NWidgetPart _nested_client_list_popup_widgets[] [static] |
{
NWidget(WWT_PANEL, COLOUR_GREY, WID_CLP_PANEL), EndContainer(),
}
Definition at line 1658 of file network_gui.cpp.
const NWidgetPart _nested_client_list_widgets[] [static] |
{
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_GREY),
NWidget(WWT_CAPTION, COLOUR_GREY), SetDataTip(STR_NETWORK_COMPANY_LIST_CLIENT_LIST, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_STICKYBOX, COLOUR_GREY),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, WID_CL_PANEL), SetMinimalSize(250, WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM), SetResize(1, 1), EndContainer(),
}
Definition at line 1829 of file network_gui.cpp.
const NWidgetPart _nested_network_company_password_window_widgets[] [static] |
{
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_GREY),
NWidget(WWT_CAPTION, COLOUR_GREY), SetDataTip(STR_COMPANY_PASSWORD_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, WID_NCP_BACKGROUND),
NWidget(NWID_VERTICAL), SetPIP(5, 5, 5),
NWidget(NWID_HORIZONTAL), SetPIP(5, 5, 5),
NWidget(WWT_TEXT, COLOUR_GREY, WID_NCP_LABEL), SetDataTip(STR_COMPANY_VIEW_PASSWORD, STR_NULL),
NWidget(WWT_EDITBOX, COLOUR_GREY, WID_NCP_PASSWORD), SetMinimalSize(194, 12), SetDataTip(STR_COMPANY_VIEW_SET_PASSWORD, STR_NULL),
EndContainer(),
NWidget(NWID_HORIZONTAL), SetPIP(5, 0, 5),
NWidget(NWID_SPACER), SetFill(1, 0),
NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_NCP_SAVE_AS_DEFAULT_PASSWORD), SetMinimalSize(194, 12),
SetDataTip(STR_COMPANY_PASSWORD_MAKE_DEFAULT, STR_COMPANY_PASSWORD_MAKE_DEFAULT_TOOLTIP),
EndContainer(),
EndContainer(),
EndContainer(),
NWidget(NWID_HORIZONTAL, NC_EQUALSIZE),
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_NCP_CANCEL), SetFill(1, 0), SetDataTip(STR_BUTTON_CANCEL, STR_COMPANY_PASSWORD_CANCEL),
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_NCP_OK), SetFill(1, 0), SetDataTip(STR_BUTTON_OK, STR_COMPANY_PASSWORD_OK),
EndContainer(),
}
Definition at line 2210 of file network_gui.cpp.
const NWidgetPart _nested_network_join_status_window_widgets[] [static] |
{
NWidget(WWT_CAPTION, COLOUR_GREY), SetDataTip(STR_NETWORK_CONNECTING_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_PANEL, COLOUR_GREY),
NWidget(WWT_EMPTY, COLOUR_GREY, WID_NJS_BACKGROUND),
NWidget(NWID_HORIZONTAL),
NWidget(NWID_SPACER), SetMinimalSize(75, 0), SetFill(1, 0),
NWidget(WWT_PUSHTXTBTN, COLOUR_WHITE, WID_NJS_CANCELOK), SetMinimalSize(101, 12), SetDataTip(STR_NETWORK_CONNECTION_DISCONNECT, STR_NULL),
NWidget(NWID_SPACER), SetMinimalSize(75, 0), SetFill(1, 0),
EndContainer(),
NWidget(NWID_SPACER), SetMinimalSize(0, 4),
EndContainer(),
}
Definition at line 2097 of file network_gui.cpp.
1.7.1