From 5658a770c18b99807e4a598e7dc70ea3f765ba81 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Mon, 15 Oct 2012 17:39:57 +0300 Subject: Override some methods in guichan listbox. --- src/gui/widgets/listbox.cpp | 12 ++++++++++++ src/gui/widgets/listbox.h | 4 ++++ 2 files changed, 16 insertions(+) (limited to 'src/gui/widgets') diff --git a/src/gui/widgets/listbox.cpp b/src/gui/widgets/listbox.cpp index 259e49972..3592b12da 100644 --- a/src/gui/widgets/listbox.cpp +++ b/src/gui/widgets/listbox.cpp @@ -48,6 +48,7 @@ ListBox::ListBox(gcn::ListModel *const listModel): mOldSelected(-1) { mForegroundColor = Theme::getThemeColor(Theme::LISTBOX); + adjustSize(); } ListBox::~ListBox() @@ -193,3 +194,14 @@ void ListBox::refocus() if (isFocusable()) mFocusHandler->requestFocus(this); } + +void ListBox::adjustSize() +{ + if (mListModel) + setHeight(getRowHeight() * mListModel->getNumberOfElements()); +} + +void ListBox::logic() +{ + adjustSize(); +} diff --git a/src/gui/widgets/listbox.h b/src/gui/widgets/listbox.h index e3976454d..c9a70557f 100644 --- a/src/gui/widgets/listbox.h +++ b/src/gui/widgets/listbox.h @@ -77,6 +77,10 @@ class ListBox : public gcn::ListBox void setDistributeMousePressed(bool b) { mDistributeMousePressed = b; } + void adjustSize(); + + void logic() override; + protected: gcn::Color mHighlightColor; bool mDistributeMousePressed; -- cgit v1.2.3-70-g09d2