simplify further

This commit is contained in:
Glenn Maynard
2005-06-19 09:20:30 +00:00
parent a9f0a2158a
commit 8b8c4ceb45
+16 -12
View File
@@ -193,17 +193,6 @@ void ScreenManager::Update( float fDeltaTime )
if( m_sDelayedScreen.size() != 0 ) if( m_sDelayedScreen.size() != 0 )
{ {
/* We have a screen to display. Delete the current screens and load it.
* If DelayedScreenLoad is true, clear the old screen first; this lowers
* memory requirements, but results in redundant loads as we unload common
* data. (If we don't unload the old screen here, it'll be deleted when
* we load the new screen.) */
if( PREFSMAN->m_bDelayedScreenLoad )
{
ClearScreenStack();
EmptyDeleteQueue();
}
LoadDelayedScreen(); LoadDelayedScreen();
} }
} }
@@ -372,7 +361,17 @@ void ScreenManager::SetNewScreen( const CString &sScreenName )
void ScreenManager::LoadDelayedScreen() void ScreenManager::LoadDelayedScreen()
{ {
m_bZeroNextUpdate = true; /*
* We have a screen to display. Delete the current screens and load it.
* If DelayedScreenLoad is true, clear the old screen first; this lowers
* memory requirements, but results in redundant loads as we unload common
* data. If we don't unload the old screen here, it'll be deleted below.
*/
if( PREFSMAN->m_bDelayedScreenLoad )
{
ClearScreenStack();
EmptyDeleteQueue();
}
retry: retry:
CString sScreenName = m_sDelayedScreen; CString sScreenName = m_sDelayedScreen;
@@ -436,10 +435,15 @@ retry:
if( bWasOnSystemMenu && !bIsOnSystemMenu ) if( bWasOnSystemMenu && !bIsOnSystemMenu )
PREFSMAN->SaveGlobalPrefsToDisk(); PREFSMAN->SaveGlobalPrefsToDisk();
if( !PREFSMAN->m_bDelayedScreenLoad )
{
ClearScreenStack(); ClearScreenStack();
EmptyDeleteQueue();
}
LOG->Trace("... SetFromNewScreen"); LOG->Trace("... SetFromNewScreen");
SetFromNewScreen( pNewScreen ); SetFromNewScreen( pNewScreen );
m_bZeroNextUpdate = true;
} }
void ScreenManager::AddNewScreenToTop( const CString &sScreenName ) void ScreenManager::AddNewScreenToTop( const CString &sScreenName )