OpenTTD Source: src/industry_gui.cpp File Reference

OpenTTD Source 14.1

Data Structures | Typedefs | Enumerations | Functions | Variables
industry_gui.cpp File Reference
`#include "stdafx.h"`
`#include "error.h"`
`#include "gui.h"`
`#include "settings_gui.h"`
`#include "sound_func.h"`
`#include "window_func.h"`
`#include "textbuf_gui.h"`
`#include "command_func.h"`
`#include "viewport_func.h"`
`#include "industry.h"`
`#include "town.h"`
`#include "cheat_type.h"`
`#include "newgrf_industries.h"`
`#include "newgrf_text.h"`
`#include "newgrf_debug.h"`
`#include "network/network.h"`
`#include "strings_func.h"`
`#include "company_func.h"`
`#include "tilehighlight_func.h"`
`#include "string_func.h"`
`#include "sortlist_type.h"`
`#include "widgets/dropdown_func.h"`
`#include "company_base.h"`
`#include "core/geometry_func.hpp"`
`#include "core/random_func.hpp"`
`#include "core/backup_type.hpp"`
`#include "genworld.h"`
`#include "smallmap_gui.h"`
`#include "widgets/dropdown_type.h"`
`#include "widgets/industry_widget.h"`
`#include "clear_map.h"`
`#include "zoom_func.h"`
`#include "industry_cmd.h"`
`#include "querystring_gui.h"`
`#include "stringfilter_type.h"`
`#include "timer/timer.h"`
`#include "timer/timer_window.h"`
`#include "hotkeys.h"`
`#include "table/strings.h"`
`#include <bitset>`
`#include "safeguards.h"`

Go to the source code of this file.

## Data Structures
struct | CargoSuffix
| Transfer storage of cargo suffix information. More...
class | BuildIndustryWindow
| Build (fund or prospect) a new industry,. More...
class | IndustryViewWindow
class | IndustryDirectoryWindow
| The list of industries. More...
struct | CargoesField
| Data about a single field in the IndustryCargoesWindow panel. More...
struct | CargoesRow
| A single row of CargoesField. More...
struct | IndustryCargoesWindow
| Window displaying the cargo connections around an industry (or cargo). More...

## Typedefs
typedef GUIList< const Industry *, const CargoID &, const std::pair< CargoID, CargoID > & > | GUIIndustryList

## Enumerations
enum | CargoSuffixType { CST_FUND, CST_VIEW, CST_DIR }
| Cargo suffix type (for which window is it requested) More...
enum | CargoSuffixDisplay { CSD_CARGO, CSD_CARGO_AMOUNT, CSD_CARGO_TEXT, CSD_CARGO_AMOUNT_TEXT }
| Ways of displaying the cargo. More...
enum | CargoSuffixInOut { CARGOSUFFIX_OUT = 0, CARGOSUFFIX_IN = 1 }
enum | IndustryDirectoryHotkeys { IDHK_FOCUS_FILTER_BOX }
| Enum referring to the Hotkeys in the industry directory window. More...
enum | CargoesFieldType { CFT_EMPTY, CFT_SMALL_EMPTY, CFT_INDUSTRY, CFT_CARGO, CFT_CARGO_LABEL, CFT_HEADER }
| Available types of field. More...

## Functions
void | GenerateIndustries ()
| This function will create random industries during game creation. More...
static void | ShowIndustryCargoesWindow (IndustryType id)
| Open the industry and cargoes window. More...
static void | GetCargoSuffix (uint cargo, CargoSuffixType cst, const Industry *ind, IndustryType ind_type, const IndustrySpec *indspec, CargoSuffix &suffix)
| Gets the string to display after the cargo name (using callback 37) More...
template<typename TC , typename TS >
static void | GetAllCargoSuffixes (CargoSuffixInOut use_input, CargoSuffixType cst, const Industry *ind, IndustryType ind_type, const IndustrySpec *indspec, const TC &cargoes, TS &suffixes)
| Gets all strings to display after the cargoes of industries (using callback 37) More...
void | GetCargoSuffix (CargoSuffixInOut use_input, CargoSuffixType cst, const Industry *ind, IndustryType ind_type, const IndustrySpec *indspec, CargoID cargo, uint8_t slot, CargoSuffix &suffix)
| Gets the strings to display after the cargo of industries (using callback 37) More...
static bool | IndustryTypeNameSorter (const IndustryType &a, const IndustryType &b)
| Sort industry types by their name.
void | SortIndustryTypes ()
| Initialize the list of sorted industry types.
void | CcBuildIndustry (Commands, const CommandCost &result, TileIndex tile, IndustryType indtype, uint32_t, bool, uint32_t)
| Command callback. More...
void | ShowBuildIndustryWindow ()
static void | UpdateIndustryProduction (Industry *i)
static bool | IsProductionAlterable (const Industry *i)
void | ShowIndustryViewWindow (int industry)
static bool CDECL | CargoFilter (const Industry *const *industry, const std::pair< CargoID, CargoID > &cargoes)
| Cargo filter functions. More...
void | ShowIndustryDirectory ()
void | ShowIndustryCargoesWindow ()
| Open the industry and cargoes window with an industry.

## Variables
bool | _ignore_restrictions
std::bitset< NUM_INDUSTRYTYPES > | _displayed_industries
| Communication from the industry chain window to the smallmap window about what industries to display.
std::array< IndustryType, NUM_INDUSTRYTYPES > | _sorted_industry_types
| Industry types sorted by name.
static constexpr NWidgetPart | _nested_build_industry_widgets []
static WindowDesc | _build_industry_desc (__FILE__, __LINE__, WDP_AUTO, "build_industry", 170, 212, WC_BUILD_INDUSTRY, WC_NONE, WDF_CONSTRUCTION, std::begin(_nested_build_industry_widgets), std::end(_nested_build_industry_widgets))
| Window definition of the dynamic place industries gui.
static constexpr NWidgetPart | _nested_industry_view_widgets []
| Widget definition of the view industry gui. More...
static WindowDesc | _industry_view_desc (__FILE__, __LINE__, WDP_AUTO, "view_industry", 260, 120, WC_INDUSTRY_VIEW, WC_NONE, 0, std::begin(_nested_industry_view_widgets), std::end(_nested_industry_view_widgets))
| Window definition of the view industry gui.
static constexpr NWidgetPart | _nested_industry_directory_widgets []
| Widget definition of the industry directory gui. More...
static GUIIndustryList::FilterFunction *const | _filter_funcs [] = { &CargoFilter }
static WindowDesc | _industry_directory_desc (__FILE__, __LINE__, WDP_AUTO, "list_industries", 428, 190, WC_INDUSTRY_DIRECTORY, WC_NONE, 0, std::begin(_nested_industry_directory_widgets), std::end(_nested_industry_directory_widgets), &IndustryDirectoryWindow::hotkeys)
| Window definition of the industry directory gui.
static constexpr NWidgetPart | _nested_industry_cargoes_widgets []
| Widgets of the industry cargoes window. More...
static WindowDesc | _industry_cargoes_desc (__FILE__, __LINE__, WDP_AUTO, "industry_cargoes", 300, 210, WC_INDUSTRY_CARGOES, WC_NONE, 0, std::begin(_nested_industry_cargoes_widgets), std::end(_nested_industry_cargoes_widgets))
| Window description for the industry cargoes window.
static const uint | MAX_CARGOES = 16
| Maximum number of cargoes carried in a CFT_CARGO field in CargoesField.

## Detailed Description

GUIs related to industries.

Definition in file industry_gui.cpp.

## Enumeration Type Documentation

## ◆ CargoesFieldType

enum CargoesFieldType

Available types of field.

Enumerator
CFT_EMPTY | Empty field.
CFT_SMALL_EMPTY | Empty small field (for the header).
CFT_INDUSTRY | Display industry.
CFT_CARGO | Display cargo connections.
CFT_CARGO_LABEL | Display cargo labels.
CFT_HEADER | Header text.

Definition at line 1970 of file industry_gui.cpp.

## ◆ CargoSuffixDisplay

enum CargoSuffixDisplay

Ways of displaying the cargo.

Enumerator
CSD_CARGO | Display the cargo without sub-type (cb37 result 401).
CSD_CARGO_AMOUNT | Display the cargo and amount (if useful), but no sub-type (cb37 result 400 or fail).
CSD_CARGO_TEXT | Display then cargo and supplied string (cb37 result 800-BFF).
CSD_CARGO_AMOUNT_TEXT | Display then cargo, amount, and string (cb37 result 000-3FF).

Definition at line 66 of file industry_gui.cpp.

## ◆ CargoSuffixType

enum CargoSuffixType

Cargo suffix type (for which window is it requested)

Enumerator
CST_FUND | Fund-industry window.
CST_VIEW | View-industry window.
CST_DIR | Industry-directory window.

Definition at line 59 of file industry_gui.cpp.

## ◆ IndustryDirectoryHotkeys

enum IndustryDirectoryHotkeys

Enum referring to the Hotkeys in the industry directory window.

Enumerator
IDHK_FOCUS_FILTER_BOX | Focus the filter box.

Definition at line 1314 of file industry_gui.cpp.

## Function Documentation

## ◆ CargoFilter()

static bool CDECL CargoFilter | ( | const Industry *const * | industry,
|  | const std::pair< CargoID, CargoID > & | cargoes
| ) |  |
| static

Cargo filter functions.

Check whether an industry accepts and produces a certain cargo pair.

Parameters

  industry | The industry whose cargoes will being checked.
  cargoes | The accepted and produced cargo pair to look for.

Returns
  bool Whether the given cargoes accepted and produced by the industry.

Definition at line 1271 of file industry_gui.cpp.

References CargoFilterCriteria::CF_ANY, and CargoFilterCriteria::CF_NONE.

## ◆ CcBuildIndustry()

void CcBuildIndustry | ( | Commands | ,
|  | const CommandCost & | result,
|  | TileIndex | tile,
|  | IndustryType | indtype,
|  | uint32_t | ,
|  | bool | ,
|  | uint32_t |
| ) |  |

Command callback.

In case of failure to build an industry, show an error message.

Parameters

  result | Result of the command.
  tile | Tile where the industry is placed.
  indtype | Industry type.

Definition at line 251 of file industry_gui.cpp.

## ◆ GenerateIndustries()

void GenerateIndustries | ( |  | ) |

This function will create random industries during game creation.

It will scale the amount of industries by mapsize and difficulty level.

Definition at line 2444 of file industry_cmd.cpp.

## ◆ GetAllCargoSuffixes()

template<typename TC , typename TS >

static void GetAllCargoSuffixes | ( | CargoSuffixInOut | use_input,
|  | CargoSuffixType | cst,
|  | const Industry * | ind,
|  | IndustryType | ind_type,
|  | const IndustrySpec * | indspec,
|  | const TC & | cargoes,
|  | TS & | suffixes
| ) |  |
| inlinestatic

Gets all strings to display after the cargoes of industries (using callback 37)

Parameters

  use_input | get suffixes for output cargoes or input cargoes?
  cst | the cargo suffix type (for which window is it requested).

See also
  CargoSuffixType

Parameters

  ind | the industry (nullptr if in fund window)
  ind_type | the industry type
  indspec | the industry spec
  cargoes | array with cargotypes. for INVALID_CARGO no suffix will be determined
  suffixes | is filled with the suffixes

Definition at line 155 of file industry_gui.cpp.

References IndustrySpec::behaviour, GRFFile::cargo_map, CSD_CARGO, GetCargoSuffix(), IndustrySpec::grf_prop, GRFFilePropsBase< Tcnt >::grffile, INDUSTRYBEH_CARGOTYPES_UNLIMITED, IsValidCargoID(), and lengthof.

## ◆ GetCargoSuffix() [1/2]

void GetCargoSuffix | ( | CargoSuffixInOut | use_input,
|  | CargoSuffixType | cst,
|  | const Industry * | ind,
|  | IndustryType | ind_type,
|  | const IndustrySpec * | indspec,
|  | CargoID | cargo,
|  | uint8_t | slot,
|  | CargoSuffix & | suffix
| ) |  |

Gets the strings to display after the cargo of industries (using callback 37)

Parameters

  use_input | get suffixes for output cargo or input cargo?
  cst | the cargo suffix type (for which window is it requested).

See also
  CargoSuffixType

Parameters

  ind | the industry (nullptr if in fund window)
  ind_type | the industry type
  indspec | the industry spec
  cargo | cargotype. for INVALID_CARGO no suffix will be determined
  slot | accepts/produced slot number, used for old-style 3-in/2-out industries.
  suffix | is filled with the suffix

Definition at line 204 of file industry_gui.cpp.

References IndustrySpec::behaviour, GRFFile::cargo_map, CSD_CARGO, CargoSuffix::display, GetCargoSuffix(), IndustrySpec::grf_prop, GRFFilePropsBase< Tcnt >::grffile, INDUSTRYBEH_CARGOTYPES_UNLIMITED, IsValidCargoID(), and CargoSuffix::text.

## ◆ GetCargoSuffix() [2/2]

static void GetCargoSuffix | ( | uint | cargo,
|  | CargoSuffixType | cst,
|  | const Industry * | ind,
|  | IndustryType | ind_type,
|  | const IndustrySpec * | indspec,
|  | CargoSuffix & | suffix
| ) |  |
| static

Gets the string to display after the cargo name (using callback 37)

Parameters

  cargo | the cargo for which the suffix is requested, meaning depends on presence of flag 18 in prop 1A
  cst | the cargo suffix type (for which window is it requested).

See also
  CargoSuffixType

Parameters

  ind | the industry (nullptr if in fund window)
  ind_type | the industry type
  indspec | the industry spec
  suffix | is filled with the string to display

Definition at line 91 of file industry_gui.cpp.

References IndustrySpec::callback_mask, CBM_IND_CARGO_SUFFIX, CSD_CARGO_AMOUNT, CST_FUND, CargoSuffix::display, HasBit(), INVALID_TILE, Industry::location, CargoSuffix::text, and OrthogonalTileArea::tile.

Referenced by IndustryViewWindow::DrawInfo(), GetAllCargoSuffixes(), and GetCargoSuffix().

## ◆ ShowIndustryCargoesWindow()

static void ShowIndustryCargoesWindow | ( | IndustryType | id | ) |
| static

Open the industry and cargoes window.

Parameters

  id | Industry type to display, `NUM_INDUSTRYTYPES` selects a default industry type.

Definition at line 3215 of file industry_gui.cpp.

References _sorted_industry_types, BringWindowToFrontById(), IndustrySpec::enabled, GetIndustrySpec(), Window::InvalidateData(), NUM_INDUSTRYTYPES, and WC_INDUSTRY_CARGOES.

Referenced by ShowIndustryCargoesWindow().

## Variable Documentation

## ◆ _nested_build_industry_widgets

constexpr NWidgetPart _nested_build_industry_widgets[]
| staticconstexpr

Initial value:
= {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_DARK_GREEN),
NWidget(WWT_CAPTION, COLOUR_DARK_GREEN), SetDataTip(STR_FUND_INDUSTRY_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_SHADEBOX, COLOUR_DARK_GREEN),
NWidget(WWT_DEFSIZEBOX, COLOUR_DARK_GREEN),
NWidget(WWT_STICKYBOX, COLOUR_DARK_GREEN),
EndContainer(),
NWidget(NWID_SELECTION, COLOUR_DARK_GREEN, WID_DPI_SCENARIO_EDITOR_PANE),
NWidget(NWID_VERTICAL),
NWidget(WWT_TEXTBTN, COLOUR_DARK_GREEN, WID_DPI_CREATE_RANDOM_INDUSTRIES_WIDGET), SetMinimalSize(0, 12), SetFill(1, 0), SetResize(1, 0),
SetDataTip(STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES, STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP),
NWidget(WWT_TEXTBTN, COLOUR_DARK_GREEN, WID_DPI_REMOVE_ALL_INDUSTRIES_WIDGET), SetMinimalSize(0, 12), SetFill(1, 0), SetResize(1, 0),
SetDataTip(STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES, STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP),
EndContainer(),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_MATRIX, COLOUR_DARK_GREEN, WID_DPI_MATRIX_WIDGET), SetMatrixDataTip(1, 0, STR_FUND_INDUSTRY_SELECTION_TOOLTIP), SetFill(1, 0), SetResize(1, 1), SetScrollbar(WID_DPI_SCROLLBAR),
NWidget(NWID_VSCROLLBAR, COLOUR_DARK_GREEN, WID_DPI_SCROLLBAR),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_DARK_GREEN, WID_DPI_INFOPANEL), SetResize(1, 0),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_TEXTBTN, COLOUR_DARK_GREEN, WID_DPI_DISPLAY_WIDGET), SetFill(1, 0), SetResize(1, 0),
SetDataTip(STR_INDUSTRY_DISPLAY_CHAIN, STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP),
NWidget(WWT_TEXTBTN, COLOUR_DARK_GREEN, WID_DPI_FUND_WIDGET), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_JUST_STRING, STR_NULL),
NWidget(WWT_RESIZEBOX, COLOUR_DARK_GREEN),
EndContainer(),
}

Definition at line 264 of file industry_gui.cpp.

## ◆ _nested_industry_cargoes_widgets

constexpr NWidgetPart _nested_industry_cargoes_widgets[]
| staticconstexpr

Initial value:
= {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_BROWN),
NWidget(WWT_CAPTION, COLOUR_BROWN, WID_IC_CAPTION), SetDataTip(STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_SHADEBOX, COLOUR_BROWN),
NWidget(WWT_DEFSIZEBOX, COLOUR_BROWN),
NWidget(WWT_STICKYBOX, COLOUR_BROWN),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_PANEL, COLOUR_BROWN, WID_IC_PANEL), SetResize(1, 10), SetScrollbar(WID_IC_SCROLLBAR), EndContainer(),
NWidget(NWID_VSCROLLBAR, COLOUR_BROWN, WID_IC_SCROLLBAR),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_TEXTBTN, COLOUR_BROWN, WID_IC_NOTIFY),
SetDataTip(STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP, STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_BROWN), SetFill(1, 0), SetResize(0, 0), EndContainer(),
NWidget(WWT_DROPDOWN, COLOUR_BROWN, WID_IC_IND_DROPDOWN), SetFill(0, 0), SetResize(0, 0),
SetDataTip(STR_INDUSTRY_CARGOES_SELECT_INDUSTRY, STR_INDUSTRY_CARGOES_SELECT_INDUSTRY_TOOLTIP),
NWidget(WWT_DROPDOWN, COLOUR_BROWN, WID_IC_CARGO_DROPDOWN), SetFill(0, 0), SetResize(0, 0),
SetDataTip(STR_INDUSTRY_CARGOES_SELECT_CARGO, STR_INDUSTRY_CARGOES_SELECT_CARGO_TOOLTIP),
NWidget(WWT_RESIZEBOX, COLOUR_BROWN),
EndContainer(),
}

Widgets of the industry cargoes window.

Definition at line 1937 of file industry_gui.cpp.

## ◆ _nested_industry_directory_widgets

constexpr NWidgetPart _nested_industry_directory_widgets[]
| staticconstexpr

Initial value:
= {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_BROWN),
NWidget(WWT_CAPTION, COLOUR_BROWN), SetDataTip(STR_INDUSTRY_DIRECTORY_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_SHADEBOX, COLOUR_BROWN),
NWidget(WWT_DEFSIZEBOX, COLOUR_BROWN),
NWidget(WWT_STICKYBOX, COLOUR_BROWN),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(NWID_VERTICAL),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_TEXTBTN, COLOUR_BROWN, WID_ID_DROPDOWN_ORDER), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER),
NWidget(WWT_DROPDOWN, COLOUR_BROWN, WID_ID_DROPDOWN_CRITERIA), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_SORT_CRITERIA),
NWidget(WWT_EDITBOX, COLOUR_BROWN, WID_ID_FILTER), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_LIST_FILTER_OSKTITLE, STR_LIST_FILTER_TOOLTIP),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_DROPDOWN, COLOUR_BROWN, WID_ID_FILTER_BY_ACC_CARGO), SetMinimalSize(225, 12), SetFill(0, 1), SetDataTip(STR_INDUSTRY_DIRECTORY_ACCEPTED_CARGO_FILTER, STR_TOOLTIP_FILTER_CRITERIA),
NWidget(WWT_DROPDOWN, COLOUR_BROWN, WID_ID_FILTER_BY_PROD_CARGO), SetMinimalSize(225, 12), SetFill(0, 1), SetDataTip(STR_INDUSTRY_DIRECTORY_PRODUCED_CARGO_FILTER, STR_TOOLTIP_FILTER_CRITERIA),
NWidget(WWT_PANEL, COLOUR_BROWN), SetResize(1, 0), EndContainer(),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_BROWN, WID_ID_INDUSTRY_LIST), SetDataTip(0x0, STR_INDUSTRY_DIRECTORY_LIST_CAPTION), SetResize(1, 1), SetScrollbar(WID_ID_VSCROLLBAR),
EndContainer(),
EndContainer(),
NWidget(NWID_VSCROLLBAR, COLOUR_BROWN, WID_ID_VSCROLLBAR),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(NWID_HSCROLLBAR, COLOUR_BROWN, WID_ID_HSCROLLBAR),
NWidget(WWT_RESIZEBOX, COLOUR_BROWN),
EndContainer(),
}

Widget definition of the industry directory gui.

Definition at line 1231 of file industry_gui.cpp.

## ◆ _nested_industry_view_widgets

constexpr NWidgetPart _nested_industry_view_widgets[]
| staticconstexpr

Initial value:
= {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_CREAM),
NWidget(WWT_CAPTION, COLOUR_CREAM, WID_IV_CAPTION), SetDataTip(STR_INDUSTRY_VIEW_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_PUSHIMGBTN, COLOUR_CREAM, WID_IV_GOTO), SetMinimalSize(12, 14), SetDataTip(SPR_GOTO_LOCATION, STR_INDUSTRY_VIEW_LOCATION_TOOLTIP),
NWidget(WWT_DEBUGBOX, COLOUR_CREAM),
NWidget(WWT_SHADEBOX, COLOUR_CREAM),
NWidget(WWT_DEFSIZEBOX, COLOUR_CREAM),
NWidget(WWT_STICKYBOX, COLOUR_CREAM),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_CREAM),
NWidget(WWT_INSET, COLOUR_CREAM), SetPadding(2, 2, 2, 2),
NWidget(NWID_VIEWPORT, INVALID_COLOUR, WID_IV_VIEWPORT), SetMinimalSize(254, 86), SetFill(1, 0), SetResize(1, 1),
EndContainer(),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_CREAM, WID_IV_INFO), SetMinimalSize(260, 0), SetMinimalTextLines(2, WidgetDimensions::unscaled.framerect.Vertical()), SetResize(1, 0),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_PUSHTXTBTN, COLOUR_CREAM, WID_IV_DISPLAY), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_INDUSTRY_DISPLAY_CHAIN, STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP),
NWidget(WWT_RESIZEBOX, COLOUR_CREAM),
EndContainer(),
}

Widget definition of the view industry gui.

Definition at line 1194 of file industry_gui.cpp.

SetFill
constexpr NWidgetPart SetFill(uint16_t fill_x, uint16_t fill_y)
Widget part function for setting filling.
Definition: widget_type.h:1143
WWT_STICKYBOX
@ WWT_STICKYBOX
Sticky box (at top-right of a window, after WWT_DEFSIZEBOX)
Definition: widget_type.h:68
NWID_HSCROLLBAR
@ NWID_HSCROLLBAR
Horizontal scrollbar.
Definition: widget_type.h:85
WWT_CAPTION
@ WWT_CAPTION
Window caption (window title between closebox and stickybox)
Definition: widget_type.h:63
WID_IC_IND_DROPDOWN
@ WID_IC_IND_DROPDOWN
Select industry dropdown.
Definition: industry_widget.h:53
WID_IC_NOTIFY
@ WID_IC_NOTIFY
Row of buttons at the bottom.
Definition: industry_widget.h:49
WID_IV_DISPLAY
@ WID_IV_DISPLAY
Display chain button.
Definition: industry_widget.h:31
WWT_DEFSIZEBOX
@ WWT_DEFSIZEBOX
Default window size box (at top-right of a window, between WWT_SHADEBOX and WWT_STICKYBOX)
Definition: widget_type.h:67
NWID_HORIZONTAL
@ NWID_HORIZONTAL
Horizontal container.
Definition: widget_type.h:77
WWT_MATRIX
@ WWT_MATRIX
Grid of rows and columns.
Definition: widget_type.h:61
EndContainer
constexpr NWidgetPart EndContainer()
Widget part function for denoting the end of a container (horizontal, vertical, WWT_FRAME,...
Definition: widget_type.h:1153
WID_DPI_CREATE_RANDOM_INDUSTRIES_WIDGET
@ WID_DPI_CREATE_RANDOM_INDUSTRIES_WIDGET
Create random industries button.
Definition: industry_widget.h:17
SetMatrixDataTip
constexpr NWidgetPart SetMatrixDataTip(uint8_t cols, uint8_t rows, StringID tip)
Widget part function for setting the data and tooltip of WWT_MATRIX widgets.
Definition: widget_type.h:1176
WID_DPI_SCENARIO_EDITOR_PANE
@ WID_DPI_SCENARIO_EDITOR_PANE
Pane containing SE-only widgets.
Definition: industry_widget.h:15
WID_IC_CARGO_DROPDOWN
@ WID_IC_CARGO_DROPDOWN
Select cargo dropdown.
Definition: industry_widget.h:52
WID_ID_FILTER
@ WID_ID_FILTER
Textbox to filter industry name.
Definition: industry_widget.h:40
WID_IV_GOTO
@ WID_IV_GOTO
Goto button.
Definition: industry_widget.h:30
WID_IC_SCROLLBAR
@ WID_IC_SCROLLBAR
Scrollbar of the panel.
Definition: industry_widget.h:51
WID_DPI_SCROLLBAR
@ WID_DPI_SCROLLBAR
Scrollbar of the matrix.
Definition: industry_widget.h:19
WID_IV_VIEWPORT
@ WID_IV_VIEWPORT
Viewport of the industry.
Definition: industry_widget.h:28
SetPadding
constexpr NWidgetPart SetPadding(uint8_t top, uint8_t right, uint8_t bottom, uint8_t left)
Widget part function for setting additional space around a widget.
Definition: widget_type.h:1190
SetResize
constexpr NWidgetPart SetResize(int16_t dx, int16_t dy)
Widget part function for setting the resize step.
Definition: widget_type.h:1088
NWID_VIEWPORT
@ NWID_VIEWPORT
Nested widget containing a viewport.
Definition: widget_type.h:83
SetScrollbar
constexpr NWidgetPart SetScrollbar(WidgetID index)
Attach a scrollbar to a widget.
Definition: widget_type.h:1246
WWT_EDITBOX
@ WWT_EDITBOX
a textbox for typing
Definition: widget_type.h:73
WWT_PUSHTXTBTN
@ WWT_PUSHTXTBTN
Normal push-button (no toggle button) with text caption.
Definition: widget_type.h:110
WID_ID_FILTER_BY_ACC_CARGO
@ WID_ID_FILTER_BY_ACC_CARGO
Accepted cargo filter dropdown list.
Definition: industry_widget.h:38
WID_ID_VSCROLLBAR
@ WID_ID_VSCROLLBAR
Vertical scrollbar of the list.
Definition: industry_widget.h:43
NWidget
constexpr NWidgetPart NWidget(WidgetType tp, Colours col, WidgetID idx=-1)
Widget part function for starting a new 'real' widget.
Definition: widget_type.h:1260
WID_ID_INDUSTRY_LIST
@ WID_ID_INDUSTRY_LIST
Industry list.
Definition: industry_widget.h:41
NWID_VERTICAL
@ NWID_VERTICAL
Vertical container.
Definition: widget_type.h:79
WidgetDimensions::unscaled
static const WidgetDimensions unscaled
Unscaled widget dimensions.
Definition: window_gui.h:67
WWT_CLOSEBOX
@ WWT_CLOSEBOX
Close box (at top-left of a window)
Definition: widget_type.h:71
WWT_RESIZEBOX
@ WWT_RESIZEBOX
Resize box (normally at bottom-right of a window)
Definition: widget_type.h:70
WID_DPI_INFOPANEL
@ WID_DPI_INFOPANEL
Info panel about the industry.
Definition: industry_widget.h:20
WWT_PUSHIMGBTN
@ WWT_PUSHIMGBTN
Normal push-button (no toggle button) with image caption.
Definition: widget_type.h:111
WID_ID_DROPDOWN_CRITERIA
@ WID_ID_DROPDOWN_CRITERIA
Dropdown for the criteria of the sort.
Definition: industry_widget.h:37
WID_IC_CAPTION
@ WID_IC_CAPTION
Caption of the window.
Definition: industry_widget.h:48
WID_DPI_DISPLAY_WIDGET
@ WID_DPI_DISPLAY_WIDGET
Display chain button.
Definition: industry_widget.h:21
NWID_VSCROLLBAR
@ NWID_VSCROLLBAR
Vertical scrollbar.
Definition: widget_type.h:86
WID_DPI_FUND_WIDGET
@ WID_DPI_FUND_WIDGET
Fund button.
Definition: industry_widget.h:22
WID_IC_PANEL
@ WID_IC_PANEL
Panel that shows the chain.
Definition: industry_widget.h:50
WWT_PANEL
@ WWT_PANEL
Simple depressed panel.
Definition: widget_type.h:52
WID_ID_DROPDOWN_ORDER
@ WID_ID_DROPDOWN_ORDER
Dropdown for the order of the sort.
Definition: industry_widget.h:36
WWT_INSET
@ WWT_INSET
Pressed (inset) panel, most commonly used as combo box text area.
Definition: widget_type.h:53
WID_ID_HSCROLLBAR
@ WID_ID_HSCROLLBAR
Horizontal scrollbar of the list.
Definition: industry_widget.h:42
SetMinimalSize
constexpr NWidgetPart SetMinimalSize(int16_t x, int16_t y)
Widget part function for setting the minimal size.
Definition: widget_type.h:1099
WID_IV_CAPTION
@ WID_IV_CAPTION
Caption of the window.
Definition: industry_widget.h:27
WID_DPI_REMOVE_ALL_INDUSTRIES_WIDGET
@ WID_DPI_REMOVE_ALL_INDUSTRIES_WIDGET
Remove all industries button.
Definition: industry_widget.h:16
WID_ID_FILTER_BY_PROD_CARGO
@ WID_ID_FILTER_BY_PROD_CARGO
Produced cargo filter dropdown list.
Definition: industry_widget.h:39
SetDataTip
constexpr NWidgetPart SetDataTip(uint32_t data, StringID tip)
Widget part function for setting the data and tooltip.
Definition: widget_type.h:1164
SetMinimalTextLines
constexpr NWidgetPart SetMinimalTextLines(uint8_t lines, uint8_t spacing, FontSize size=FS_NORMAL)
Widget part function for setting the minimal text lines.
Definition: widget_type.h:1111
NWID_SELECTION
@ NWID_SELECTION
Stacked widgets, only one visible at a time (eg in a panel with tabs).
Definition: widget_type.h:82
WID_DPI_MATRIX_WIDGET
@ WID_DPI_MATRIX_WIDGET
Matrix of the industries.
Definition: industry_widget.h:18
WWT_DEBUGBOX
@ WWT_DEBUGBOX
NewGRF debug box (at top-right of a window, between WWT_CAPTION and WWT_SHADEBOX)
Definition: widget_type.h:65
WID_IV_INFO
@ WID_IV_INFO
Info of the industry.
Definition: industry_widget.h:29
WWT_TEXTBTN
@ WWT_TEXTBTN
(Toggle) Button with text
Definition: widget_type.h:57
WWT_DROPDOWN
@ WWT_DROPDOWN
Drop down list.
Definition: widget_type.h:72
WWT_SHADEBOX
@ WWT_SHADEBOX
Shade box (at top-right of a window, between WWT_DEBUGBOX and WWT_DEFSIZEBOX)
Definition: widget_type.h:66