fix new Screens get created 3x after the last GameCommand change

remove complicated GetAndEraseScreen logic and export SELECT_NONE rows if they have focus, otherwise don't export them (fixes InsertCoin row)
This commit is contained in:
Chris Danford
2005-03-30 03:29:35 +00:00
parent 30ec0cdb7d
commit 61a5f51344
7 changed files with 41 additions and 41 deletions
+3 -13
View File
@@ -229,20 +229,10 @@ public:
ListEntries[iFirstSelection].m_sModifiers :
def.choices[iFirstSelection];
}
virtual CString GetAndEraseScreen( int iChoice )
virtual bool HasScreen( int iChoice ) const
{
GameCommand &mc = ListEntries[iChoice];
if( mc.m_sScreen != "" )
{
/* Hack: instead of applying screen commands here, store them in
* m_sNextScreen and apply them after we tween out. If we don't set
* m_sScreen to "", we'll load it twice (once for each player) and
* then again for m_sNextScreen. */
CString sNextScreen = mc.m_sScreen;
mc.m_sScreen = "";
return sNextScreen;
}
return "";
const GameCommand &mc = ListEntries[iChoice];
return !mc.m_sScreen.empty();
}
void FillNoteSkins( OptionRowDefinition &defOut, CString sParam )