[Scummvm-cvs-logs] SF.net SVN: scummvm:[48747] scummvm/trunk/engines/sci/graphics/menu.cpp
m_kiewitz at users.sourceforge.net
m_kiewitz at users.sourceforge.net
Tue Apr 20 17:28:19 CEST 2010
Revision: 48747
http://scummvm.svn.sourceforge.net/scummvm/?rev=48747&view=rev
Author: m_kiewitz
Date: 2010-04-20 15:28:19 +0000 (Tue, 20 Apr 2010)
Log Message:
-----------
SCI: menu - handle right aligned "=" as actual text not as tag marker, also handle "=" as being a supported shortcut key
Modified Paths:
--------------
scummvm/trunk/engines/sci/graphics/menu.cpp
Modified: scummvm/trunk/engines/sci/graphics/menu.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/menu.cpp 2010-04-20 15:10:27 UTC (rev 48746)
+++ scummvm/trunk/engines/sci/graphics/menu.cpp 2010-04-20 15:28:19 UTC (rev 48747)
@@ -99,6 +99,10 @@
while ((curPos < contentSize) && (content[curPos] != ':')) {
switch (content[curPos]) {
case '=': // Set tag
+ // Special case for normal animation speed - they use right aligned "=" for that one, so we ignore it
+ // as being recognized as tag marker
+ if (rightAlignedPos == curPos - 1)
+ break;
if (tagPos)
error("multiple tag markers within one menu-item");
tagPos = curPos;
@@ -221,11 +225,13 @@
// Remove ending space, if there is one. Strangely sometimes there are lone spaces at the end in some games
if (itemEntry->textRightAligned.hasSuffix(" "))
itemEntry->textRightAligned.deleteLastChar();
- // - and + are used sometimes for volume control
+ // - and + are used sometimes for volume control/animation speed, = sometimes for animation speed
if (itemEntry->textRightAligned == "-") {
itemEntry->keyPress = '-';
} else if (itemEntry->textRightAligned == "+") {
itemEntry->keyPress = '+';
+ } else if (itemEntry->textRightAligned == "=") {
+ itemEntry->keyPress = '=';
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list