(svn r23528) -Codechange: move widget enums to widgets/NNN_type.h

This commit is contained in:
truebrain
2011-12-15 22:22:55 +00:00
parent fd559171b4
commit 2aa774e831
111 changed files with 3165 additions and 1624 deletions

65
src/widgets/ai_widget.h Normal file
View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

23
src/widgets/date_widget.h Normal file
View File

@@ -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 */

View File

@@ -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 */

29
src/widgets/dock_widget.h Normal file
View File

@@ -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 */

View File

@@ -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(),

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

36
src/widgets/fios_widget.h Normal file
View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

20
src/widgets/main_widget.h Normal file
View File

@@ -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 */

48
src/widgets/misc_widget.h Normal file
View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

70
src/widgets/news_widget.h Normal file
View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

43
src/widgets/osk_widget.h Normal file
View File

@@ -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 */

112
src/widgets/rail_widget.h Normal file
View File

@@ -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 */

54
src/widgets/road_widget.h Normal file
View File

@@ -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 */

View File

@@ -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 */

36
src/widgets/sign_widget.h Normal file
View File

@@ -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 /* */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

70
src/widgets/town_widget.h Normal file
View File

@@ -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 */

View File

@@ -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 */

33
src/widgets/tree_widget.h Normal file
View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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 */