(svn r20451) -Codechange: Add helper function Window::GetScrollbar() to get the Scrollbar belonging to a scrollbar widget.

This commit is contained in:
frosch
2010-08-12 06:40:28 +00:00
parent cfde445ec9
commit 629b350a71
2 changed files with 35 additions and 0 deletions

View File

@@ -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<NWidgetLeaf>(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<NWidgetLeaf>(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