diff options
author | rubidium <rubidium@openttd.org> | 2009-11-02 10:15:48 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2009-11-02 10:15:48 +0000 |
commit | 4a970202a9101be3fdd22ff060140e46133490dc (patch) | |
tree | b25b612ff18784db968ad7edcdd4d689883ee6ea /src/statusbar_gui.cpp | |
parent | 148d9b8e387cf7298421747917d17c00acc7bb99 (diff) | |
download | openttd-4a970202a9101be3fdd22ff060140e46133490dc.tar.xz |
(svn r17947) -Codechange: make the statusbar, chat input and news window know of eachothers size so they don't get overlapped and don't get invisible (bottoms) of windows when a larger font is used
Diffstat (limited to 'src/statusbar_gui.cpp')
-rw-r--r-- | src/statusbar_gui.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/statusbar_gui.cpp b/src/statusbar_gui.cpp index ac9ab4351..d8c2f3fbf 100644 --- a/src/statusbar_gui.cpp +++ b/src/statusbar_gui.cpp @@ -98,11 +98,22 @@ struct StatusBarWindow : Window { this->InitNested(desc); } + virtual Point OnInitialPosition(const WindowDesc *desc, int16 sm_width, int16 sm_height, int window_number) + { + Point pt = { (_screen.width - max(sm_width, desc->default_width)) / 2, _screen.height - sm_height }; + return pt; + } + virtual void OnPaint() { this->DrawWidgets(); } + virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *resize) + { + size->height = FONT_HEIGHT_NORMAL + padding.height; + } + virtual void DrawWidget(const Rect &r, int widget) const { switch (widget) { @@ -202,7 +213,7 @@ static const NWidgetPart _nested_main_status_widgets[] = { EndContainer(), }; -static WindowDesc _main_status_desc( +static const WindowDesc _main_status_desc( WDP_CENTER, 0, 320, 12, 640, 12, WC_STATUS_BAR, WC_NONE, WDF_STD_TOOLTIPS | WDF_DEF_WIDGET | WDF_UNCLICK_BUTTONS | WDF_NO_FOCUS, @@ -220,6 +231,5 @@ bool IsNewsTickerShown() void ShowStatusBar() { - _main_status_desc.top = _screen.height - 12; new StatusBarWindow(&_main_status_desc); } |