#include "stdafx.h" /* ----------------------------------------------------------------------------- Class: ScreenOptionsMenu Desc: See header. Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved. Chris Danford ----------------------------------------------------------------------------- */ #include "ScreenOptionsMenu.h" #include "RageTextureManager.h" #include "RageUtil.h" #include "RageSoundManager.h" #include "ScreenManager.h" #include "PrefsManager.h" #include "GameConstantsAndTypes.h" #include "StepMania.h" #include "PrefsManager.h" #include "RageLog.h" #include "AnnouncerManager.h" #include "GameManager.h" #include "GameState.h" #include "ThemeManager.h" enum { OM_INPUT = 0, OM_MACHINE, OM_GRAPHIC, OM_GAMEPLAY, OM_APPEARANCE, NUM_OPTIONS_MENU_LINES }; OptionRowData g_OptionsMenuLines[NUM_OPTIONS_MENU_LINES] = { { "", 1, {"Input Options"} }, { "", 1, {"Machine Options"} }, { "", 1, {"Graphic Options"} }, { "", 1, {"Gameplay Options"} }, { "", 1, {"Appearance Options"} }, }; ScreenOptionsMenu::ScreenOptionsMenu() : ScreenOptions( THEME->GetPathTo("BGAnimations","options menu"), THEME->GetPathTo("Graphics","options menu page"), THEME->GetPathTo("Graphics","options menu top edge") ) { LOG->Trace( "ScreenOptionsMenu::ScreenOptionsMenu()" ); // fill g_InputOptionsLines with explanation text for( int i=0; iGetMetric("ScreenOptionsMenu",sLineName) ); } Init( INPUTMODE_BOTH, g_OptionsMenuLines, NUM_OPTIONS_MENU_LINES, false ); m_Menu.SetTimer( 99 ); m_Menu.StopTimer(); SOUNDMAN->PlayMusic( THEME->GetPathTo("Sounds","options menu music") ); } void ScreenOptionsMenu::ImportOptions() { } void ScreenOptionsMenu::ExportOptions() { } void ScreenOptionsMenu::GoToPrevState() { SCREENMAN->SetNewScreen( "ScreenTitleMenu" ); } void ScreenOptionsMenu::GoToNextState() { switch( this->m_iCurrentRow[0] ) { case OM_INPUT: SCREENMAN->SetNewScreen("ScreenInputOptions"); break; case OM_MACHINE: SCREENMAN->SetNewScreen("ScreenMachineOptions"); break; case OM_GRAPHIC: SCREENMAN->SetNewScreen("ScreenGraphicOptions"); break; case OM_GAMEPLAY: SCREENMAN->SetNewScreen("ScreenGameplayOptions"); break; case OM_APPEARANCE: SCREENMAN->SetNewScreen("ScreenAppearanceOptions"); break; default: // Exit SCREENMAN->SetNewScreen("ScreenTitleMenu"); } }