From 27654ebef02b4b34337844a0e8619f0de3442d34 Mon Sep 17 00:00:00 2001 From: Jason Tyler Date: Mon, 22 Oct 2018 21:20:34 -0700 Subject: [PATCH 1/3] Feature Request: Insert blank lines before/after single-line fields Fixes #433 Add settings to hold the before/after blank lines on fields user setting. Default to false. --- CodeMaid/Properties/Settings.Designer.cs | 24 ++++++++++++++++++++++++ CodeMaid/Properties/Settings.settings | 6 ++++++ CodeMaid/app.config | 8 ++++++++ 3 files changed, 38 insertions(+) diff --git a/CodeMaid/Properties/Settings.Designer.cs b/CodeMaid/Properties/Settings.Designer.cs index 43c18b4a..b2b62816 100644 --- a/CodeMaid/Properties/Settings.Designer.cs +++ b/CodeMaid/Properties/Settings.Designer.cs @@ -2234,5 +2234,29 @@ public bool Feature_SwitchFile { this["Formatting_IgnoreLinesStartingWith"] = value; } } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool Cleaning_InsertBlankLinePaddingBeforeFieldsSingleLine { + get { + return ((bool)(this["Cleaning_InsertBlankLinePaddingBeforeFieldsSingleLine"])); + } + set { + this["Cleaning_InsertBlankLinePaddingBeforeFieldsSingleLine"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool Cleaning_InsertBlankLinePaddingAfterFieldsSingleLine { + get { + return ((bool)(this["Cleaning_InsertBlankLinePaddingAfterFieldsSingleLine"])); + } + set { + this["Cleaning_InsertBlankLinePaddingAfterFieldsSingleLine"] = value; + } + } } } diff --git a/CodeMaid/Properties/Settings.settings b/CodeMaid/Properties/Settings.settings index 46f94216..070cd227 100644 --- a/CodeMaid/Properties/Settings.settings +++ b/CodeMaid/Properties/Settings.settings @@ -558,5 +558,11 @@ <string>ReSharper enable </string> </ArrayOfString> + + False + + + False + \ No newline at end of file diff --git a/CodeMaid/app.config b/CodeMaid/app.config index 62562525..22acef38 100644 --- a/CodeMaid/app.config +++ b/CodeMaid/app.config @@ -613,6 +613,14 @@ + + False + + + False + From 5182f2b289c892487ae94943e318b0f9b00f19df Mon Sep 17 00:00:00 2001 From: Jason Tyler Date: Mon, 22 Oct 2018 21:45:54 -0700 Subject: [PATCH 2/3] Feature Request: Insert blank lines before/after single-line fields Fixes #433 Modify field case to account for single line cases. --- CodeMaid/Logic/Cleaning/InsertBlankLinePaddingLogic.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/CodeMaid/Logic/Cleaning/InsertBlankLinePaddingLogic.cs b/CodeMaid/Logic/Cleaning/InsertBlankLinePaddingLogic.cs index e427056a..bace30f5 100644 --- a/CodeMaid/Logic/Cleaning/InsertBlankLinePaddingLogic.cs +++ b/CodeMaid/Logic/Cleaning/InsertBlankLinePaddingLogic.cs @@ -77,7 +77,9 @@ internal bool ShouldBePrecededByBlankLine(BaseCodeItem codeItem) return Settings.Default.Cleaning_InsertBlankLinePaddingBeforeEvents; case KindCodeItem.Field: - return codeItem.IsMultiLine && Settings.Default.Cleaning_InsertBlankLinePaddingBeforeFieldsMultiLine; + return codeItem.IsMultiLine + ? Settings.Default.Cleaning_InsertBlankLinePaddingBeforeFieldsMultiLine + : Settings.Default.Cleaning_InsertBlankLinePaddingBeforeFieldsSingleLine; case KindCodeItem.Interface: return Settings.Default.Cleaning_InsertBlankLinePaddingBeforeInterfaces; @@ -138,7 +140,9 @@ internal bool ShouldBeFollowedByBlankLine(BaseCodeItem codeItem) return Settings.Default.Cleaning_InsertBlankLinePaddingAfterEvents; case KindCodeItem.Field: - return codeItem.IsMultiLine && Settings.Default.Cleaning_InsertBlankLinePaddingAfterFieldsMultiLine; + return codeItem.IsMultiLine + ? Settings.Default.Cleaning_InsertBlankLinePaddingAfterFieldsMultiLine + : Settings.Default.Cleaning_InsertBlankLinePaddingAfterFieldsSingleLine; case KindCodeItem.Interface: return Settings.Default.Cleaning_InsertBlankLinePaddingAfterInterfaces; From 5425afca9783423e678d063907de1f79dd1b3216 Mon Sep 17 00:00:00 2001 From: Jason Tyler Date: Tue, 23 Oct 2018 08:01:49 -0700 Subject: [PATCH 3/3] Feature Request: Insert blank lines before/after single-line fields Fixes #433 Add "single-line fields" option to the cleaning insert options view and view model. --- .../Cleaning/CleaningInsertDataTemplate.xaml | 2 ++ .../Cleaning/CleaningInsertViewModel.cs | 20 +++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/CodeMaid/UI/Dialogs/Options/Cleaning/CleaningInsertDataTemplate.xaml b/CodeMaid/UI/Dialogs/Options/Cleaning/CleaningInsertDataTemplate.xaml index bab5c497..179b1494 100644 --- a/CodeMaid/UI/Dialogs/Options/Cleaning/CleaningInsertDataTemplate.xaml +++ b/CodeMaid/UI/Dialogs/Options/Cleaning/CleaningInsertDataTemplate.xaml @@ -17,6 +17,7 @@ + @@ -42,6 +43,7 @@ + diff --git a/CodeMaid/UI/Dialogs/Options/Cleaning/CleaningInsertViewModel.cs b/CodeMaid/UI/Dialogs/Options/Cleaning/CleaningInsertViewModel.cs index bd2b4ba0..dd4fc556 100644 --- a/CodeMaid/UI/Dialogs/Options/Cleaning/CleaningInsertViewModel.cs +++ b/CodeMaid/UI/Dialogs/Options/Cleaning/CleaningInsertViewModel.cs @@ -25,6 +25,7 @@ public CleaningInsertViewModel(CodeMaidPackage package, Settings activeSettings) new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingAfterEnumerations, x => InsertBlankLinePaddingAfterEnumerations), new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingAfterEvents, x => InsertBlankLinePaddingAfterEvents), new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingAfterFieldsMultiLine, x => InsertBlankLinePaddingAfterFieldsMultiLine), + new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingAfterFieldsSingleLine, x => InsertBlankLinePaddingAfterFieldsSingleLine), new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingAfterInterfaces, x => InsertBlankLinePaddingAfterInterfaces), new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingAfterMethods, x => InsertBlankLinePaddingAfterMethods), new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingAfterNamespaces, x => InsertBlankLinePaddingAfterNamespaces), @@ -40,6 +41,7 @@ public CleaningInsertViewModel(CodeMaidPackage package, Settings activeSettings) new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingBeforeEnumerations, x => InsertBlankLinePaddingBeforeEnumerations), new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingBeforeEvents, x => InsertBlankLinePaddingBeforeEvents), new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingBeforeFieldsMultiLine, x => InsertBlankLinePaddingBeforeFieldsMultiLine), + new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingBeforeFieldsSingleLine, x => InsertBlankLinePaddingBeforeFieldsSingleLine), new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingBeforeInterfaces, x => InsertBlankLinePaddingBeforeInterfaces), new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingBeforeMethods, x => InsertBlankLinePaddingBeforeMethods), new SettingToOptionMapping(x => ActiveSettings.Cleaning_InsertBlankLinePaddingBeforeNamespaces, x => InsertBlankLinePaddingBeforeNamespaces), @@ -131,6 +133,15 @@ public bool InsertBlankLinePaddingAfterFieldsMultiLine set { SetPropertyValue(value); } } + /// + /// Gets or sets the flag indicating if blank line padding should be added after single-line fields. + /// + public bool InsertBlankLinePaddingAfterFieldsSingleLine + { + get { return GetPropertyValue(); } + set { SetPropertyValue(value); } + } + /// /// Gets or sets the flag indicating if blank line padding should be added after interfaces. /// @@ -267,6 +278,15 @@ public bool InsertBlankLinePaddingBeforeFieldsMultiLine set { SetPropertyValue(value); } } + /// + /// Gets or sets the flag indicating if blank line padding should be added before single-line fields. + /// + public bool InsertBlankLinePaddingBeforeFieldsSingleLine + { + get { return GetPropertyValue(); } + set { SetPropertyValue(value); } + } + /// /// Gets or sets the flag indicating if blank line padding should be added before interfaces. ///