OpenTTD/src/widgets/network_widget.h

128 lines
6.0 KiB
C

/* $Id$ */
/*
* 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 WC_NETWORK_WINDOW (WC_NETWORK_WINDOW is also used in NetworkContentListWidgets, NetworkStartServerWidgets, and NetworkLobbyWidgets). */
enum NetworkGameWidgets {
WID_NG_MAIN, ///< Main panel.
WID_NG_CONNECTION, ///< Label in front of connection droplist.
WID_NG_CONN_BTN, ///< 'Connection' droplist button.
WID_NG_CLIENT_LABEL, ///< Label in front of client name edit box.
WID_NG_CLIENT, ///< Panel with editbox to set client name.
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_FIND, ///< 'Find server' button.
WID_NG_ADD, ///< 'Add server' button.
WID_NG_START, ///< 'Start server' button.
WID_NG_CANCEL, ///< 'Cancel' button.
};
/** Widgets of the WC_NETWORK_WINDOW (WC_NETWORK_WINDOW is also used in NetworkContentListWidgets, NetworkGameWidgets, and NetworkLobbyWidgets). */
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_LANGUAGE_LABEL, ///< Label for 'language spoken'.
WID_NSS_LANGUAGE_BTN, ///< 'Language spoken' droplist button.
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 WC_NETWORK_WINDOW (WC_NETWORK_WINDOW is also used in NetworkContentListWidgets, NetworkGameWidgets, and NetworkStartServerWidgets). */
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 WC_CLIENT_LIST. */
enum ClientListWidgets {
WID_CL_PANEL, ///< Panel of the window.
};
/** Widgets of the WC_CLIENT_LIST_POPUP. */
enum ClientListPopupWidgets {
WID_CLP_PANEL, ///< Panel of the window.
};
/** Widgets of the WC_NETWORK_STATUS_WINDOW (WC_NETWORK_STATUS_WINDOW is also used in NetworkContentDownloadStatusWidgets). */
enum NetworkJoinStatusWidgets {
WID_NJS_BACKGROUND, ///< Background of the window.
WID_NJS_CANCELOK, ///< Cancel / OK button.
};
/** Widgets of the WC_COMPANY_PASSWORD_WINDOW. */
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_CANCEL, ///< Close the window without changing anything.
WID_NCP_OK, ///< Safe the password etc.
};
#endif /* WIDGETS_NETWORK_WIDGET_H */