void CSettings::Migrate() { CRegDWORD oldEnableLogCaching (REGKEY15 ("UseLogCache"), TRUE); if (oldEnableLogCaching.exists()) { SetEnabled ((DWORD)oldEnableLogCaching != FALSE); oldEnableLogCaching.removeValue(); } CRegDWORD oldSupportAmbiguousURL (REGKEY15 ("SupportAmbiguousURL"), FALSE); if (oldSupportAmbiguousURL.exists()) { // Since the old default differs from the new one, // we will not migrate this setting. // // SetAllowAmbiguousURL ((DWORD)oldSupportAmbiguousURL != FALSE); oldSupportAmbiguousURL.removeValue(); } CRegDWORD oldDefaultConnectionState (REGKEY15 ("DefaultConnectionState"), 0); if (oldDefaultConnectionState.exists()) { ConnectionState state = static_cast<ConnectionState> ((DWORD)oldDefaultConnectionState); SetDefaultConnectionState (state); oldDefaultConnectionState.removeValue(); } CRegDWORD oldMaxHeadAge (REGKEY15 ("HeadCacheAgeLimit"), 0); if (oldMaxHeadAge.exists()) { SetMaxHeadAge ((DWORD)oldMaxHeadAge); oldMaxHeadAge.removeValue(); } // current registry format CRegDWORD (REGKEY ("Version")) = 160; }
Color CColors::GetColor (GDIPlusColor id, bool bDefault) { CRegDWORD* setting = GetRegistrySetting (id); if (setting == NULL) return Color(); if (bDefault) return setting->defaultValue(); if (setting->exists()) return (DWORD)*setting; CRegDWORD* lecagySetting = GetLegacyRegistrySetting (id); if ((lecagySetting != NULL) && lecagySetting->exists()) { Color result; result.SetFromCOLORREF (*lecagySetting); return result; } return setting->defaultValue(); }
void CColors::SetColor (GDIPlusColor id, Color color) { CRegDWORD* setting = GetRegistrySetting (id); if (setting == NULL) return; *setting = color.GetValue(); // remove legacy info CRegDWORD* lecagySetting = GetLegacyRegistrySetting (id); if ((lecagySetting != NULL) && lecagySetting->exists()) lecagySetting->removeKey(); }