diff options
author | truebrain <truebrain@openttd.org> | 2011-12-15 22:22:55 +0000 |
---|---|---|
committer | truebrain <truebrain@openttd.org> | 2011-12-15 22:22:55 +0000 |
commit | 2aa774e831ad1cb7849c998759449ef777c5c664 (patch) | |
tree | 37293298be999cb3446fe4af7f11e107bfa17c3d /src/widgets | |
parent | fd559171b4ab5ce09b67aa8c4e9f2d0482a09558 (diff) | |
download | openttd-2aa774e831ad1cb7849c998759449ef777c5c664.tar.xz |
(svn r23528) -Codechange: move widget enums to widgets/NNN_type.h
Diffstat (limited to 'src/widgets')
52 files changed, 2401 insertions, 7 deletions
diff --git a/src/widgets/ai_widget.h b/src/widgets/ai_widget.h new file mode 100644 index 000000000..51cab3f30 --- /dev/null +++ b/src/widgets/ai_widget.h @@ -0,0 +1,65 @@ +/* $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 ai_widget.h Types related to the ai widgets. */ + +#ifndef WIDGETS_AI_WIDGET_H +#define WIDGETS_AI_WIDGET_H + +/** Widgets of the WC_AI_LIST. */ +enum AIListWindowWidgets { + AIL_WIDGET_LIST, ///< The matrix with all available AIs + AIL_WIDGET_SCROLLBAR, ///< Scrollbar next to the AI list + AIL_WIDGET_INFO_BG, ///< Panel to draw some AI information on + AIL_WIDGET_ACCEPT, ///< Accept button + AIL_WIDGET_CANCEL, ///< Cancel button +}; + +/** Widgets of the WC_AI_SETTINGS. */ +enum AISettingsWindowWidgets { + AIS_WIDGET_BACKGROUND, ///< Panel to draw the settings on + AIS_WIDGET_SCROLLBAR, ///< Scrollbar to scroll through all settings + AIS_WIDGET_ACCEPT, ///< Accept button + AIS_WIDGET_RESET, ///< Reset button +}; + +/** Widgets of the WC_GAME_OPTIONS (WC_GAME_OPTIONS is also used in others). */ +enum AIConfigWindowWidgets { + AIC_WIDGET_BACKGROUND, ///< Window background + AIC_WIDGET_DECREASE, ///< Decrease the number of AIs + AIC_WIDGET_INCREASE, ///< Increase the number of AIs + AIC_WIDGET_NUMBER, ///< Number of AIs + AIC_WIDGET_LIST, ///< List with currently selected AIs + AIC_WIDGET_SCROLLBAR, ///< Scrollbar to scroll through the selected AIs + AIC_WIDGET_MOVE_UP, ///< Move up button + AIC_WIDGET_MOVE_DOWN, ///< Move down button + AIC_WIDGET_CHANGE, ///< Select another AI button + AIC_WIDGET_CONFIGURE, ///< Change AI settings button + AIC_WIDGET_CLOSE, ///< Close window button + AIC_WIDGET_CONTENT_DOWNLOAD, ///< Download content button +}; + +/** Widgets of the WC_AI_DEBUG. */ +enum AIDebugWindowWidgets { + AID_WIDGET_VIEW, + AID_WIDGET_NAME_TEXT, + AID_WIDGET_SETTINGS, + AID_WIDGET_RELOAD_TOGGLE, + AID_WIDGET_LOG_PANEL, + AID_WIDGET_SCROLLBAR, + AID_WIDGET_COMPANY_BUTTON_START, + AID_WIDGET_COMPANY_BUTTON_END = AID_WIDGET_COMPANY_BUTTON_START + MAX_COMPANIES - 1, + AID_BREAK_STRING_WIDGETS, + AID_WIDGET_BREAK_STR_ON_OFF_BTN, + AID_WIDGET_BREAK_STR_EDIT_BOX, + AID_WIDGET_MATCH_CASE_BTN, + AID_WIDGET_CONTINUE_BTN, +}; + +#endif /* WIDGETS_AI_WIDGET_H */ diff --git a/src/widgets/airport_widget.h b/src/widgets/airport_widget.h new file mode 100644 index 000000000..35df2e1a4 --- /dev/null +++ b/src/widgets/airport_widget.h @@ -0,0 +1,37 @@ +/* $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 airport_widget.h Types related to the airport widgets. */ + +#ifndef WIDGETS_AIRPORT_WIDGET_H +#define WIDGETS_AIRPORT_WIDGET_H + +/** Widgets of the WC_BUILD_TOOLBAR (WC_BUILD_TOOLBAR is also used in others). */ +enum AirportToolbarWidgets { + ATW_AIRPORT, + ATW_DEMOLISH, +}; + +/** Widgets of the WC_BUILD_STATION (WC_BUILD_STATION is also used in others). */ +enum AirportPickerWidgets { + BAIRW_CLASS_DROPDOWN, + BAIRW_AIRPORT_LIST, + BAIRW_SCROLLBAR, + BAIRW_LAYOUT_NUM, + BAIRW_LAYOUT_DECREASE, + BAIRW_LAYOUT_INCREASE, + BAIRW_AIRPORT_SPRITE, + BAIRW_EXTRA_TEXT, + BAIRW_BOTTOMPANEL, + BAIRW_COVERAGE_LABEL, + BAIRW_BTN_DONTHILIGHT, + BAIRW_BTN_DOHILIGHT, +}; + +#endif /* WIDGETS_AIRPORT_WIDGET_H */ diff --git a/src/widgets/autoreplace_widget.h b/src/widgets/autoreplace_widget.h new file mode 100644 index 000000000..51205a269 --- /dev/null +++ b/src/widgets/autoreplace_widget.h @@ -0,0 +1,40 @@ +/* $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 autoreplace_widget.h Types related to the autoreplace widgets. */ + +#ifndef WIDGETS_AUTOREPLACE_WIDGET_H +#define WIDGETS_AUTOREPLACE_WIDGET_H + +/** Widgets of the WC_REPLACE_VEHICLE. */ +enum ReplaceVehicleWindowWidgets { + RVW_WIDGET_CAPTION, + + /* Left and right matrix + details. */ + RVW_WIDGET_LEFT_MATRIX, + RVW_WIDGET_LEFT_SCROLLBAR, + RVW_WIDGET_RIGHT_MATRIX, + RVW_WIDGET_RIGHT_SCROLLBAR, + RVW_WIDGET_LEFT_DETAILS, + RVW_WIDGET_RIGHT_DETAILS, + + /* Button row. */ + RVW_WIDGET_START_REPLACE, + RVW_WIDGET_INFO_TAB, + RVW_WIDGET_STOP_REPLACE, + + /* Train only widgets. */ + RVW_WIDGET_TRAIN_ENGINEWAGON_TOGGLE, + RVW_WIDGET_TRAIN_FLUFF_LEFT, + RVW_WIDGET_TRAIN_RAILTYPE_DROPDOWN, + RVW_WIDGET_TRAIN_FLUFF_RIGHT, + RVW_WIDGET_TRAIN_WAGONREMOVE_TOGGLE, +}; + +#endif /* WIDGETS_AUTOREPLACE_WIDGET_H */ diff --git a/src/widgets/bootstrap_widget.h b/src/widgets/bootstrap_widget.h new file mode 100644 index 000000000..9fd25d90e --- /dev/null +++ b/src/widgets/bootstrap_widget.h @@ -0,0 +1,22 @@ +/* $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 bootstrap_widget.h Types related to the bootstrap widgets. */ + +#ifndef WIDGETS_BOOTSTRAP_WIDGET_H +#define WIDGETS_BOOTSTRAP_WIDGET_H + +/** Widgets of the WC_CONFIRM_POPUP_QUERY (WC_CONFIRM_POPUP_QUERY is also used in QueryWidgets). */ +enum BootstrapAskForDownloadWidgets { + BAFDW_QUESTION, ///< The question whether to download. + BAFDW_YES, ///< An affirmative answer to the question. + BAFDW_NO, ///< An negative answer to the question. +}; + +#endif /* WIDGETS_BOOTSTRAP_WIDGET_H */ diff --git a/src/widgets/bridge_widget.h b/src/widgets/bridge_widget.h new file mode 100644 index 000000000..aa4a7cd4c --- /dev/null +++ b/src/widgets/bridge_widget.h @@ -0,0 +1,24 @@ +/* $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 bridge_widget.h Types related to the bridge widgets. */ + +#ifndef WIDGETS_BRIDGE_WIDGET_H +#define WIDGETS_BRIDGE_WIDGET_H + +/** Widgets of the WC_BUILD_BRIDGE. */ +enum BuildBridgeSelectionWidgets { + BBSW_CAPTION, + BBSW_DROPDOWN_ORDER, + BBSW_DROPDOWN_CRITERIA, + BBSW_BRIDGE_LIST, + BBSW_SCROLLBAR, +}; + +#endif /* WIDGETS_BRIDGE_WIDGET_H */ diff --git a/src/widgets/build_vehicle_widget.h b/src/widgets/build_vehicle_widget.h new file mode 100644 index 000000000..715f47d5c --- /dev/null +++ b/src/widgets/build_vehicle_widget.h @@ -0,0 +1,30 @@ +/* $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 build_vehicle_widget.h Types related to the build_vehicle widgets. */ + +#ifndef WIDGETS_BUILD_VEHICLE_WIDGET_H +#define WIDGETS_BUILD_VEHICLE_WIDGET_H + +/** Widgets of the WC_BUILD_VEHICLE. */ +enum BuildVehicleWidgets { + BUILD_VEHICLE_WIDGET_CAPTION, + BUILD_VEHICLE_WIDGET_SORT_ASSENDING_DESCENDING, + BUILD_VEHICLE_WIDGET_SORT_DROPDOWN, + BUILD_VEHICLE_WIDGET_CARGO_FILTER_DROPDOWN, + BUILD_VEHICLE_WIDGET_LIST, + BUILD_VEHICLE_WIDGET_SCROLLBAR, + BUILD_VEHICLE_WIDGET_PANEL, + BUILD_VEHICLE_WIDGET_BUILD, + BUILD_VEHICLE_WIDGET_BUILD_SEL, + BUILD_VEHICLE_WIDGET_RENAME, + BUILD_VEHICLE_WIDGET_END +}; + +#endif /* WIDGETS_BUILD_VEHICLE_WIDGET_H */ diff --git a/src/widgets/cheat_widget.h b/src/widgets/cheat_widget.h new file mode 100644 index 000000000..64ebc588d --- /dev/null +++ b/src/widgets/cheat_widget.h @@ -0,0 +1,20 @@ +/* $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 cheat_widget.h Types related to the cheat widgets. */ + +#ifndef WIDGETS_CHEAT_WIDGET_H +#define WIDGETS_CHEAT_WIDGET_H + +/** Widgets of the WC_CHEATS. */ +enum CheatWidgets { + CW_PANEL, +}; + +#endif /* WIDGETS_CHEAT_WIDGET_H */ diff --git a/src/widgets/company_widget.h b/src/widgets/company_widget.h new file mode 100644 index 000000000..684df9376 --- /dev/null +++ b/src/widgets/company_widget.h @@ -0,0 +1,191 @@ +/* $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 company_widget.h Types related to the company widgets. */ + +#ifndef WIDGETS_COMPANY_WIDGET_H +#define WIDGETS_COMPANY_WIDGET_H + +/** Widgets of the WC_COMPANY. */ +enum CompanyWindowWidgets { + CW_WIDGET_CAPTION, + + CW_WIDGET_FACE, + CW_WIDGET_FACE_TITLE, + + CW_WIDGET_DESC_INAUGURATION, + CW_WIDGET_DESC_COLOUR_SCHEME, + CW_WIDGET_DESC_COLOUR_SCHEME_EXAMPLE, + CW_WIDGET_DESC_VEHICLE, + CW_WIDGET_DESC_VEHICLE_COUNTS, + CW_WIDGET_DESC_COMPANY_VALUE, + CW_WIDGET_DESC_INFRASTRUCTURE, + CW_WIDGET_DESC_INFRASTRUCTURE_COUNTS, + + CW_WIDGET_SELECT_DESC_OWNERS, + CW_WIDGET_DESC_OWNERS, + + CW_WIDGET_SELECT_BUTTONS, ///< Selection widget for the button bar. + CW_WIDGET_NEW_FACE, + CW_WIDGET_COLOUR_SCHEME, + CW_WIDGET_PRESIDENT_NAME, + CW_WIDGET_COMPANY_NAME, + CW_WIDGET_BUY_SHARE, + CW_WIDGET_SELL_SHARE, + + CW_WIDGET_SELECT_VIEW_BUILD_HQ, + CW_WIDGET_VIEW_HQ, + CW_WIDGET_BUILD_HQ, + + CW_WIDGET_SELECT_RELOCATE, ///< View/hide the 'Relocate HQ' button. + CW_WIDGET_RELOCATE_HQ, + + CW_WIDGET_VIEW_INFRASTRUCTURE, + + CW_WIDGET_HAS_PASSWORD, ///< Draw a lock when the company has a password + CW_WIDGET_SELECT_MULTIPLAYER, ///< Multiplayer selection panel. + CW_WIDGET_COMPANY_PASSWORD, + CW_WIDGET_COMPANY_JOIN, +}; + +/** Widgets of the WC_FINANCES. */ +enum CompanyFinancesWindowWidgets { + CFW_CAPTION, ///< Caption of the window + CFW_TOGGLE_SIZE, ///< Toggle windows size + CFW_SEL_PANEL, ///< Select panel or nothing + CFW_EXPS_CATEGORY, ///< Column for expenses category strings + CFW_EXPS_PRICE1, ///< Column for year Y-2 expenses + CFW_EXPS_PRICE2, ///< Column for year Y-1 expenses + CFW_EXPS_PRICE3, ///< Column for year Y expenses + CFW_TOTAL_PANEL, ///< Panel for totals + CFW_SEL_MAXLOAN, ///< Selection of maxloan column + CFW_BALANCE_VALUE, ///< Bank balance value + CFW_LOAN_VALUE, ///< Loan + CFW_LOAN_LINE, ///< Line for summing bank balance and loan + CFW_TOTAL_VALUE, ///< Total + CFW_MAXLOAN_GAP, ///< Gap above max loan widget + CFW_MAXLOAN_VALUE, ///< Max loan widget + CFW_SEL_BUTTONS, ///< Selection of buttons + CFW_INCREASE_LOAN, ///< Increase loan + CFW_REPAY_LOAN, ///< Decrease loan + CFW_INFRASTRUCTURE,///< View company infrastructure +}; + + +/** Widgets of the WC_COMPANY_COLOUR. */ +enum SelectCompanyLiveryWindowWidgets { + SCLW_WIDGET_CAPTION, + SCLW_WIDGET_CLASS_GENERAL, + SCLW_WIDGET_CLASS_RAIL, + SCLW_WIDGET_CLASS_ROAD, + SCLW_WIDGET_CLASS_SHIP, + SCLW_WIDGET_CLASS_AIRCRAFT, + SCLW_WIDGET_SPACER_DROPDOWN, + SCLW_WIDGET_PRI_COL_DROPDOWN, + SCLW_WIDGET_SEC_COL_DROPDOWN, + SCLW_WIDGET_MATRIX, +}; + + +/** Widgets of the WC_COMPANY_MANAGER_FACE. + * Do not change the order of the widgets from SCMFW_WIDGET_HAS_MOUSTACHE_EARRING to SCMFW_WIDGET_GLASSES_R, + * this order is needed for the WE_CLICK event of DrawFaceStringLabel(). + */ +enum SelectCompanyManagerFaceWidgets { + SCMFW_WIDGET_CAPTION, + SCMFW_WIDGET_TOGGLE_LARGE_SMALL, + SCMFW_WIDGET_SELECT_FACE, + SCMFW_WIDGET_CANCEL, + SCMFW_WIDGET_ACCEPT, + SCMFW_WIDGET_MALE, ///< Male button in the simple view. + SCMFW_WIDGET_FEMALE, ///< Female button in the simple view. + SCMFW_WIDGET_MALE2, ///< Male button in the advanced view. + SCMFW_WIDGET_FEMALE2, ///< Female button in the advanced view. + SCMFW_WIDGET_SEL_LOADSAVE, ///< Selection to display the load/save/number buttons in the advanced view. + SCMFW_WIDGET_SEL_MALEFEMALE, ///< Selection to display the male/female buttons in the simple view. + SCMFW_WIDGET_SEL_PARTS, ///< Selection to display the buttons for setting each part of the face in the advanced view. + SCMFW_WIDGET_RANDOM_NEW_FACE, + SCMFW_WIDGET_TOGGLE_LARGE_SMALL_BUTTON, + SCMFM_WIDGET_FACE, + SCMFW_WIDGET_LOAD, + SCMFW_WIDGET_FACECODE, + SCMFW_WIDGET_SAVE, + SCMFW_WIDGET_HAS_MOUSTACHE_EARRING_TEXT, + SCMFW_WIDGET_TIE_EARRING_TEXT, + SCMFW_WIDGET_LIPS_MOUSTACHE_TEXT, + SCMFW_WIDGET_HAS_GLASSES_TEXT, + SCMFW_WIDGET_HAIR_TEXT, + SCMFW_WIDGET_EYEBROWS_TEXT, + SCMFW_WIDGET_EYECOLOUR_TEXT, + SCMFW_WIDGET_GLASSES_TEXT, + SCMFW_WIDGET_NOSE_TEXT, + SCMFW_WIDGET_CHIN_TEXT, + SCMFW_WIDGET_JACKET_TEXT, + SCMFW_WIDGET_COLLAR_TEXT, + SCMFW_WIDGET_ETHNICITY_EUR, + SCMFW_WIDGET_ETHNICITY_AFR, + SCMFW_WIDGET_HAS_MOUSTACHE_EARRING, + SCMFW_WIDGET_HAS_GLASSES, + SCMFW_WIDGET_EYECOLOUR_L, + SCMFW_WIDGET_EYECOLOUR, + SCMFW_WIDGET_EYECOLOUR_R, + SCMFW_WIDGET_CHIN_L, + SCMFW_WIDGET_CHIN, + SCMFW_WIDGET_CHIN_R, + SCMFW_WIDGET_EYEBROWS_L, + SCMFW_WIDGET_EYEBROWS, + SCMFW_WIDGET_EYEBROWS_R, + SCMFW_WIDGET_LIPS_MOUSTACHE_L, + SCMFW_WIDGET_LIPS_MOUSTACHE, + SCMFW_WIDGET_LIPS_MOUSTACHE_R, + SCMFW_WIDGET_NOSE_L, + SCMFW_WIDGET_NOSE, + SCMFW_WIDGET_NOSE_R, + SCMFW_WIDGET_HAIR_L, + SCMFW_WIDGET_HAIR, + SCMFW_WIDGET_HAIR_R, + SCMFW_WIDGET_JACKET_L, + SCMFW_WIDGET_JACKET, + SCMFW_WIDGET_JACKET_R, + SCMFW_WIDGET_COLLAR_L, + SCMFW_WIDGET_COLLAR, + SCMFW_WIDGET_COLLAR_R, + SCMFW_WIDGET_TIE_EARRING_L, + SCMFW_WIDGET_TIE_EARRING, + SCMFW_WIDGET_TIE_EARRING_R, + SCMFW_WIDGET_GLASSES_L, + SCMFW_WIDGET_GLASSES, + SCMFW_WIDGET_GLASSES_R, +}; + +/** Widgets of the WC_COMPANY_INFRASTRUCTURE. */ +enum CompanyInfrastructureWindowWidgets { + CIW_WIDGET_CAPTION, + CIW_WIDGET_RAIL_DESC, + CIW_WIDGET_RAIL_COUNT, + CIW_WIDGET_ROAD_DESC, + CIW_WIDGET_ROAD_COUNT, + CIW_WIDGET_WATER_DESC, + CIW_WIDGET_WATER_COUNT, + CIW_WIDGET_STATION_DESC, + CIW_WIDGET_STATION_COUNT, + CIW_WIDGET_TOTAL_DESC, + CIW_WIDGET_TOTAL, +}; + +/** Widgets of the WC_BUY_COMPANY. */ +enum BuyCompanyWidgets { + BCW_CAPTION, + BCW_FACE, + BCW_QUESTION, + BCW_NO, + BCW_YES, +}; + +#endif /* WIDGETS_COMPANY_WIDGET_H */ diff --git a/src/widgets/console_widget.h b/src/widgets/console_widget.h new file mode 100644 index 000000000..773d9d572 --- /dev/null +++ b/src/widgets/console_widget.h @@ -0,0 +1,20 @@ +/* $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 console_widget.h Types related to the console widgets. */ + +#ifndef WIDGETS_CONSOLE_WIDGET_H +#define WIDGETS_CONSOLE_WIDGET_H + +/** Widgets of the WC_CONSOLE. */ +enum ConsoleWidgets { + CW_BACKGROUND, ///< Background of the console +}; + +#endif /* WIDGETS_CONSOLE_WIDGET_H */ diff --git a/src/widgets/date_widget.h b/src/widgets/date_widget.h new file mode 100644 index 000000000..78fd49080 --- /dev/null +++ b/src/widgets/date_widget.h @@ -0,0 +1,23 @@ +/* $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 date_widget.h Types related to the date widgets. */ + +#ifndef WIDGETS_DATE_WIDGET_H +#define WIDGETS_DATE_WIDGET_H + +/** Widgets of the WC_SET_DATE. */ +enum SetDateWidgets { + SDW_DAY, ///< Dropdown for the day + SDW_MONTH, ///< Dropdown for the month + SDW_YEAR, ///< Dropdown for the year + SDW_SET_DATE, ///< Actually set the date +}; + +#endif /* WIDGETS_DATE_WIDGET_H */ diff --git a/src/widgets/depot_widget.h b/src/widgets/depot_widget.h new file mode 100644 index 000000000..755a8be57 --- /dev/null +++ b/src/widgets/depot_widget.h @@ -0,0 +1,37 @@ +/* $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 depot_widget.h Types related to the depot widgets. */ + +#ifndef WIDGETS_DEPOT_WIDGET_H +#define WIDGETS_DEPOT_WIDGET_H + +/** Widgets of the WC_VEHICLE_DEPOT. */ +enum DepotWindowWidgets { + DEPOT_WIDGET_CAPTION, + DEPOT_WIDGET_SELL, + DEPOT_WIDGET_SHOW_SELL_CHAIN, + DEPOT_WIDGET_SELL_CHAIN, + DEPOT_WIDGET_SELL_ALL, + DEPOT_WIDGET_AUTOREPLACE, + DEPOT_WIDGET_MATRIX, + DEPOT_WIDGET_V_SCROLL, ///< Vertical scrollbar + DEPOT_WIDGET_SHOW_H_SCROLL, + DEPOT_WIDGET_H_SCROLL, ///< Horizontal scrollbar + DEPOT_WIDGET_BUILD, + DEPOT_WIDGET_CLONE, + DEPOT_WIDGET_LOCATION, + DEPOT_WIDGET_SHOW_RENAME, + DEPOT_WIDGET_RENAME, + DEPOT_WIDGET_VEHICLE_LIST, + DEPOT_WIDGET_STOP_ALL, + DEPOT_WIDGET_START_ALL, +}; + +#endif /* WIDGETS_DEPOT_WIDGET_H */ diff --git a/src/widgets/dock_widget.h b/src/widgets/dock_widget.h new file mode 100644 index 000000000..eedd42a25 --- /dev/null +++ b/src/widgets/dock_widget.h @@ -0,0 +1,29 @@ +/* $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 dock_widget.h Types related to the dock widgets. */ + +#ifndef WIDGETS_DOCK_WIDGET_H +#define WIDGETS_DOCK_WIDGET_H + +/** Widgets of the WC_SCEN_BUILD_TOOLBAR / WC_BUILD_TOOLBAR (WC_SCEN_BUILD_TOOLBAR / WC_BUILD_TOOLBAR is also used in others). */ +enum DockToolbarWidgets { + DTW_BUTTONS_BEGIN, ///< Begin of clickable buttons (except seperating panel) + DTW_CANAL = DTW_BUTTONS_BEGIN, ///< Build canal button + DTW_LOCK, ///< Build lock button + DTW_DEMOLISH, ///< Demolish aka dynamite button + DTW_DEPOT, ///< Build depot button + DTW_STATION, ///< Build station button + DTW_BUOY, ///< Build buoy button + DTW_RIVER, ///< Build river button (in scenario editor) + DTW_BUILD_AQUEDUCT, ///< Build aqueduct button + DTW_END, ///< End of toolbar widgets +}; + +#endif /* WIDGETS_DOCK_WIDGET_H */ diff --git a/src/widgets/dropdown.cpp b/src/widgets/dropdown.cpp index b57ea0c35..54294796d 100644 --- a/src/widgets/dropdown.cpp +++ b/src/widgets/dropdown.cpp @@ -16,6 +16,8 @@ #include "../window_func.h" #include "dropdown_type.h" +#include "dropdown_widget.h" + void DropDownListItem::Draw(int left, int right, int top, int bottom, bool sel, int bg_colour) const { @@ -79,13 +81,6 @@ static void DeleteDropDownList(DropDownList *list) delete list; } -/** Widget numbers of the dropdown menu. */ -enum DropdownMenuWidgets { - DDM_ITEMS, ///< Panel showing the dropdown items. - DDM_SHOW_SCROLL, ///< Hide scrollbar if too few items. - DDM_SCROLL, ///< Scrollbar. -}; - static const NWidgetPart _nested_dropdown_menu_widgets[] = { NWidget(NWID_HORIZONTAL), NWidget(WWT_PANEL, COLOUR_END, DDM_ITEMS), SetMinimalSize(1, 1), SetScrollbar(DDM_SCROLL), EndContainer(), diff --git a/src/widgets/dropdown_widget.h b/src/widgets/dropdown_widget.h new file mode 100644 index 000000000..58ea586fe --- /dev/null +++ b/src/widgets/dropdown_widget.h @@ -0,0 +1,22 @@ +/* $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 dropdown_widget.h Types related to the dropdown widgets. */ + +#ifndef WIDGETS_DROPDOWN_WIDGET_H +#define WIDGETS_DROPDOWN_WIDGET_H + +/** Widgets of the WC_DROPDOWN_MENU. */ +enum DropdownMenuWidgets { + DDM_ITEMS, ///< Panel showing the dropdown items. + DDM_SHOW_SCROLL, ///< Hide scrollbar if too few items. + DDM_SCROLL, ///< Scrollbar. +}; + +#endif /* WIDGETS_DROPDOWN_WIDGET_H */ diff --git a/src/widgets/engine_widget.h b/src/widgets/engine_widget.h new file mode 100644 index 000000000..32297b432 --- /dev/null +++ b/src/widgets/engine_widget.h @@ -0,0 +1,22 @@ +/* $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 engine_widget.h Types related to the engine widgets. */ + +#ifndef WIDGETS_ENGINE_WIDGET_H +#define WIDGETS_ENGINE_WIDGET_H + +/** Widgets of the WC_ENGINE_PREVIEW. */ +enum EnginePreviewWidgets { + EPW_QUESTION, ///< The container for the question + EPW_NO, ///< No button + EPW_YES, ///< Yes button +}; + +#endif /* WIDGETS_ENGINE_WIDGET_H */ diff --git a/src/widgets/error_widget.h b/src/widgets/error_widget.h new file mode 100644 index 000000000..6a45aa75b --- /dev/null +++ b/src/widgets/error_widget.h @@ -0,0 +1,22 @@ +/* $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 error_widget.h Types related to the error widgets. */ + +#ifndef WIDGETS_ERROR_WIDGET_H +#define WIDGETS_ERROR_WIDGET_H + +/** Widgets of the WC_ERRMSG. */ +enum ErrorMessageWidgets { + EMW_CAPTION, + EMW_FACE, + EMW_MESSAGE, +}; + +#endif /* WIDGETS_ERROR_WIDGET_H */ diff --git a/src/widgets/fios_widget.h b/src/widgets/fios_widget.h new file mode 100644 index 000000000..74012abff --- /dev/null +++ b/src/widgets/fios_widget.h @@ -0,0 +1,36 @@ +/* $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 fios_widget.h Types related to the fios widgets. */ + +#ifndef WIDGETS_FIOS_WIDGET_H +#define WIDGETS_FIOS_WIDGET_H + +/** Widgets of the WC_SAVELOAD. */ +enum SaveLoadWindowWidgets { + SLWW_WINDOWTITLE, + SLWW_SORT_BYNAME, + SLWW_SORT_BYDATE, + SLWW_BACKGROUND, + SLWW_FILE_BACKGROUND, + SLWW_HOME_BUTTON, + SLWW_DRIVES_DIRECTORIES_LIST, + SLWW_SCROLLBAR, + SLWW_CONTENT_DOWNLOAD, ///< only available for play scenario/heightmap (content download) + SLWW_SAVE_OSK_TITLE, ///< only available for save operations + SLWW_DELETE_SELECTION, ///< same in here + SLWW_SAVE_GAME, ///< not to mention in here too + SLWW_CONTENT_DOWNLOAD_SEL, ///< Selection 'stack' to 'hide' the content download + SLWW_DETAILS, ///< Panel with game details + SLWW_NEWGRF_INFO, ///< Button to open NewGgrf configuration + SLWW_LOAD_BUTTON, ///< Button to load game/scenario + SLWW_MISSING_NEWGRFS, ///< Button to find missing NewGRFs online +}; + +#endif /* WIDGETS_FIOS_WIDGET_H */ diff --git a/src/widgets/genworld_widget.h b/src/widgets/genworld_widget.h new file mode 100644 index 000000000..7ff0c5423 --- /dev/null +++ b/src/widgets/genworld_widget.h @@ -0,0 +1,93 @@ +/* $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 genworld_widget.h Types related to the genworld widgets. */ + +#ifndef WIDGETS_GENWORLD_WIDGET_H +#define WIDGETS_GENWORLD_WIDGET_H + +/** Widgets of the WC_GENERATE_LANDSCAPE (WC_GENERATE_LANDSCAPE is also used in GenerateLandscapeWindowWidgets and CreateScenarioWindowWidgets). */ +enum GenenerateLandscapeWindowMode { + GLWM_GENERATE, ///< Generate new game + GLWM_HEIGHTMAP, ///< Load from heightmap + GLWM_SCENARIO, ///< Generate flat land +}; + +/** Widgets of the WC_GENERATE_LANDSCAPE (WC_GENERATE_LANDSCAPE is also used in GenenerateLandscapeWindowMode and CreateScenarioWindowWidgets). */ +enum GenerateLandscapeWindowWidgets { + GLAND_TEMPERATE, ///< Button with icon "Temperate" + GLAND_ARCTIC, ///< Button with icon "Arctic" + GLAND_TROPICAL, ///< Button with icon "Tropical" + GLAND_TOYLAND, ///< Button with icon "Toyland" + + GLAND_MAPSIZE_X_PULLDOWN, ///< Dropdown 'map X size' + GLAND_MAPSIZE_Y_PULLDOWN, ///< Dropdown 'map Y size' + + GLAND_TOWN_PULLDOWN, ///< Dropdown 'No. of towns' + GLAND_INDUSTRY_PULLDOWN, ///< Dropdown 'No. of industries' + + GLAND_RANDOM_EDITBOX, ///< 'Random seed' editbox + GLAND_RANDOM_BUTTON, ///< 'Randomise' button + + GLAND_GENERATE_BUTTON, ///< 'Generate' button + + GLAND_START_DATE_DOWN, ///< Decrease start year + GLAND_START_DATE_TEXT, ///< Start year + GLAND_START_DATE_UP, ///< Increase start year + + GLAND_SNOW_LEVEL_DOWN, ///< Decrease snow level + GLAND_SNOW_LEVEL_TEXT, ///< Snow level + GLAND_SNOW_LEVEL_UP, ///< Increase snow level + + GLAND_TREE_PULLDOWN, ///< Dropdown 'Tree algorithm' + GLAND_LANDSCAPE_PULLDOWN, ///< Dropdown 'Land generator' + + GLAND_HEIGHTMAP_NAME_TEXT, ///< Heightmap name + GLAND_HEIGHTMAP_SIZE_TEXT, ///< Size of heightmap + GLAND_HEIGHTMAP_ROTATION_PULLDOWN, ///< Dropdown 'Heightmap rotation' + + GLAND_TERRAIN_PULLDOWN, ///< Dropdown 'Terrain type' + GLAND_WATER_PULLDOWN, ///< Dropdown 'Sea level' + GLAND_RIVER_PULLDOWN, ///< Dropdown 'Rivers' + GLAND_SMOOTHNESS_PULLDOWN, ///< Dropdown 'Smoothness' + GLAND_VARIETY_PULLDOWN, ///< Dropdown 'Variety distribution' + + GLAND_BORDERS_RANDOM, ///< 'Random'/'Manual' borders + GLAND_WATER_NW, ///< NW 'Water'/'Freeform' + GLAND_WATER_NE, ///< NE 'Water'/'Freeform' + GLAND_WATER_SE, ///< SE 'Water'/'Freeform' + GLAND_WATER_SW, ///< SW 'Water'/'Freeform' +}; + +/** Widgets of the WC_GENERATE_LANDSCAPE (WC_GENERATE_LANDSCAPE is also used in GenerateLandscapeWindowWidgets and GenenerateLandscapeWindowMode). */ +enum CreateScenarioWindowWidgets { + CSCEN_TEMPERATE, ///< Select temperate landscape style. + CSCEN_ARCTIC, ///< Select arctic landscape style. + CSCEN_TROPICAL, ///< Select tropical landscape style. + CSCEN_TOYLAND, ///< Select toy-land landscape style. + CSCEN_EMPTY_WORLD, ///< Generate an empty flat world. + CSCEN_RANDOM_WORLD, ///< Generate random land button + CSCEN_MAPSIZE_X_PULLDOWN, ///< Pull-down arrow for x map size. + CSCEN_MAPSIZE_Y_PULLDOWN, ///< Pull-down arrow for y map size. + CSCEN_START_DATE_DOWN, ///< Decrease start year (start earlier). + CSCEN_START_DATE_TEXT, ///< Clickable start date value. + CSCEN_START_DATE_UP, ///< Increase start year (start later). + CSCEN_FLAT_LAND_HEIGHT_DOWN, ///< Decrease flat land height. + CSCEN_FLAT_LAND_HEIGHT_TEXT, ///< Clickable flat land height value. + CSCEN_FLAT_LAND_HEIGHT_UP ///< Increase flat land height. +}; + +/** Widgets of the WC_MODAL_PROGRESS (WC_MODAL_PROGRESS is also used in ScanProgressWindowWidgets). */ +enum GenerationProgressWindowWidgets { + GPWW_PROGRESS_BAR, + GPWW_PROGRESS_TEXT, + GPWW_ABORT, +}; + +#endif /* WIDGETS_GENWORLD_WIDGET_H */ diff --git a/src/widgets/graph_widget.h b/src/widgets/graph_widget.h new file mode 100644 index 000000000..b2d95c98a --- /dev/null +++ b/src/widgets/graph_widget.h @@ -0,0 +1,66 @@ +/* $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 graph_widget.h Types related to the graph widgets. */ + +#ifndef WIDGETS_GRAPH_WIDGET_H +#define WIDGETS_GRAPH_WIDGET_H + +/** Widgets of the WC_GRAPH_LEGEND. */ +enum GraphLegendWidgetNumbers { + GLW_BACKGROUND, + + GLW_FIRST_COMPANY, + GLW_LAST_COMPANY = GLW_FIRST_COMPANY + MAX_COMPANIES - 1, +}; + +/** Widgets of the WC_OPERATING_PROFIT / WC_DELIVERED_CARGO / WC_COMPANY_VALUE / WC_INCOME_GRAPH. */ +enum CompanyValueWidgets { + BGW_KEY_BUTTON, + BGW_BACKGROUND, + BGW_GRAPH, + BGW_RESIZE, +}; + +/** Widget of the WC_PERFORMANCE_HISTORY. */ +enum PerformanceHistoryGraphWidgets { + PHW_KEY, + PHW_DETAILED_PERFORMANCE, + PHW_BACKGROUND, + PHW_GRAPH, + PHW_RESIZE, +}; + +/** Widget of the WC_PAYMENT_RATES. */ +enum CargoPaymentRatesWidgets { + CPW_BACKGROUND, + CPW_HEADER, + CPW_GRAPH, + CPW_RESIZE, + CPW_FOOTER, + CPW_ENABLE_CARGOES, + CPW_DISABLE_CARGOES, + CPW_CARGO_FIRST, +}; + +/** Widget of the WC_COMPANY_LEAGUE. */ +enum CompanyLeagueWidgets { + CLW_BACKGROUND, +}; + +/** Widget of the WC_PERFORMANCE_DETAIL. */ +enum PerformanceRatingDetailsWidgets { + PRW_SCORE_FIRST, + PRW_SCORE_LAST = PRW_SCORE_FIRST + (SCORE_END - SCORE_BEGIN) - 1, + + PRW_COMPANY_FIRST, + PRW_COMPANY_LAST = PRW_COMPANY_FIRST + MAX_COMPANIES - 1, +}; + +#endif /* WIDGETS_GRAPH_WIDGET_H */ diff --git a/src/widgets/group_widget.h b/src/widgets/group_widget.h new file mode 100644 index 000000000..e405d0ca8 --- /dev/null +++ b/src/widgets/group_widget.h @@ -0,0 +1,37 @@ +/* $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 group_widget.h Types related to the group widgets. */ + +#ifndef WIDGETS_GROUP_WIDGET_H +#define WIDGETS_GROUP_WIDGET_H + +/** Widgets of the WC_TRAINS_LIST / WC_ROADVEH_LIST / WC_SHIPS_LIST / WC_AIRCRAFT_LIST. */ +enum GroupListWidgets { + GRP_WIDGET_CAPTION, + GRP_WIDGET_SORT_BY_ORDER, + GRP_WIDGET_SORT_BY_DROPDOWN, + GRP_WIDGET_LIST_VEHICLE, + GRP_WIDGET_LIST_VEHICLE_SCROLLBAR, + GRP_WIDGET_AVAILABLE_VEHICLES, + GRP_WIDGET_MANAGE_VEHICLES_DROPDOWN, + GRP_WIDGET_STOP_ALL, + GRP_WIDGET_START_ALL, + + GRP_WIDGET_ALL_VEHICLES, + GRP_WIDGET_DEFAULT_VEHICLES, + GRP_WIDGET_LIST_GROUP, + GRP_WIDGET_LIST_GROUP_SCROLLBAR, + GRP_WIDGET_CREATE_GROUP, + GRP_WIDGET_DELETE_GROUP, + GRP_WIDGET_RENAME_GROUP, + GRP_WIDGET_REPLACE_PROTECTION, +}; + +#endif /* WIDGETS_GROUP_WIDGET_H */ diff --git a/src/widgets/highscore_widget.h b/src/widgets/highscore_widget.h new file mode 100644 index 000000000..f7cec2e8b --- /dev/null +++ b/src/widgets/highscore_widget.h @@ -0,0 +1,20 @@ +/* $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 highscore_widget.h Types related to the highscore widgets. */ + +#ifndef WIDGETS_HIGHSCORE_WIDGET_H +#define WIDGETS_HIGHSCORE_WIDGET_H + +/** Widgets of the WC_HIGHSCORE / WC_ENDSCREEN. */ +enum HighscoreWidgets { + HSW_BACKGROUND, +}; + +#endif /* WIDGETS_HIGHSCORE_WIDGET_H */ diff --git a/src/widgets/industry_widget.h b/src/widgets/industry_widget.h new file mode 100644 index 000000000..9a4f5aa54 --- /dev/null +++ b/src/widgets/industry_widget.h @@ -0,0 +1,50 @@ +/* $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 industry_widget.h Types related to the industry widgets. */ + +#ifndef WIDGETS_INDUSTRY_WIDGET_H +#define WIDGETS_INDUSTRY_WIDGET_H + +/** Widgets of the WC_BUILD_INDUSTRY. */ +enum DynamicPlaceIndustriesWidgets { + DPIW_MATRIX_WIDGET, + DPIW_SCROLLBAR, + DPIW_INFOPANEL, + DPIW_DISPLAY_WIDGET, + DPIW_FUND_WIDGET, +}; + +/** Widgets of the WC_INDUSTRY_VIEW. */ +enum IndustryViewWidgets { + IVW_CAPTION, + IVW_VIEWPORT, + IVW_INFO, + IVW_GOTO, + IVW_DISPLAY, +}; + +/** Widgets of the WC_INDUSTRY_DIRECTORY. */ +enum IndustryDirectoryWidgets { + IDW_DROPDOWN_ORDER, + IDW_DROPDOWN_CRITERIA, + IDW_INDUSTRY_LIST, + IDW_SCROLLBAR, +}; + +/** Widgets of the WC_INDUSTRY_CARGOES */ +enum IndustryCargoesWidgets { + ICW_CAPTION, + ICW_NOTIFY, + ICW_PANEL, + ICW_SCROLLBAR, +}; + + +#endif /* WIDGETS_INDUSTRY_WIDGET_H */ diff --git a/src/widgets/intro_widget.h b/src/widgets/intro_widget.h new file mode 100644 index 000000000..5b7de2252 --- /dev/null +++ b/src/widgets/intro_widget.h @@ -0,0 +1,38 @@ +/* $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 intro_widget.h Types related to the intro widgets. */ + +#ifndef WIDGETS_INTRO_WIDGET_H +#define WIDGETS_INTRO_WIDGET_H + +/** Widgets of the WC_SELECT_GAME. */ +enum SelectGameIntroWidgets { + SGI_GENERATE_GAME, + SGI_LOAD_GAME, + SGI_PLAY_SCENARIO, + SGI_PLAY_HEIGHTMAP, + SGI_EDIT_SCENARIO, + SGI_PLAY_NETWORK, + SGI_TEMPERATE_LANDSCAPE, + SGI_ARCTIC_LANDSCAPE, + SGI_TROPIC_LANDSCAPE, + SGI_TOYLAND_LANDSCAPE, + SGI_TRANSLATION_SELECTION, + SGI_TRANSLATION, + SGI_OPTIONS, + SGI_DIFFICULTIES, + SGI_SETTINGS_OPTIONS, + SGI_GRF_SETTINGS, + SGI_CONTENT_DOWNLOAD, + SGI_AI_SETTINGS, + SGI_EXIT, +}; + +#endif /* WIDGETS_INTRO_WIDGET_H */ diff --git a/src/widgets/main_widget.h b/src/widgets/main_widget.h new file mode 100644 index 000000000..823e62283 --- /dev/null +++ b/src/widgets/main_widget.h @@ -0,0 +1,20 @@ +/* $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 main_widget.h Types related to the main widgets. */ + +#ifndef WIDGETS_MAIN_WIDGET_H +#define WIDGETS_MAIN_WIDGET_H + +/** Widgets of the WC_MAIN_WINDOW. */ +enum MainWindowWidgets { + MW_VIEWPORT, ///< Main window viewport. +}; + +#endif /* WIDGETS_MAIN_WIDGET_H */ diff --git a/src/widgets/misc_widget.h b/src/widgets/misc_widget.h new file mode 100644 index 000000000..b446509e2 --- /dev/null +++ b/src/widgets/misc_widget.h @@ -0,0 +1,48 @@ +/* $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 misc_widget.h Types related to the misc widgets. */ + +#ifndef WIDGETS_MISC_WIDGET_H +#define WIDGETS_MISC_WIDGET_H + +/** Widgets of the WC_LAND_INFO. */ +enum LandInfoWidgets { + LIW_BACKGROUND, ///< Background to draw on +}; + +/** Widgets of the WC_TOOLTIPS. */ +enum ToolTipsWidgets { + TTW_BACKGROUND, ///< Background to draw on +}; + +/** Widgets of the WC_GAME_OPTIONS (WC_GAME_OPTIONS is also used in others). */ +enum AboutWidgets { + AW_SCROLLING_TEXT, ///< The actually scrolling text + AW_WEBSITE, ///< URL of OpenTTD website +}; + +/** Widgets of the WC_QUERY_STRING (WC_QUERY_STRING is also used in QueryEditSignWidgets). */ +enum QueryStringWidgets { + QUERY_STR_WIDGET_CAPTION, + QUERY_STR_WIDGET_TEXT, + QUERY_STR_WIDGET_DEFAULT, + QUERY_STR_WIDGET_CANCEL, + QUERY_STR_WIDGET_OK +}; + +/** Widgets of the WC_CONFIRM_POPUP_QUERY (WC_CONFIRM_POPUP_QUERY is also used in BootstrapAskForDownloadWidgets). */ +enum QueryWidgets { + QUERY_WIDGET_CAPTION, + QUERY_WIDGET_TEXT, + QUERY_WIDGET_NO, + QUERY_WIDGET_YES +}; + +#endif /* WIDGETS_MISC_WIDGET_H */ diff --git a/src/widgets/music_widget.h b/src/widgets/music_widget.h new file mode 100644 index 000000000..a74509c75 --- /dev/null +++ b/src/widgets/music_widget.h @@ -0,0 +1,53 @@ +/* $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 music_widget.h Types related to the music widgets. */ + +#ifndef WIDGETS_MUSIC_WIDGET_H +#define WIDGETS_MUSIC_WIDGET_H + +/** Widgets of the WC_MUSIC_TRACK_SELECTION. */ +enum MusicTrackSelectionWidgets { + MTSW_LIST_LEFT, + MTSW_PLAYLIST, + MTSW_LIST_RIGHT, + MTSW_ALL, + MTSW_OLD, + MTSW_NEW, + MTSW_EZY, + MTSW_CUSTOM1, + MTSW_CUSTOM2, + MTSW_CLEAR, +}; + +/** Widgets of the WC_MUSIC_WINDOW. */ +enum MusicWidgets { + MW_PREV, + MW_NEXT, + MW_STOP, + MW_PLAY, + MW_SLIDERS, + MW_MUSIC_VOL, + MW_EFFECT_VOL, + MW_BACKGROUND, + MW_TRACK, + MW_TRACK_NR, + MW_TRACK_TITLE, + MW_TRACK_NAME, + MW_SHUFFLE, + MW_PROGRAMME, + MW_ALL, + MW_OLD, + MW_NEW, + MW_EZY, + MW_CUSTOM1, + MW_CUSTOM2, +}; + +#endif /* WIDGETS_MUSIC_WIDGET_H */ diff --git a/src/widgets/network_chat_widget.h b/src/widgets/network_chat_widget.h new file mode 100644 index 000000000..d87a2d9fa --- /dev/null +++ b/src/widgets/network_chat_widget.h @@ -0,0 +1,25 @@ +/* $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_chat_widget.h Types related to the network chat widgets. */ + +#ifndef WIDGETS_NETWORK_CHAT_WIDGET_H +#define WIDGETS_NETWORK_CHAT_WIDGET_H + +/** Widgets of the WC_SEND_NETWORK_MSG. */ +enum NetWorkChatWidgets { + NWCW_CLOSE, + NWCW_BACKGROUND, + NWCW_DESTINATION, + NWCW_TEXTBOX, + NWCW_SENDBUTTON, +}; + + +#endif /* WIDGETS_NETWORK_CHAT_WIDGET_H */ diff --git a/src/widgets/network_content_widget.h b/src/widgets/network_content_widget.h new file mode 100644 index 000000000..c3a18cd9a --- /dev/null +++ b/src/widgets/network_content_widget.h @@ -0,0 +1,47 @@ +/* $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_content_widget.h Types related to the network content widgets. */ + +#ifndef WIDGETS_NETWORK_CONTENT_WIDGET_H +#define WIDGETS_NETWORK_CONTENT_WIDGET_H + +/** Widgets of the WC_NETWORK_STATUS_WINDOW (WC_NETWORK_STATUS_WINDOW is also used in NetworkJoinStatusWidgets). */ +enum NetworkContentDownloadStatusWindowWidgets { + NCDSWW_BACKGROUND, ///< Background + NCDSWW_CANCELOK, ///< (Optional) Cancel/OK button +}; + +/** Widgets of the WC_NETWORK_WINDOW (WC_NETWORK_WINDOW is also used in NetworkGameWindowWidgets, NetworkStartServerWidgets, and NetworkLobbyWindowWidgets). */ +enum NetworkContentListWindowWidgets { + NCLWW_BACKGROUND, ///< Resize button + + NCLWW_FILTER_CAPT, ///< Caption for the filter editbox + NCLWW_FILTER, ///< Filter editbox + + NCLWW_CHECKBOX, ///< Button above checkboxes + NCLWW_TYPE, ///< 'Type' button + NCLWW_NAME, ///< 'Name' button + + NCLWW_MATRIX, ///< Panel with list of content + NCLWW_SCROLLBAR, ///< Scrollbar of matrix + + NCLWW_DETAILS, ///< Panel with content details + + NCLWW_SELECT_ALL, ///< 'Select all' button + NCLWW_SELECT_UPDATE, ///< 'Select updates' button + NCLWW_UNSELECT, ///< 'Unselect all' button + NCLWW_OPEN_URL, ///< 'Open url' button + NCLWW_CANCEL, ///< 'Cancel' button + NCLWW_DOWNLOAD, ///< 'Download' button + + NCLWW_SEL_ALL_UPDATE, ///< #NWID_SELECTION widget for select all/update buttons. +}; + +#endif /* WIDGETS_NETWORK_CONTENT_WIDGET_H */ diff --git a/src/widgets/network_widget.h b/src/widgets/network_widget.h new file mode 100644 index 000000000..7b5e09cf1 --- /dev/null +++ b/src/widgets/network_widget.h @@ -0,0 +1,128 @@ +/* $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 NetworkContentListWindowWidgets, NetworkStartServerWidgets, and NetworkLobbyWindowWidgets). */ +enum NetworkGameWindowWidgets { + NGWW_MAIN, ///< Main panel + + NGWW_CONNECTION, ///< Label in front of connection droplist + NGWW_CONN_BTN, ///< 'Connection' droplist button + NGWW_CLIENT_LABEL, ///< Label in front of client name edit box + NGWW_CLIENT, ///< Panel with editbox to set client name + + NGWW_HEADER, ///< Header container of the matrix + NGWW_NAME, ///< 'Name' button + NGWW_CLIENTS, ///< 'Clients' button + NGWW_MAPSIZE, ///< 'Map size' button + NGWW_DATE, ///< 'Date' button + NGWW_YEARS, ///< 'Years' button + NGWW_INFO, ///< Third button in the game list panel + + NGWW_MATRIX, ///< Panel with list of games + NGWW_SCROLLBAR, ///< Scrollbar of matrix + + NGWW_LASTJOINED_LABEL, ///< Label "Last joined server:" + NGWW_LASTJOINED, ///< Info about the last joined server + NGWW_LASTJOINED_SPACER, ///< Spacer after last joined server panel + + NGWW_DETAILS, ///< Panel with game details + NGWW_DETAILS_SPACER, ///< Spacer for game actual details + NGWW_JOIN, ///< 'Join game' button + NGWW_REFRESH, ///< 'Refresh server' button + NGWW_NEWGRF, ///< 'NewGRF Settings' button + NGWW_NEWGRF_SEL, ///< Selection 'widget' to hide the NewGRF settings + NGWW_NEWGRF_MISSING, ///< 'Find missing NewGRF online' button + NGWW_NEWGRF_MISSING_SEL, ///< Selection widget for the above button + + NGWW_FIND, ///< 'Find server' button + NGWW_ADD, ///< 'Add server' button + NGWW_START, ///< 'Start server' button + NGWW_CANCEL, ///< 'Cancel' button +}; + +/** Widgets of the WC_NETWORK_WINDOW (WC_NETWORK_WINDOW is also used in NetworkContentListWindowWidgets, NetworkGameWindowWidgets, and NetworkLobbyWindowWidgets). */ +enum NetworkStartServerWidgets { + NSSW_BACKGROUND, + NSSW_GAMENAME_LABEL, + NSSW_GAMENAME, ///< Background for editbox to set game name + NSSW_SETPWD, ///< 'Set password' button + NSSW_CONNTYPE_LABEL, + NSSW_CONNTYPE_BTN, ///< 'Connection type' droplist button + NSSW_CLIENTS_LABEL, + NSSW_CLIENTS_BTND, ///< 'Max clients' downarrow + NSSW_CLIENTS_TXT, ///< 'Max clients' text + NSSW_CLIENTS_BTNU, ///< 'Max clients' uparrow + NSSW_COMPANIES_LABEL, + NSSW_COMPANIES_BTND, ///< 'Max companies' downarrow + NSSW_COMPANIES_TXT, ///< 'Max companies' text + NSSW_COMPANIES_BTNU, ///< 'Max companies' uparrow + NSSW_SPECTATORS_LABEL, + NSSW_SPECTATORS_BTND, ///< 'Max spectators' downarrow + NSSW_SPECTATORS_TXT, ///< 'Max spectators' text + NSSW_SPECTATORS_BTNU, ///< 'Max spectators' uparrow + + NSSW_LANGUAGE_LABEL, + NSSW_LANGUAGE_BTN, ///< 'Language spoken' droplist button + + NSSW_GENERATE_GAME, ///< New game button + NSSW_LOAD_GAME, ///< Load game button + NSSW_PLAY_SCENARIO, ///< Play scenario button + NSSW_PLAY_HEIGHTMAP, ///< Play heightmap button + + NSSW_CANCEL, ///< 'Cancel' button +}; + +/** Widgets of the WC_NETWORK_WINDOW (WC_NETWORK_WINDOW is also used in NetworkContentListWindowWidgets, NetworkGameWindowWidgets, and NetworkStartServerWidgets). */ +enum NetworkLobbyWindowWidgets { + NLWW_BACKGROUND, ///< Background panel + NLWW_TEXT, ///< Heading text + NLWW_HEADER, ///< Header above list of companies + NLWW_MATRIX, ///< List of companies + NLWW_SCROLLBAR, ///< Scroll bar + NLWW_DETAILS, ///< Company details + NLWW_JOIN, ///< 'Join company' button + NLWW_NEW, ///< 'New company' button + NLWW_SPECTATE, ///< 'Spectate game' button + NLWW_REFRESH, ///< 'Refresh server' button + NLWW_CANCEL, ///< 'Cancel' button +}; + +/** Widgets of the WC_CLIENT_LIST. */ +enum ClientListWidgets { + CLW_PANEL, +}; + +/** Widgets of the WC_CLIENT_LIST_POPUP. */ +enum ClientListPopupWidgets { + CLPW_PANEL, +}; + +/** Widgets of the WC_NETWORK_STATUS_WINDOW (WC_NETWORK_STATUS_WINDOW is also used in NetworkContentDownloadStatusWindowWidgets). */ +enum NetworkJoinStatusWidgets { + NJSW_BACKGROUND, ///< Background + NJSW_CANCELOK, ///< Cancel/OK button +}; + +/** Widgets of the WC_COMPANY_PASSWORD_WINDOW. */ +enum NetworkCompanyPasswordWindowWidgets { + NCPWW_BACKGROUND, ///< The background of the interface + NCPWW_LABEL, ///< Label in front of the password field + NCPWW_PASSWORD, ///< Input field for the password + NCPWW_SAVE_AS_DEFAULT_PASSWORD, ///< Toggle 'button' for saving the current password as default password + NCPWW_CANCEL, ///< Close the window without changing anything + NCPWW_OK, ///< Safe the password etc. +}; + + +#endif /* WIDGETS_NETWORK_WIDGET_H */ diff --git a/src/widgets/newgrf_debug_widget.h b/src/widgets/newgrf_debug_widget.h new file mode 100644 index 000000000..2ae0b8ec8 --- /dev/null +++ b/src/widgets/newgrf_debug_widget.h @@ -0,0 +1,40 @@ +/* $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 newgrf_debug_widget.h Types related to the newgrf debug widgets. */ + +#ifndef WIDGETS_NEWGRF_DEBUG_WIDGET_H +#define WIDGETS_NEWGRF_DEBUG_WIDGET_H + +/** Widgets of the WC_NEWGRF_INSPECT. */ +enum NewGRFInspectWidgets { + NIW_CAPTION, ///< The caption bar ofcourse + NIW_PARENT, ///< Inspect the parent + NIW_MAINPANEL, ///< Panel widget containing the actual data + NIW_SCROLLBAR, ///< Scrollbar +}; + +/** Widgets of the WC_SPRITE_ALIGNER. */ +enum SpriteAlignerWidgets { + SAW_CAPTION, ///< Caption of the window + SAW_PREVIOUS, ///< Skip to the previous sprite + SAW_GOTO, ///< Go to a given sprite + SAW_NEXT, ///< Skip to the next sprite + SAW_UP, ///< Move the sprite up + SAW_LEFT, ///< Move the sprite to the left + SAW_RIGHT, ///< Move the sprite to the right + SAW_DOWN, ///< Move the sprite down + SAW_SPRITE, ///< The actual sprite + SAW_OFFSETS, ///< The sprite offsets + SAW_PICKER, ///< Sprite picker + SAW_LIST, ///< Queried sprite list + SAW_SCROLLBAR,///< Scrollbar for sprite list +}; + +#endif /* WIDGETS_NEWGRF_DEBUG_WIDGET_H */ diff --git a/src/widgets/newgrf_widget.h b/src/widgets/newgrf_widget.h new file mode 100644 index 000000000..d76d3019b --- /dev/null +++ b/src/widgets/newgrf_widget.h @@ -0,0 +1,73 @@ +/* $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 newgrf_widget.h Types related to the newgrf widgets. */ + +#ifndef WIDGETS_NEWGRF_WIDGET_H +#define WIDGETS_NEWGRF_WIDGET_H + +/** Widgets of the WC_GRF_PARAMETERS. */ +enum ShowNewGRFParametersWidgets { + GRFPAR_WIDGET_SHOW_NUMPAR, ///< #NWID_SELECTION to optionally display #GRFPAR_WIDGET_NUMPAR + GRFPAR_WIDGET_NUMPAR_DEC, ///< Button to decrease number of parameters + GRFPAR_WIDGET_NUMPAR_INC, ///< Button to increase number of parameters + GRFPAR_WIDGET_NUMPAR, ///< Optional number of parameters + GRFPAR_WIDGET_NUMPAR_TEXT, ///< Text description + GRFPAR_WIDGET_BACKGROUND, ///< Panel to draw the settings on + GRFPAR_WIDGET_SCROLLBAR, ///< Scrollbar to scroll through all settings + GRFPAR_WIDGET_ACCEPT, ///< Accept button + GRFPAR_WIDGET_RESET, ///< Reset button + GRFPAR_WIDGET_SHOW_DESCRIPTION, ///< #NWID_SELECTION to optionally display parameter descriptions + GRFPAR_WIDGET_DESCRIPTION, ///< Multi-line description of a parameter +}; + +/** Widgets of the WC_NEWGRF_TEXTFILE. */ +enum ShowNewGRFTextfileWidgets { + GTW_WIDGET_CAPTION, ///< The caption of the window. + GTW_WIDGET_BACKGROUND, ///< Panel to draw the textfile on. + GTW_WIDGET_VSCROLLBAR, ///< Vertical scrollbar to scroll through the textfile up-and-down. + GTW_WIDGET_HSCROLLBAR, ///< Horizontal scrollbar to scroll through the textfile left-to-right. +}; + +/** Widgets of the WC_GAME_OPTIONS (WC_GAME_OPTIONS is also used in others). */ +enum ShowNewGRFStateWidgets { + SNGRFS_PRESET_LIST, + SNGRFS_PRESET_SAVE, + SNGRFS_PRESET_DELETE, + SNGRFS_ADD, + SNGRFS_REMOVE, + SNGRFS_MOVE_UP, + SNGRFS_MOVE_DOWN, + SNGRFS_FILTER, + SNGRFS_FILE_LIST, + SNGRFS_SCROLLBAR, + SNGRFS_AVAIL_LIST, + SNGRFS_SCROLL2BAR, + SNGRFS_NEWGRF_INFO_TITLE, + SNGRFS_NEWGRF_INFO, + SNGRFS_OPEN_URL, + SNGRFS_NEWGRF_TEXTFILE, + SNGRFS_SET_PARAMETERS = SNGRFS_NEWGRF_TEXTFILE + TFT_END, + SNGRFS_TOGGLE_PALETTE, + SNGRFS_APPLY_CHANGES, + SNGRFS_RESCAN_FILES, + SNGRFS_RESCAN_FILES2, + SNGRFS_CONTENT_DOWNLOAD, + SNGRFS_CONTENT_DOWNLOAD2, + SNGRFS_SHOW_REMOVE, ///< Select active list buttons (0 = normal, 1 = simple layout). + SNGRFS_SHOW_APPLY, ///< Select display of the buttons below the 'details'. +}; + +/** Widgets of the WC_MODAL_PROGRESS (WC_MODAL_PROGRESS is also used in GenerationProgressWindowWidgets). */ +enum ScanProgressWindowWidgets { + SPWW_PROGRESS_BAR, ///< Simple progress bar. + GPWW_PROGRESS_TEXT, ///< Text explaining what is happening. +}; + +#endif /* WIDGETS_NEWGRF_WIDGET_H */ diff --git a/src/widgets/news_widget.h b/src/widgets/news_widget.h new file mode 100644 index 000000000..5326188a1 --- /dev/null +++ b/src/widgets/news_widget.h @@ -0,0 +1,70 @@ +/* $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 news_widget.h Types related to the news widgets. */ + +#ifndef WIDGETS_NEWS_WIDGET_H +#define WIDGETS_NEWS_WIDGET_H + +/** Constants in the message options window. */ +enum MessageOptionsSpace { + MOS_WIDG_PER_SETTING = 4, ///< Number of widgets needed for each news category, starting at widget #WIDGET_NEWSOPT_START_OPTION. + + MOS_LEFT_EDGE = 6, ///< Number of pixels between left edge of the window and the options buttons column. + MOS_COLUMN_SPACING = 4, ///< Number of pixels between the buttons and the description columns. + MOS_RIGHT_EDGE = 6, ///< Number of pixels between right edge of the window and the options descriptions column. + MOS_BUTTON_SPACE = 10, ///< Additional space in the button with the option value (for better looks). + + MOS_ABOVE_GLOBAL_SETTINGS = 6, ///< Number of vertical pixels between the categories and the global options. + MOS_BOTTOM_EDGE = 6, ///< Number of pixels between bottom edge of the window and bottom of the global options. +}; + + +/** Widgets of the WC_NEWS_WINDOW. */ +enum NewsTypeWidgets { + NTW_PANEL, ///< The news item background panel. + NTW_TITLE, ///< Title of the company news. + NTW_HEADLINE, ///< The news headline. + NTW_CLOSEBOX, ///< Close the window. + NTW_DATE, ///< Date of the news item. + NTW_CAPTION, ///< Title bar of the window. Only used in small news items. + NTW_INSET, ///< Inset around the viewport in the window. Only used in small news items. + NTW_VIEWPORT, ///< Viewport in the window. + NTW_COMPANY_MSG, ///< Message in company news items. + NTW_MESSAGE, ///< Space for displaying the message. Only used in small news items. + NTW_MGR_FACE, ///< Face of the manager. + NTW_MGR_NAME, ///< Name of the manager. + NTW_VEH_TITLE, ///< Vehicle new title. + NTW_VEH_BKGND, ///< Dark background of new vehicle news. + NTW_VEH_NAME, ///< Name of the new vehicle. + NTW_VEH_SPR, ///< Graphical display of the new vehicle. + NTW_VEH_INFO, ///< Some technical data of the new vehicle. +}; + +/** Widgets of the WC_MESSAGE_HISTORY. */ +enum MessageHistoryWidgets { + MHW_STICKYBOX, + MHW_BACKGROUND, + MHW_SCROLLBAR, +}; + +/** Widgets of the WC_GAME_OPTIONS (WC_GAME_OPTIONS is also used in others). */ +enum MessageOptionWidgets { + WIDGET_NEWSOPT_BACKGROUND, ///< Background widget. + WIDGET_NEWSOPT_LABEL, ///< Top label. + WIDGET_NEWSOPT_DROP_SUMMARY, ///< Dropdown that adjusts at once the level for all settings. + WIDGET_NEWSOPT_LABEL_SUMMARY, ///< Label of the summary drop down. + WIDGET_NEWSOPT_SOUNDTICKER, ///< Button for (de)activating sound on events. + WIDGET_NEWSOPT_SOUNDTICKER_LABEL, ///< Label of the soundticker button, + + WIDGET_NEWSOPT_START_OPTION, ///< First widget that is part of a group [<][label][>] [description] + WIDGET_NEWSOPT_END_OPTION = WIDGET_NEWSOPT_START_OPTION + NT_END * MOS_WIDG_PER_SETTING, ///< First widget after the groups. +}; + +#endif /* WIDGETS_NEWS_WIDGET_H */ diff --git a/src/widgets/object_widget.h b/src/widgets/object_widget.h new file mode 100644 index 000000000..fd2eb3328 --- /dev/null +++ b/src/widgets/object_widget.h @@ -0,0 +1,29 @@ +/* $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 object_widget.h Types related to the object widgets. */ + +#ifndef WIDGETS_OBJECT_WIDGET_H +#define WIDGETS_OBJECT_WIDGET_H + +/** Widgets of the WC_BUILD_OBJECT. */ +enum BuildObjectWidgets { + BOW_CLASS_LIST, ///< The list with classes. + BOW_SCROLLBAR, ///< The scrollbar associated with the list. + BOW_OBJECT_MATRIX, ///< The matrix with preview sprites. + BOW_OBJECT_SPRITE, ///< A preview sprite of the object. + BOW_OBJECT_SIZE, ///< The size of an object. + BOW_INFO, ///< Other information about the object (from the NewGRF). + + BOW_SELECT_MATRIX, ///< Selection preview matrix of objects of a given class. + BOW_SELECT_IMAGE, ///< Preview image in the #BOW_SELECT_MATRIX. + BOW_SELECT_SCROLL, ///< Scrollbar next to the #BOW_SELECT_MATRIX. +}; + +#endif /* WIDGETS_OBJECT_WIDGET_H */ diff --git a/src/widgets/order_widget.h b/src/widgets/order_widget.h new file mode 100644 index 000000000..f753456d6 --- /dev/null +++ b/src/widgets/order_widget.h @@ -0,0 +1,44 @@ +/* $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 order_widget.h Types related to the order widgets. */ + +#ifndef WIDGETS_ORDER_WIDGET_H +#define WIDGETS_ORDER_WIDGET_H + +/** Widgets of the WC_VEHICLE_ORDERS. */ +enum OrderWindowWidgets { + ORDER_WIDGET_CAPTION, + ORDER_WIDGET_TIMETABLE_VIEW, + ORDER_WIDGET_ORDER_LIST, + ORDER_WIDGET_SCROLLBAR, + ORDER_WIDGET_SKIP, + ORDER_WIDGET_DELETE, + ORDER_WIDGET_STOP_SHARING, + ORDER_WIDGET_NON_STOP, + ORDER_WIDGET_GOTO, + ORDER_WIDGET_FULL_LOAD, + ORDER_WIDGET_UNLOAD, + ORDER_WIDGET_REFIT, + ORDER_WIDGET_SERVICE, + ORDER_WIDGET_EMPTY, + ORDER_WIDGET_REFIT_DROPDOWN, + ORDER_WIDGET_COND_VARIABLE, + ORDER_WIDGET_COND_COMPARATOR, + ORDER_WIDGET_COND_VALUE, + ORDER_WIDGET_SEL_TOP_LEFT, ///< #NWID_SELECTION widget for left part of the top row of the 'your train' order window. + ORDER_WIDGET_SEL_TOP_MIDDLE, ///< #NWID_SELECTION widget for middle part of the top row of the 'your train' order window. + ORDER_WIDGET_SEL_TOP_RIGHT, ///< #NWID_SELECTION widget for right part of the top row of the 'your train' order window. + ORDER_WIDGET_SEL_TOP_ROW_GROUNDVEHICLE, ///< #NWID_SELECTION widget for the top row of the 'your train' order window. + ORDER_WIDGET_SEL_TOP_ROW, ///< #NWID_SELECTION widget for the top row of the 'your non-trains' order window. + ORDER_WIDGET_SEL_BOTTOM_MIDDLE, ///< #NWID_SELECTION widget for the middle part of the bottom row of the 'your train' order window. + ORDER_WIDGET_SHARED_ORDER_LIST, +}; + +#endif /* WIDGETS_ORDER_WIDGET_H */ diff --git a/src/widgets/osk_widget.h b/src/widgets/osk_widget.h new file mode 100644 index 000000000..9512af821 --- /dev/null +++ b/src/widgets/osk_widget.h @@ -0,0 +1,43 @@ +/* $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 osk_widget.h Types related to the osk widgets. */ + +#ifndef WIDGETS_OSK_WIDGET_H +#define WIDGETS_OSK_WIDGET_H + +/** Widgets of the WC_OSK. */ +enum OskWidgets { + OSK_WIDGET_CAPTION, ///< Title bar. + OSK_WIDGET_TEXT, ///< Edit box. + OSK_WIDGET_CANCEL, ///< Cancel key. + OSK_WIDGET_OK, ///< Ok key. + OSK_WIDGET_BACKSPACE, ///< Backspace key. + OSK_WIDGET_SPECIAL, ///< Special key (at keyborads often used for tab key). + OSK_WIDGET_CAPS, ///< Capslock key. + OSK_WIDGET_SHIFT, ///< Shift(lock) key. + OSK_WIDGET_SPACE, ///< Space bar. + OSK_WIDGET_LEFT, ///< Cursor left key. + OSK_WIDGET_RIGHT, ///< Cursor right key. + OSK_WIDGET_LETTERS, ///< First widget of the 'normal' keys. + + OSK_WIDGET_NUMBERS_FIRST = OSK_WIDGET_LETTERS, ///< First widget of the numbers row. + OSK_WIDGET_NUMBERS_LAST = OSK_WIDGET_NUMBERS_FIRST + 13, ///< Last widget of the numbers row. + + OSK_WIDGET_QWERTY_FIRST, ///< First widget of the qwerty row. + OSK_WIDGET_QWERTY_LAST = OSK_WIDGET_QWERTY_FIRST + 11, ///< Last widget of the qwerty row. + + OSK_WIDGET_ASDFG_FIRST, ///< First widget of the asdfg row. + OSK_WIDGET_ASDFG_LAST = OSK_WIDGET_ASDFG_FIRST + 11, ///< Last widget of the asdfg row. + + OSK_WIDGET_ZXCVB_FIRST, ///< First widget of the zxcvb row. + OSK_WIDGET_ZXCVB_LAST = OSK_WIDGET_ZXCVB_FIRST + 11, ///< Last widget of the zxcvb row. +}; + +#endif /* WIDGETS_OSK_WIDGET_H */ diff --git a/src/widgets/rail_widget.h b/src/widgets/rail_widget.h new file mode 100644 index 000000000..ebf3b2584 --- /dev/null +++ b/src/widgets/rail_widget.h @@ -0,0 +1,112 @@ +/* $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 rail_widget.h Types related to the rail widgets. */ + +#ifndef WIDGETS_RAIL_WIDGET_H +#define WIDGETS_RAIL_WIDGET_H + +/** Widgets of the WC_BUILD_TOOLBAR (WC_BUILD_TOOLBAR is also used in others). */ +enum RailToolbarWidgets { + RTW_CAPTION, + RTW_BUILD_NS, + RTW_BUILD_X, + RTW_BUILD_EW, + RTW_BUILD_Y, + RTW_AUTORAIL, + RTW_DEMOLISH, + RTW_BUILD_DEPOT, + RTW_BUILD_WAYPOINT, + RTW_BUILD_STATION, + RTW_BUILD_SIGNALS, + RTW_BUILD_BRIDGE, + RTW_BUILD_TUNNEL, + RTW_REMOVE, + RTW_CONVERT_RAIL, +}; + +/** Widgets of the WC_BUILD_STATION (WC_BUILD_STATION is also used in others). */ +enum BuildRailStationWidgets { + BRSW_PLATFORM_DIR_X, ///< Button to select '/' view. + BRSW_PLATFORM_DIR_Y, ///< Button to select '\' view. + + BRSW_PLATFORM_NUM_1, ///< Button to select stations with a single platform. + BRSW_PLATFORM_NUM_2, ///< Button to select stations with 2 platforms. + BRSW_PLATFORM_NUM_3, ///< Button to select stations with 3 platforms. + BRSW_PLATFORM_NUM_4, ///< Button to select stations with 4 platforms. + BRSW_PLATFORM_NUM_5, ///< Button to select stations with 5 platforms. + BRSW_PLATFORM_NUM_6, ///< Button to select stations with 6 platforms. + BRSW_PLATFORM_NUM_7, ///< Button to select stations with 7 platforms. + + BRSW_PLATFORM_LEN_1, ///< Button to select single tile length station platforms. + BRSW_PLATFORM_LEN_2, ///< Button to select 2 tiles length station platforms. + BRSW_PLATFORM_LEN_3, ///< Button to select 3 tiles length station platforms. + BRSW_PLATFORM_LEN_4, ///< Button to select 4 tiles length station platforms. + BRSW_PLATFORM_LEN_5, ///< Button to select 5 tiles length station platforms. + BRSW_PLATFORM_LEN_6, ///< Button to select 6 tiles length station platforms. + BRSW_PLATFORM_LEN_7, ///< Button to select 7 tiles length station platforms. + + BRSW_PLATFORM_DRAG_N_DROP, ///< Button to enable drag and drop type station placement. + + BRSW_HIGHLIGHT_OFF, ///< Button for turning coverage highlighting off. + BRSW_HIGHLIGHT_ON, ///< Button for turning coverage highlighting on. + BRSW_COVERAGE_TEXTS, ///< Empty space for the coverage texts. + + BRSW_MATRIX, ///< Matrix widget displaying the available stations. + BRSW_IMAGE, ///< Panel used at each cell of the matrix. + BRSW_MATRIX_SCROLL, ///< Scrollbar of the matrix widget. + + BRSW_SHOW_NEWST_ADDITIONS, ///< Selection for newstation class selection list. + BRSW_SHOW_NEWST_MATRIX, ///< Selection for newstation image matrix. + BRSW_SHOW_NEWST_RESIZE, ///< Selection for panel and resize at bottom right for newstation. + BRSW_SHOW_NEWST_TYPE, ///< Display of selected station type. + BRSW_NEWST_LIST, ///< List with available newstation classes. + BRSW_NEWST_SCROLL, ///< Scrollbar of the #BRSW_NEWST_LIST. + + BRSW_PLATFORM_NUM_BEGIN = BRSW_PLATFORM_NUM_1 - 1, + BRSW_PLATFORM_LEN_BEGIN = BRSW_PLATFORM_LEN_1 - 1, +}; + +/** Widgets of the WC_BUILD_SIGNAL. */ +enum BuildSignalWidgets { + BSW_SEMAPHORE_NORM, + BSW_SEMAPHORE_ENTRY, + BSW_SEMAPHORE_EXIT, + BSW_SEMAPHORE_COMBO, + BSW_SEMAPHORE_PBS, + BSW_SEMAPHORE_PBS_OWAY, + BSW_ELECTRIC_NORM, + BSW_ELECTRIC_ENTRY, + BSW_ELECTRIC_EXIT, + BSW_ELECTRIC_COMBO, + BSW_ELECTRIC_PBS, + BSW_ELECTRIC_PBS_OWAY, + BSW_CONVERT, + BSW_DRAG_SIGNALS_DENSITY, + BSW_DRAG_SIGNALS_DENSITY_LABEL, + BSW_DRAG_SIGNALS_DENSITY_DECREASE, + BSW_DRAG_SIGNALS_DENSITY_INCREASE, +}; + +/** Widgets of the WC_BUILD_DEPOT (WC_BUILD_DEPOT is also used in others). */ +enum BuildRailDepotWidgets { + BRDW_DEPOT_NE, + BRDW_DEPOT_SE, + BRDW_DEPOT_SW, + BRDW_DEPOT_NW, +}; + +/** Widgets of the WC_BUILD_DEPOT (WC_BUILD_DEPOT is also used in others). */ +enum BuildRailWaypointWidgets { + BRWW_WAYPOINT_MATRIX, + BRWW_WAYPOINT, + BRWW_SCROLL, +}; + +#endif /* WIDGETS_RAIL_WIDGET_H */ diff --git a/src/widgets/road_widget.h b/src/widgets/road_widget.h new file mode 100644 index 000000000..f2e5f54ca --- /dev/null +++ b/src/widgets/road_widget.h @@ -0,0 +1,54 @@ +/* $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 road_widget.h Types related to the road widgets. */ + +#ifndef WIDGETS_ROAD_WIDGET_H +#define WIDGETS_ROAD_WIDGET_H + +/** Widgets of the WC_SCEN_BUILD_TOOLBAR / WC_BUILD_TOOLBAR (WC_SCEN_BUILD_TOOLBAR / WC_BUILD_TOOLBAR is also used in others). */ +enum RoadToolbarWidgets { + RTW_ROAD_X, + RTW_ROAD_Y, + RTW_AUTOROAD, + RTW_DEMOLISH, + RTW_DEPOT, + RTW_BUS_STATION, + RTW_TRUCK_STATION, + RTW_ONE_WAY, + RTW_BUILD_BRIDGE, + RTW_BUILD_TUNNEL, + RTW_REMOVE, +}; + +/** Widgets of the WC_BUILD_DEPOT (WC_BUILD_DEPOT is also used in others). */ +enum BuildRoadDepotWidgets { + BRDW_CAPTION, + BRDW_DEPOT_NE, + BRDW_DEPOT_SE, + BRDW_DEPOT_SW, + BRDW_DEPOT_NW, +}; + +/** Widgets of the WC_BUS_STATION / WC_TRUCK_STATION. */ +enum BuildRoadStationWidgets { + BRSW_CAPTION, + BRSW_BACKGROUND, + BRSW_STATION_NE, + BRSW_STATION_SE, + BRSW_STATION_SW, + BRSW_STATION_NW, + BRSW_STATION_X, + BRSW_STATION_Y, + BRSW_LT_OFF, + BRSW_LT_ON, + BRSW_INFO, +}; + +#endif /* WIDGETS_ROAD_WIDGET_H */ diff --git a/src/widgets/settings_widget.h b/src/widgets/settings_widget.h new file mode 100644 index 000000000..9eb5bf4f4 --- /dev/null +++ b/src/widgets/settings_widget.h @@ -0,0 +1,73 @@ +/* $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 settings_widget.h Types related to the settings widgets. */ + +#ifndef WIDGETS_SETTINGS_WIDGET_H +#define WIDGETS_SETTINGS_WIDGET_H + +/** Widgets of the WC_GAME_OPTIONS (WC_GAME_OPTIONS is also used in others). */ +enum GameOptionsWidgets { + GOW_BACKGROUND, ///< Background of the window + GOW_CURRENCY_DROPDOWN, ///< Currency dropdown + GOW_DISTANCE_DROPDOWN, ///< Measuring unit dropdown + GOW_ROADSIDE_DROPDOWN, ///< Dropdown to select the road side (to set the right side ;)) + GOW_TOWNNAME_DROPDOWN, ///< Town name dropdown + GOW_AUTOSAVE_DROPDOWN, ///< Dropdown to say how often to autosave + GOW_LANG_DROPDOWN, ///< Language dropdown + GOW_RESOLUTION_DROPDOWN, ///< Dropdown for the resolution + GOW_FULLSCREEN_BUTTON, ///< Toggle fullscreen + GOW_SCREENSHOT_DROPDOWN, ///< Select the screenshot type... please use PNG! + GOW_BASE_GRF_DROPDOWN, ///< Use to select a base GRF + GOW_BASE_GRF_STATUS, ///< Info about missing files etc. + GOW_BASE_GRF_DESCRIPTION, ///< Description of selected base GRF + GOW_BASE_SFX_DROPDOWN, ///< Use to select a base SFX + GOW_BASE_SFX_DESCRIPTION, ///< Description of selected base SFX + GOW_BASE_MUSIC_DROPDOWN, ///< Use to select a base music set + GOW_BASE_MUSIC_STATUS, ///< Info about corrupted files etc. + GOW_BASE_MUSIC_DESCRIPTION, ///< Description of selected base music set +}; + +/** Widgets of the WC_GAME_OPTIONS (WC_GAME_OPTIONS is also used in others). */ +enum GameDifficultyWidgets { + GDW_LVL_EASY, + GDW_LVL_MEDIUM, + GDW_LVL_HARD, + GDW_LVL_CUSTOM, + GDW_HIGHSCORE, + GDW_ACCEPT, + GDW_CANCEL, + + GDW_OPTIONS_START, +}; + +/** Widgets of the WC_GAME_OPTIONS (WC_GAME_OPTIONS is also used in others). */ +enum GameSettingsWidgets { + SETTINGSEL_OPTIONSPANEL, ///< Panel widget containing the option lists + SETTINGSEL_SCROLLBAR, ///< Scrollbar +}; + +/** Widgets of the WC_CUSTOM_CURRENCY. */ +enum CustomCurrencyWidgets { + CUSTCURR_RATE_DOWN, + CUSTCURR_RATE_UP, + CUSTCURR_RATE, + CUSTCURR_SEPARATOR_EDIT, + CUSTCURR_SEPARATOR, + CUSTCURR_PREFIX_EDIT, + CUSTCURR_PREFIX, + CUSTCURR_SUFFIX_EDIT, + CUSTCURR_SUFFIX, + CUSTCURR_YEAR_DOWN, + CUSTCURR_YEAR_UP, + CUSTCURR_YEAR, + CUSTCURR_PREVIEW, +}; + +#endif /* WIDGETS_SETTINGS_WIDGET_H */ diff --git a/src/widgets/sign_widget.h b/src/widgets/sign_widget.h new file mode 100644 index 000000000..0163334cc --- /dev/null +++ b/src/widgets/sign_widget.h @@ -0,0 +1,36 @@ +/* $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 sign_widget.h Types related to the sign widgets. */ + +#ifndef WIDGETS_SIGN_WIDGET_H +#define WIDGETS_SIGN_WIDGET_H + +/** Widgets of the WC_SIGN_LIST. */ +enum SignListWidgets { + SLW_CAPTION, + SLW_LIST, + SLW_SCROLLBAR, + SLW_FILTER_TEXT, ///< Text box for typing a filter string + SLW_FILTER_MATCH_CASE_BTN, ///< Button to toggle if case sensitive filtering should be used + SLW_FILTER_CLEAR_BTN, ///< Button to clear the filter +}; + +/** Widgets of the WC_QUERY_STRING (WC_QUERY_STRING is also used in QueryStringWidgets). */ +enum QueryEditSignWidgets { + QUERY_EDIT_SIGN_WIDGET_CAPTION, + QUERY_EDIT_SIGN_WIDGET_TEXT, + QUERY_EDIT_SIGN_WIDGET_OK, + QUERY_EDIT_SIGN_WIDGET_CANCEL, + QUERY_EDIT_SIGN_WIDGET_DELETE, + QUERY_EDIT_SIGN_WIDGET_PREVIOUS, + QUERY_EDIT_SIGN_WIDGET_NEXT, +}; + +#endif /* */ diff --git a/src/widgets/smallmap_widget.h b/src/widgets/smallmap_widget.h new file mode 100644 index 000000000..c23163ba3 --- /dev/null +++ b/src/widgets/smallmap_widget.h @@ -0,0 +1,37 @@ +/* $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 smallmap_widget.h Types related to the smallmap widgets. */ + +#ifndef WIDGETS_SMALLMAP_WIDGET_H +#define WIDGETS_SMALLMAP_WIDGET_H + +/** Widgets of the WC_SMALLMAP. */ +enum SmallMapWindowWidgets { + SM_WIDGET_CAPTION, ///< Caption widget. + SM_WIDGET_MAP_BORDER, ///< Border around the smallmap. + SM_WIDGET_MAP, ///< Panel containing the smallmap. + SM_WIDGET_LEGEND, ///< Bottom panel to display smallmap legends. + SM_WIDGET_ZOOM_IN, ///< Button to zoom in one step. + SM_WIDGET_ZOOM_OUT, ///< Button to zoom out one step. + SM_WIDGET_CONTOUR, ///< Button to select the contour view (height map). + SM_WIDGET_VEHICLES, ///< Button to select the vehicles view. + SM_WIDGET_INDUSTRIES, ///< Button to select the industries view. + SM_WIDGET_ROUTES, ///< Button to select the routes view. + SM_WIDGET_VEGETATION, ///< Button to select the vegetation view. + SM_WIDGET_OWNERS, ///< Button to select the owners view. + SM_WIDGET_CENTERMAP, ///< Button to move smallmap center to main window center. + SM_WIDGET_TOGGLETOWNNAME, ///< Toggle button to display town names. + SM_WIDGET_SELECT_BUTTONS, ///< Selection widget for the buttons present in some smallmap modes. + SM_WIDGET_ENABLE_ALL, ///< Button to enable display of all legend entries. + SM_WIDGET_DISABLE_ALL, ///< Button to disable display of all legend entries. + SM_WIDGET_SHOW_HEIGHT, ///< Show heightmap toggle button. +}; + +#endif /* WIDGETS_SMALLPAM_WIDGET_H */ diff --git a/src/widgets/station_widget.h b/src/widgets/station_widget.h new file mode 100644 index 000000000..67a60f54d --- /dev/null +++ b/src/widgets/station_widget.h @@ -0,0 +1,62 @@ +/* $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 station_widget.h Types related to the station widgets. */ + +#ifndef WIDGETS_STATION_WIDGET_H +#define WIDGETS_STATION_WIDGET_H + +/** Widgets of the WC_STATION_VIEW. */ +enum StationViewWidgets { + SVW_CAPTION = 0, ///< Caption of the window + SVW_WAITING = 1, ///< List of waiting cargo + SVW_SCROLLBAR = 2, ///< Scrollbar + SVW_ACCEPTLIST = 3, ///< List of accepted cargoes + SVW_RATINGLIST = 3, ///< Ratings of cargoes + SVW_LOCATION = 4, ///< 'Location' button + SVW_RATINGS = 5, ///< 'Ratings' button + SVW_ACCEPTS = 5, ///< 'Accepts' button + SVW_RENAME = 6, ///< 'Rename' button + SVW_TRAINS = 7, ///< List of scheduled trains button + SVW_ROADVEHS, ///< List of scheduled road vehs button + SVW_SHIPS, ///< List of scheduled ships button + SVW_PLANES, ///< List of scheduled planes button +}; + +/** Widgets of the WC_STATION_LIST. */ +enum StationListWidgets { + SLW_CAPTION, ///< Window caption + SLW_LIST, ///< The main panel, list of stations + SLW_SCROLLBAR, ///< Scrollbar next to the main panel + + /* Vehicletypes need to be in order of StationFacility due to bit magic */ + SLW_TRAIN, ///< 'TRAIN' button - list only facilities where is a railroad station + SLW_TRUCK, ///< 'TRUCK' button - list only facilities where is a truck stop + SLW_BUS, ///< 'BUS' button - list only facilities where is a bus stop + SLW_AIRPLANE, ///< 'AIRPLANE' button - list only facilities where is an airport + SLW_SHIP, ///< 'SHIP' button - list only facilities where is a dock + SLW_FACILALL, ///< 'ALL' button - list all facilities + + SLW_NOCARGOWAITING, ///< 'NO' button - list stations where no cargo is waiting + SLW_CARGOALL, ///< 'ALL' button - list all stations + + SLW_SORTBY, ///< 'Sort by' button - reverse sort direction + SLW_SORTDROPBTN, ///< Dropdown button + + SLW_CARGOSTART, ///< Widget numbers used for list of cargo types (not present in _company_stations_widgets) +}; + +/** Widgets of the WC_SELECT_STATION. */ +enum JoinStationWidgets { + JSW_WIDGET_CAPTION, + JSW_PANEL, + JSW_SCROLLBAR, +}; + +#endif /* WIDGETS_STATION_WIDGET_H */ diff --git a/src/widgets/statusbar_widget.h b/src/widgets/statusbar_widget.h new file mode 100644 index 000000000..50094f0fa --- /dev/null +++ b/src/widgets/statusbar_widget.h @@ -0,0 +1,22 @@ +/* $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 statusbar_widget.h Types related to the statusbar widgets. */ + +#ifndef WIDGETS_STATUSBAR_WIDGET_H +#define WIDGETS_STATUSBAR_WIDGET_H + +/** Widgets of the WC_STATUS_BAR. */ +enum StatusbarWidget { + SBW_LEFT, ///< left part of the statusbar; date is shown there + SBW_MIDDLE, ///< middle part; current news or company name or *** SAVING *** or *** PAUSED *** + SBW_RIGHT, ///< right part; bank balance +}; + +#endif /* WIDGETS_STATUSBAR_WIDGET_H */ diff --git a/src/widgets/subsidy_widget.h b/src/widgets/subsidy_widget.h new file mode 100644 index 000000000..db6472c5f --- /dev/null +++ b/src/widgets/subsidy_widget.h @@ -0,0 +1,21 @@ +/* $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 subsidy_widget.h Types related to the subsidy widgets. */ + +#ifndef WIDGETS_SUBSIDY_WIDGET_H +#define WIDGETS_SUBSIDY_WIDGET_H + +/** Widgets of the WC_SUBSIDIES_LIST. */ +enum SubsidyListWidgets { + SLW_PANEL, + SLW_SCROLLBAR, +}; + +#endif /* WIDGETS_SUBSIDY_WIDGET_H */ diff --git a/src/widgets/terraform_widget.h b/src/widgets/terraform_widget.h new file mode 100644 index 000000000..0c085fe55 --- /dev/null +++ b/src/widgets/terraform_widget.h @@ -0,0 +1,49 @@ +/* $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 terraform_widget.h Types related to the terraform widgets. */ + +#ifndef WIDGETS_TERRAFORM_WIDGET_H +#define WIDGETS_TERRAFORM_WIDGET_H + +/** Widgets of the WC_SCEN_LAND_GEN (WC_SCEN_LAND_GEN is also used in EditorTerraformToolbarWidgets). */ +enum TerraformToolbarWidgets { + TTW_SHOW_PLACE_OBJECT, ///< Should the place object button be shown? + TTW_BUTTONS_START, ///< Start of pushable buttons + TTW_LOWER_LAND = TTW_BUTTONS_START, ///< Lower land button + TTW_RAISE_LAND, ///< Raise land button + TTW_LEVEL_LAND, ///< Level land button + TTW_DEMOLISH, ///< Demolish aka dynamite button + TTW_BUY_LAND, ///< Buy land button + TTW_PLANT_TREES, ///< Plant trees button (note: opens seperate window, no place-push-button) + TTW_PLACE_SIGN, ///< Place sign button + TTW_PLACE_OBJECT, ///< Place object button +}; + +/** Widgets of the WC_SCEN_LAND_GEN (WC_SCEN_LAND_GEN is also used in TerraformToolbarWidgets). */ +enum EditorTerraformToolbarWidgets { + ETTW_SHOW_PLACE_DESERT, ///< Should the place desert button be shown? + ETTW_START, ///< Used for iterations + ETTW_DOTS = ETTW_START, ///< Invisible widget for rendering the terraform size on. + ETTW_BUTTONS_START, ///< Start of pushable buttons + ETTW_DEMOLISH = ETTW_BUTTONS_START, ///< Demolish aka dynamite button + ETTW_LOWER_LAND, ///< Lower land button + ETTW_RAISE_LAND, ///< Raise land button + ETTW_LEVEL_LAND, ///< Level land button + ETTW_PLACE_ROCKS, ///< Place rocks button + ETTW_PLACE_DESERT, ///< Place desert button (in tropical climate) + ETTW_PLACE_OBJECT, ///< Place transmitter button + ETTW_BUTTONS_END, ///< End of pushable buttons + ETTW_INCREASE_SIZE = ETTW_BUTTONS_END, ///< Upwards arrow button to increase terraforming size + ETTW_DECREASE_SIZE, ///< Downwards arrow button to decrease terraforming size + ETTW_NEW_SCENARIO, ///< Button for generating a new scenario + ETTW_RESET_LANDSCAPE, ///< Button for removing all company-owned property +}; + +#endif /* WIDGETS_TERRAFORM_WIDGET_H */ diff --git a/src/widgets/timetable_widget.h b/src/widgets/timetable_widget.h new file mode 100644 index 000000000..e90c1f554 --- /dev/null +++ b/src/widgets/timetable_widget.h @@ -0,0 +1,34 @@ +/* $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 timetable_widget.h Types related to the timetable widgets. */ + +#ifndef WIDGETS_TIMETABLE_WIDGET_H +#define WIDGETS_TIMETABLE_WIDGET_H + +/** Widgets of the WC_VEHICLE_TIMETABLE. */ +enum TimetableViewWindowWidgets { + TTV_CAPTION, + TTV_ORDER_VIEW, + TTV_TIMETABLE_PANEL, + TTV_ARRIVAL_DEPARTURE_PANEL, ///< Panel with the expected/scheduled arrivals + TTV_SCROLLBAR, + TTV_SUMMARY_PANEL, + TTV_START_DATE, + TTV_CHANGE_TIME, + TTV_CLEAR_TIME, + TTV_RESET_LATENESS, + TTV_AUTOFILL, + TTV_EXPECTED, ///< Toggle between expected and scheduled arrivals + TTV_SHARED_ORDER_LIST, ///< Show the shared order list + TTV_ARRIVAL_DEPARTURE_SELECTION, ///< Disable/hide the arrival departure panel + TTV_EXPECTED_SELECTION, ///< Disable/hide the expected selection button +}; + +#endif /* WIDGETS_TIMETABLE_WIDGET_H */ diff --git a/src/widgets/toolbar_widget.h b/src/widgets/toolbar_widget.h new file mode 100644 index 000000000..11c0e4906 --- /dev/null +++ b/src/widgets/toolbar_widget.h @@ -0,0 +1,72 @@ +/* $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 tooltype_widget.h Types related to the toolbar widgets. */ + +#ifndef WIDGETS_TOOLBAR_WIDGET_H +#define WIDGETS_TOOLBAR_WIDGET_H + +/** Widgets of the WC_MAIN_TOOLBAR, when in normal game mode. */ +enum ToolbarNormalWidgets { + TBN_PAUSE = 0, + TBN_FASTFORWARD, + TBN_SETTINGS, + TBN_SAVEGAME, + TBN_SMALLMAP, + TBN_TOWNDIRECTORY, + TBN_SUBSIDIES, + TBN_STATIONS, + TBN_FINANCES, + TBN_COMPANIES, + TBN_GRAPHICS, + TBN_LEAGUE, + TBN_INDUSTRIES, + TBN_VEHICLESTART, ///< trains, actually. So following are trucks, boats and planes + TBN_TRAINS = TBN_VEHICLESTART, + TBN_ROADVEHS, + TBN_SHIPS, + TBN_AIRCRAFTS, + TBN_ZOOMIN, + TBN_ZOOMOUT, + TBN_RAILS, + TBN_ROADS, + TBN_WATER, + TBN_AIR, + TBN_LANDSCAPE, + TBN_MUSICSOUND, + TBN_NEWSREPORT, + TBN_HELP, + TBN_SWITCHBAR, ///< only available when toolbar has been split + TBN_END ///< The end marker +}; + +/** Widgets of the WC_MAIN_TOOLBAR, when in scenario editor. */ +enum ToolbarScenEditorWidgets { + TBSE_PAUSE = 0, + TBSE_FASTFORWARD, + TBSE_SETTINGS, + TBSE_SAVESCENARIO, + TBSE_SPACERPANEL, + TBSE_DATEPANEL, + TBSE_DATEBACKWARD, + TBSE_DATEFORWARD, + TBSE_SMALLMAP, + TBSE_ZOOMIN, + TBSE_ZOOMOUT, + TBSE_LANDGENERATE, + TBSE_TOWNGENERATE, + TBSE_INDUSTRYGENERATE, + TBSE_BUILDROAD, + TBSE_BUILDDOCKS, + TBSE_PLANTTREES, + TBSE_PLACESIGNS, + TBSE_DATEPANEL_CONTAINER, +}; + +#endif /* WIDGETS_TOOLBAR_WIDGET_H */ diff --git a/src/widgets/town_widget.h b/src/widgets/town_widget.h new file mode 100644 index 000000000..35164ffe1 --- /dev/null +++ b/src/widgets/town_widget.h @@ -0,0 +1,70 @@ +/* $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 town_widget.h Types related to the town widgets. */ + +#ifndef WIDGETS_TOWN_WIDGET_H +#define WIDGETS_TOWN_WIDGET_H + +/** Widgets of the WC_TOWN_DIRECTORY. */ +enum TownDirectoryWidgets { + TDW_SORTNAME, + TDW_SORTPOPULATION, + TDW_CENTERTOWN, + TDW_SCROLLBAR, + TDW_BOTTOM_PANEL, + TDW_BOTTOM_TEXT, +}; + +/** Widgets of the WC_TOWN_AUTHORITY. */ +enum TownAuthorityWidgets { + TWA_CAPTION, + TWA_RATING_INFO, ///< Overview with ratings for each company. + TWA_COMMAND_LIST, ///< List of commands for the player. + TWA_SCROLLBAR, + TWA_ACTION_INFO, ///< Additional information about the action. + TWA_EXECUTE, ///< Do-it button. +}; + +/** Widgets of the WC_TOWN_VIEW. */ +enum TownViewWidgets { + TVW_CAPTION, + TVW_VIEWPORT, + TVW_INFOPANEL, + TVW_CENTERVIEW, + TVW_SHOWAUTHORITY, + TVW_CHANGENAME, + TVW_EXPAND, + TVW_DELETE, +}; + +/** Widgets of the WC_FOUND_TOWN. */ +enum TownScenarioEditorWidgets { + TSEW_BACKGROUND, + TSEW_NEWTOWN, + TSEW_RANDOMTOWN, + TSEW_MANYRANDOMTOWNS, + TSEW_TOWNNAME_TEXT, + TSEW_TOWNNAME_EDITBOX, + TSEW_TOWNNAME_RANDOM, + TSEW_TOWNSIZE, + TSEW_SIZE_SMALL, + TSEW_SIZE_MEDIUM, + TSEW_SIZE_LARGE, + TSEW_SIZE_RANDOM, + TSEW_CITY, + TSEW_TOWNLAYOUT, + TSEW_LAYOUT_ORIGINAL, + TSEW_LAYOUT_BETTER, + TSEW_LAYOUT_GRID2, + TSEW_LAYOUT_GRID3, + TSEW_LAYOUT_RANDOM, +}; + +#endif /* WIDGETS_TOWN_WIDGET_H */ diff --git a/src/widgets/transparency_widget.h b/src/widgets/transparency_widget.h new file mode 100644 index 000000000..9d2714ce6 --- /dev/null +++ b/src/widgets/transparency_widget.h @@ -0,0 +1,34 @@ +/* $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 transparency_widget.h Types related to the transparency widgets. */ + +#ifndef WIDGETS_TRANSPARENCY_WIDGET_H +#define WIDGETS_TRANSPARENCY_WIDGET_H + +/** Widgets of the WC_TRANSPARENCY_TOOLBAR. */ +enum TransparencyToolbarWidgets { + /* Button row. */ + TTW_WIDGET_BEGIN, ///< First toggle button. + TTW_WIDGET_SIGNS = TTW_WIDGET_BEGIN, ///< Signs background transparency toggle button. + TTW_WIDGET_TREES, ///< Trees transparency toggle button. + TTW_WIDGET_HOUSES, ///< Houses transparency toggle button. + TTW_WIDGET_INDUSTRIES, ///< industries transparency toggle button. + TTW_WIDGET_BUILDINGS, ///< Company buildings and structures transparency toggle button. + TTW_WIDGET_BRIDGES, ///< Bridges transparency toggle button. + TTW_WIDGET_STRUCTURES, ///< Object structure transparency toggle button. + TTW_WIDGET_CATENARY, ///< Catenary transparency toggle button. + TTW_WIDGET_LOADING, ///< Loading indicators transparency toggle button. + TTW_WIDGET_END, ///< End of toggle buttons. + + /* Panel with buttons for invisibility */ + TTW_WIDGET_BUTTONS, ///< Panel with 'invisibility' buttons. +}; + +#endif /* WIDGETS_TRANSPARENCY_WIDGET_H */ diff --git a/src/widgets/tree_widget.h b/src/widgets/tree_widget.h new file mode 100644 index 000000000..7a1164f33 --- /dev/null +++ b/src/widgets/tree_widget.h @@ -0,0 +1,33 @@ +/* $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 tree_widget.h Types related to the tree widgets. */ + +#ifndef WIDGETS_TREE_WIDGET_H +#define WIDGETS_TREE_WIDGET_H + +/** Widgets of the WC_BUILD_TREES. */ +enum BuildTreesWidgets { + BTW_TYPE_11, + BTW_TYPE_12, + BTW_TYPE_13, + BTW_TYPE_14, + BTW_TYPE_21, + BTW_TYPE_22, + BTW_TYPE_23, + BTW_TYPE_24, + BTW_TYPE_31, + BTW_TYPE_32, + BTW_TYPE_33, + BTW_TYPE_34, + BTW_TYPE_RANDOM, + BTW_MANY_RANDOM, +}; + +#endif /* WIDGETS_TREE_WIDGET_H */ diff --git a/src/widgets/vehicle_widget.h b/src/widgets/vehicle_widget.h new file mode 100644 index 000000000..d66ff5ee4 --- /dev/null +++ b/src/widgets/vehicle_widget.h @@ -0,0 +1,77 @@ +/* $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 vehicle_widget.h Types related to the vehicle widgets. */ + +#ifndef WIDGETS_VEHICLE_WIDGET_H +#define WIDGETS_VEHICLE_WIDGET_H + +/** Widgets of the WC_VEHICLE_VIEW. */ +enum VehicleViewWindowWidgets { + VVW_WIDGET_CAPTION, + VVW_WIDGET_VIEWPORT, ///< Viewport widget. + VVW_WIDGET_START_STOP_VEH, + VVW_WIDGET_CENTER_MAIN_VIEH, + VVW_WIDGET_GOTO_DEPOT, + VVW_WIDGET_REFIT_VEH, + VVW_WIDGET_SHOW_ORDERS, + VVW_WIDGET_SHOW_DETAILS, + VVW_WIDGET_CLONE_VEH, + VVW_WIDGET_SELECT_DEPOT_CLONE, ///< Selection widget between 'goto depot', and 'clone vehicle' buttons. + VVW_WIDGET_SELECT_REFIT_TURN, ///< Selection widget between 'refit' and 'turn around' buttons. + VVW_WIDGET_TURN_AROUND, + VVW_WIDGET_FORCE_PROCEED, +}; + +/** Widgets of the WC_VEHICLE_REFIT. */ +enum VehicleRefitWidgets { + VRW_CAPTION, + VRW_VEHICLE_PANEL_DISPLAY, + VRW_SHOW_HSCROLLBAR, + VRW_HSCROLLBAR, + VRW_SELECTHEADER, + VRW_MATRIX, + VRW_SCROLLBAR, + VRW_INFOPANEL, + VRW_REFITBUTTON, +}; + +/** Widgets of the WC_VEHICLE_DETAILS. */ +enum VehicleDetailsWindowWidgets { + VLD_WIDGET_CAPTION, + VLD_WIDGET_RENAME_VEHICLE, + VLD_WIDGET_TOP_DETAILS, + VLD_WIDGET_INCREASE_SERVICING_INTERVAL, + VLD_WIDGET_DECREASE_SERVICING_INTERVAL, + VLD_WIDGET_SERVICING_INTERVAL, + VLD_WIDGET_MIDDLE_DETAILS, + VLD_WIDGET_MATRIX, + VLD_WIDGET_SCROLLBAR, + VLD_WIDGET_DETAILS_CARGO_CARRIED, + VLD_WIDGET_DETAILS_TRAIN_VEHICLES, + VLD_WIDGET_DETAILS_CAPACITY_OF_EACH, + VLD_WIDGET_DETAILS_TOTAL_CARGO, +}; + +/** Widgets of the vehicle lists (WC_INVALID). */ +enum VehicleListWindowWidgets { + VLW_WIDGET_CAPTION, + VLW_WIDGET_SORT_ORDER, + VLW_WIDGET_SORT_BY_PULLDOWN, + VLW_WIDGET_LIST, + VLW_WIDGET_SCROLLBAR, + VLW_WIDGET_HIDE_BUTTONS, + VLW_WIDGET_AVAILABLE_VEHICLES, + VLW_WIDGET_MANAGE_VEHICLES_DROPDOWN, + VLW_WIDGET_STOP_ALL, + VLW_WIDGET_START_ALL, +}; + + +#endif /* WIDGETS_VEHICLE_WIDGET_H */ diff --git a/src/widgets/viewport_widget.h b/src/widgets/viewport_widget.h new file mode 100644 index 000000000..04bab1814 --- /dev/null +++ b/src/widgets/viewport_widget.h @@ -0,0 +1,25 @@ +/* $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 viewport_widget.h Types related to the viewport widgets. */ + +#ifndef WIDGETS_VIEWPORT_WIDGET_H +#define WIDGETS_VIEWPORT_WIDGET_H + +/** Widgets of the WC_EXTRA_VIEW_PORT. */ +enum ExtraViewportWindowWidgets { + EVW_CAPTION, + EVW_VIEWPORT, + EVW_ZOOMIN, + EVW_ZOOMOUT, + EVW_MAIN_TO_VIEW, + EVW_VIEW_TO_MAIN, +}; + +#endif /* WIDGETS_VIEWPORT_WIDGET_H */ diff --git a/src/widgets/waypoint_widget.h b/src/widgets/waypoint_widget.h new file mode 100644 index 000000000..8d0565e68 --- /dev/null +++ b/src/widgets/waypoint_widget.h @@ -0,0 +1,24 @@ +/* $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 waypoint_widget.h Types related to the waypoint widgets. */ + +#ifndef WIDGETS_WAYPOINT_WIDGET_H +#define WIDGETS_WAYPOINT_WIDGET_H + +/** Widgets of the WC_WAYPOINT_VIEW. */ +enum WaypointWindowWidgets { + WAYPVW_CAPTION, + WAYPVW_VIEWPORT, + WAYPVW_CENTERVIEW, + WAYPVW_RENAME, + WAYPVW_SHOW_VEHICLES, +}; + +#endif /* WIDGETS_WAYPOINT_WIDGET_H */ |