- Put scrollbar inside of list widget

- Use resize() instead of setPos() and setSize() where applicable

svn-id: r22646
This commit is contained in:
Eugene Sandulenko 2006-05-26 01:49:56 +00:00
parent 12461c3ca0
commit 5fee4afc32
3 changed files with 11 additions and 13 deletions

View File

@ -748,10 +748,8 @@ void HelpDialog::handleScreenChanged() {
int dscH = g_gui.evaluator()->getVar("scummhelp_dsc.h");
for (int i = 0; i < HELP_NUM_LINES; i++) {
_key[i]->setPos(keyX, keyYoff + lineHeight * (i + 2));
_key[i]->setSize(keyW, keyH);
_dsc[i]->setPos(dscX, dscYoff + lineHeight * (i + 2));
_dsc[i]->setSize(dscW, dscH);
_key[i]->resize(keyX, keyYoff + lineHeight * (i + 2), keyW, keyH);
_dsc[i]->resize(dscX, dscYoff + lineHeight * (i + 2), dscW, dscH);
}
displayKeyBindings();

View File

@ -31,7 +31,6 @@ namespace GUI {
ListWidget::ListWidget(GuiObject *boss, String name)
: EditableWidget(boss, name), CommandSender(boss) {
int w = g_gui.evaluator()->getVar(_name + ".w");
WidgetSize ws = g_gui.getWidgetSize();
@ -42,13 +41,14 @@ ListWidget::ListWidget(GuiObject *boss, String name)
_hlLeftPadding = g_gui.evaluator()->getVar("ListWidget.hlLeftPadding", 0);
_hlRightPadding = g_gui.evaluator()->getVar("ListWidget.hlRightPadding", 0);
int scrollBarWidth;
if (ws == kBigWidgetSize) {
_w = w - kBigScrollBarWidth;
scrollBarWidth = kBigScrollBarWidth;
} else {
_w = w - kNormalScrollBarWidth;
scrollBarWidth = kNormalScrollBarWidth;
}
_scrollBar = new ScrollBarWidget(boss, _x + _w, _y, (ws == kBigWidgetSize ? kBigScrollBarWidth : kNormalScrollBarWidth), _h);
_scrollBar = new ScrollBarWidget(this, _w - scrollBarWidth, 0, scrollBarWidth, _h);
_scrollBar->setTarget(this);
_flags = WIDGET_ENABLED | WIDGET_CLEARBG | WIDGET_RETAIN_FOCUS | WIDGET_WANT_TICKLE;
@ -451,10 +451,11 @@ void ListWidget::handleScreenChanged() {
_hlLeftPadding = g_gui.evaluator()->getVar("ListWidget.hlLeftPadding", 0);
_hlRightPadding = g_gui.evaluator()->getVar("ListWidget.hlRightPadding", 0);
int scrollBarWidth;
if (ws == kBigWidgetSize) {
_w = w - kBigScrollBarWidth;
scrollBarWidth = kBigScrollBarWidth;
} else {
_w = w - kNormalScrollBarWidth;
scrollBarWidth = kNormalScrollBarWidth;
}
_entriesPerPage = (_h - _topPadding - _bottomPadding) / kLineHeight;
@ -465,7 +466,7 @@ void ListWidget::handleScreenChanged() {
for (int i = 0; i < _entriesPerPage; i++)
_textWidth[i] = 0;
_scrollBar->resize(_x + _w, _y, (ws == kBigWidgetSize ? kBigScrollBarWidth : kNormalScrollBarWidth), _h);
_scrollBar->resize(_w - scrollBarWidth, 0, scrollBarWidth, _h);
scrollBarRecalc();
}

View File

@ -112,8 +112,7 @@ void ConsoleDialog::init() {
scrollBarWidth = kBigScrollBarWidth;
else
scrollBarWidth = kNormalScrollBarWidth;
_scrollBar->setPos(_w - scrollBarWidth - 1, 0);
_scrollBar->setSize(scrollBarWidth, _h);
_scrollBar->resize(_w - scrollBarWidth - 1, 0, scrollBarWidth, _h);
_drawingHints = THEME_HINT_FIRST_DRAW | THEME_HINT_SAVE_BACKGROUND;