From 629b350a71c10b7675a70226d0ead657258f5cb6 Mon Sep 17 00:00:00 2001 From: frosch Date: Thu, 12 Aug 2010 06:40:28 +0000 Subject: (svn r20451) -Codechange: Add helper function Window::GetScrollbar() to get the Scrollbar belonging to a scrollbar widget. --- src/window.cpp | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'src/window.cpp') diff --git a/src/window.cpp b/src/window.cpp index 3081bc268..a002de09b 100644 --- a/src/window.cpp +++ b/src/window.cpp @@ -130,6 +130,39 @@ void Scrollbar::SetCapacityFromWidget(Window *w, int widget, int padding) } } +/** + * Return the Scrollbar to a widget index. + * @param widnum Scrollbar widget index + * @return Scrollbar to the widget + */ +const Scrollbar *Window::GetScrollbar(uint widnum) const +{ + const NWidgetLeaf *wid = this->GetWidget(widnum); + switch (wid->type) { + case WWT_HSCROLLBAR: return &this->hscroll; + case WWT_SCROLLBAR: return &this->vscroll; + case WWT_SCROLL2BAR: return &this->vscroll2; + default: NOT_REACHED(); + } +} + +/** + * Return the Scrollbar to a widget index. + * @param widnum Scrollbar widget index + * @return Scrollbar to the widget + */ +Scrollbar *Window::GetScrollbar(uint widnum) +{ + NWidgetLeaf *wid = this->GetWidget(widnum); + switch (wid->type) { + case WWT_HSCROLLBAR: return &this->hscroll; + case WWT_SCROLLBAR: return &this->vscroll; + case WWT_SCROLL2BAR: return &this->vscroll2; + default: NOT_REACHED(); + } +} + + /** * Set the window that has the focus * @param w The window to set the focus on -- cgit v1.2.3-54-g00ecf