/// <summary> /// Load all options and return the loaded instance of this class. /// </summary> public static P4Options Load(ProvideSavedSettings settingsProvider) { P4Options p4Options = new P4Options(settingsProvider); p4Options.LoadPersisted(settingsProvider); return(p4Options); }
public P4Options(ProvideSavedSettings settingsProvider) { Server = settingsProvider.PerforceServer; User = settingsProvider.PerforceUser; UseP4Config = settingsProvider.UseP4Config.Value; Workspace = settingsProvider.PerforceWorkspace; }
/// <summary> /// Save all options. (Persist between sessions.) /// </summary> public void Save(ProvideSavedSettings settingsProvider) { if (settingsProvider == null) { throw new InvalidOperationException("P4Options.Save called without a settings provider."); } Save(OptionName.SettingIds.UseP4Config, UseP4Config.ToString(), settingsProvider); Save(OptionName.SettingIds.Server, Server, settingsProvider); Save(OptionName.SettingIds.User, User, settingsProvider); Save(OptionName.SettingIds.Password, Password, settingsProvider); Save(OptionName.SettingIds.Workspace, Workspace, settingsProvider); Save(OptionName.SettingIds.LogLevel, LogLevel.ToString(), settingsProvider); Save(OptionName.SettingIds.IsCheckoutEnabled, IsCheckoutEnabled.ToString(), settingsProvider); Save(OptionName.SettingIds.IsAddEnabled, IsAddEnabled.ToString(), settingsProvider); Save(OptionName.SettingIds.IsRevertIfUnchangedEnabled, IsRevertIfUnchangedEnabled.ToString(), settingsProvider); Save(OptionName.SettingIds.IsRevertEnabled, IsRevertEnabled.ToString(), settingsProvider); Save(OptionName.SettingIds.PromptBeforeRevert, PromptBeforeRevert.ToString(), settingsProvider); Save(OptionName.SettingIds.IsGetLatestRevisionEnabled, IsGetLatestRevisionEnabled.ToString(), settingsProvider); Save(OptionName.SettingIds.IsViewRevisionHistoryEnabled, IsViewRevisionHistoryEnabled.ToString(), settingsProvider); Save(OptionName.SettingIds.IsViewDiffEnabled, IsViewDiffEnabled.ToString(), settingsProvider); Save(OptionName.SettingIds.IsViewTimeLapseEnabled, IsViewTimeLapseEnabled.ToString(), settingsProvider); Save(OptionName.SettingIds.AutoCheckoutOnEdit, AutoCheckoutOnEdit.ToString(), settingsProvider); Save(OptionName.SettingIds.AutoCheckoutOnSave, AutoCheckoutOnSave.ToString(), settingsProvider); Save(OptionName.SettingIds.AutoAdd, AutoAdd.ToString(), settingsProvider); Save(OptionName.SettingIds.AutoDelete, AutoDelete.ToString(), settingsProvider); Save(OptionName.SettingIds.IgnoreFilesNotUnderP4Root2, IgnoreFilesNotUnderP4Root.ToString(), settingsProvider); Save(OptionName.SettingIds.Version180OrAfter, "true", settingsProvider); }
/// <summary> /// Save all options. (Persist between sessions.) /// </summary> public void Save(ProvideSavedSettings settingsProvider) { if (settingsProvider == null) { throw new InvalidOperationException("P4Options.Save called without a settings provider."); } Save("UseP4Config", UseP4Config.ToString(), settingsProvider); Save("Server", Server, settingsProvider); Save("User", User, settingsProvider); Save("Password", Password, settingsProvider); Save("Workspace", Workspace, settingsProvider); Save("LogLevel", LogLevel.ToString(), settingsProvider); Save("IsCheckoutEnabled", IsCheckoutEnabled.ToString(), settingsProvider); Save("IsAddEnabled", IsAddEnabled.ToString(), settingsProvider); Save("IsRevertIfUnchangedEnabled", IsRevertIfUnchangedEnabled.ToString(), settingsProvider); Save("IsRevertEnabled", IsRevertEnabled.ToString(), settingsProvider); Save("PromptBeforeRevert", PromptBeforeRevert.ToString(), settingsProvider); Save("IsGetLatestRevisionEnabled", IsGetLatestRevisionEnabled.ToString(), settingsProvider); Save("IsViewRevisionHistoryEnabled", IsViewRevisionHistoryEnabled.ToString(), settingsProvider); Save("IsViewDiffEnabled", IsViewDiffEnabled.ToString(), settingsProvider); Save("IsViewTimeLapseEnabled", IsViewTimeLapseEnabled.ToString(), settingsProvider); Save("AutoCheckoutOnEdit", AutoCheckoutOnEdit.ToString(), settingsProvider); Save("AutoCheckoutOnSave", AutoCheckoutOnSave.ToString(), settingsProvider); Save("AutoAdd", AutoAdd.ToString(), settingsProvider); Save("AutoDelete", AutoDelete.ToString(), settingsProvider); }
private void LoadPersisted(ProvideSavedSettings settingsProvider) { Password = settingsProvider.GetVariableExists("Password") ? (string)settingsProvider["Password"] : defaultPassword; if (settingsProvider.GetVariableExists("LogLevel")) { string level = (string)settingsProvider["LogLevel"]; try { LogLevel = (Log.Level)Enum.Parse(typeof(Log.Level), level); } catch (Exception) { LogLevel = defaultLogLevel; } } else { LogLevel = defaultLogLevel; } IsCheckoutEnabled = LoadBoolean("IsCheckoutEnabled", settingsProvider, defaultCommandsEnabled); IsAddEnabled = LoadBoolean("IsAddEnabled", settingsProvider, defaultCommandsEnabled); IsRevertIfUnchangedEnabled = LoadBoolean("IsRevertIfUnchangedEnabled", settingsProvider, defaultCommandsEnabled); IsRevertEnabled = LoadBoolean("IsRevertEnabled", settingsProvider, defaultCommandsEnabled); PromptBeforeRevert = LoadBoolean("PromptBeforeRevert", settingsProvider, defaultCommandsEnabled); IsGetLatestRevisionEnabled = LoadBoolean("IsGetLatestRevisionEnabled", settingsProvider, defaultCommandsEnabled); IsViewRevisionHistoryEnabled = LoadBoolean("IsViewRevisionHistoryEnabled", settingsProvider, defaultCommandsEnabled); IsViewDiffEnabled = LoadBoolean("IsViewDiffEnabled", settingsProvider, defaultCommandsEnabled); IsViewTimeLapseEnabled = LoadBoolean("IsViewTimeLapseEnabled", settingsProvider, defaultCommandsEnabled); AutoCheckoutOnEdit = LoadBoolean("AutoCheckoutOnEdit", settingsProvider, defaultCommandsEnabled); AutoCheckoutOnSave = LoadBoolean("AutoCheckoutOnSave", settingsProvider, defaultCommandsEnabled); AutoAdd = LoadBoolean("AutoAdd", settingsProvider, defaultCommandsEnabled); AutoDelete = LoadBoolean("AutoDelete", settingsProvider, defaultCommandsEnabled); }
/// <summary> /// Load all options and return the loaded instance of this class. /// </summary> public static P4Options Load(ProvideSavedSettings settingsProvider, IServiceProvider serviceProvider) { var p4Options = new P4Options(settingsProvider, serviceProvider); p4Options.LoadPersisted(settingsProvider); return(p4Options); }
public P4Options(ProvideSavedSettings settingsProvider, IServiceProvider serviceProvider) { Server = settingsProvider.PerforceServer; User = settingsProvider.PerforceUser; UseP4Config = settingsProvider.UseP4Config == null ? true : settingsProvider.UseP4Config.Value; Workspace = settingsProvider.PerforceWorkspace; _settingsManager = new ShellSettingsManager(serviceProvider); }
private static bool LoadBoolean(string name, ProvideSavedSettings settingsProvider, bool defaultValue) { if (settingsProvider.GetVariableExists(name)) { bool isEnabled; bool.TryParse((string)settingsProvider[name], out isEnabled); return(isEnabled); } return(defaultValue); }
private static void Save(string variableName, string variableValue, ProvideSavedSettings settingsProvider) { if (settingsProvider.GetVariableExists(variableName)) { settingsProvider[variableName] = variableValue; } else { settingsProvider[variableName] = variableValue; settingsProvider.SetVariablePersists(variableName, true); } }
private static void Save(OptionName.SettingIds name, string variableValue, ProvideSavedSettings settingsProvider) { var variableName = OptionName.OptionNameForSave(name); if (settingsProvider.GetVariableExists(variableName)) { settingsProvider[name] = variableValue; } else { settingsProvider[name] = variableValue; settingsProvider.SetVariablePersists(variableName, true); } }
private static bool LoadBoolean(OptionName.SettingIds name, ProvideSavedSettings settingsProvider, bool defaultValue) { var variableName = OptionName.OptionNameForLoad(name); if (settingsProvider.GetVariableExists(variableName)) { bool isEnabled; var variableValue = (string)settingsProvider[name]; bool.TryParse(variableValue, out isEnabled); return(isEnabled); } return(defaultValue); }
/// <summary> /// Load persisted options except the connection options, which are loaded in the ctor /// </summary> /// <param name="settingsProvider"></param> private void LoadPersisted(ProvideSavedSettings settingsProvider) { var passwordId = OptionName.OptionNameForLoad(OptionName.SettingIds.Password); Password = settingsProvider.GetVariableExists(passwordId) ? (string)settingsProvider[OptionName.SettingIds.Password] : defaultPassword; var logLevelId = OptionName.OptionNameForLoad(OptionName.SettingIds.LogLevel); if (settingsProvider.GetVariableExists(logLevelId)) { string level = (string)settingsProvider[OptionName.SettingIds.LogLevel]; try { LogLevel = (Log.Level)Enum.Parse(typeof(Log.Level), level); } catch (Exception) { LogLevel = defaultLogLevel; } } else { LogLevel = defaultLogLevel; } var store = _settingsManager.GetReadOnlySettingsStore(SettingsScope.UserSettings); IsCheckoutEnabled = LoadBoolean(OptionName.SettingIds.IsCheckoutEnabled, store, defaultCommandsEnabled); IsAddEnabled = LoadBoolean(OptionName.SettingIds.IsAddEnabled, store, defaultCommandsEnabled); IsRevertIfUnchangedEnabled = LoadBoolean(OptionName.SettingIds.IsRevertIfUnchangedEnabled, store, defaultCommandsEnabled); IsRevertEnabled = LoadBoolean(OptionName.SettingIds.IsRevertEnabled, store, defaultCommandsEnabled); PromptBeforeRevert = LoadBoolean(OptionName.SettingIds.PromptBeforeRevert, store, defaultCommandsEnabled); IsGetLatestRevisionEnabled = LoadBoolean(OptionName.SettingIds.IsGetLatestRevisionEnabled, store, defaultCommandsEnabled); IsViewRevisionHistoryEnabled = LoadBoolean(OptionName.SettingIds.IsViewRevisionHistoryEnabled, store, defaultCommandsEnabled); IsViewDiffEnabled = LoadBoolean(OptionName.SettingIds.IsViewDiffEnabled, store, defaultCommandsEnabled); IsViewTimeLapseEnabled = LoadBoolean(OptionName.SettingIds.IsViewTimeLapseEnabled, store, defaultCommandsEnabled); AutoCheckoutOnEdit = LoadBoolean(OptionName.SettingIds.AutoCheckoutOnEdit, store, defaultCommandsEnabled); AutoCheckoutOnSave = LoadBoolean(OptionName.SettingIds.AutoCheckoutOnSave, store, defaultCommandsEnabled); AutoAdd = LoadBoolean(OptionName.SettingIds.AutoAdd, store, defaultCommandsEnabled); AutoDelete = LoadBoolean(OptionName.SettingIds.AutoDelete, store, defaultCommandsEnabled); IgnoreFilesNotUnderP4Root = LoadBoolean(OptionName.SettingIds.IgnoreFilesNotUnderP4Root2, store, false); OptionName.IsFirstLoadDone = true; if (!settingsProvider.GetVariableExists(OptionName.OptionNameForSave(OptionName.SettingIds.Version180OrAfter))) { // This is the first time we've loaded starting with Release 1.80. So copy the old settings to the new ones. Save(settingsProvider); } }