Use Init() for all screens, so we can set state before the base class

members are loaded--they'll see resets, score finalization, etc.  It
also results in smaller code, due to a g++ bug that causes constructors
to be emitted several times.
This commit is contained in:
Glenn Maynard
2005-02-23 06:29:05 +00:00
parent 1213a2c9b0
commit b51b0cfb4c
100 changed files with 349 additions and 42 deletions
+7 -1
View File
@@ -28,13 +28,19 @@ ScreenPrompt::ScreenPrompt( CString sText, bool bYesNoPrompt, bool bDefaultAnswe
m_pOnYes = OnYes;
m_pOnNo = OnNo;
m_pCallbackData = pCallbackData;
m_sText = sText;
}
void ScreenPrompt::Init()
{
Screen::Init();
m_Background.LoadFromAniDir( THEME->GetPathB("ScreenPrompt","background") );
m_Background.PlayCommand("On");
this->AddChild( &m_Background );
m_textQuestion.LoadFromFont( THEME->GetPathF("Common","normal") );
m_textQuestion.SetText( sText );
m_textQuestion.SetText( m_sText );
m_textQuestion.SetXY( QUESTION_X, QUESTION_Y );
this->AddChild( &m_textQuestion );