convert the rest to use Preference

This commit is contained in:
Chris Danford
2005-05-16 09:36:32 +00:00
parent dc35060c27
commit e389ba6191
22 changed files with 261 additions and 407 deletions
+1 -1
View File
@@ -1143,7 +1143,7 @@ RageColor Course::GetColor() const
// FIXME: Calculate the meter.
int iMeter = 5;
switch (PREFSMAN->m_iCourseSortOrder)
switch (PREFSMAN->m_CourseSortOrder)
{
case PrefsManager::COURSE_SORT_SONGS:
if( m_entries.size() >= 7 ) return SORT_LEVEL2_COLOR;
+8 -8
View File
@@ -376,21 +376,21 @@ void MemoryCardManager::Update( float fDelta )
FOREACH( UsbStorageDevice, vUnassignedDevices, d )
{
// search for card dir match
if( !PREFSMAN->m_sMemoryCardOsMountPoint[p].empty() &&
d->sOsMountDir.CompareNoCase(PREFSMAN->m_sMemoryCardOsMountPoint[p]) )
if( !PREFSMAN->GetMemoryCardOsMountPoint(p).Get().empty() &&
d->sOsMountDir.CompareNoCase(PREFSMAN->GetMemoryCardOsMountPoint(p).Get()) )
continue; // not a match
// search for USB bus match
if( PREFSMAN->m_iMemoryCardUsbBus[p] != -1 &&
PREFSMAN->m_iMemoryCardUsbBus[p] != d->iBus )
if( PREFSMAN->GetMemoryCardUsbBus(p) != -1 &&
PREFSMAN->GetMemoryCardUsbBus(p) != d->iBus )
continue; // not a match
if( PREFSMAN->m_iMemoryCardUsbPort[p] != -1 &&
PREFSMAN->m_iMemoryCardUsbPort[p] != d->iPort )
if( PREFSMAN->GetMemoryCardUsbPort(p) != -1 &&
PREFSMAN->GetMemoryCardUsbPort(p) != d->iPort )
continue; // not a match
if( PREFSMAN->m_iMemoryCardUsbLevel[p] != -1 &&
PREFSMAN->m_iMemoryCardUsbLevel[p] != d->iLevel )
if( PREFSMAN->GetMemoryCardUsbLevel(p) != -1 &&
PREFSMAN->GetMemoryCardUsbLevel(p) != d->iLevel )
continue; // not a match
LOG->Trace( "Player %i: device match: sDevice: %s, iBus: %d, iLevel: %d, iPort: %d, sOsMountDir: %s",
+14 -7
View File
@@ -663,21 +663,28 @@ void MusicWheel::BuildWheelItemDatas( vector<WheelItemData> &arrayWheelItemDatas
default: ASSERT(0); break;
}
if (PREFSMAN->m_iCourseSortOrder == PrefsManager::COURSE_SORT_SONGS)
if( PREFSMAN->m_CourseSortOrder == PrefsManager::COURSE_SORT_SONGS )
{
CourseUtil::SortCoursePointerArrayByDifficulty( apCourses );
}
else
{
if (PREFSMAN->m_iCourseSortOrder == PrefsManager::COURSE_SORT_METER)
switch( PREFSMAN->m_CourseSortOrder )
{
case PrefsManager::COURSE_SORT_METER:
CourseUtil::SortCoursePointerArrayByAvgDifficulty( apCourses );
if (PREFSMAN->m_iCourseSortOrder == PrefsManager::COURSE_SORT_METER_SUM)
break;
case PrefsManager::COURSE_SORT_METER_SUM:
CourseUtil::SortCoursePointerArrayByTotalDifficulty( apCourses );
if (PREFSMAN->m_iCourseSortOrder == PrefsManager::COURSE_SORT_RANK)
break;
case PrefsManager::COURSE_SORT_RANK:
CourseUtil::SortCoursePointerArrayByRanking( apCourses );
break;
default: ASSERT(0);
}
// since we can't agree, make it an option
if (PREFSMAN->m_bMoveRandomToEnd)
if( PREFSMAN->m_bMoveRandomToEnd )
CourseUtil::MoveRandomToEnd( apCourses );
}
+5
View File
@@ -72,6 +72,11 @@ READFROM_AND_WRITETO( CoinMode, int& )
READFROM_AND_WRITETO( Premium, int& )
READFROM_AND_WRITETO( PrefsManager::Maybe, int& )
READFROM_AND_WRITETO( PrefsManager::CharacterOption, int& )
READFROM_AND_WRITETO( PrefsManager::CourseSortOrders, int& )
READFROM_AND_WRITETO( PrefsManager::GetRankingName, int& )
READFROM_AND_WRITETO( PrefsManager::ScoringTypes, int& )
READFROM_AND_WRITETO( PrefsManager::BoostAppPriority, int& )
READFROM_AND_WRITETO( RageSoundReader_Resample::ResampleQuality, int& )
void IPreference::ReadFrom( const IniFile &ini )
{
+85 -277
View File
@@ -21,7 +21,6 @@ PrefsManager* PREFSMAN = NULL; // global and accessable from anywhere in our pro
const float DEFAULT_SOUND_VOLUME = 1.00f;
const CString DEFAULT_LIGHTS_DRIVER = "Null";
//
// For self-registering prefs
//
@@ -226,10 +225,18 @@ PrefsManager::PrefsManager() :
m_bDisableScreenSaver ( Options, "DisableScreenSaver", true ),
m_sLanguage ( Options, "Language", "" ), // ThemeManager will deal with this invalid language
m_sMemoryCardProfileSubdir ( Options, "MemoryCardProfileSubdir", PRODUCT_NAME ),
m_iProductID ( Options, "ProductID", 1 ),
m_bMemoryCards ( Options, "MemoryCards", false ),
m_iProductID ( Options, "ProductID", 1 ),
m_sDefaultLocalProfileIDP1 ( Options, "DefaultLocalProfileIDP1", "" ),
m_sDefaultLocalProfileIDP2 ( Options, "DefaultLocalProfileIDP2", "" ),
m_bMemoryCards ( Options, "MemoryCards", false ),
m_sMemoryCardOsMountPointP1 ( Options, "MemoryCardOsMountPointP1", "" ),
m_sMemoryCardOsMountPointP2 ( Options, "MemoryCardOsMountPointP2", "" ),
m_iMemoryCardUsbBusP1 ( Options, "MemoryCardUsbBusP1", -1 ),
m_iMemoryCardUsbBusP2 ( Options, "MemoryCardUsbBusP2", -1 ),
m_iMemoryCardUsbPortP1 ( Options, "MemoryCardUsbPortP1", -1 ),
m_iMemoryCardUsbPortP2 ( Options, "MemoryCardUsbPortP2", -1 ),
m_iMemoryCardUsbLevelP1 ( Options, "MemoryCardUsbLevelP1", -1 ),
m_iMemoryCardUsbLevelP2 ( Options, "MemoryCardUsbLevelP2", -1 ),
m_iCenterImageTranslateX ( Options, "CenterImageTranslateX", 0 ),
m_iCenterImageTranslateY ( Options, "CenterImageTranslateY", 0 ),
m_fCenterImageAddWidth ( Options, "CenterImageAddWidth", 0 ),
@@ -243,7 +250,69 @@ PrefsManager::PrefsManager() :
m_iMaxRecentScoresForPlayer ( Options, "MaxRecentScoresForPlayer", 20 ),
m_bAllowMultipleHighScoreWithSameName ( Options, "AllowMultipleHighScoreWithSameName", true ),
m_bCelShadeModels ( Options, "CelShadeModels", false ), // Work-In-Progress.. disable by default.
m_bPreferredSortUsesGroups ( Options, "PreferredSortUsesGroups", true )
m_bPreferredSortUsesGroups ( Options, "PreferredSortUsesGroups", true ),
m_fConstantUpdateDeltaSeconds ( Options, "ConstantUpdateDeltaSeconds",0 ),
m_fPadStickSeconds ( Options, "PadStickSeconds", 0 ),
m_bForceMipMaps ( Options, "ForceMipMaps", 0 ),
m_bTrilinearFiltering ( Options, "TrilinearFiltering", 0 ),
m_bAnisotropicFiltering ( Options, "AnisotropicFiltering", 0 ),
m_bSignProfileData ( Options, "SignProfileData", false ),
m_bEditorShowBGChangesPlay ( Options, "EditorShowBGChangesPlay", false ),
m_CourseSortOrder ( Options, "CourseSortOrder", COURSE_SORT_SONGS ),
m_bMoveRandomToEnd ( Options, "MoveRandomToEnd", false ),
m_bSubSortByNumSteps ( Options, "SubSortByNumSteps", false ),
m_GetRankingName ( Options, "GetRankingName", RANKING_ON ),
m_ScoringType ( Options, "ScoringType", SCORING_MAX2 ),
m_BoostAppPriority ( Options, "BoostAppPriority", BOOST_AUTO ),
m_sAdditionalSongFolders ( Options, "AdditionalSongFolders", "" ),
m_sAdditionalFolders ( Options, "AdditionalFolders", "" ),
m_sLastSeenVideoDriver ( Options, "LastSeenVideoDriver", "" ),
m_sLastSeenInputDevices ( Options, "LastSeenInputDevices", "" ),
#if defined(WIN32)
m_iLastSeenMemory ( Options, "LastSeenMemory", 0 ),
#endif
m_sVideoRenderers ( Options, "VideoRenderers", "" ), // StepMania.cpp sets these on first run:
m_bSmoothLines ( Options, "SmoothLines", false ),
m_sSoundDrivers ( Options, "SoundDrivers", "" ),
m_iSoundWriteAhead ( Options, "SoundWriteAhead", 0 ),
m_iSoundDevice ( Options, "SoundDevice", "" ),
m_fSoundVolume ( Options, "SoundVolume", -1 ), // default
m_SoundResampleQuality ( Options, "SoundResampleQuality", RageSoundReader_Resample::RESAMP_NORMAL ),
m_sInputDrivers ( Options, "InputDrivers", "" ),
m_sMovieDrivers ( Options, "MovieDrivers", "" ),
m_sLightsDriver ( Options, "LightsDriver", "" ),
m_sLightsStepsDifficulty ( Options, "LightsStepsDifficulty", "medium" ),
m_bBlinkGameplayButtonLightsOnNote ( Options, "BlinkGameplayButtonLightsOnNote",false ),
m_bAllowUnacceleratedRenderer ( Options, "AllowUnacceleratedRenderer",false ),
m_bThreadedInput ( Options, "ThreadedInput", true ),
m_bThreadedMovieDecode ( Options, "ThreadedMovieDecode", true ),
m_bScreenTestMode ( Options, "ScreenTestMode", false ),
m_sMachineName ( Options, "MachineName", "" ),
m_sIgnoredMessageWindows ( Options, "IgnoredMessageWindows", "" ),
m_sCoursesToShowRanking ( Options, "CoursesToShowRanking", "" ),
/* Debug: */
m_bLogToDisk ( Options, "LogToDisk", true ),
m_bForceLogFlush ( Options, "ForceLogFlush", false ),
m_bShowLogOutput ( Options, "ShowLogOutput", false ),
m_bTimestamping ( Options, "Timestamping", false ),
m_bLogSkips ( Options, "LogSkips", false ),
m_bLogCheckpoints ( Options, "LogCheckpoints", false ),
m_bShowLoadingWindow ( Options, "ShowLoadingWindow", true ),
/* Game-specific prefs: */
m_sDefaultModifiers ( Options, "DefaultModifiers", "" )
#if defined(XBOX)
,
m_bEnableVirtualMemory ( Options, "EnableVirtualMemory", true ),
m_iPageFileSize ( Options, "PageFileSize", 384 ),
m_iPageSize ( Options, "PageSize", 16 ),
m_iPageThreshold ( Options, "PageThreshold", 8 ),
m_bLogVirtualMemory ( Options, "LogVirtualMemory", false )
#endif
{
Init();
ReadGlobalPrefsFromDisk();
@@ -251,88 +320,6 @@ PrefsManager::PrefsManager() :
void PrefsManager::Init()
{
m_fConstantUpdateDeltaSeconds = 0;
m_iBoostAppPriority = -1;
m_bSmoothLines = false;
// default to old sort order
m_iCourseSortOrder = COURSE_SORT_SONGS;
m_bMoveRandomToEnd = false;
m_bSubSortByNumSteps = false;
m_iScoringType = SCORING_MAX2;
m_iGetRankingName = RANKING_ON;
m_fPadStickSeconds = 0;
m_bForceMipMaps = false;
m_bTrilinearFiltering = false;
m_bAnisotropicFiltering = false;
g_bAutoRestart = false;
m_bSignProfileData = false;
m_bEditorShowBGChangesPlay = false;
m_sSoundDrivers = DEFAULT_SOUND_DRIVER_LIST;
/* Number of frames to write ahead; usually 44100 frames per second.
* (Number of millisec would be more flexible, but it's more useful to
* specify numbers directly.) This is purely a troubleshooting option
* and is not honored by all sound drivers. */
m_iSoundWriteAhead = 0;
m_iSoundDevice = "";
m_fSoundVolume = DEFAULT_SOUND_VOLUME;
m_iSoundResampleQuality = RageSoundReader_Resample::RESAMP_NORMAL;
m_sInputDrivers = DEFAULT_INPUT_DRIVER_LIST;
m_sMovieDrivers = DEFAULT_MOVIE_DRIVER_LIST;
// StepMania.cpp sets these on first run:
m_sVideoRenderers = "";
#if defined(WIN32)
m_iLastSeenMemory = 0;
#endif
m_sLightsDriver = DEFAULT_LIGHTS_DRIVER;
m_sLightsStepsDifficulty = "medium";
m_bBlinkGameplayButtonLightsOnNote = false;
m_bAllowUnacceleratedRenderer = false;
m_bThreadedInput = true;
m_bThreadedMovieDecode = true;
m_bScreenTestMode = false;
m_sMachineName = "NoName";
m_sIgnoredMessageWindows = "";
m_sCoursesToShowRanking = "";
m_bLogToDisk = true;
m_bForceLogFlush = false;
#ifdef DEBUG
m_bShowLogOutput = true;
#else
m_bShowLogOutput = false;
#endif
m_bTimestamping = false;
m_bLogSkips = false;
m_bLogCheckpoints = false;
m_bShowLoadingWindow = true;
FOREACH_PlayerNumber( p )
{
m_iMemoryCardUsbBus[p] = -1;
m_iMemoryCardUsbPort[p] = -1;
m_iMemoryCardUsbLevel[p] = -1;
}
#if defined(XBOX)
m_bEnableVirtualMemory = true;
m_iPageFileSize = 384;
m_iPageSize = 16;
m_iPageThreshold = 8;
m_bLogVirtualMemory = false;
#endif
FOREACHS_CONST( IPreference*, *SubscriptionManager<IPreference>::s_pSubscribers, p )
(*p)->LoadDefault();
}
@@ -370,89 +357,13 @@ void PrefsManager::ReadPrefsFromFile( CString sIni )
void PrefsManager::ReadGlobalPrefsFromIni( const IniFile &ini )
{
ini.GetValue( "Options", "ConstantUpdateDeltaSeconds", m_fConstantUpdateDeltaSeconds );
ini.GetValue( "Options", "SoundDrivers", m_sSoundDrivers );
ini.GetValue( "Options", "SoundWriteAhead", m_iSoundWriteAhead );
ini.GetValue( "Options", "SoundDevice", m_iSoundDevice );
ini.GetValue( "Options", "InputDrivers", m_sInputDrivers );
ini.GetValue( "Options", "MovieDrivers", m_sMovieDrivers );
ini.GetValue( "Options", "SoundVolume", m_fSoundVolume );
ini.GetValue( "Options", "LightsDriver", m_sLightsDriver );
ini.GetValue( "Options", "SoundResampleQuality", m_iSoundResampleQuality );
m_iCoinsPerCredit.Set( max(m_iCoinsPerCredit.Get(),1) );
ini.GetValue( "Options", "BoostAppPriority", m_iBoostAppPriority );
ini.GetValue( "Options", "LightsStepsDifficulty", m_sLightsStepsDifficulty );
ini.GetValue( "Options", "BlinkGameplayButtonLightsOnNote", m_bBlinkGameplayButtonLightsOnNote );
ini.GetValue( "Options", "AllowUnacceleratedRenderer", m_bAllowUnacceleratedRenderer );
ini.GetValue( "Options", "ThreadedInput", m_bThreadedInput );
ini.GetValue( "Options", "ThreadedMovieDecode", m_bThreadedMovieDecode );
ini.GetValue( "Options", "ScreenTestMode", m_bScreenTestMode );
ini.GetValue( "Options", "MachineName", m_sMachineName );
ini.GetValue( "Options", "IgnoredMessageWindows", m_sIgnoredMessageWindows );
ini.GetValue( "Options", "CourseSortOrder", (int&)m_iCourseSortOrder );
ini.GetValue( "Options", "MoveRandomToEnd", m_bMoveRandomToEnd );
ini.GetValue( "Options", "SubSortByNumSteps", m_bSubSortByNumSteps );
ini.GetValue( "Options", "ScoringType", (int&)m_iScoringType );
ini.GetValue( "Options", "VideoRenderers", m_sVideoRenderers );
ini.GetValue( "Options", "LastSeenVideoDriver", m_sLastSeenVideoDriver );
ini.GetValue( "Options", "LastSeenInputDevices", m_sLastSeenInputDevices );
#if defined(WIN32)
ini.GetValue( "Options", "LastSeenMemory", m_iLastSeenMemory );
#endif
ini.GetValue( "Options", "CoursesToShowRanking", m_sCoursesToShowRanking );
ini.GetValue( "Options", "GetRankingName", (int&)m_iGetRankingName);
ini.GetValue( "Options", "SmoothLines", m_bSmoothLines );
FOREACH_PlayerNumber( p )
{
ini.GetValue( "Options", ssprintf("DefaultLocalProfileIDP%d",p+1), m_sDefaultLocalProfileID[p] );
ini.GetValue( "Options", ssprintf("MemoryCardOsMountPointP%d",p+1), m_sMemoryCardOsMountPoint[p] );
FixSlashesInPlace( m_sMemoryCardOsMountPoint[p] );
ini.GetValue( "Options", ssprintf("MemoryCardUsbBusP%d",p+1), m_iMemoryCardUsbBus[p] );
ini.GetValue( "Options", ssprintf("MemoryCardUsbPortP%d",p+1), m_iMemoryCardUsbPort[p] );
ini.GetValue( "Options", ssprintf("MemoryCardUsbLevelP%d",p+1), m_iMemoryCardUsbLevel[p] );
}
ini.GetValue( "Options", "PadStickSeconds", m_fPadStickSeconds );
ini.GetValue( "Options", "ForceMipMaps", m_bForceMipMaps );
ini.GetValue( "Options", "TrilinearFiltering", m_bTrilinearFiltering );
ini.GetValue( "Options", "AnisotropicFiltering", m_bAnisotropicFiltering );
ini.GetValue( "Options", "AutoRestart", g_bAutoRestart );
ini.GetValue( "Options", "SignProfileData", m_bSignProfileData );
ini.GetValue( "Editor", "ShowBGChangesPlay", m_bEditorShowBGChangesPlay );
ini.GetValue( "Options", "AdditionalSongFolders", m_sAdditionalSongFolders );
ini.GetValue( "Options", "AdditionalFolders", m_sAdditionalFolders );
FixSlashesInPlace(m_sAdditionalSongFolders);
FixSlashesInPlace(m_sAdditionalFolders);
#if defined(XBOX)
ini.GetValue( "Options", "EnableVirtualMemory", m_bEnableVirtualMemory );
ini.GetValue( "Options", "PageFileSize", m_iPageFileSize );
ini.GetValue( "Options", "PageSize", m_iPageSize );
ini.GetValue( "Options", "PageThreshold", m_iPageThreshold );
ini.GetValue( "Debug", "LogVirtualMemory", m_bLogVirtualMemory );
#endif
ini.GetValue( "Debug", "LogToDisk", m_bLogToDisk );
ini.GetValue( "Debug", "ForceLogFlush", m_bForceLogFlush );
ini.GetValue( "Debug", "ShowLogOutput", m_bShowLogOutput );
ini.GetValue( "Debug", "Timestamping", m_bTimestamping );
ini.GetValue( "Debug", "LogSkips", m_bLogSkips );
ini.GetValue( "Debug", "LogCheckpoints", m_bLogCheckpoints );
ini.GetValue( "Debug", "ShowLoadingWindow", m_bShowLoadingWindow );
FOREACHS_CONST( IPreference*, *SubscriptionManager<IPreference>::s_pSubscribers, p )
(*p)->ReadFrom( ini );
// validate
m_iSongsPerPlay.Set( clamp(m_iSongsPerPlay.Get(),0,MAX_SONGS_PER_PLAY) );
FOREACH_PlayerNumber( pn )
GetMemoryCardOsMountPoint(pn).Set( FixSlashes(GetMemoryCardOsMountPoint(pn)) );
}
void PrefsManager::SaveGlobalPrefsToDisk() const
@@ -464,120 +375,17 @@ void PrefsManager::SaveGlobalPrefsToDisk() const
void PrefsManager::SaveGlobalPrefsToIni( IniFile &ini ) const
{
ini.SetValue( "Options", "ConstantUpdateDeltaSeconds", m_fConstantUpdateDeltaSeconds );
ini.SetValue( "Options", "BackgroundMode", m_BackgroundMode);
ini.SetValue( "Options", "NumBackgrounds", m_iNumBackgrounds);
ini.SetValue( "Options", "BGBrightness", m_fBGBrightness );
ini.SetValue( "Options", "JudgeWindowScale", m_fJudgeWindowScale );
ini.SetValue( "Options", "JudgeWindowAdd", m_fJudgeWindowAdd );
ini.SetValue( "Options", "JudgeWindowSecondsMarvelous", m_fJudgeWindowSecondsMarvelous );
ini.SetValue( "Options", "JudgeWindowSecondsPerfect", m_fJudgeWindowSecondsPerfect );
ini.SetValue( "Options", "JudgeWindowSecondsGreat", m_fJudgeWindowSecondsGreat );
ini.SetValue( "Options", "JudgeWindowSecondsGood", m_fJudgeWindowSecondsGood );
ini.SetValue( "Options", "JudgeWindowSecondsBoo", m_fJudgeWindowSecondsBoo );
ini.SetValue( "Options", "JudgeWindowSecondsOK", m_fJudgeWindowSecondsOK );
ini.SetValue( "Options", "JudgeWindowSecondsRoll", m_fJudgeWindowSecondsRoll );
ini.SetValue( "Options", "JudgeWindowSecondsMine", m_fJudgeWindowSecondsMine );
ini.SetValue( "Options", "JudgeWindowSecondsAttack", m_fJudgeWindowSecondsAttack );
ini.SetValue( "Options", "LifeDifficultyScale", m_fLifeDifficultyScale );
ini.SetValue( "Options", "HiddenSongs", m_bHiddenSongs );
ini.SetValue( "Options", "Vsync", m_bVsync );
ini.SetValue( "Options", "Interlaced", m_bInterlaced );
ini.SetValue( "Options", "PAL", m_bPAL );
ini.SetValue( "Options", "DelayedTextureDelete", m_bDelayedTextureDelete );
ini.SetValue( "Options", "TexturePreload", m_bTexturePreload );
ini.SetValue( "Options", "DelayedScreenLoad", m_bDelayedScreenLoad );
ini.SetValue( "Options", "DelayedModelDelete", m_bDelayedModelDelete );
ini.SetValue( "Options", "FastLoad", m_bFastLoad );
ini.SetValue( "Options", "SoundResampleQuality", m_iSoundResampleQuality );
ini.SetValue( "Options", "BoostAppPriority", m_iBoostAppPriority );
ini.SetValue( "Options", "LightsStepsDifficulty", m_sLightsStepsDifficulty );
ini.SetValue( "Options", "BlinkGameplayButtonLightsOnNote", m_bBlinkGameplayButtonLightsOnNote );
ini.SetValue( "Options", "AllowUnacceleratedRenderer", m_bAllowUnacceleratedRenderer );
ini.SetValue( "Options", "ThreadedInput", m_bThreadedInput );
ini.SetValue( "Options", "ThreadedMovieDecode", m_bThreadedMovieDecode );
ini.SetValue( "Options", "ScreenTestMode", m_bScreenTestMode );
ini.SetValue( "Options", "MachineName", m_sMachineName );
ini.SetValue( "Options", "IgnoredMessageWindows", m_sIgnoredMessageWindows );
ini.SetValue( "Options", "VideoRenderers", m_sVideoRenderers );
ini.SetValue( "Options", "LastSeenVideoDriver", m_sLastSeenVideoDriver );
ini.SetValue( "Options", "LastSeenInputDevices", m_sLastSeenInputDevices );
#if defined(WIN32)
ini.SetValue( "Options", "LastSeenMemory", m_iLastSeenMemory );
#endif
ini.SetValue( "Options", "CoursesToShowRanking", m_sCoursesToShowRanking );
ini.SetValue( "Options", "GetRankingName", m_iGetRankingName);
ini.SetValue( "Options", "SmoothLines", m_bSmoothLines );
ini.SetValue( "Options", "CourseSortOrder", m_iCourseSortOrder );
ini.SetValue( "Options", "MoveRandomToEnd", m_bMoveRandomToEnd );
ini.SetValue( "Options", "SubSortByNumSteps", m_bSubSortByNumSteps );
ini.SetValue( "Options", "ScoringType", m_iScoringType );
FOREACH_PlayerNumber( p )
{
ini.SetValue( "Options", ssprintf("DefaultLocalProfileIDP%d",p+1), m_sDefaultLocalProfileID[p] );
ini.SetValue( "Options", ssprintf("MemoryCardOsMountPointP%d",p+1), m_sMemoryCardOsMountPoint[p] );
ini.SetValue( "Options", ssprintf("MemoryCardUsbBusP%d",p+1), m_iMemoryCardUsbBus[p] );
ini.SetValue( "Options", ssprintf("MemoryCardUsbPortP%d",p+1), m_iMemoryCardUsbPort[p] );
ini.SetValue( "Options", ssprintf("MemoryCardUsbLevelP%d",p+1), m_iMemoryCardUsbLevel[p] );
}
ini.SetValue( "Options", "PadStickSeconds", m_fPadStickSeconds );
ini.SetValue( "Options", "ForceMipMaps", m_bForceMipMaps );
ini.SetValue( "Options", "TrilinearFiltering", m_bTrilinearFiltering );
ini.SetValue( "Options", "AnisotropicFiltering", m_bAnisotropicFiltering );
ini.SetValue( "Options", "AutoRestart", g_bAutoRestart );
ini.SetValue( "Options", "SignProfileData", m_bSignProfileData );
ini.SetValue( "Options", "SoundWriteAhead", m_iSoundWriteAhead );
ini.SetValue( "Options", "SoundDevice", m_iSoundDevice );
ini.SetValue( "Editor", "ShowBGChangesPlay", m_bEditorShowBGChangesPlay );
/* Only write these if they aren't the default. This ensures that we can change
* the default and have it take effect for everyone (except people who
* tweaked this value). */
if(m_sSoundDrivers != DEFAULT_SOUND_DRIVER_LIST)
ini.SetValue ( "Options", "SoundDrivers", m_sSoundDrivers );
if(m_fSoundVolume != DEFAULT_SOUND_VOLUME)
ini.SetValue( "Options", "SoundVolume", m_fSoundVolume );
if(m_sInputDrivers != DEFAULT_INPUT_DRIVER_LIST)
ini.SetValue ( "Options", "InputDrivers", m_sInputDrivers );
if(m_sMovieDrivers != DEFAULT_MOVIE_DRIVER_LIST)
ini.SetValue ( "Options", "MovieDrivers", m_sMovieDrivers );
if(m_sLightsDriver != DEFAULT_LIGHTS_DRIVER)
ini.SetValue( "Options", "LightsDriver", m_sLightsDriver );
ini.SetValue( "Options", "AdditionalSongFolders", m_sAdditionalSongFolders);
ini.SetValue( "Options", "AdditionalFolders", m_sAdditionalFolders);
#if defined(XBOX)
ini.SetValue( "Options", "EnableVirtualMemory", m_bEnableVirtualMemory );
ini.SetValue( "Options", "PageFileSize", m_iPageFileSize );
ini.SetValue( "Options", "PageSize", m_iPageSize );
ini.SetValue( "Options", "PageThreshold", m_iPageThreshold );
#endif
ini.SetValue( "Debug", "LogToDisk", m_bLogToDisk );
ini.SetValue( "Debug", "ForceLogFlush", m_bForceLogFlush );
ini.SetValue( "Debug", "ShowLogOutput", m_bShowLogOutput );
ini.SetValue( "Debug", "Timestamping", m_bTimestamping );
ini.SetValue( "Debug", "LogSkips", m_bLogSkips );
ini.SetValue( "Debug", "LogCheckpoints", m_bLogCheckpoints );
ini.SetValue( "Debug", "ShowLoadingWindow", m_bShowLoadingWindow );
#if defined(XBOX)
ini.SetValue( "Debug", "LogVirtualMemory", m_bLogVirtualMemory );
#endif
FOREACHS_CONST( IPreference*, *SubscriptionManager<IPreference>::s_pSubscribers, p )
(*p)->WriteTo( ini );
}
// wrappers
CString PrefsManager::GetSoundDrivers() { return m_sSoundDrivers.Get().empty() ? (CString)DEFAULT_SOUND_DRIVER_LIST : m_sSoundDrivers; }
float PrefsManager::GetSoundVolume() { return m_fSoundVolume==-1 ? DEFAULT_SOUND_VOLUME : m_fSoundVolume; }
CString PrefsManager::GetInputDrivers() { return m_sInputDrivers.Get().empty() ? (CString)DEFAULT_INPUT_DRIVER_LIST : m_sInputDrivers; }
CString PrefsManager::GetMovieDrivers() { return m_sMovieDrivers.Get().empty() ? (CString)DEFAULT_MOVIE_DRIVER_LIST : m_sMovieDrivers; }
CString PrefsManager::GetLightsDriver() { return m_sLightsDriver.Get().empty() ? (CString)DEFAULT_LIGHTS_DRIVER : m_sLightsDriver; }
// lua start
#include "LuaBinding.h"
+84 -56
View File
@@ -7,6 +7,7 @@
#include "GameConstantsAndTypes.h"
#include "Grade.h" // for NUM_GRADE_TIERS
#include "Preference.h"
#include "RageSoundReader_Resample.h" // for ResampleQuality
class IniFile;
const int MAX_SONGS_PER_PLAY = 7;
@@ -206,12 +207,22 @@ public:
Preference<CString> m_sLanguage;
Preference<CString> m_sMemoryCardProfileSubdir; // the directory on a memory card to look in for a profile
Preference<int> m_iProductID; // Saved in HighScore to track what software version a score came from.
CString m_sDefaultLocalProfileID[NUM_PLAYERS];
Preference<CString> m_sDefaultLocalProfileIDP1, m_sDefaultLocalProfileIDP2;
Preference<CString>& GetDefaultLocalProfileID( PlayerNumber pn )
{ switch(pn) { case PLAYER_1: return m_sDefaultLocalProfileIDP1; case PLAYER_2: return m_sDefaultLocalProfileIDP2; default: ASSERT(0); } }
Preference<bool> m_bMemoryCards;
CString m_sMemoryCardOsMountPoint[NUM_PLAYERS]; // if set, always use the device that mounts to this point
int m_iMemoryCardUsbBus[NUM_PLAYERS]; // look for this bus when assigning cards. -1 = match any
int m_iMemoryCardUsbPort[NUM_PLAYERS]; // look for this port when assigning cards. -1 = match any
int m_iMemoryCardUsbLevel[NUM_PLAYERS]; // look for this level when assigning cards. -1 = match any
Preference<CString> m_sMemoryCardOsMountPointP1, m_sMemoryCardOsMountPointP2; // if set, always use the device that mounts to this point
Preference<CString>& GetMemoryCardOsMountPoint( PlayerNumber pn )
{ switch(pn) { case PLAYER_1: return m_sMemoryCardOsMountPointP1; case PLAYER_2: return m_sMemoryCardOsMountPointP2; default: ASSERT(0); } }
Preference<int> m_iMemoryCardUsbBusP1, m_iMemoryCardUsbBusP2; // look for this bus when assigning cards. -1 = match any
Preference<int>& GetMemoryCardUsbBus( PlayerNumber pn )
{ switch(pn) { case PLAYER_1: return m_iMemoryCardUsbBusP1; case PLAYER_2: return m_iMemoryCardUsbBusP2; default: ASSERT(0); } }
Preference<int> m_iMemoryCardUsbPortP1, m_iMemoryCardUsbPortP2; // look for this port when assigning cards. -1 = match any
Preference<int>& GetMemoryCardUsbPort( PlayerNumber pn )
{ switch(pn) { case PLAYER_1: return m_iMemoryCardUsbPortP1; case PLAYER_2: return m_iMemoryCardUsbPortP2; default: ASSERT(0); } }
Preference<int> m_iMemoryCardUsbLevelP1, m_iMemoryCardUsbLevelP2; // look for this level when assigning cards. -1 = match any
Preference<int>& GetMemoryCardUsbLevel( PlayerNumber pn )
{ switch(pn) { case PLAYER_1: return m_iMemoryCardUsbLevelP1; case PLAYER_2: return m_iMemoryCardUsbLevelP2; default: ASSERT(0); } }
Preference<int> m_iCenterImageTranslateX;
Preference<int> m_iCenterImageTranslateY;
Preference<int> m_fCenterImageAddWidth;
@@ -229,90 +240,107 @@ public:
/* experimental: force a specific update rate. This prevents big
* animation jumps on frame skips. */
float m_fConstantUpdateDeltaSeconds; // 0 to disable
Preference<float> m_fConstantUpdateDeltaSeconds; // 0 to disable
// Number of seconds it takes for a button on the controller to release
// after pressed.
float m_fPadStickSeconds;
Preference<float> m_fPadStickSeconds;
// Useful for non 4:3 displays and resolutions < 640x480 where texels don't
// map directly to pixels.
bool m_bForceMipMaps;
bool m_bTrilinearFiltering; // has no effect without mipmaps on
bool m_bAnisotropicFiltering; // has no effect without mipmaps on. Not mutually exclusive with trilinear.
Preference<bool> m_bForceMipMaps;
Preference<bool> m_bTrilinearFiltering; // has no effect without mipmaps on
Preference<bool> m_bAnisotropicFiltering; // has no effect without mipmaps on. Not mutually exclusive with trilinear.
// If true, then signatures created when writing profile data
// and verified when reading profile data. Leave this false if
// you want to use a profile on different machines that don't
// have the same key, or else the profile's data will be discarded.
bool m_bSignProfileData;
Preference<bool> m_bSignProfileData;
/* Editor prefs: */
bool m_bEditorShowBGChangesPlay;
Preference<bool> m_bEditorShowBGChangesPlay;
// course ranking
enum CourseSortOrders { COURSE_SORT_SONGS, COURSE_SORT_METER, COURSE_SORT_METER_SUM, COURSE_SORT_RANK } m_iCourseSortOrder;
bool m_bMoveRandomToEnd;
bool m_bSubSortByNumSteps;
enum GetRankingName { RANKING_OFF, RANKING_ON, RANKING_LIST } m_iGetRankingName;
enum CourseSortOrders { COURSE_SORT_SONGS, COURSE_SORT_METER, COURSE_SORT_METER_SUM, COURSE_SORT_RANK };
Preference<CourseSortOrders> m_CourseSortOrder;
Preference<bool> m_bMoveRandomToEnd;
Preference<bool> m_bSubSortByNumSteps;
enum GetRankingName { RANKING_OFF, RANKING_ON, RANKING_LIST };
Preference<GetRankingName> m_GetRankingName;
// scoring type; SCORING_MAX2 should always be first
enum ScoringTypes { SCORING_MAX2, SCORING_5TH } m_iScoringType;
enum ScoringTypes { SCORING_MAX2, SCORING_5TH };
Preference<ScoringTypes> m_ScoringType;
/* 0 = no; 1 = yes; -1 = auto (do whatever is appropriate for the arch). */
int m_iBoostAppPriority;
enum BoostAppPriority { BOOST_NO, BOOST_YES, BOOST_AUTO }; /* auto = do whatever is appropriate for the arch. */
Preference<BoostAppPriority> m_BoostAppPriority;
CString m_sAdditionalSongFolders;
CString m_sAdditionalFolders;
Preference<CString> m_sAdditionalSongFolders;
Preference<CString> m_sAdditionalFolders;
CString m_sLastSeenVideoDriver;
CString m_sLastSeenInputDevices;
Preference<CString> m_sLastSeenVideoDriver;
Preference<CString> m_sLastSeenInputDevices;
#if defined(WIN32)
int m_iLastSeenMemory;
Preference<int> m_iLastSeenMemory;
#endif
CString m_sVideoRenderers;
bool m_bSmoothLines;
CString m_sSoundDrivers;
int m_iSoundWriteAhead;
CString m_iSoundDevice;
float m_fSoundVolume;
int m_iSoundResampleQuality;
CString m_sInputDrivers;
CString m_sMovieDrivers;
CString m_sLightsDriver;
CString m_sLightsStepsDifficulty;
bool m_bBlinkGameplayButtonLightsOnNote;
bool m_bAllowUnacceleratedRenderer;
bool m_bThreadedInput;
bool m_bThreadedMovieDecode;
bool m_bScreenTestMode;
CString m_sMachineName;
Preference<CString> m_sVideoRenderers; // StepMania.cpp sets these on first run based on the card
Preference<bool> m_bSmoothLines;
private:
Preference<CString> m_sSoundDrivers; // "" == default
public:
Preference<float> m_fSoundVolume; // -1 == default
Preference<int> m_iSoundWriteAhead;
Preference<CString> m_iSoundDevice;
Preference<RageSoundReader_Resample::ResampleQuality> m_SoundResampleQuality;
private:
Preference<CString> m_sInputDrivers; // "" == default
Preference<CString> m_sMovieDrivers; // "" == default
Preference<CString> m_sLightsDriver; // "" == default
public:
Preference<CString> m_sLightsStepsDifficulty;
Preference<bool> m_bBlinkGameplayButtonLightsOnNote;
Preference<bool> m_bAllowUnacceleratedRenderer;
Preference<bool> m_bThreadedInput;
Preference<bool> m_bThreadedMovieDecode;
Preference<bool> m_bScreenTestMode;
Preference<CString> m_sMachineName;
CString m_sIgnoredMessageWindows;
Preference<CString> m_sIgnoredMessageWindows;
CString m_sCoursesToShowRanking;
Preference<CString> m_sCoursesToShowRanking;
/* Debug: */
bool m_bLogToDisk;
bool m_bForceLogFlush;
bool m_bShowLogOutput;
bool m_bTimestamping;
bool m_bLogSkips;
bool m_bLogCheckpoints;
bool m_bShowLoadingWindow;
Preference<bool> m_bLogToDisk;
Preference<bool> m_bForceLogFlush;
Preference<bool> m_bShowLogOutput;
Preference<bool> m_bTimestamping;
Preference<bool> m_bLogSkips;
Preference<bool> m_bLogCheckpoints;
Preference<bool> m_bShowLoadingWindow;
/* Game-specific prefs: */
CString m_sDefaultModifiers;
Preference<CString> m_sDefaultModifiers;
#if defined(XBOX)
// Virtual memory preferences
bool m_bEnableVirtualMemory;
int m_iPageFileSize; // page file size in megabytes
int m_iPageSize; // page size in kilobytes
int m_iPageThreshold; // threshold in kilobytes where virtual memory will be used
bool m_bLogVirtualMemory; // (under debug) log the virtual memory allocation, etc.
Preference<bool> m_bEnableVirtualMemory;
Preference<int> m_iPageFileSize; // page file size in megabytes
Preference<int> m_iPageSize; // page size in kilobytes
Preference<int> m_iPageThreshold; // threshold in kilobytes where virtual memory will be used
Preference<bool> m_bLogVirtualMemory; // (under debug) log the virtual memory allocation, etc.
#endif
// wrappers
CString GetVideoRenderers();
CString GetSoundDrivers();
float GetSoundVolume();
CString GetInputDrivers();
CString GetMovieDrivers();
CString GetLightsDriver();
void ReadGlobalPrefsFromIni( const IniFile &ini );
void SaveGlobalPrefsToIni( IniFile &ini ) const;
+1 -1
View File
@@ -127,7 +127,7 @@ Profile::LoadResult ProfileManager::LoadProfile( PlayerNumber pn, CString sProfi
bool ProfileManager::LoadLocalProfileFromMachine( PlayerNumber pn )
{
CString sProfileID = PREFSMAN->m_sDefaultLocalProfileID[pn];
CString sProfileID = PREFSMAN->GetDefaultLocalProfileID(pn);
if( sProfileID.empty() )
{
m_sProfileDir[pn] = "";
+4
View File
@@ -351,6 +351,10 @@ public:
* compare level or ts. */
return device == other.device && button == other.button;
};
bool operator!=( const DeviceInput &other ) const
{
return ! operator==( other );
}
CString toString();
bool fromString( const CString &s );
+1 -1
View File
@@ -206,7 +206,7 @@ void RageSound::LoadSoundReader( SoundReader *pSound )
const int NeededRate = SOUNDMAN->GetDriverSampleRate( pSound->GetSampleRate() );
if( NeededRate != pSound->GetSampleRate() )
{
RageSoundReader_Resample *Resample = RageSoundReader_Resample::MakeResampler( (RageSoundReader_Resample::ResampleQuality) PREFSMAN->m_iSoundResampleQuality );
RageSoundReader_Resample *Resample = RageSoundReader_Resample::MakeResampler( PREFSMAN->m_SoundResampleQuality );
Resample->Open( pSound );
Resample->SetSampleRate( NeededRate );
pSound = Resample;
+3 -3
View File
@@ -86,7 +86,7 @@ void ScoreKeeperMAX2::Load(
m_bIsLastSongInCourse = false;
memset( m_ComboBonusFactor, 0, sizeof(m_ComboBonusFactor) );
switch( PREFSMAN->m_iScoringType )
switch( PREFSMAN->m_ScoringType )
{
case PrefsManager::SCORING_MAX2:
m_iRoundTo = 1;
@@ -160,7 +160,7 @@ void ScoreKeeperMAX2::OnNextSong( int iSongInCourseIndex, const Steps* pSteps, c
// long ver and marathon ver songs have higher max possible scores
int iLengthMultiplier = SongManager::GetNumStagesForSong( GAMESTATE->m_pCurSong );
switch( PREFSMAN->m_iScoringType )
switch( PREFSMAN->m_ScoringType )
{
case PrefsManager::SCORING_MAX2:
m_iMaxPossiblePoints = iMeter * 10000000 * iLengthMultiplier;
@@ -356,7 +356,7 @@ void ScoreKeeperMAX2::HandleTapRowScore( TapNoteScore scoreOfLastTap, int iNumTa
*/
/* True if a jump is one to combo, false if combo is purely based on tap count. */
bool ComboIsPerRow = true;
switch( PREFSMAN->m_iScoringType )
switch( PREFSMAN->m_ScoringType )
{
case PrefsManager::SCORING_MAX2:
ComboIsPerRow = (GAMESTATE->m_PlayMode == PLAY_MODE_ONI);
+2 -2
View File
@@ -66,14 +66,14 @@ void ScreenDemonstration::HandleScreenMessage( const ScreenMessage SM )
}
else if( SM == SM_LoseFocus )
{
SOUNDMAN->SetPrefs( PREFSMAN->m_fSoundVolume ); // turn volume back on
SOUNDMAN->SetPrefs( PREFSMAN->GetSoundVolume() ); // turn volume back on
}
else if( SM == SM_GoToNextScreen )
{
if( m_pSoundMusic )
m_pSoundMusic->Stop();
GAMESTATE->Reset();
SOUNDMAN->SetPrefs( PREFSMAN->m_fSoundVolume ); // turn volume back on
SOUNDMAN->SetPrefs( PREFSMAN->GetSoundVolume() ); // turn volume back on
SCREENMAN->SetNewScreen( NEXT_SCREEN );
return;
}
+1 -1
View File
@@ -1594,7 +1594,7 @@ void ScreenEdit::HandleScreenMessage( const ScreenMessage SM )
}
else if( SM == SM_BackFromPrefs )
{
PREFSMAN->m_bEditorShowBGChangesPlay = !!ScreenMiniMenu::s_viLastAnswers[pref_show_bgs_play];
PREFSMAN->m_bEditorShowBGChangesPlay.Set( !!ScreenMiniMenu::s_viLastAnswers[pref_show_bgs_play] );
PREFSMAN->SaveGlobalPrefsToDisk();
}
else if( SM == SM_BackFromCourseModeMenu )
+1 -1
View File
@@ -243,7 +243,7 @@ void ScreenEvaluation::Init()
else
grade[p] = GRADE_FAILED;
if( PREFSMAN->m_iScoringType == PrefsManager::SCORING_5TH )
if( PREFSMAN->m_ScoringType == PrefsManager::SCORING_5TH )
{
const int ScoreBonuses[] = { 10000000, 10000000, 1000000, 100000, 10000, 1000, 100 };
if( grade[p] < (int) ARRAYSIZE(ScoreBonuses) )
+1 -1
View File
@@ -189,7 +189,7 @@ void ScreenGameplay::Init()
FOREACH_EnabledPlayer(p)
{
switch( PREFSMAN->m_iScoringType )
switch( PREFSMAN->m_ScoringType )
{
case PrefsManager::SCORING_MAX2:
case PrefsManager::SCORING_5TH:
+1 -1
View File
@@ -145,7 +145,7 @@ void ScreenGameplayMultiplayer::Init()
FOREACH_MultiPlayer( p )
{
switch( PREFSMAN->m_iScoringType )
switch( PREFSMAN->m_ScoringType )
{
case PrefsManager::SCORING_MAX2:
case PrefsManager::SCORING_5TH:
+2 -2
View File
@@ -149,8 +149,8 @@ ScreenNameEntry::ScreenNameEntry( CString sClassName ) : Screen( sClassName )
bool IsOnRanking = ( (GAMESTATE->m_PlayMode == PLAY_MODE_NONSTOP || GAMESTATE->m_PlayMode == PLAY_MODE_ONI)
&& !(GAMESTATE->m_pCurCourse->IsRanking()) );
if (PREFSMAN->m_iGetRankingName == PrefsManager::RANKING_OFF ||
(PREFSMAN->m_iGetRankingName == PrefsManager::RANKING_LIST && !IsOnRanking))
if( PREFSMAN->m_GetRankingName == PrefsManager::RANKING_OFF ||
(PREFSMAN->m_GetRankingName == PrefsManager::RANKING_LIST && !IsOnRanking) )
{
// don't collect score due to ranking setting
HandleScreenMessage( SM_GoToNextScreen );
+1 -1
View File
@@ -265,7 +265,7 @@ void ScreenOptionsMaster::HandleScreenMessage( const ScreenMessage SM )
if( m_iChangeMask & OPT_APPLY_SOUND )
{
SOUNDMAN->SetPrefs( PREFSMAN->m_fSoundVolume );
SOUNDMAN->SetPrefs( PREFSMAN->GetSoundVolume() );
}
if( m_iChangeMask & OPT_APPLY_SONG )
+5 -5
View File
@@ -30,7 +30,7 @@ static void SetDefaultModifiers( const PlayerOptions &po, const SongOptions &so
if( so.GetString() != "" )
as.push_back( so.GetString() );
PREFSMAN->m_sDefaultModifiers = join(", ",as);
PREFSMAN->m_sDefaultModifiers.Set( join(", ",as) );
}
template<class T>
@@ -277,7 +277,7 @@ static void WheelSections( int &sel, bool ToSel, const ConfOption *pConfOption )
MoveMap( sel, PREFSMAN->m_MusicWheelUsesSections, ToSel, mapping, ARRAYSIZE(mapping) );
}
MOVE( CourseSort, (int &) PREFSMAN->m_iCourseSortOrder );
MOVE( CourseSort, (int &) PREFSMAN->m_CourseSortOrder );
MOVE( RandomAtEnd, PREFSMAN->m_bMoveRandomToEnd );
MOVE( Translations, PREFSMAN->m_bShowNativeLanguage );
MOVE( Lyrics, PREFSMAN->m_bShowLyrics );
@@ -369,7 +369,7 @@ static void SongsPerPlayOrEventMode( int &sel, bool ToSel, const ConfOption *pCo
}
/* Machine options */
MOVE( ScoringType, (int &) PREFSMAN->m_iScoringType );
MOVE( ScoringType, (int &) PREFSMAN->m_ScoringType );
static void JudgeDifficulty( int &sel, bool ToSel, const ConfOption *pConfOption )
{
@@ -392,7 +392,7 @@ static void ShowSongOptions( int &sel, bool ToSel, const ConfOption *pConfOption
static void ShowNameEntry( int &sel, bool ToSel, const ConfOption *pConfOption )
{
const PrefsManager::GetRankingName mapping[] = { PrefsManager::RANKING_OFF, PrefsManager::RANKING_ON, PrefsManager::RANKING_LIST };
MoveMap( sel, PREFSMAN->m_iGetRankingName, ToSel, mapping, ARRAYSIZE(mapping) );
MoveMap( sel, PREFSMAN->m_GetRankingName, ToSel, mapping, ARRAYSIZE(mapping) );
}
static void DefaultFailType( int &sel, bool ToSel, const ConfOption *pConfOption )
@@ -507,7 +507,7 @@ static void AspectRatio( int &sel, bool ToSel, const ConfOption *pConfOption )
}
/* Sound options */
MOVE( ResamplingQuality, PREFSMAN->m_iSoundResampleQuality );
MOVE( ResamplingQuality, (int&)PREFSMAN->m_SoundResampleQuality );
MOVE( AttractSoundFrequency,PREFSMAN->m_iAttractSoundFrequency );
static void SoundVolume( int &sel, bool ToSel, const ConfOption *pConfOption )
+7 -7
View File
@@ -62,15 +62,15 @@ void ScreenProfileOptions::Init()
g_ProfileOptionsLines[PO_RENAME_].choices.push_back( "-NONE-" );
PROFILEMAN->GetLocalProfileNames( g_ProfileOptionsLines[PO_RENAME_].choices );
if( PREFSMAN->m_sMemoryCardOsMountPoint[PLAYER_1].empty() )
if( PREFSMAN->GetMemoryCardOsMountPoint(PLAYER_1).Get().empty() )
g_ProfileOptionsLines[PO_OS_MOUNT_1].choices[0] = "-NOT SET IN INI-";
else
g_ProfileOptionsLines[PO_OS_MOUNT_1].choices[0] = PREFSMAN->m_sMemoryCardOsMountPoint[PLAYER_1];
g_ProfileOptionsLines[PO_OS_MOUNT_1].choices[0] = PREFSMAN->GetMemoryCardOsMountPoint(PLAYER_1).Get();
if( PREFSMAN->m_sMemoryCardOsMountPoint[PLAYER_2].empty() )
if( PREFSMAN->GetMemoryCardOsMountPoint(PLAYER_2).Get().empty() )
g_ProfileOptionsLines[PO_OS_MOUNT_2].choices[0] = "-NOT SET IN INI-";
else
g_ProfileOptionsLines[PO_OS_MOUNT_2].choices[0] = PREFSMAN->m_sMemoryCardOsMountPoint[PLAYER_2];
g_ProfileOptionsLines[PO_OS_MOUNT_2].choices[0] = PREFSMAN->GetMemoryCardOsMountPoint(PLAYER_2).Get();
//Enable all lines for all players
for ( unsigned int i = 0; i < NUM_PROFILE_OPTIONS_LINES; i++ )
@@ -98,7 +98,7 @@ void ScreenProfileOptions::ImportOptions( int row, const vector<PlayerNumber> &v
CStringArray::iterator iter = find(
vsProfiles.begin(),
vsProfiles.end(),
PREFSMAN->m_sDefaultLocalProfileID[pn] );
PREFSMAN->GetDefaultLocalProfileID(pn).Get() );
if( iter != vsProfiles.end() )
m_Rows[row]->SetOneSharedSelection( iter - vsProfiles.begin() + 1 );
}
@@ -118,9 +118,9 @@ void ScreenProfileOptions::ExportOptions( int row, const vector<PlayerNumber> &v
PROFILEMAN->GetLocalProfileIDs( vsProfiles );
if( m_Rows[row]->GetOneSharedSelection() > 0 )
PREFSMAN->m_sDefaultLocalProfileID[pn] = vsProfiles[m_Rows[row]->GetOneSharedSelection()-1];
PREFSMAN->GetDefaultLocalProfileID(pn).Set( vsProfiles[m_Rows[row]->GetOneSharedSelection()-1] );
else
PREFSMAN->m_sDefaultLocalProfileID[pn] = "";
PREFSMAN->GetDefaultLocalProfileID(pn).Set( "" );
}
break;
}
+2 -2
View File
@@ -209,8 +209,8 @@ void ScreenRanking::Init()
this->AddChild( &m_textTime[l] );
// TODO: Think of a better way to handle this
if( PREFSMAN->m_sCoursesToShowRanking == "" )
PREFSMAN->m_sCoursesToShowRanking = COURSES_TO_SHOW2;
if( PREFSMAN->m_sCoursesToShowRanking.Get() == "" )
PREFSMAN->m_sCoursesToShowRanking.Set( COURSES_TO_SHOW2 );
}
}
+2 -4
View File
@@ -70,7 +70,7 @@ void ScreenSMOnlineLogin::ImportOptions( int row, const vector<PlayerNumber> &vp
FOREACH_PlayerNumber( pn )
{
iter = find(vsProfiles.begin(), vsProfiles.end(), PREFSMAN->m_sDefaultLocalProfileID[pn] );
iter = find(vsProfiles.begin(), vsProfiles.end(), PREFSMAN->GetDefaultLocalProfileID(pn).Get() );
if( iter != vsProfiles.end() )
m_Rows[0]->SetOneSelection((PlayerNumber) pn, iter - vsProfiles.begin());
}
@@ -89,9 +89,7 @@ void ScreenSMOnlineLogin::ExportOptions( int row, const vector<PlayerNumber> &vp
PROFILEMAN->GetLocalProfileIDs( vsProfiles );
FOREACH_EnabledPlayer( pn )
{
PREFSMAN->m_sDefaultLocalProfileID[pn] = vsProfiles[m_Rows[0]->GetOneSelection((PlayerNumber) pn)];
}
PREFSMAN->GetDefaultLocalProfileID(pn).Set( vsProfiles[m_Rows[0]->GetOneSelection(pn)] );
}
break;
}
+30 -26
View File
@@ -300,9 +300,9 @@ void ResetGame( bool ReturnToFirstScreen )
INPUTMAN->GetDevicesAndDescriptions(vDevices,vDescriptions);
CString sInputDevices = join( ",", vDescriptions );
if( PREFSMAN->m_sLastSeenInputDevices != sInputDevices )
if( PREFSMAN->m_sLastSeenInputDevices.Get() != sInputDevices )
{
LOG->Info( "Input devices changed from '%s' to '%s'.", PREFSMAN->m_sLastSeenInputDevices.c_str(), sInputDevices.c_str() );
LOG->Info( "Input devices changed from '%s' to '%s'.", PREFSMAN->m_sLastSeenInputDevices.Get().c_str(), sInputDevices.c_str() );
if( PREFSMAN->m_bAutoMapOnJoyChange )
{
@@ -311,7 +311,7 @@ void ResetGame( bool ReturnToFirstScreen )
INPUTMAPPER->SaveMappingsToDisk();
}
PREFSMAN->m_sLastSeenInputDevices = sInputDevices;
PREFSMAN->m_sLastSeenInputDevices.Set( sInputDevices );
}
@@ -332,12 +332,12 @@ static void GameLoop();
static bool ChangeAppPri()
{
if( PREFSMAN->m_iBoostAppPriority == 0 )
if( PREFSMAN->m_BoostAppPriority.Get() == PrefsManager::BOOST_NO )
return false;
// if using NTPAD don't boost or else input is laggy
#if defined(_WINDOWS)
if( PREFSMAN->m_iBoostAppPriority == -1 )
if( PREFSMAN->m_BoostAppPriority == PrefsManager::BOOST_AUTO )
{
vector<InputDevice> vDevices;
vector<CString> vDescriptions;
@@ -353,7 +353,7 @@ static bool ChangeAppPri()
/* If -1 and this is a debug build, don't. It makes the debugger sluggish. */
#ifdef DEBUG
if( PREFSMAN->m_iBoostAppPriority == -1 )
if( PREFSMAN->m_BoostAppPriority == PrefsManager::BOOST_AUTO )
return false;
#endif
@@ -373,7 +373,7 @@ static void CheckSettings()
return;
LOG->Trace( "Memory changed from %i to %i; settings changed", PREFSMAN->m_iLastSeenMemory, Memory );
PREFSMAN->m_iLastSeenMemory = Memory;
PREFSMAN->m_iLastSeenMemory.Set( Memory );
/* Let's consider 128-meg systems low-memory, and 256-meg systems high-memory.
* Cut off at 192. This is somewhat conservative; many 128-meg systems can
@@ -617,7 +617,7 @@ static void CheckVideoDefaultSettings()
// Video card changed since last run
CString sVideoDriver = GetVideoDriverName();
LOG->Trace( "Last seen video driver: " + PREFSMAN->m_sLastSeenVideoDriver );
LOG->Trace( "Last seen video driver: " + PREFSMAN->m_sLastSeenVideoDriver.Get() );
const VideoCardDefaults* pDefaults = NULL;
@@ -639,39 +639,39 @@ static void CheckVideoDefaultSettings()
CString sVideoRenderers = pDefaults->szVideoRenderers;
bool SetDefaultVideoParams=false;
if( PREFSMAN->m_sVideoRenderers == "" )
if( PREFSMAN->m_sVideoRenderers.Get() == "" )
{
SetDefaultVideoParams = true;
LOG->Trace( "Applying defaults for %s.", sVideoDriver.c_str() );
}
else if( PREFSMAN->m_sLastSeenVideoDriver != sVideoDriver )
else if( PREFSMAN->m_sLastSeenVideoDriver.Get() != sVideoDriver )
{
SetDefaultVideoParams = true;
LOG->Trace( "Video card has changed from %s to %s. Applying new defaults.", PREFSMAN->m_sLastSeenVideoDriver.c_str(), sVideoDriver.c_str() );
LOG->Trace( "Video card has changed from %s to %s. Applying new defaults.", PREFSMAN->m_sLastSeenVideoDriver.Get().c_str(), sVideoDriver.c_str() );
}
if( SetDefaultVideoParams )
{
PREFSMAN->m_sVideoRenderers = pDefaults->szVideoRenderers;
PREFSMAN->m_sVideoRenderers.Set( pDefaults->szVideoRenderers );
PREFSMAN->m_iDisplayWidth.Set( pDefaults->iWidth );
PREFSMAN->m_iDisplayHeight.Set( pDefaults->iHeight );
PREFSMAN->m_iDisplayColorDepth.Set( pDefaults->iDisplayColor );
PREFSMAN->m_iTextureColorDepth.Set( pDefaults->iTextureColor );
PREFSMAN->m_iMovieColorDepth.Set( pDefaults->iMovieColor );
PREFSMAN->m_iMaxTextureResolution.Set( pDefaults->iTextureSize );
PREFSMAN->m_bSmoothLines = pDefaults->bSmoothLines;
PREFSMAN->m_bSmoothLines.Set( pDefaults->bSmoothLines );
// Update last seen video card
PREFSMAN->m_sLastSeenVideoDriver = GetVideoDriverName();
PREFSMAN->m_sLastSeenVideoDriver.Set( GetVideoDriverName() );
}
else if( PREFSMAN->m_sVideoRenderers.CompareNoCase(sVideoRenderers) )
else if( PREFSMAN->m_sVideoRenderers.Get().CompareNoCase(sVideoRenderers) )
{
LOG->Warn("Video renderer list has been changed from '%s' to '%s'",
sVideoRenderers.c_str(), PREFSMAN->m_sVideoRenderers.c_str() );
sVideoRenderers.c_str(), PREFSMAN->m_sVideoRenderers.Get().c_str() );
return;
}
LOG->Info( "Video renderers: '%s'", PREFSMAN->m_sVideoRenderers.c_str() );
LOG->Info( "Video renderers: '%s'", PREFSMAN->m_sVideoRenderers.Get().c_str() );
}
RageDisplay *CreateDisplay()
@@ -801,12 +801,16 @@ void ReadGamePrefsFromDisk( bool bSwitchToLastPlayedGame )
RageException::Throw( "Default note skin for \"%s\" missing", GAMESTATE->m_pCurGame->m_szName );
CString sGameName = GAMESTATE->GetCurrentGame()->m_szName;
CString sAnnouncer = sGameName, sTheme = sGameName, sNoteSkin = sGameName;
CString sAnnouncer = sGameName;
CString sTheme = sGameName;
CString sNoteSkin = sGameName;
CString sDefaultModifiers;
// if these calls fail, the three strings will keep the initial values set above.
ini.GetValue( sGameName, "Announcer", sAnnouncer );
ini.GetValue( sGameName, "Theme", sTheme );
ini.GetValue( sGameName, "DefaultModifiers", PREFSMAN->m_sDefaultModifiers );
ini.GetValue( sGameName, "DefaultModifiers", sDefaultModifiers );
PREFSMAN->m_sDefaultModifiers.Set( sDefaultModifiers );
// it's OK to call these functions with names that don't exist.
ANNOUNCER->SwitchAnnouncer( sAnnouncer );
@@ -1028,14 +1032,14 @@ int main(int argc, char* argv[])
WriteLogHeader();
/* Set up alternative filesystem trees. */
if( PREFSMAN->m_sAdditionalFolders != "" )
if( PREFSMAN->m_sAdditionalFolders.Get() != "" )
{
CStringArray dirs;
split( PREFSMAN->m_sAdditionalFolders, ",", dirs, true );
for( unsigned i=0; i < dirs.size(); i++)
FILEMAN->Mount( "dir", dirs[i], "" );
}
if( PREFSMAN->m_sAdditionalSongFolders != "" )
if( PREFSMAN->m_sAdditionalSongFolders.Get() != "" )
{
CStringArray dirs;
split( PREFSMAN->m_sAdditionalSongFolders, ",", dirs, true );
@@ -1106,11 +1110,11 @@ int main(int argc, char* argv[])
if( PREFSMAN->m_iSoundWriteAhead )
LOG->Info( "Sound writeahead has been overridden to %i", PREFSMAN->m_iSoundWriteAhead );
SOUNDMAN = new RageSoundManager;
SOUNDMAN->Init( PREFSMAN->m_sSoundDrivers );
SOUNDMAN->SetPrefs( PREFSMAN->m_fSoundVolume );
SOUNDMAN->Init( PREFSMAN->GetSoundDrivers() );
SOUNDMAN->SetPrefs( PREFSMAN->GetSoundVolume() );
SOUND = new GameSoundManager;
BOOKKEEPER = new Bookkeeper;
LIGHTSMAN = new LightsManager(PREFSMAN->m_sLightsDriver);
LIGHTSMAN = new LightsManager( PREFSMAN->GetLightsDriver() );
INPUTFILTER = new InputFilter;
INPUTMAPPER = new InputMapper;
INPUTQUEUE = new InputQueue;
@@ -1144,7 +1148,7 @@ int main(int argc, char* argv[])
/* This initializes objects that change the SDL event mask, and has other
* dependencies on the SDL video subsystem, so it must be initialized after DISPLAY. */
INPUTMAN = new RageInput( PREFSMAN->m_sInputDrivers );
INPUTMAN = new RageInput( PREFSMAN->GetInputDrivers() );
// These things depend on the TextureManager, so do them after!
FONT = new FontManager;
@@ -1407,7 +1411,7 @@ bool HandleGlobalInputs( DeviceInput DeviceI, InputEventType type, GameInput Gam
{
static bool bMute = false;
bMute = !bMute;
SOUNDMAN->SetPrefs( bMute ? 0 : PREFSMAN->m_fSoundVolume );
SOUNDMAN->SetPrefs( bMute ? 0 : PREFSMAN->GetSoundVolume() );
SCREENMAN->SystemMessage( bMute ? "Mute on" : "Mute off" );
return true;
}