summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2009-10-25 13:52:58 +0000
committerrubidium <rubidium@openttd.org>2009-10-25 13:52:58 +0000
commit38687193fed422570f5cbde8496738b9b920fb7c (patch)
tree0879e9d21c5753bb3d748dca0c3b4c98f3a5de51 /src
parent413f6b880f98375a85c36ffbf9359c8a2d2c052c (diff)
downloadopenttd-38687193fed422570f5cbde8496738b9b920fb7c.tar.xz
(svn r17866) -Codechange: make the remaining graph windows nested
Diffstat (limited to 'src')
-rw-r--r--src/graph_gui.cpp242
1 files changed, 97 insertions, 145 deletions
diff --git a/src/graph_gui.cpp b/src/graph_gui.cpp
index 5cb2aa381..93335e804 100644
--- a/src/graph_gui.cpp
+++ b/src/graph_gui.cpp
@@ -398,9 +398,8 @@ protected:
}
- BaseGraphWindow(const WindowDesc *desc, WindowNumber window_number, int left,
- int top, int height, bool has_negative_values, StringID format_str_y_axis) :
- Window(desc, window_number), has_negative_values(has_negative_values),
+ BaseGraphWindow(int left, int top, int height, bool has_negative_values, StringID format_str_y_axis) :
+ Window(), has_negative_values(has_negative_values),
format_str_y_axis(format_str_y_axis)
{
SetWindowDirty(WC_GRAPH_LEGEND, 0);
@@ -413,9 +412,9 @@ protected:
this->graph_location.bottom = top + height - 1;
}
- void InitializeWindow(const WindowDesc *desc)
+ void InitializeWindow(const WindowDesc *desc, WindowNumber number)
{
- this->FindWindowPlacementAndResize(desc);
+ this->InitNested(desc, number);
/* Initialise the dataset */
this->UpdateStatistics(true);
@@ -506,9 +505,9 @@ public:
struct OperatingProfitGraphWindow : BaseGraphWindow {
OperatingProfitGraphWindow(const WindowDesc *desc, WindowNumber window_number) :
- BaseGraphWindow(desc, window_number, 2, 18, 136, true, STR_JUST_CURRCOMPACT)
+ BaseGraphWindow(2, 18, 136, true, STR_JUST_CURRCOMPACT)
{
- this->InitializeWindow(desc);
+ this->InitializeWindow(desc, window_number);
}
virtual OverflowSafeInt64 GetGraphData(const Company *c, int j)
@@ -517,14 +516,6 @@ struct OperatingProfitGraphWindow : BaseGraphWindow {
}
};
-static const Widget _operating_profit_widgets[] = {
-{ WWT_CLOSEBOX, RESIZE_NONE, COLOUR_GREY, 0, 10, 0, 13, STR_BLACK_CROSS, STR_TOOLTIP_CLOSE_WINDOW},
-{ WWT_CAPTION, RESIZE_NONE, COLOUR_GREY, 11, 525, 0, 13, STR_GRAPH_OPERATING_PROFIT_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS},
-{ WWT_PUSHTXTBTN, RESIZE_NONE, COLOUR_GREY, 526, 575, 0, 13, STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP},
-{ WWT_PANEL, RESIZE_NONE, COLOUR_GREY, 0, 575, 14, 173, 0x0, STR_NULL},
-{ WIDGETS_END},
-};
-
static const NWidgetPart _nested_operating_profit_widgets[] = {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_GREY, BGW_CLOSEBOX),
@@ -538,7 +529,7 @@ static const WindowDesc _operating_profit_desc(
WDP_AUTO, WDP_AUTO, 576, 174, 576, 174,
WC_OPERATING_PROFIT, WC_NONE,
WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET | WDF_UNCLICK_BUTTONS,
- _operating_profit_widgets, _nested_operating_profit_widgets, lengthof(_nested_operating_profit_widgets)
+ NULL, _nested_operating_profit_widgets, lengthof(_nested_operating_profit_widgets)
);
@@ -554,9 +545,9 @@ void ShowOperatingProfitGraph()
struct IncomeGraphWindow : BaseGraphWindow {
IncomeGraphWindow(const WindowDesc *desc, WindowNumber window_number) :
- BaseGraphWindow(desc, window_number, 2, 18, 104, false, STR_JUST_CURRCOMPACT)
+ BaseGraphWindow(2, 18, 104, false, STR_JUST_CURRCOMPACT)
{
- this->InitializeWindow(desc);
+ this->InitializeWindow(desc, window_number);
}
virtual OverflowSafeInt64 GetGraphData(const Company *c, int j)
@@ -565,14 +556,6 @@ struct IncomeGraphWindow : BaseGraphWindow {
}
};
-static const Widget _income_graph_widgets[] = {
-{ WWT_CLOSEBOX, RESIZE_NONE, COLOUR_GREY, 0, 10, 0, 13, STR_BLACK_CROSS, STR_TOOLTIP_CLOSE_WINDOW},
-{ WWT_CAPTION, RESIZE_NONE, COLOUR_GREY, 11, 525, 0, 13, STR_GRAPH_INCOME_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS},
-{ WWT_PUSHTXTBTN, RESIZE_NONE, COLOUR_GREY, 526, 575, 0, 13, STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP},
-{ WWT_PANEL, RESIZE_NONE, COLOUR_GREY, 0, 575, 14, 141, 0x0, STR_NULL},
-{ WIDGETS_END},
-};
-
static const NWidgetPart _nested_income_graph_widgets[] = {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_GREY, BGW_CLOSEBOX),
@@ -587,7 +570,7 @@ static const WindowDesc _income_graph_desc(
WDP_AUTO, WDP_AUTO, 576, 142, 576, 142,
WC_INCOME_GRAPH, WC_NONE,
WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET | WDF_UNCLICK_BUTTONS,
- _income_graph_widgets, _nested_income_graph_widgets, lengthof(_nested_income_graph_widgets)
+ NULL, _nested_income_graph_widgets, lengthof(_nested_income_graph_widgets)
);
void ShowIncomeGraph()
@@ -601,9 +584,9 @@ void ShowIncomeGraph()
struct DeliveredCargoGraphWindow : BaseGraphWindow {
DeliveredCargoGraphWindow(const WindowDesc *desc, WindowNumber window_number) :
- BaseGraphWindow(desc, window_number, 2, 18, 104, false, STR_JUST_COMMA)
+ BaseGraphWindow(2, 18, 104, false, STR_JUST_COMMA)
{
- this->InitializeWindow(desc);
+ this->InitializeWindow(desc, window_number);
}
virtual OverflowSafeInt64 GetGraphData(const Company *c, int j)
@@ -612,14 +595,6 @@ struct DeliveredCargoGraphWindow : BaseGraphWindow {
}
};
-static const Widget _delivered_cargo_graph_widgets[] = {
-{ WWT_CLOSEBOX, RESIZE_NONE, COLOUR_GREY, 0, 10, 0, 13, STR_BLACK_CROSS, STR_TOOLTIP_CLOSE_WINDOW},
-{ WWT_CAPTION, RESIZE_NONE, COLOUR_GREY, 11, 525, 0, 13, STR_GRAPH_CARGO_DELIVERED_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS},
-{ WWT_PUSHTXTBTN, RESIZE_NONE, COLOUR_GREY, 526, 575, 0, 13, STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP},
-{ WWT_PANEL, RESIZE_NONE, COLOUR_GREY, 0, 575, 14, 141, 0x0, STR_NULL},
-{ WIDGETS_END},
-};
-
static const NWidgetPart _nested_delivered_cargo_graph_widgets[] = {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_GREY, BGW_CLOSEBOX),
@@ -633,7 +608,7 @@ static const WindowDesc _delivered_cargo_graph_desc(
WDP_AUTO, WDP_AUTO, 576, 142, 576, 142,
WC_DELIVERED_CARGO, WC_NONE,
WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET | WDF_UNCLICK_BUTTONS,
- _delivered_cargo_graph_widgets, _nested_delivered_cargo_graph_widgets, lengthof(_nested_delivered_cargo_graph_widgets)
+ NULL, _nested_delivered_cargo_graph_widgets, lengthof(_nested_delivered_cargo_graph_widgets)
);
void ShowDeliveredCargoGraph()
@@ -656,9 +631,9 @@ enum PerformanceHistoryGraphWidgets {
struct PerformanceHistoryGraphWindow : BaseGraphWindow {
PerformanceHistoryGraphWindow(const WindowDesc *desc, WindowNumber window_number) :
- BaseGraphWindow(desc, window_number, 2, 18, 200, false, STR_JUST_COMMA)
+ BaseGraphWindow(2, 18, 200, false, STR_JUST_COMMA)
{
- this->InitializeWindow(desc);
+ this->InitializeWindow(desc, window_number);
}
virtual OverflowSafeInt64 GetGraphData(const Company *c, int j)
@@ -673,15 +648,6 @@ struct PerformanceHistoryGraphWindow : BaseGraphWindow {
}
};
-static const Widget _performance_history_widgets[] = {
-{ WWT_CLOSEBOX, RESIZE_NONE, COLOUR_GREY, 0, 10, 0, 13, STR_BLACK_CROSS, STR_TOOLTIP_CLOSE_WINDOW}, // PHW_CLOSEBOX
-{ WWT_CAPTION, RESIZE_NONE, COLOUR_GREY, 11, 475, 0, 13, STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS}, // PHW_CAPTION
-{ WWT_PUSHTXTBTN, RESIZE_NONE, COLOUR_GREY, 526, 575, 0, 13, STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP}, // PHW_KEY
-{ WWT_PUSHTXTBTN, RESIZE_NONE, COLOUR_GREY, 476, 525, 0, 13, STR_PERFORMANCE_DETAIL_KEY, STR_GRAPH_PERFORMANCE_DETAIL_TOOLTIP}, // PHW_DETAILED_PERFORMANCE
-{ WWT_PANEL, RESIZE_NONE, COLOUR_GREY, 0, 575, 14, 237, 0x0, STR_NULL}, // PHW_BACKGROUND
-{ WIDGETS_END},
-};
-
static const NWidgetPart _nested_performance_history_widgets[] = {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_GREY, PHW_CLOSEBOX),
@@ -696,7 +662,7 @@ static const WindowDesc _performance_history_desc(
WDP_AUTO, WDP_AUTO, 576, 238, 576, 238,
WC_PERFORMANCE_HISTORY, WC_NONE,
WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET | WDF_UNCLICK_BUTTONS,
- _performance_history_widgets, _nested_performance_history_widgets, lengthof(_nested_performance_history_widgets)
+ NULL, _nested_performance_history_widgets, lengthof(_nested_performance_history_widgets)
);
void ShowPerformanceHistoryGraph()
@@ -710,9 +676,9 @@ void ShowPerformanceHistoryGraph()
struct CompanyValueGraphWindow : BaseGraphWindow {
CompanyValueGraphWindow(const WindowDesc *desc, WindowNumber window_number) :
- BaseGraphWindow(desc, window_number, 2, 18, 200, false, STR_JUST_CURRCOMPACT)
+ BaseGraphWindow(2, 18, 200, false, STR_JUST_CURRCOMPACT)
{
- this->InitializeWindow(desc);
+ this->InitializeWindow(desc, window_number);
}
virtual OverflowSafeInt64 GetGraphData(const Company *c, int j)
@@ -721,14 +687,6 @@ struct CompanyValueGraphWindow : BaseGraphWindow {
}
};
-static const Widget _company_value_graph_widgets[] = {
-{ WWT_CLOSEBOX, RESIZE_NONE, COLOUR_GREY, 0, 10, 0, 13, STR_BLACK_CROSS, STR_TOOLTIP_CLOSE_WINDOW},
-{ WWT_CAPTION, RESIZE_NONE, COLOUR_GREY, 11, 525, 0, 13, STR_GRAPH_COMPANY_VALUES_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS},
-{ WWT_PUSHTXTBTN, RESIZE_NONE, COLOUR_GREY, 526, 575, 0, 13, STR_GRAPH_KEY_BUTTON, STR_GRAPH_KEY_TOOLTIP},
-{ WWT_PANEL, RESIZE_NONE, COLOUR_GREY, 0, 575, 14, 237, 0x0, STR_NULL},
-{ WIDGETS_END},
-};
-
static const NWidgetPart _nested_company_value_graph_widgets[] = {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_GREY, BGW_CLOSEBOX),
@@ -742,7 +700,7 @@ static const WindowDesc _company_value_graph_desc(
WDP_AUTO, WDP_AUTO, 576, 238, 576, 238,
WC_COMPANY_VALUE, WC_NONE,
WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET | WDF_UNCLICK_BUTTONS,
- _company_value_graph_widgets, _nested_company_value_graph_widgets, lengthof(_nested_company_value_graph_widgets)
+ NULL, _nested_company_value_graph_widgets, lengthof(_nested_company_value_graph_widgets)
);
void ShowCompanyValueGraph()
@@ -764,85 +722,60 @@ enum CargoPaymentRatesWidgets {
struct PaymentRatesGraphWindow : BaseGraphWindow {
PaymentRatesGraphWindow(const WindowDesc *desc, WindowNumber window_number) :
- BaseGraphWindow(desc, window_number, 2, 24, 200, false, STR_JUST_CURRCOMPACT)
+ BaseGraphWindow(2, 24, 200, false, STR_JUST_CURRCOMPACT)
{
- uint num_active = 0;
- const CargoSpec *cs;
- FOR_ALL_CARGOSPECS(cs) {
- num_active++;
- }
-
- /* Resize the window to fit the cargo types */
- ResizeWindow(this, 0, max(num_active, 12U) * 8);
-
- /* Add widgets for each cargo type */
- this->widget_count += num_active;
- this->widget = ReallocT(this->widget, this->widget_count + 1);
- this->widget[this->widget_count].type = WWT_LAST;
-
- /* Set the properties of each widget */
- for (uint i = 0; i != num_active; i++) {
- Widget *wi = &this->widget[CPW_CARGO_FIRST + i];
- wi->type = WWT_PANEL;
- wi->display_flags = RESIZE_NONE;
- wi->colour = COLOUR_ORANGE;
- wi->left = 493;
- wi->right = 562;
- wi->top = 24 + i * 8;
- wi->bottom = wi->top + 7;
- wi->data = 0;
- wi->tooltips = STR_GRAPH_CARGO_PAYMENT_TOGGLE_CARGO;
-
- if (!HasBit(_legend_excluded_cargo, i)) this->LowerWidget(i + CPW_CARGO_FIRST);
- }
-
- this->SetDirty();
-
this->num_on_x_axis = 20;
this->num_vert_lines = 20;
this->month = 0xFF;
this->x_values_start = 10;
this->x_values_increment = 10;
- this->graph_location.right = this->graph_location.left + GRAPH_X_POSITION_BEGINNING + this->num_vert_lines * GRAPH_X_POSITION_SEPARATION - 1;
- this->graph_location.bottom = this->graph_location.top + (this->height - 38) - 1;
-
/* Initialise the dataset */
this->OnHundredthTick();
- this->FindWindowPlacementAndResize(desc);
+ this->InitNested(desc, window_number);
+
+ this->graph_location.right = this->graph_location.left + GRAPH_X_POSITION_BEGINNING + this->num_vert_lines * GRAPH_X_POSITION_SEPARATION - 1;
+ this->graph_location.bottom = this->graph_location.top + (this->height - 38) - 1;
}
- virtual void OnPaint()
+ virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *resize)
{
- this->DrawWidgets();
-
- int x = 495;
- int y = 24;
+ if (widget < CPW_CARGO_FIRST) return;
+
+ const CargoSpec *cs = CargoSpec::Get(widget - CPW_CARGO_FIRST);
+ SetDParam(0, cs->name);
+ Dimension d = GetStringBoundingBox(STR_GRAPH_CARGO_PAYMENT_CARGO);
+ d.width += 14; /* colour field */
+ d.width += WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT;
+ d.height += WD_FRAMERECT_TOP + WD_FRAMERECT_BOTTOM;
+ *size = maxdim(d, *size);
+ }
- uint i = 0;
+ virtual void DrawWidget(const Rect &r, int widget) const
+ {
+ if (widget < CPW_CARGO_FIRST) return;
+
+ const CargoSpec *cs = CargoSpec::Get(widget - CPW_CARGO_FIRST);
+
+ /* Since the buttons have no text, no images,
+ * both the text and the coloured box have to be manually painted.
+ * clk_dif will move one pixel down and one pixel to the right
+ * when the button is clicked */
+ byte clk_dif = this->IsWidgetLowered(widget) ? 1 : 0;
+ int x = r.left + WD_FRAMERECT_LEFT;
+ int y = r.top;
+
+ GfxFillRect(x + clk_dif, y + clk_dif, x + 8 + clk_dif, y + 5 + clk_dif, 0);
+ GfxFillRect(x + 1 + clk_dif, y + 1 + clk_dif, x + 7 + clk_dif, y + 4 + clk_dif, cs->legend_colour);
+ SetDParam(0, cs->name);
+ DrawString(x + 14 + clk_dif, r.right, y + clk_dif, STR_GRAPH_CARGO_PAYMENT_CARGO);
+ }
- const CargoSpec *cs;
- FOR_ALL_CARGOSPECS(cs) {
- /* Only draw labels for widgets that exist. If the widget doesn't
- * exist then the local company has used the climate cheat or
- * changed the NewGRF configuration with this window open. */
- if (i + CPW_CARGO_FIRST < this->widget_count) {
- /* Since the buttons have no text, no images,
- * both the text and the coloured box have to be manually painted.
- * clk_dif will move one pixel down and one pixel to the right
- * when the button is clicked */
- byte clk_dif = this->IsWidgetLowered(i + CPW_CARGO_FIRST) ? 1 : 0;
-
- GfxFillRect(x + clk_dif, y + clk_dif, x + 8 + clk_dif, y + 5 + clk_dif, 0);
- GfxFillRect(x + 1 + clk_dif, y + 1 + clk_dif, x + 7 + clk_dif, y + 4 + clk_dif, cs->legend_colour);
- SetDParam(0, cs->name);
- DrawString(x + 14 + clk_dif, this->width, y + clk_dif, STR_GRAPH_CARGO_PAYMENT_CARGO);
- y += 8;
- }
- i++;
- }
+ virtual void OnPaint()
+ {
+ this->DrawWidgets();
this->DrawGraph(this->graph_location);
DrawString(2 + 46, this->width, this->graph_location.bottom + 8, STR_GRAPH_CARGO_PAYMENT_RATES_X_LABEL);
@@ -852,7 +785,14 @@ struct PaymentRatesGraphWindow : BaseGraphWindow {
virtual void OnClick(Point pt, int widget)
{
if (widget >= CPW_CARGO_FIRST) {
- ToggleBit(_legend_excluded_cargo, widget - CPW_CARGO_FIRST);
+ int i = 0;
+ const CargoSpec *cs;
+ FOR_ALL_CARGOSPECS(cs) {
+ if (cs->Index() + CPW_CARGO_FIRST == widget) break;
+ i++;
+ }
+
+ ToggleBit(_legend_excluded_cargo, i);
this->ToggleWidgetLoweredState(widget);
this->excluded_data = _legend_excluded_cargo;
this->SetDirty();
@@ -882,26 +822,47 @@ struct PaymentRatesGraphWindow : BaseGraphWindow {
}
};
-static const Widget _cargo_payment_rates_widgets[] = {
-{ WWT_CLOSEBOX, RESIZE_NONE, COLOUR_GREY, 0, 10, 0, 13, STR_BLACK_CROSS, STR_TOOLTIP_CLOSE_WINDOW},
-{ WWT_CAPTION, RESIZE_NONE, COLOUR_GREY, 11, 567, 0, 13, STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS},
-{ WWT_PANEL, RESIZE_BOTTOM, COLOUR_GREY, 0, 567, 14, 45, 0x0, STR_NULL},
-{ WIDGETS_END},
-};
+/** Construct the row containing the digit keys. */
+static NWidgetBase *MakeCargoButtons(int *biggest_index)
+{
+ NWidgetVertical *ver = new NWidgetVertical;
+
+ const CargoSpec *cs;
+ FOR_ALL_CARGOSPECS(cs) {
+ *biggest_index = CPW_CARGO_FIRST + cs->Index();
+ NWidgetBackground *leaf = new NWidgetBackground(WWT_PANEL, COLOUR_ORANGE, *biggest_index, NULL);
+ leaf->tool_tip = STR_GRAPH_CARGO_PAYMENT_TOGGLE_CARGO;
+ leaf->SetFill(true, false);
+ leaf->SetLowered(true);
+ ver->Add(leaf);
+ }
+ return ver;
+}
+
static const NWidgetPart _nested_cargo_payment_rates_widgets[] = {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_GREY, CPW_CLOSEBOX),
NWidget(WWT_CAPTION, COLOUR_GREY, CPW_CAPTION), SetDataTip(STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
EndContainer(),
- NWidget(WWT_PANEL, COLOUR_GREY, CPW_BACKGROUND), SetMinimalSize(568, 32), SetResize(0, 1), EndContainer(),
+ NWidget(WWT_PANEL, COLOUR_GREY, CPW_BACKGROUND), SetMinimalSize(568, 128), SetResize(0, 1),
+ NWidget(NWID_HORIZONTAL),
+ NWidget(NWID_SPACER), SetMinimalSize(495, 0), SetFill(false, true),
+ NWidget(NWID_VERTICAL),
+ NWidget(NWID_SPACER), SetMinimalSize(0, 24), SetFill(true, false),
+ NWidgetFunction(MakeCargoButtons),
+ NWidget(NWID_SPACER), SetMinimalSize(0, 24), SetFill(true, true),
+ EndContainer(),
+ NWidget(NWID_SPACER), SetMinimalSize(5, 0), SetFill(false, true),
+ EndContainer(),
+ EndContainer(),
};
static const WindowDesc _cargo_payment_rates_desc(
WDP_AUTO, WDP_AUTO, 568, 46, 568, 46,
WC_PAYMENT_RATES, WC_NONE,
WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET,
- _cargo_payment_rates_widgets, _nested_cargo_payment_rates_widgets, lengthof(_nested_cargo_payment_rates_widgets)
+ NULL, _nested_cargo_payment_rates_widgets, lengthof(_nested_cargo_payment_rates_widgets)
);
@@ -967,12 +928,11 @@ private:
}
public:
- CompanyLeagueWindow(const WindowDesc *desc, WindowNumber window_number) : Window(desc, window_number)
+ CompanyLeagueWindow(const WindowDesc *desc, WindowNumber window_number) : Window()
{
+ this->InitNested(desc, window_number);
this->companies.ForceRebuild();
this->companies.NeedResort();
-
- this->FindWindowPlacementAndResize(desc);
}
virtual void OnPaint()
@@ -1019,14 +979,6 @@ enum CompanyLeagueWidgets {
CLW_BACKGROUND,
};
-static const Widget _company_league_widgets[] = {
-{ WWT_CLOSEBOX, RESIZE_NONE, COLOUR_GREY, 0, 10, 0, 13, STR_BLACK_CROSS, STR_TOOLTIP_CLOSE_WINDOW},
-{ WWT_CAPTION, RESIZE_NONE, COLOUR_GREY, 11, 387, 0, 13, STR_COMPANY_LEAGUE_TABLE_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS},
-{ WWT_STICKYBOX, RESIZE_NONE, COLOUR_GREY, 388, 399, 0, 13, STR_NULL, STR_TOOLTIP_STICKY},
-{ WWT_PANEL, RESIZE_NONE, COLOUR_GREY, 0, 399, 14, 166, 0x0, STR_NULL},
-{ WIDGETS_END},
-};
-
static const NWidgetPart _nested_company_league_widgets[] = {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_GREY, CLW_CLOSEBOX),
@@ -1040,7 +992,7 @@ static const WindowDesc _company_league_desc(
WDP_AUTO, WDP_AUTO, 400, 167, 400, 167,
WC_COMPANY_LEAGUE, WC_NONE,
WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET | WDF_STICKY_BUTTON,
- _company_league_widgets, _nested_company_league_widgets, lengthof(_nested_company_league_widgets)
+ NULL, _nested_company_league_widgets, lengthof(_nested_company_league_widgets)
);
void ShowCompanyLeagueTable()