From 5d759cd9e3035134b2d40dbd62a808f1dcff4454 Mon Sep 17 00:00:00 2001 From: Andreas Weizel Date: Mon, 5 May 2014 13:34:56 +0200 Subject: [PATCH] Fix #453: Solution FormatterSettings are not persisted properly --- .../FormattingStrategy/CSharpFormattingOptionsPersistence.cs | 5 ++++- .../Project/Src/OptionPanels/CSharpFormattingEditor.xaml.cs | 4 ++-- .../Src/OptionPanels/CSharpFormattingOptionPanel.xaml.cs | 1 - .../Src/OptionPanels/CSharpProjectFormattingOptions.xaml.cs | 1 - 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormattingStrategy/CSharpFormattingOptionsPersistence.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormattingStrategy/CSharpFormattingOptionsPersistence.cs index 37256b9915..df5b11e2aa 100644 --- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormattingStrategy/CSharpFormattingOptionsPersistence.cs +++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormattingStrategy/CSharpFormattingOptionsPersistence.cs @@ -100,12 +100,14 @@ namespace CSharpBinding.FormattingStrategy string key = project.FileName; if (!projectOptions.ContainsKey(key)) { // Lazily create options container for project - projectOptions[key] = new CSharpFormattingOptionsPersistence( + var projectFormattingPersistence = new CSharpFormattingOptionsPersistence( csproject.GlobalPreferences, new CSharpFormattingOptionsContainer((SolutionOptions ?? GlobalOptions).OptionsContainer) { DefaultText = StringParser.Parse("${res:CSharpBinding.Formatting.ProjectOptionReference}") }); + projectFormattingPersistence.Load(); + projectOptions[key] = projectFormattingPersistence; } return projectOptions[key]; @@ -123,6 +125,7 @@ namespace CSharpBinding.FormattingStrategy { DefaultText = StringParser.Parse("${res:CSharpBinding.Formatting.SolutionOptionReference}") }); + SolutionOptions.Load(); } static void SolutionClosed(object sender, SolutionEventArgs e) diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/OptionPanels/CSharpFormattingEditor.xaml.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/OptionPanels/CSharpFormattingEditor.xaml.cs index 8a06e82d53..cd2c4cdf70 100644 --- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/OptionPanels/CSharpFormattingEditor.xaml.cs +++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/OptionPanels/CSharpFormattingEditor.xaml.cs @@ -151,7 +151,7 @@ namespace CSharpBinding.OptionPanels presets["SharpDevelop"] = FormattingOptionsFactory.CreateSharpDevelop; presets["Mono"] = FormattingOptionsFactory.CreateMono; presets["K&R"] = FormattingOptionsFactory.CreateKRStyle; - presets["Allman"] = FormattingOptionsFactory.CreateAllman; + presets["VisualStudio"] = FormattingOptionsFactory.CreateAllman; presets["Whitesmiths"] = FormattingOptionsFactory.CreateWhitesmiths; presets["GNU"] = FormattingOptionsFactory.CreateGNU; @@ -163,7 +163,7 @@ namespace CSharpBinding.OptionPanels presetItems.Add(new ComboBoxItem { Content = "SharpDevelop", Tag = "SharpDevelop" }); presetItems.Add(new ComboBoxItem { Content = "Mono", Tag = "Mono" }); presetItems.Add(new ComboBoxItem { Content = "K&R", Tag = "K&R" }); - presetItems.Add(new ComboBoxItem { Content = "Allman", Tag = "Allman" }); + presetItems.Add(new ComboBoxItem { Content = "Visual Studio", Tag = "VisualStudio" }); presetItems.Add(new ComboBoxItem { Content = "Whitesmiths", Tag = "Whitesmiths" }); presetItems.Add(new ComboBoxItem { Content = "GNU", Tag = "GNU" }); presetItems.Add(new ComboBoxItem { Content = "Empty", Tag = "Empty" }); diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/OptionPanels/CSharpFormattingOptionPanel.xaml.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/OptionPanels/CSharpFormattingOptionPanel.xaml.cs index 9075b28675..56df385daa 100644 --- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/OptionPanels/CSharpFormattingOptionPanel.xaml.cs +++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/OptionPanels/CSharpFormattingOptionPanel.xaml.cs @@ -79,7 +79,6 @@ namespace CSharpBinding.OptionPanels public override void LoadOptions() { base.LoadOptions(); - persistenceHelper.Load(); formattingEditor.OptionsContainer = persistenceHelper.StartEditing(); } diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/OptionPanels/CSharpProjectFormattingOptions.xaml.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/OptionPanels/CSharpProjectFormattingOptions.xaml.cs index 7c15463398..d3ca858d81 100644 --- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/OptionPanels/CSharpProjectFormattingOptions.xaml.cs +++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/OptionPanels/CSharpProjectFormattingOptions.xaml.cs @@ -51,7 +51,6 @@ namespace CSharpBinding.OptionPanels persistenceHelper = CSharpFormattingOptionsPersistence.GetProjectOptions(project); formattingEditor.OptionsContainer = persistenceHelper.OptionsContainer; formattingEditor.AllowPresets = true; - persistenceHelper.Load(); persistenceHelper.OptionsContainer.PropertyChanged += ContainerPropertyChanged; }