require "[Screen] Class=foo" so that derived classes can inhereit "Class=" and not have to redefine it

This commit is contained in:
Chris Danford
2005-01-31 02:32:08 +00:00
parent 44f7715e89
commit 55b44767b4
2 changed files with 25 additions and 4 deletions
+24
View File
@@ -189,6 +189,7 @@ BounceJoinMessage=1
FoldOnJoin=1 FoldOnJoin=1
[ScreenSelectStyle] [ScreenSelectStyle]
Class=ScreenSelectStyle
Fallback=ScreenWithMenuElements Fallback=ScreenWithMenuElements
ChoiceNames=1,2,3,4,5 ChoiceNames=1,2,3,4,5
# The "name" here affects the announcer, eg. "ScreenSelectStyle comment single". # The "name" here affects the announcer, eg. "ScreenSelectStyle comment single".
@@ -309,6 +310,7 @@ TimerSeconds=0
TimerStealth=0 TimerStealth=0
[ScreenSelectDifficulty] [ScreenSelectDifficulty]
Class=ScreenSelectDifficulty
Fallback=ScreenWithMenuElements Fallback=ScreenWithMenuElements
ChoiceNames=1,2,3,4,5,6,7,8 ChoiceNames=1,2,3,4,5,6,7,8
Choice1=PlayMode,regular;Difficulty,beginner;name,beginner Choice1=PlayMode,regular;Difficulty,beginner;name,beginner
@@ -436,6 +438,7 @@ OKOffCommand=sleep,0.2;linear,0.3;zoom,0
DisabledColor=0.2,0.2,0.2,1 DisabledColor=0.2,0.2,0.2,1
[ScreenSelectGroup] [ScreenSelectGroup]
Class=ScreenSelectGroup
NextScreen=ScreenInstructions NextScreen=ScreenInstructions
PrevScreen=ScreenTitleBranch PrevScreen=ScreenTitleBranch
Fallback=ScreenWithMenuElements Fallback=ScreenWithMenuElements
@@ -499,6 +502,7 @@ CropWidth=146
InitCommand=horizalign,left;vertalign,top;shadowlength,2;zoom,0.5; InitCommand=horizalign,left;vertalign,top;shadowlength,2;zoom,0.5;
[ScreenInstructions] [ScreenInstructions]
Class=ScreenInstructions
Fallback=ScreenWithMenuElements Fallback=ScreenWithMenuElements
NextScreen=ScreenSelectCharacter NextScreen=ScreenSelectCharacter
PrevScreen=ScreenTitleBranch PrevScreen=ScreenTitleBranch
@@ -507,6 +511,7 @@ StyleIcon=1
MemoryCardIcons=1 MemoryCardIcons=1
[ScreenSelectMusic] [ScreenSelectMusic]
Class=ScreenSelectMusic
Fallback=ScreenWithMenuElements Fallback=ScreenWithMenuElements
NonPresenceP1X=-128 NonPresenceP1X=-128
NonPresenceP1Y=SCREEN_CENTER_Y+0 NonPresenceP1Y=SCREEN_CENTER_Y+0
@@ -983,6 +988,7 @@ StyleIcon=0
MemoryCardIcons=0 MemoryCardIcons=0
[ScreenStage] [ScreenStage]
Class=ScreenStage
NextScreen=@SelectGameplayScreen() NextScreen=@SelectGameplayScreen()
PrevScreen=@SongSelectionScreen() PrevScreen=@SongSelectionScreen()
// This is the minimum delay after the "in" transition before the // This is the minimum delay after the "in" transition before the
@@ -1016,6 +1022,7 @@ OverlayOnCommand=
OverlayOffCommand= OverlayOffCommand=
[ScreenGameplay] [ScreenGameplay]
Class=ScreenGameplay
ShowEvaluationOnFail=0 ShowEvaluationOnFail=0
StaticBGY=SCREEN_CENTER_Y+0 StaticBGY=SCREEN_CENTER_Y+0
StaticBGX=SCREEN_CENTER_X+0 StaticBGX=SCREEN_CENTER_X+0
@@ -2226,7 +2233,9 @@ TextZoom=0.8
NextScreen=ScreenRanking NextScreen=ScreenRanking
[ScreenEditMenu] [ScreenEditMenu]
Class=ScreenEditMenu
Fallback=ScreenWithMenuElements Fallback=ScreenWithMenuElements
PrevScreen=ScreenTitleBranch
ExplanationX=SCREEN_CENTER_X+0 ExplanationX=SCREEN_CENTER_X+0
ExplanationY=SCREEN_CENTER_Y+170 ExplanationY=SCREEN_CENTER_Y+170
ExplanationOnCommand=wrapwidthpixels,900;zoom,0.7 ExplanationOnCommand=wrapwidthpixels,900;zoom,0.7
@@ -2251,6 +2260,7 @@ Line3=Difficulties
Line4=list,RandomModifiers Line4=list,RandomModifiers
[ScreenEditCoursesMenu] [ScreenEditCoursesMenu]
Class=ScreenEditCoursesMenu
Fallback=ScreenWithMenuElements Fallback=ScreenWithMenuElements
NextScreen=ScreenTitleBranch NextScreen=ScreenTitleBranch
ExplanationX=SCREEN_CENTER_X+0 ExplanationX=SCREEN_CENTER_X+0
@@ -2499,6 +2509,7 @@ MoreExitUnselectedP1Command=
MoreExitUnselectedP2Command= MoreExitUnselectedP2Command=
[ScreenMapControllers] [ScreenMapControllers]
Class=ScreenMapControllers
Fallback=ScreenOperatorMenu Fallback=ScreenOperatorMenu
EvenLineIn=addx,-SCREEN_WIDTH;decelerate,0.5;addx,SCREEN_WIDTH; EvenLineIn=addx,-SCREEN_WIDTH;decelerate,0.5;addx,SCREEN_WIDTH;
OddLineIn=addx,SCREEN_WIDTH;decelerate,0.5;addx,-SCREEN_WIDTH; OddLineIn=addx,SCREEN_WIDTH;decelerate,0.5;addx,-SCREEN_WIDTH;
@@ -2506,18 +2517,23 @@ EvenLineOut=stoptweening;accelerate,0.3;addx,-SCREEN_WIDTH;
OddLineOut=stoptweening;accelerate,0.3;addx,SCREEN_WIDTH; OddLineOut=stoptweening;accelerate,0.3;addx,SCREEN_WIDTH;
[ScreenCenterImage] [ScreenCenterImage]
Class=ScreenCenterImage
Fallback=ScreenOperatorMenu Fallback=ScreenOperatorMenu
[ScreenTestInput] [ScreenTestInput]
Class=ScreenTestInput
Fallback=ScreenOperatorMenu Fallback=ScreenOperatorMenu
[ScreenTestLights] [ScreenTestLights]
Class=ScreenTestLights
Fallback=ScreenOperatorMenu Fallback=ScreenOperatorMenu
[ScreenNetworkOptions] [ScreenNetworkOptions]
Class=ScreenNetworkOptions
Fallback=ScreenOperatorMenu Fallback=ScreenOperatorMenu
[ScreenBookkeeping] [ScreenBookkeeping]
Class=ScreenBookkeeping
Fallback=ScreenOperatorMenu Fallback=ScreenOperatorMenu
[ScreenPackages] [ScreenPackages]
@@ -3023,6 +3039,7 @@ Line2=conf,AttractSoundFrequency
Line3=conf,SoundVolume Line3=conf,SoundVolume
[ScreenProfileOptions] [ScreenProfileOptions]
Class=ScreenProfileOptions
Fallback=ScreenOperatorMenu Fallback=ScreenOperatorMenu
Player1Profile= Player1Profile=
Player2Profile= Player2Profile=
@@ -3253,6 +3270,7 @@ Fallback=ScreenAttract
NextScreen=ScreenLogo NextScreen=ScreenLogo
[ScreenLogo] [ScreenLogo]
Class=ScreenLogo
Fallback=ScreenAttract Fallback=ScreenAttract
//Not used in default theme, but without, will cause warning //Not used in default theme, but without, will cause warning
LogoY=0 LogoY=0
@@ -3293,6 +3311,7 @@ DifficultiesToShow=easy,medium
ShowCourseModifiers=0 ShowCourseModifiers=0
[ScreenNameEntry] [ScreenNameEntry]
Class=ScreenNameEntry
TimerX=SCREEN_CENTER_X+0 TimerX=SCREEN_CENTER_X+0
TimerY=SCREEN_CENTER_Y-210 TimerY=SCREEN_CENTER_Y-210
CategoryY=SCREEN_CENTER_Y+190 CategoryY=SCREEN_CENTER_Y+190
@@ -3491,6 +3510,7 @@ NextScreen2=screen,ScreenNetSelectMusic
NextScreen3=screen,ScreenSelectMusic NextScreen3=screen,ScreenSelectMusic
[ScreenPlayerOptions] [ScreenPlayerOptions]
Class=ScreenPlayerOptions
Fallback=ScreenOptions Fallback=ScreenOptions
PrevScreen=@SongSelectionScreen() PrevScreen=@SongSelectionScreen()
NextScreen=ScreenSongOptions NextScreen=ScreenSongOptions
@@ -3542,6 +3562,7 @@ Line4=list,Persp
Line5=Steps Line5=Steps
[ScreenSongOptions] [ScreenSongOptions]
Class=ScreenSongOptions
Fallback=ScreenOptions Fallback=ScreenOptions
PrevScreen=@SelectFirstOptionsScreen() PrevScreen=@SelectFirstOptionsScreen()
NextScreen=ScreenStage NextScreen=ScreenStage
@@ -3587,6 +3608,7 @@ Class=ScreenAttract
NextScreen=ScreenCompany NextScreen=ScreenCompany
[ScreenSelectCharacter] [ScreenSelectCharacter]
Class=ScreenSelectCharacter
Fallback=ScreenWithMenuElements Fallback=ScreenWithMenuElements
TitleP1OnCommand=x,140;y,80;addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6 TitleP1OnCommand=x,140;y,80;addx,-SCREEN_WIDTH*0.6;bounceend,0.5;addx,SCREEN_WIDTH*0.6
TitleP1OffCommand=sleep,0.2;bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6 TitleP1OffCommand=sleep,0.2;bouncebegin,0.5;addx,-SCREEN_WIDTH*0.6
@@ -3878,6 +3900,7 @@ RandomModifiers,1=name,Off
RandomModifiers,2=mod,random;name,Random RandomModifiers,2=mod,random;name,Random
[ScreenReloadSongs] [ScreenReloadSongs]
Class=ScreenReloadSongs
NextScreen=ScreenTitleBranch NextScreen=ScreenTitleBranch
[DancingCharacters] [DancingCharacters]
@@ -3948,6 +3971,7 @@ Fallback=DifficultyMeter
Fallback=DifficultyMeter Fallback=DifficultyMeter
[ScreenEdit] [ScreenEdit]
Class=ScreenEdit
OverlayX=0 OverlayX=0
OverlayY=0 OverlayY=0
OverlayOnCommand= OverlayOnCommand=
+1 -4
View File
@@ -232,10 +232,7 @@ Screen* ScreenManager::MakeNewScreen( const CString &sScreenName )
RageTimer t; RageTimer t;
LOG->Trace( "Loading screen name '%s'", sScreenName.c_str() ); LOG->Trace( "Loading screen name '%s'", sScreenName.c_str() );
CString sClassName = sScreenName; CString sClassName = THEME->GetMetric(sScreenName,"Class");
// Look up the class in the metrics group sName
if( THEME->HasMetric(sClassName,"Class") )
sClassName = THEME->GetMetric(sClassName,"Class");
map<CString,CreateScreenFn>::iterator iter = g_pmapRegistrees->find( sClassName ); map<CString,CreateScreenFn>::iterator iter = g_pmapRegistrees->find( sClassName );
ASSERT_M( iter != g_pmapRegistrees->end(), ssprintf("Screen '%s' has an invalid class '%s'",sScreenName.c_str(),sClassName.c_str()) ) ASSERT_M( iter != g_pmapRegistrees->end(), ssprintf("Screen '%s' has an invalid class '%s'",sScreenName.c_str(),sClassName.c_str()) )