[Scummvm-cvs-logs] CVS: scummvm/gui ListWidget.cpp,1.49,1.50 ListWidget.h,1.30,1.31
Max Horn
fingolfin at users.sourceforge.net
Sun May 15 11:23:50 CEST 2005
Update of /cvsroot/scummvm/scummvm/gui
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4211
Modified Files:
ListWidget.cpp ListWidget.h
Log Message:
Use big font in ListWidget if it is in kBigScrollBarWidth mode
Index: ListWidget.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/gui/ListWidget.cpp,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -d -r1.49 -r1.50
--- ListWidget.cpp 15 May 2005 18:02:10 -0000 1.49
+++ ListWidget.cpp 15 May 2005 18:22:44 -0000 1.50
@@ -31,8 +31,14 @@
: EditableWidget(boss, x, y, w, h), CommandSender(boss) {
// TODO: When in kBigWidgetSize mode, use another font
- _w = w - (ws == kBigWidgetSize ? kBigScrollBarWidth : kNormalScrollBarWidth);
- _lineHeight = kLineHeight;
+ if (ws == kBigWidgetSize) {
+ _font = FontMan.getFontByUsage(Graphics::FontManager::kBigGUIFont);
+ _w = w - kBigScrollBarWidth;
+ } else {
+ _font = FontMan.getFontByUsage(Graphics::FontManager::kGUIFont);
+ _w = w - kNormalScrollBarWidth;
+ }
+ _lineHeight = _font->getFontHeight() + 2;
_flags = WIDGET_ENABLED | WIDGET_CLEARBG | WIDGET_RETAIN_FOCUS | WIDGET_WANT_TICKLE;
_type = kListWidget;
@@ -297,6 +303,7 @@
int i, pos, len = _list.size();
Common::String buffer;
int offset, deltax;
+ Graphics::Surface *surf = &g_gui.getScreen();
// Draw a thin frame around the list.
gui->hLine(_x, _y, _x + _w - 1, gui->_color);
@@ -321,8 +328,8 @@
char temp[10];
sprintf(temp, "%2d. ", (pos + _numberingMode));
buffer = temp;
- gui->drawString(buffer, _x + 2, y, _w - 4, textColor);
- offset = gui->getStringWidth(buffer);
+ _font->drawString(surf, buffer, _x + 2, y, _w - 4, textColor);
+ offset = _font->getStringWidth(buffer);
} else {
offset = 0;
}
@@ -334,11 +341,11 @@
adjustOffset();
deltax = -_editScrollOffset;
- gui->drawString(buffer, _x + r.left, y, r.width(), textColor, kTextAlignLeft, deltax, false);
+ _font->drawString(surf, buffer, _x + r.left, y, r.width(), textColor, kTextAlignLeft, deltax, false);
} else {
buffer = _list[pos];
deltax = 0;
- gui->drawString(buffer, _x + r.left, y, r.width(), textColor);
+ _font->drawString(surf, buffer, _x + r.left, y, r.width(), textColor);
}
}
}
@@ -352,7 +359,7 @@
if (_numberingMode != kListNumberingOff) {
char temp[10];
sprintf(temp, "%2d. ", (_selectedItem + _numberingMode));
- r.left += g_gui.getStringWidth(temp);
+ r.left += _font->getStringWidth(temp);
}
return r;
Index: ListWidget.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/gui/ListWidget.h,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -d -r1.30 -r1.31
--- ListWidget.h 15 May 2005 18:02:10 -0000 1.30
+++ ListWidget.h 15 May 2005 18:22:44 -0000 1.31
@@ -57,6 +57,7 @@
ScrollBarWidget *_scrollBar;
int _currentKeyDown;
int _lineHeight;
+ const Graphics::Font *_font;
String _quickSelectStr;
uint32 _quickSelectTime;
More information about the Scummvm-git-logs
mailing list