diff options
author | Matthew Hoops | 2012-04-11 09:33:43 -0400 |
---|---|---|
committer | Matthew Hoops | 2012-04-11 09:33:43 -0400 |
commit | f087f20fa247ef780cb5172319064dec51f2cac5 (patch) | |
tree | 3f589977eadb1531bd2d3ae976e6aa3fbcde038d /engines/pegasus | |
parent | 6ae0ff377894ea3188fc1f2c9ffc5c75a12907dd (diff) | |
download | scummvm-rg350-f087f20fa247ef780cb5172319064dec51f2cac5.tar.gz scummvm-rg350-f087f20fa247ef780cb5172319064dec51f2cac5.tar.bz2 scummvm-rg350-f087f20fa247ef780cb5172319064dec51f2cac5.zip |
PEGASUS: Fix the pegasus biochip recall button highlight
Diffstat (limited to 'engines/pegasus')
-rw-r--r-- | engines/pegasus/items/biochips/pegasuschip.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/engines/pegasus/items/biochips/pegasuschip.cpp b/engines/pegasus/items/biochips/pegasuschip.cpp index 1e3e0d7a88..320662af06 100644 --- a/engines/pegasus/items/biochips/pegasuschip.cpp +++ b/engines/pegasus/items/biochips/pegasuschip.cpp @@ -155,7 +155,17 @@ void PegasusChip::clickInPegasusHotspot() { break; } - setItemState(hiliteState); + // WORKAROUND: The original called setItemState() here. However, + // since we're overriding select() to call setUpPegasusChip(), + // the highlighted frame is never displayed! So, we're manually + // setting the state and selecting the item. Also of note is that + // setItemState() for this class is effectively useless since it + // always gets overriden in the select() function. The only reason + // that this doesn't end in infinite recursion is because setItemState() + // has a check against the current state to make sure you don't call + // select() again. </rant> + _itemState = hiliteState; + BiochipItem::select(); uint32 time = g_system->getMillis(); while (g_system->getMillis() < time + 500) { |