Files
@ r25815:13efa809f0d9
Branch filter:
Location: cpp/openttd-patchpack/source/src/widgets/network_widget.h
r25815:13efa809f0d9
6.4 KiB
text/x-c
Feature: join servers based on their invite code
This removes the need to know a server IP to join it. Invite codes
are small (~7 characters) indentifiers for servers, which can be
exchanged with other players to join the servers.
This removes the need to know a server IP to join it. Invite codes
are small (~7 characters) indentifiers for servers, which can be
exchanged with other players to join the servers.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 | /*
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
*/
/** @file network_widget.h Types related to the network widgets. */
#ifndef WIDGETS_NETWORK_WIDGET_H
#define WIDGETS_NETWORK_WIDGET_H
/** Widgets of the #NetworkGameWindow class. */
enum NetworkGameWidgets {
WID_NG_MAIN, ///< Main panel.
WID_NG_CLIENT_LABEL, ///< Label in front of client name edit box.
WID_NG_CLIENT, ///< Panel with editbox to set client name.
WID_NG_FILTER_LABEL, ///< Label in front of the filter/search edit box.
WID_NG_FILTER, ///< Panel with the edit box to enter the search text.
WID_NG_HEADER, ///< Header container of the matrix.
WID_NG_NAME, ///< 'Name' button.
WID_NG_CLIENTS, ///< 'Clients' button.
WID_NG_MAPSIZE, ///< 'Map size' button.
WID_NG_DATE, ///< 'Date' button.
WID_NG_YEARS, ///< 'Years' button.
WID_NG_INFO, ///< Third button in the game list panel.
WID_NG_MATRIX, ///< Panel with list of games.
WID_NG_SCROLLBAR, ///< Scrollbar of matrix.
WID_NG_LASTJOINED_LABEL, ///< Label "Last joined server:".
WID_NG_LASTJOINED, ///< Info about the last joined server.
WID_NG_LASTJOINED_SPACER, ///< Spacer after last joined server panel.
WID_NG_DETAILS, ///< Panel with game details.
WID_NG_DETAILS_SPACER, ///< Spacer for game actual details.
WID_NG_JOIN, ///< 'Join game' button.
WID_NG_REFRESH, ///< 'Refresh server' button.
WID_NG_NEWGRF, ///< 'NewGRF Settings' button.
WID_NG_NEWGRF_SEL, ///< Selection 'widget' to hide the NewGRF settings.
WID_NG_NEWGRF_MISSING, ///< 'Find missing NewGRF online' button.
WID_NG_NEWGRF_MISSING_SEL, ///< Selection widget for the above button.
WID_NG_SEARCH_INTERNET, ///< 'Search internet server' button.
WID_NG_SEARCH_LAN, ///< 'Search LAN server' button.
WID_NG_ADD, ///< 'Add server' button.
WID_NG_START, ///< 'Start server' button.
WID_NG_CANCEL, ///< 'Cancel' button.
};
/** Widgets of the #NetworkStartServerWindow class. */
enum NetworkStartServerWidgets {
WID_NSS_BACKGROUND, ///< Background of the window.
WID_NSS_GAMENAME_LABEL, ///< Label for the game name.
WID_NSS_GAMENAME, ///< Background for editbox to set game name.
WID_NSS_SETPWD, ///< 'Set password' button.
WID_NSS_CONNTYPE_LABEL, ///< Label for 'connection type'.
WID_NSS_CONNTYPE_BTN, ///< 'Connection type' droplist button.
WID_NSS_CLIENTS_LABEL, ///< Label for 'max clients'.
WID_NSS_CLIENTS_BTND, ///< 'Max clients' downarrow.
WID_NSS_CLIENTS_TXT, ///< 'Max clients' text.
WID_NSS_CLIENTS_BTNU, ///< 'Max clients' uparrow.
WID_NSS_COMPANIES_LABEL, ///< Label for 'max companies'.
WID_NSS_COMPANIES_BTND, ///< 'Max companies' downarrow.
WID_NSS_COMPANIES_TXT, ///< 'Max companies' text.
WID_NSS_COMPANIES_BTNU, ///< 'Max companies' uparrow.
WID_NSS_SPECTATORS_LABEL, ///< Label for 'max spectators'.
WID_NSS_SPECTATORS_BTND, ///< 'Max spectators' downarrow.
WID_NSS_SPECTATORS_TXT, ///< 'Max spectators' text.
WID_NSS_SPECTATORS_BTNU, ///< 'Max spectators' uparrow.
WID_NSS_GENERATE_GAME, ///< New game button.
WID_NSS_LOAD_GAME, ///< Load game button.
WID_NSS_PLAY_SCENARIO, ///< Play scenario button.
WID_NSS_PLAY_HEIGHTMAP, ///< Play heightmap button.
WID_NSS_CANCEL, ///< 'Cancel' button.
};
/** Widgets of the #NetworkLobbyWindow class. */
enum NetworkLobbyWidgets {
WID_NL_BACKGROUND, ///< Background of the window.
WID_NL_TEXT, ///< Heading text.
WID_NL_HEADER, ///< Header above list of companies.
WID_NL_MATRIX, ///< List of companies.
WID_NL_SCROLLBAR, ///< Scroll bar.
WID_NL_DETAILS, ///< Company details.
WID_NL_JOIN, ///< 'Join company' button.
WID_NL_NEW, ///< 'New company' button.
WID_NL_SPECTATE, ///< 'Spectate game' button.
WID_NL_REFRESH, ///< 'Refresh server' button.
WID_NL_CANCEL, ///< 'Cancel' button.
};
/** Widgets of the #NetworkClientListWindow class. */
enum ClientListWidgets {
WID_CL_PANEL, ///< Panel of the window.
WID_CL_SERVER_SELECTOR, ///< Selector to hide the server frame.
WID_CL_SERVER_NAME, ///< Server name.
WID_CL_SERVER_NAME_EDIT, ///< Edit button for server name.
WID_CL_SERVER_VISIBILITY, ///< Server visibility.
WID_CL_SERVER_INVITE_CODE, ///< Invite code for this server.
WID_CL_SERVER_CONNECTION_TYPE, ///< The type of connection the Game Coordinator detected for this server.
WID_CL_CLIENT_NAME, ///< Client name.
WID_CL_CLIENT_NAME_EDIT, ///< Edit button for client name.
WID_CL_MATRIX, ///< Company/client list.
WID_CL_SCROLLBAR, ///< Scrollbar for company/client list.
WID_CL_COMPANY_JOIN, ///< Used for QueryWindow when a company has a password.
WID_CL_CLIENT_COMPANY_COUNT, ///< Count of clients and companies.
};
/** Widgets of the #NetworkJoinStatusWindow class. */
enum NetworkJoinStatusWidgets {
WID_NJS_BACKGROUND, ///< Background of the window.
WID_NJS_CANCELOK, ///< Cancel / OK button.
};
/** Widgets of the #NetworkCompanyPasswordWindow class. */
enum NetworkCompanyPasswordWidgets {
WID_NCP_BACKGROUND, ///< Background of the window.
WID_NCP_LABEL, ///< Label in front of the password field.
WID_NCP_PASSWORD, ///< Input field for the password.
WID_NCP_SAVE_AS_DEFAULT_PASSWORD, ///< Toggle 'button' for saving the current password as default password.
WID_NCP_WARNING, ///< Warning text about password security
WID_NCP_CANCEL, ///< Close the window without changing anything.
WID_NCP_OK, ///< Safe the password etc.
};
#endif /* WIDGETS_NETWORK_WIDGET_H */
|