OpenTTD Source: src/graph_gui.cpp File Reference

OpenTTD Source 15.0-beta1

Data Structures | Functions | Variables
graph_gui.cpp File Reference

GUI that shows performance graphs. More...

`#include "stdafx.h"`
`#include "graph_gui.h"`
`#include "window_gui.h"`
`#include "company_base.h"`
`#include "company_gui.h"`
`#include "economy_func.h"`
`#include "cargotype.h"`
`#include "strings_func.h"`
`#include "window_func.h"`
`#include "gfx_func.h"`
`#include "core/geometry_func.hpp"`
`#include "currency.h"`
`#include "timer/timer.h"`
`#include "timer/timer_window.h"`
`#include "timer/timer_game_tick.h"`
`#include "timer/timer_game_economy.h"`
`#include "zoom_func.h"`
`#include "industry.h"`
`#include "widgets/graph_widget.h"`
`#include "table/strings.h"`
`#include "table/sprites.h"`
`#include "safeguards.h"`

Go to the source code of this file.

## Data Structures
struct | GraphLegendWindow
struct | ValuesInterval
| Contains the interval of a graph's data. More...
struct | BaseGraphWindow
struct | BaseGraphWindow::DataSet
struct | OperatingProfitGraphWindow
struct | IncomeGraphWindow
struct | DeliveredCargoGraphWindow
struct | PerformanceHistoryGraphWindow
struct | CompanyValueGraphWindow
struct | PaymentRatesGraphWindow
struct | PerformanceRatingDetailWindow
struct | IndustryProductionGraphWindow

## Functions
static std::unique_ptr< NWidgetBase > | MakeNWidgetCompanyLines ()
| Construct a vertical list of buttons, one for each company.
static void | ShowGraphLegend ()
void | ShowOperatingProfitGraph ()
void | ShowIncomeGraph ()
void | ShowDeliveredCargoGraph ()
void | ShowPerformanceHistoryGraph ()
void | ShowCompanyValueGraph ()
void | ShowCargoPaymentRates ()
void | ShowIndustryProductionGraph (WindowNumber window_number)
static std::unique_ptr< NWidgetBase > | MakePerformanceDetailPanels ()
| Make a vertical list of panels for outputting score details.
std::unique_ptr< NWidgetBase > | MakeCompanyButtonRowsGraphGUI ()
| Make a number of rows with buttons for each company for the performance rating detail window.
void | ShowPerformanceRatingDetail ()
void | InitializeGraphGui ()

## Variables
static CompanyMask | _legend_excluded_companies
static CargoTypes | _legend_excluded_cargo_payment_rates
static CargoTypes | _legend_excluded_cargo_production_history
static const OverflowSafeInt64 | INVALID_DATAPOINT (INT64_MAX)
static const uint | INVALID_DATAPOINT_POS = UINT_MAX
constexpr double | INT64_MAX_IN_DOUBLE = static_cast<double>(INT64_MAX - 512)
| The biggest double that when cast to int64_t still fits in a int64_t.
static constexpr NWidgetPart | _nested_graph_legend_widgets []
static WindowDesc | _graph_legend_desc (WDP_AUTO, "graph_legend", 0, 0, WC_GRAPH_LEGEND, WC_NONE, 0, _nested_graph_legend_widgets)
static constexpr NWidgetPart | _nested_operating_profit_widgets []
static WindowDesc | _operating_profit_desc (WDP_AUTO, "graph_operating_profit", 0, 0, WC_OPERATING_PROFIT, WC_NONE, 0, _nested_operating_profit_widgets)
static constexpr NWidgetPart | _nested_income_graph_widgets []
static WindowDesc | _income_graph_desc (WDP_AUTO, "graph_income", 0, 0, WC_INCOME_GRAPH, WC_NONE, 0, _nested_income_graph_widgets)
static constexpr NWidgetPart | _nested_delivered_cargo_graph_widgets []
static WindowDesc | _delivered_cargo_graph_desc (WDP_AUTO, "graph_delivered_cargo", 0, 0, WC_DELIVERED_CARGO, WC_NONE, 0, _nested_delivered_cargo_graph_widgets)
static constexpr NWidgetPart | _nested_performance_history_widgets []
static WindowDesc | _performance_history_desc (WDP_AUTO, "graph_performance", 0, 0, WC_PERFORMANCE_HISTORY, WC_NONE, 0, _nested_performance_history_widgets)
static constexpr NWidgetPart | _nested_company_value_graph_widgets []
static WindowDesc | _company_value_graph_desc (WDP_AUTO, "graph_company_value", 0, 0, WC_COMPANY_VALUE, WC_NONE, 0, _nested_company_value_graph_widgets)
static constexpr NWidgetPart | _nested_cargo_payment_rates_widgets []
static WindowDesc | _cargo_payment_rates_desc (WDP_AUTO, "graph_cargo_payment_rates", 0, 0, WC_PAYMENT_RATES, WC_NONE, 0, _nested_cargo_payment_rates_widgets)
static constexpr NWidgetPart | _nested_industry_production_widgets []
static WindowDesc | _industry_production_desc (WDP_AUTO, "graph_industry_production", 0, 0, WC_INDUSTRY_PRODUCTION, WC_INDUSTRY_VIEW, 0, _nested_industry_production_widgets)
static constexpr NWidgetPart | _nested_performance_rating_detail_widgets []
static WindowDesc | _performance_rating_detail_desc (WDP_AUTO, "league_details", 0, 0, WC_PERFORMANCE_DETAIL, WC_NONE, 0, _nested_performance_rating_detail_widgets)

## Detailed Description

GUI that shows performance graphs.

Definition in file graph_gui.cpp.

## Function Documentation

## ◆ InitializeGraphGui()

void InitializeGraphGui | ( |  | ) |

Definition at line 1850 of file graph_gui.cpp.

## ◆ MakeCompanyButtonRowsGraphGUI()

std::unique_ptr< NWidgetBase > MakeCompanyButtonRowsGraphGUI | ( |  | ) |

Make a number of rows with buttons for each company for the performance rating detail window.

Definition at line 1820 of file graph_gui.cpp.

References MakeCompanyButtonRows(), WID_PRD_COMPANY_FIRST, and WID_PRD_COMPANY_LAST.

## ◆ MakeNWidgetCompanyLines()

static std::unique_ptr< NWidgetBase > MakeNWidgetCompanyLines | ( |  | ) |
| static

Construct a vertical list of buttons, one for each company.

Returns
  Panel with company buttons.

Definition at line 117 of file graph_gui.cpp.

References FS_NORMAL, GetSpriteSize(), NC_EQUALSIZE, WidgetDimensions::unscaled, WID_GL_FIRST_COMPANY, WID_GL_LAST_COMPANY, WWT_PANEL, and ZOOM_LVL_NORMAL.

## ◆ MakePerformanceDetailPanels()

static std::unique_ptr< NWidgetBase > MakePerformanceDetailPanels | ( |  | ) |
| static

Make a vertical list of panels for outputting score details.

Returns
  Panel with performance details.

Definition at line 1791 of file graph_gui.cpp.

References lengthof, NC_EQUALSIZE, SCORE_END, TimerGameEconomy::UsingWallclockUnits(), WID_PRD_SCORE_FIRST, WID_PRD_SCORE_LAST, and WWT_PANEL.

## ◆ ShowCargoPaymentRates()

void ShowCargoPaymentRates | ( |  | ) |

Definition at line 1262 of file graph_gui.cpp.

## ◆ ShowCompanyValueGraph()

void ShowCompanyValueGraph | ( |  | ) |

Definition at line 1019 of file graph_gui.cpp.

## ◆ ShowDeliveredCargoGraph()

void ShowDeliveredCargoGraph | ( |  | ) |

Definition at line 898 of file graph_gui.cpp.

## ◆ ShowGraphLegend()

static void ShowGraphLegend | ( |  | ) |
| static

Definition at line 153 of file graph_gui.cpp.

## ◆ ShowIncomeGraph()

void ShowIncomeGraph | ( |  | ) |

Definition at line 841 of file graph_gui.cpp.

## ◆ ShowIndustryProductionGraph()

void ShowIndustryProductionGraph | ( | WindowNumber | window_number | ) |

Definition at line 1782 of file graph_gui.cpp.

## ◆ ShowOperatingProfitGraph()

void ShowOperatingProfitGraph | ( |  | ) |

Definition at line 783 of file graph_gui.cpp.

## ◆ ShowPerformanceHistoryGraph()

void ShowPerformanceHistoryGraph | ( |  | ) |

Definition at line 962 of file graph_gui.cpp.

## ◆ ShowPerformanceRatingDetail()

void ShowPerformanceRatingDetail | ( |  | ) |

Definition at line 1845 of file graph_gui.cpp.

## Variable Documentation

## ◆ _legend_excluded_cargo_payment_rates

CargoTypes _legend_excluded_cargo_payment_rates
| static

Definition at line 38 of file graph_gui.cpp.

## ◆ _legend_excluded_cargo_production_history

CargoTypes _legend_excluded_cargo_production_history
| static

Definition at line 39 of file graph_gui.cpp.

## ◆ _legend_excluded_companies

CompanyMask _legend_excluded_companies
| static

Definition at line 37 of file graph_gui.cpp.

## ◆ _nested_cargo_payment_rates_widgets

constexpr NWidgetPart _nested_cargo_payment_rates_widgets[]
| staticconstexpr

Definition at line 1216 of file graph_gui.cpp.

## ◆ _nested_company_value_graph_widgets

constexpr NWidgetPart _nested_company_value_graph_widgets[]
| staticconstexpr

Initial value:
= {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_BROWN),
NWidget(WWT_CAPTION, COLOUR_BROWN), SetDataTip(STR_GRAPH_COMPANY_VALUES_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_GRAPH_KEY_BUTTON), SetMinimalSize(50, 0), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
NWidget(WWT_SHADEBOX, COLOUR_BROWN),
NWidget(WWT_DEFSIZEBOX, COLOUR_BROWN),
NWidget(WWT_STICKYBOX, COLOUR_BROWN),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_BROWN, WID_GRAPH_BACKGROUND),
NWidget(NWID_VERTICAL),
NWidget(WWT_EMPTY, COLOUR_BROWN, WID_GRAPH_GRAPH), SetMinimalSize(576, 224), SetFill(1, 1), SetResize(1, 1),
NWidget(NWID_HORIZONTAL),
NWidget(NWID_SPACER), SetMinimalSize(12, 0), SetFill(1, 0), SetResize(1, 0),
NWidget(WWT_TEXT, COLOUR_BROWN, WID_GRAPH_FOOTER), SetMinimalSize(0, 6), SetPadding(2, 0, 2, 0), SetDataTip(STR_EMPTY, STR_NULL),
NWidget(NWID_SPACER), SetFill(1, 0), SetResize(1, 0),
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_GRAPH_RESIZE), SetDataTip(RWV_HIDE_BEVEL, STR_TOOLTIP_RESIZE),
EndContainer(),
EndContainer(),
EndContainer(),
}
WID_GRAPH_FOOTER
@ WID_GRAPH_FOOTER
Footer.
Definition graph_widget.h:32
WID_GRAPH_RESIZE
@ WID_GRAPH_RESIZE
Resize button.
Definition graph_widget.h:30
WID_GRAPH_BACKGROUND
@ WID_GRAPH_BACKGROUND
Background of the window.
Definition graph_widget.h:27
WID_GRAPH_GRAPH
@ WID_GRAPH_GRAPH
Graph itself.
Definition graph_widget.h:29
WID_GRAPH_KEY_BUTTON
@ WID_GRAPH_KEY_BUTTON
Key button.
Definition graph_widget.h:26
SetFill
constexpr NWidgetPart SetFill(uint16_t fill_x, uint16_t fill_y)
Widget part function for setting filling.
Definition widget_type.h:1181
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:1228
SetDataTip
constexpr NWidgetPart SetDataTip(uint32_t data, StringID tip)
Widget part function for setting the data and tooltip.
Definition widget_type.h:1202
SetMinimalSize
constexpr NWidgetPart SetMinimalSize(int16_t x, int16_t y)
Widget part function for setting the minimal size.
Definition widget_type.h:1137
NWidget
constexpr NWidgetPart NWidget(WidgetType tp, Colours col, WidgetID idx=-1)
Widget part function for starting a new 'real' widget.
Definition widget_type.h:1320
EndContainer
constexpr NWidgetPart EndContainer()
Widget part function for denoting the end of a container (horizontal, vertical, WWT_FRAME,...
Definition widget_type.h:1191
SetResize
constexpr NWidgetPart SetResize(int16_t dx, int16_t dy)
Widget part function for setting the resize step.
Definition widget_type.h:1126
WWT_PUSHTXTBTN
@ WWT_PUSHTXTBTN
Normal push-button (no toggle button) with text caption.
Definition widget_type.h:113
NWID_SPACER
@ NWID_SPACER
Invisible widget that takes some space.
Definition widget_type.h:79
NWID_HORIZONTAL
@ NWID_HORIZONTAL
Horizontal container.
Definition widget_type.h:75
WWT_PANEL
@ WWT_PANEL
Simple depressed panel.
Definition widget_type.h:50
WWT_STICKYBOX
@ WWT_STICKYBOX
Sticky box (at top-right of a window, after WWT_DEFSIZEBOX)
Definition widget_type.h:66
WWT_SHADEBOX
@ WWT_SHADEBOX
Shade box (at top-right of a window, between WWT_DEBUGBOX and WWT_DEFSIZEBOX)
Definition widget_type.h:64
WWT_CAPTION
@ WWT_CAPTION
Window caption (window title between closebox and stickybox)
Definition widget_type.h:61
NWID_VERTICAL
@ NWID_VERTICAL
Vertical container.
Definition widget_type.h:77
WWT_CLOSEBOX
@ WWT_CLOSEBOX
Close box (at top-left of a window)
Definition widget_type.h:69
WWT_EMPTY
@ WWT_EMPTY
Empty widget, place holder to reserve space in widget tree.
Definition widget_type.h:48
WWT_RESIZEBOX
@ WWT_RESIZEBOX
Resize box (normally at bottom-right of a window)
Definition widget_type.h:68
WWT_DEFSIZEBOX
@ WWT_DEFSIZEBOX
Default window size box (at top-right of a window, between WWT_SHADEBOX and WWT_STICKYBOX)
Definition widget_type.h:65
WWT_TEXT
@ WWT_TEXT
Pure simple text.
Definition widget_type.h:58
RWV_HIDE_BEVEL
@ RWV_HIDE_BEVEL
Bevel of resize box is hidden.
Definition widget_type.h:40

Definition at line 990 of file graph_gui.cpp.

## ◆ _nested_delivered_cargo_graph_widgets

constexpr NWidgetPart _nested_delivered_cargo_graph_widgets[]
| staticconstexpr

Initial value:
= {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_BROWN),
NWidget(WWT_CAPTION, COLOUR_BROWN), SetDataTip(STR_GRAPH_CARGO_DELIVERED_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_GRAPH_KEY_BUTTON), SetMinimalSize(50, 0), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
NWidget(WWT_SHADEBOX, COLOUR_BROWN),
NWidget(WWT_DEFSIZEBOX, COLOUR_BROWN),
NWidget(WWT_STICKYBOX, COLOUR_BROWN),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_BROWN, WID_GRAPH_BACKGROUND),
NWidget(NWID_VERTICAL),
NWidget(WWT_EMPTY, COLOUR_BROWN, WID_GRAPH_GRAPH), SetMinimalSize(576, 128), SetFill(1, 1), SetResize(1, 1),
NWidget(NWID_HORIZONTAL),
NWidget(NWID_SPACER), SetMinimalSize(12, 0), SetFill(1, 0), SetResize(1, 0),
NWidget(WWT_TEXT, COLOUR_BROWN, WID_GRAPH_FOOTER), SetMinimalSize(0, 6), SetPadding(2, 0, 2, 0), SetDataTip(STR_EMPTY, STR_NULL),
NWidget(NWID_SPACER), SetFill(1, 0), SetResize(1, 0),
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_GRAPH_RESIZE), SetDataTip(RWV_HIDE_BEVEL, STR_TOOLTIP_RESIZE),
EndContainer(),
EndContainer(),
EndContainer(),
}

Definition at line 869 of file graph_gui.cpp.

## ◆ _nested_graph_legend_widgets

constexpr NWidgetPart _nested_graph_legend_widgets[]
| staticconstexpr

Initial value:
= {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_BROWN),
NWidget(WWT_CAPTION, COLOUR_BROWN), SetDataTip(STR_GRAPH_KEY_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_SHADEBOX, COLOUR_BROWN),
NWidget(WWT_STICKYBOX, COLOUR_BROWN),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_BROWN, WID_GL_BACKGROUND),
NWidgetFunction(MakeNWidgetCompanyLines),
EndContainer(),
}
MakeNWidgetCompanyLines
static std::unique_ptr< NWidgetBase > MakeNWidgetCompanyLines()
Construct a vertical list of buttons, one for each company.
Definition graph_gui.cpp:117
WID_GL_BACKGROUND
@ WID_GL_BACKGROUND
Background of the window.
Definition graph_widget.h:18
NWidgetFunction
constexpr NWidgetPart NWidgetFunction(NWidgetFunctionType *func_ptr)
Obtain a nested widget (sub)tree from an external source.
Definition widget_type.h:1341

Definition at line 134 of file graph_gui.cpp.

## ◆ _nested_income_graph_widgets

constexpr NWidgetPart _nested_income_graph_widgets[]
| staticconstexpr

Initial value:
= {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_BROWN),
NWidget(WWT_CAPTION, COLOUR_BROWN), SetDataTip(STR_GRAPH_INCOME_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_GRAPH_KEY_BUTTON), SetMinimalSize(50, 0), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
NWidget(WWT_SHADEBOX, COLOUR_BROWN),
NWidget(WWT_DEFSIZEBOX, COLOUR_BROWN),
NWidget(WWT_STICKYBOX, COLOUR_BROWN),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_BROWN, WID_GRAPH_BACKGROUND),
NWidget(NWID_VERTICAL),
NWidget(WWT_EMPTY, COLOUR_BROWN, WID_GRAPH_GRAPH), SetMinimalSize(576, 128), SetFill(1, 1), SetResize(1, 1),
NWidget(NWID_HORIZONTAL),
NWidget(NWID_SPACER), SetMinimalSize(12, 0), SetFill(1, 0), SetResize(1, 0),
NWidget(WWT_TEXT, COLOUR_BROWN, WID_GRAPH_FOOTER), SetMinimalSize(0, 6), SetPadding(2, 0, 2, 0), SetDataTip(STR_EMPTY, STR_NULL),
NWidget(NWID_SPACER), SetFill(1, 0), SetResize(1, 0),
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_GRAPH_RESIZE), SetDataTip(RWV_HIDE_BEVEL, STR_TOOLTIP_RESIZE),
EndContainer(),
EndContainer(),
EndContainer(),
}

Definition at line 812 of file graph_gui.cpp.

## ◆ _nested_industry_production_widgets

constexpr NWidgetPart _nested_industry_production_widgets[]
| staticconstexpr

Definition at line 1740 of file graph_gui.cpp.

## ◆ _nested_operating_profit_widgets

constexpr NWidgetPart _nested_operating_profit_widgets[]
| staticconstexpr

Initial value:
= {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_BROWN),
NWidget(WWT_CAPTION, COLOUR_BROWN), SetDataTip(STR_GRAPH_OPERATING_PROFIT_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_GRAPH_KEY_BUTTON), SetMinimalSize(50, 0), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
NWidget(WWT_SHADEBOX, COLOUR_BROWN),
NWidget(WWT_DEFSIZEBOX, COLOUR_BROWN),
NWidget(WWT_STICKYBOX, COLOUR_BROWN),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_BROWN, WID_GRAPH_BACKGROUND),
NWidget(NWID_VERTICAL),
NWidget(WWT_EMPTY, COLOUR_BROWN, WID_GRAPH_GRAPH), SetMinimalSize(576, 160), SetFill(1, 1), SetResize(1, 1),
NWidget(NWID_HORIZONTAL),
NWidget(NWID_SPACER), SetMinimalSize(12, 0), SetFill(1, 0), SetResize(1, 0),
NWidget(WWT_TEXT, COLOUR_BROWN, WID_GRAPH_FOOTER), SetMinimalSize(0, 6), SetPadding(2, 0, 2, 0), SetDataTip(STR_EMPTY, STR_NULL),
NWidget(NWID_SPACER), SetFill(1, 0), SetResize(1, 0),
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_GRAPH_RESIZE), SetDataTip(RWV_HIDE_BEVEL, STR_TOOLTIP_RESIZE),
EndContainer(),
EndContainer(),
EndContainer(),
}

Definition at line 753 of file graph_gui.cpp.

## ◆ _nested_performance_history_widgets

constexpr NWidgetPart _nested_performance_history_widgets[]
| staticconstexpr

Initial value:
= {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_BROWN),
NWidget(WWT_CAPTION, COLOUR_BROWN), SetDataTip(STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_PHG_DETAILED_PERFORMANCE), SetMinimalSize(50, 0), SetDataTip(STR_PERFORMANCE_DETAIL_KEY, STR_GRAPH_PERFORMANCE_DETAIL_TOOLTIP),
NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_GRAPH_KEY_BUTTON), SetMinimalSize(50, 0), SetDataTip(STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP),
NWidget(WWT_SHADEBOX, COLOUR_BROWN),
NWidget(WWT_DEFSIZEBOX, COLOUR_BROWN),
NWidget(WWT_STICKYBOX, COLOUR_BROWN),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_BROWN, WID_GRAPH_BACKGROUND),
NWidget(NWID_VERTICAL),
NWidget(WWT_EMPTY, COLOUR_BROWN, WID_GRAPH_GRAPH), SetMinimalSize(576, 224), SetFill(1, 1), SetResize(1, 1),
NWidget(NWID_HORIZONTAL),
NWidget(NWID_SPACER), SetMinimalSize(12, 0), SetFill(1, 0), SetResize(1, 0),
NWidget(WWT_TEXT, COLOUR_BROWN, WID_GRAPH_FOOTER), SetMinimalSize(0, 6), SetPadding(2, 0, 2, 0), SetDataTip(STR_EMPTY, STR_NULL),
NWidget(NWID_SPACER), SetFill(1, 0), SetResize(1, 0),
NWidget(WWT_RESIZEBOX, COLOUR_BROWN, WID_GRAPH_RESIZE), SetDataTip(RWV_HIDE_BEVEL, STR_TOOLTIP_RESIZE),
EndContainer(),
EndContainer(),
EndContainer(),
}
WID_PHG_DETAILED_PERFORMANCE
@ WID_PHG_DETAILED_PERFORMANCE
Detailed performance.
Definition graph_widget.h:41

Definition at line 932 of file graph_gui.cpp.

## ◆ _nested_performance_rating_detail_widgets

constexpr NWidgetPart _nested_performance_rating_detail_widgets[]
| staticconstexpr

Initial value:
= {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_BROWN),
NWidget(WWT_CAPTION, COLOUR_BROWN), SetDataTip(STR_PERFORMANCE_DETAIL, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_SHADEBOX, COLOUR_BROWN),
NWidget(WWT_STICKYBOX, COLOUR_BROWN),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_BROWN),
NWidgetFunction(MakeCompanyButtonRowsGraphGUI), SetPadding(2),
EndContainer(),
NWidgetFunction(MakePerformanceDetailPanels),
}
MakeCompanyButtonRowsGraphGUI
std::unique_ptr< NWidgetBase > MakeCompanyButtonRowsGraphGUI()
Make a number of rows with buttons for each company for the performance rating detail window.
Definition graph_gui.cpp:1820
MakePerformanceDetailPanels
static std::unique_ptr< NWidgetBase > MakePerformanceDetailPanels()
Make a vertical list of panels for outputting score details.
Definition graph_gui.cpp:1791

Definition at line 1825 of file graph_gui.cpp.

## ◆ INT64_MAX_IN_DOUBLE

constexpr double INT64_MAX_IN_DOUBLE = static_cast<double>(INT64_MAX - 512)
| constexpr

The biggest double that when cast to int64_t still fits in a int64_t.

Definition at line 45 of file graph_gui.cpp.

Referenced by BaseGraphWindow::GetValuesInterval().

## ◆ INVALID_DATAPOINT_POS

const uint INVALID_DATAPOINT_POS = UINT_MAX
| static

Definition at line 43 of file graph_gui.cpp.