/// <summary> /// Loads our settings to the specified XML writer /// </summary> /// <param name="reader">The VsSettings reader we read ou values from</param> public override void LoadSettingsFromXml(IVsSettingsReader reader) { try { this.InitializeDefaults(); string exePath, exeCmdLine; int enablePreview; if (ErrorHandler.Succeeded(reader.ReadSettingString(RegPreviewExe, out exePath)) && !string.IsNullOrEmpty(exePath)) { this.PreviewToolExecutablePath = exePath; } if (ErrorHandler.Succeeded(reader.ReadSettingString(RegPreviewCmdLine, out exeCmdLine)) && !string.IsNullOrEmpty(exeCmdLine)) { this.PreviewToolCommandLine = exeCmdLine; } if (ErrorHandler.Succeeded(reader.ReadSettingBoolean(RegPreviewEnable, out enablePreview))) { this.EnablePreview = enablePreview == 1; } } catch (Exception e) { Debug.Assert(false, "Error importing Slow Cheetah settings: " + e.Message); } }
/// <summary> /// Reads boolean value from XML settings key /// </summary> protected bool ReadBoolFromXml(IVsSettingsReader reader, string name) { int p; int hr = reader.ReadSettingBoolean(name, out p); if (hr != VSConstants.S_OK) { reader.ReportError(name + " value cannot be read", (uint)__VSSETTINGSERRORTYPES.vsSettingsErrorTypeError); } return(p == 1); }
/// <inheritdoc/> public override void LoadSettingsFromXml(IVsSettingsReader reader) { try { this.InitializeDefaults(); if (ErrorHandler.Succeeded(reader.ReadSettingBoolean(RegPreviewEnable, out int enablePreview))) { this.EnablePreview = enablePreview == 1; } if (ErrorHandler.Succeeded(reader.ReadSettingBoolean(RegDependentUpon, out int addDependentUpon))) { this.AddDependentUpon = addDependentUpon == 1; } } catch (Exception e) { Debug.Assert(false, "Error importing Slow Cheetah settings: " + e.Message); } }
public static bool?ReadSettingStringToBoolean(this IVsSettingsReader reader, string keyFormat, int index) { var name = string.Format(keyFormat, index); int intValue; var readResult = reader.ReadSettingBoolean(name, out intValue); if (readResult == Microsoft.VisualStudio.VSConstants.S_OK) { return(Convert.ToBoolean(intValue)); } // fallback for older settings var strValue = reader.ReadSettingString(keyFormat, index); if (strValue == null) { return(null); } bool rtn; return(bool.TryParse(strValue.ToLowerInvariant(), out rtn) && rtn); }