[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