- geometry::Vector<int> labelOffset(iconOffset.X() + + iconSpace, iconOffset.Y());
- if (entries[start + i].enabled) {
- font->DrawString(entries[start + i].title, dest, position + labelOffset, charsPerEntry);
- } else {
- disabledFont->DrawString(entries[start + i].title, dest, position + labelOffset, charsPerEntry);
+ geometry::Vector<int> labelOffset(iconOffset.X() + iconSpace, iconOffset.Y());
+ const Font *usedFont(entries[start + i].enabled ? font : disabledFont);
+ usedFont->DrawString(entries[start + i].title, dest, position + labelOffset, charsPerEntry);
+
+ if (charsPerNumber) {
+ geometry::Vector<int> delimiterOffset(labelOffset.X() + charsPerEntry * usedFont->CharWidth(), labelOffset.Y());
+ usedFont->DrawChar(delimiter, dest, position + delimiterOffset);
+ geometry::Vector<int> numberOffset(delimiterOffset.X() + usedFont->CharWidth(), delimiterOffset.Y());
+ usedFont->DrawNumber(entries[start + i].number, dest, position + numberOffset);