diff --git a/SetupWizard/ImportSettingsPage.cs b/SetupWizard/ImportSettingsPage.cs index 016383ad3..80d17f0d7 100644 --- a/SetupWizard/ImportSettingsPage.cs +++ b/SetupWizard/ImportSettingsPage.cs @@ -197,7 +197,7 @@ namespace MatterHackers.MatterControl HashSet skipKeys = new HashSet { - "layer_name", + SettingsKey.layer_name, "layer_id", }; @@ -225,9 +225,9 @@ namespace MatterHackers.MatterControl } } - if (!isMergeIntoUserLayer && material.ContainsKey("layer_name")) + if (!isMergeIntoUserLayer && material.ContainsKey(SettingsKey.layer_name)) { - destinationLayer["layer_name"] = material["layer_name"]; + destinationLayer[SettingsKey.layer_name] = material[SettingsKey.layer_name]; } } else if (selectedQuality > -1) @@ -242,9 +242,9 @@ namespace MatterHackers.MatterControl } } - if (!isMergeIntoUserLayer && quality.ContainsKey("layer_name")) + if (!isMergeIntoUserLayer && quality.ContainsKey(SettingsKey.layer_name)) { - destinationLayer["layer_name"] = quality["layer_name"]; + destinationLayer[SettingsKey.layer_name] = quality[SettingsKey.layer_name]; } } else @@ -268,7 +268,7 @@ namespace MatterHackers.MatterControl string successMessage = importPrinterSuccessMessage.FormatWith(Path.GetFileNameWithoutExtension(settingsFilePath)); if (!isMergeIntoUserLayer) { - string sourceName = isMergeIntoUserLayer ? Path.GetFileNameWithoutExtension(settingsFilePath) : destinationLayer["layer_name"]; + string sourceName = isMergeIntoUserLayer ? Path.GetFileNameWithoutExtension(settingsFilePath) : destinationLayer[SettingsKey.layer_name]; successMessage = ImportSettingsPage.importSettingSuccessMessage.FormatWith(sourceName, sectionName); } @@ -464,7 +464,7 @@ namespace MatterHackers.MatterControl { case ProfileManager.ProfileExtension: newLayer = new PrinterSettingsLayer(); - newLayer["layer_name"] = Path.GetFileNameWithoutExtension(settingsFilePath); + newLayer[SettingsKey.layer_name] = Path.GetFileNameWithoutExtension(settingsFilePath); if (newQualityPresetButton.Checked) { diff --git a/SlicerConfiguration/Settings/PrinterSettingsLayer.cs b/SlicerConfiguration/Settings/PrinterSettingsLayer.cs index 049a7e396..5eda94dfe 100644 --- a/SlicerConfiguration/Settings/PrinterSettingsLayer.cs +++ b/SlicerConfiguration/Settings/PrinterSettingsLayer.cs @@ -73,11 +73,11 @@ namespace MatterHackers.MatterControl.SlicerConfiguration { get { - return ValueOrDefault("layer_name"); + return ValueOrDefault(SettingsKey.layer_name); } set { - this["layer_name"] = value; + this[SettingsKey.layer_name] = value; } } diff --git a/SlicerConfiguration/Settings/ProfileMigrations.cs b/SlicerConfiguration/Settings/ProfileMigrations.cs index 0881c4695..bb67b0c23 100644 --- a/SlicerConfiguration/Settings/ProfileMigrations.cs +++ b/SlicerConfiguration/Settings/ProfileMigrations.cs @@ -215,7 +215,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration break; case "MatterControl.LayerName": - layer.Add("layer_name", item.Value); + layer.Add(SettingsKey.layer_name, item.Value); break; case "MatterControl.LayerID": diff --git a/SlicerConfiguration/Settings/SettingsHelpers.cs b/SlicerConfiguration/Settings/SettingsHelpers.cs index ced8becbd..1a6172f9b 100644 --- a/SlicerConfiguration/Settings/SettingsHelpers.cs +++ b/SlicerConfiguration/Settings/SettingsHelpers.cs @@ -89,6 +89,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration public const string spiral_vase = nameof(spiral_vase); public const string start_gcode = nameof(start_gcode); public const string oem_profile_token = nameof(oem_profile_token); + public const string layer_name = nameof(layer_name); }; public class SettingsHelpers diff --git a/SlicerConfiguration/SlicePresetsWindow/SlicePresetsWindow.cs b/SlicerConfiguration/SlicePresetsWindow/SlicePresetsWindow.cs index 6c5dbe689..174c43dee 100644 --- a/SlicerConfiguration/SlicePresetsWindow/SlicePresetsWindow.cs +++ b/SlicerConfiguration/SlicePresetsWindow/SlicePresetsWindow.cs @@ -136,10 +136,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration presetNameInput.ActualTextEditWidget.EditComplete += (s, e) => { - if (!this.Focused && this.Text != initialPresetName) - { - presetsContext.PersistenceLayer.Name = presetNameInput.Text; - } + ActiveSliceSettings.Instance.SetValue(SettingsKey.layer_name, presetNameInput.Text, presetsContext.PersistenceLayer); }; topRow.AddChild(presetNameInput); @@ -197,7 +194,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration UiThread.RunOnIdle(() => { string sanitizedName = numberMatch.Replace(presetNameInput.Text, "").Trim(); - string newProfileName = GetNonCollidingName(sanitizedName, presetsContext.PresetLayers.Select(preset => preset.ValueOrDefault("layer_name"))); + string newProfileName = GetNonCollidingName(sanitizedName, presetsContext.PresetLayers.Select(preset => preset.ValueOrDefault(SettingsKey.layer_name))); var clonedLayer = presetsContext.PersistenceLayer.Clone(); clonedLayer.Name = newProfileName; diff --git a/SlicerConfiguration/SliceSettingsWidget.cs b/SlicerConfiguration/SliceSettingsWidget.cs index 1013464e8..c4c152079 100644 --- a/SlicerConfiguration/SliceSettingsWidget.cs +++ b/SlicerConfiguration/SliceSettingsWidget.cs @@ -837,7 +837,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration }; intEditWidget.ActuallNumberEdit.EditComplete += (sender, e) => { - SaveSetting(settingData.SlicerConfigName, ((NumberEdit)sender).Value.ToString(), persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, ((NumberEdit)sender).Value.ToString(), persistenceLayer); settingsRow.UpdateStyle(); OnSettingsChanged(settingData); @@ -874,7 +874,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration }; doubleEditWidget.ActuallNumberEdit.EditComplete += (sender, e) => { - SaveSetting(settingData.SlicerConfigName, ((NumberEdit)sender).Value.ToString(), persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, ((NumberEdit)sender).Value.ToString(), persistenceLayer); settingsRow.UpdateStyle(); OnSettingsChanged(settingData); @@ -945,12 +945,12 @@ namespace MatterHackers.MatterControl.SlicerConfiguration { foreach (string setting in settingData.SetSettingsOnChange) { - SaveSetting(setting, numberEdit.Value.ToString() + "mm", persistenceLayer); + ActiveSliceSettings.Instance.SetValue(setting, numberEdit.Value.ToString() + "mm", persistenceLayer); } } // also always save to the local setting - SaveSetting(settingData.SlicerConfigName, numberEdit.Value.ToString(), persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, numberEdit.Value.ToString(), persistenceLayer); settingsRow.UpdateStyle(); OnSettingsChanged(settingData); }; @@ -987,7 +987,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration }; doubleEditWidget.ActuallNumberEdit.EditComplete += (sender, e) => { - SaveSetting(settingData.SlicerConfigName, ((NumberEdit)sender).Value.ToString(), persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, ((NumberEdit)sender).Value.ToString(), persistenceLayer); settingsRow.UpdateStyle(); OnSettingsChanged(settingData); }; @@ -1030,7 +1030,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration text += "%"; } textEditWidget.Text = text; - SaveSetting(settingData.SlicerConfigName, textEditWidget.Text, persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, textEditWidget.Text, persistenceLayer); settingsRow.UpdateStyle(); OnSettingsChanged(settingData); @@ -1105,7 +1105,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration textEditWidget.Text = text; startingText = stringEdit.Text; } - SaveSetting(settingData.SlicerConfigName, textEditWidget.Text, persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, textEditWidget.Text, persistenceLayer); settingsRow.UpdateStyle(); OnSettingsChanged(settingData); @@ -1167,7 +1167,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration checkBoxWidget.Click += (sender, e) => { bool isChecked = ((CheckBox)sender).Checked; - SaveSetting(settingData.SlicerConfigName, isChecked ? "1" : "0", persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, isChecked ? "1" : "0", persistenceLayer); settingsRow.UpdateStyle(); OnSettingsChanged(settingData); @@ -1192,7 +1192,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration stringEdit.ActualTextEditWidget.EditComplete += (sender, e) => { - SaveSetting(settingData.SlicerConfigName, ((TextEditWidget)sender).Text, persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, ((TextEditWidget)sender).Text, persistenceLayer); settingsRow.UpdateStyle(); OnSettingsChanged(settingData); @@ -1217,7 +1217,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration stringEdit.ActualTextEditWidget.EditComplete += (sender, e) => { - SaveSetting(settingData.SlicerConfigName, ((TextEditWidget)sender).Text.Replace("\n", "\\n"), persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, ((TextEditWidget)sender).Text.Replace("\n", "\\n"), persistenceLayer); settingsRow.UpdateStyle(); OnSettingsChanged(settingData); @@ -1286,7 +1286,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration newItem.Selected += (sender, e) => { MenuItem menuItem = ((MenuItem)sender); - SaveSetting(settingData.SlicerConfigName, menuItem.Text, persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, menuItem.Text, persistenceLayer); settingsRow.UpdateStyle(); @@ -1317,7 +1317,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration checkBoxWidget.CheckedStateChanged += (sender, e) => { bool isChecked = ((CheckBox)sender).Checked; - SaveSetting(settingData.SlicerConfigName, isChecked ? "1" : "0", persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, isChecked ? "1" : "0", persistenceLayer); settingsRow.UpdateStyle(); @@ -1362,7 +1362,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration xEditWidget.ActuallNumberEdit.EditComplete += (sender, e) => { - SaveSetting(settingData.SlicerConfigName, xEditWidget.ActuallNumberEdit.Value.ToString() + "," + yEditWidget.ActuallNumberEdit.Value.ToString(), persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, xEditWidget.ActuallNumberEdit.Value.ToString() + "," + yEditWidget.ActuallNumberEdit.Value.ToString(), persistenceLayer); settingsRow.UpdateStyle(); @@ -1377,7 +1377,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration yEditWidget.ActuallNumberEdit.EditComplete += (sender, e) => { - SaveSetting(settingData.SlicerConfigName, xEditWidget.ActuallNumberEdit.Value.ToString() + "," + yEditWidget.ActuallNumberEdit.Value.ToString(), persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, xEditWidget.ActuallNumberEdit.Value.ToString() + "," + yEditWidget.ActuallNumberEdit.Value.ToString(), persistenceLayer); settingsRow.UpdateStyle(); @@ -1654,7 +1654,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration newItem.Selected += (sender, e) => { - SaveSetting(settingData.SlicerConfigName, valueLocal, persistenceLayer); + ActiveSliceSettings.Instance.SetValue(settingData.SlicerConfigName, valueLocal, persistenceLayer); OnSettingsChanged(settingData); internalTextWidget.Text = valueLocal; internalTextWidget.OnEditComplete(null); @@ -1726,24 +1726,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration } string newValue = string.Join(",", settings); - SaveSetting(slicerConfigName, newValue, persistenceLayer); - } - - protected void ReloadOptions(object sender, EventArgs e) - { - ApplicationController.Instance.ReloadAdvancedControlsPanel(); - } - - private static void SaveSetting(string name, string value, PrinterSettingsLayer persistenceLayer) - { - if (persistenceLayer == null) - { - ActiveSliceSettings.Instance.SetValue(name, value); - } - else - { - ActiveSliceSettings.Instance.SetValue(name, value, persistenceLayer); - } + ActiveSliceSettings.Instance.SetValue(slicerConfigName, newValue, persistenceLayer); } public override void OnDraw(Graphics2D graphics2D) diff --git a/Submodules/MatterSlice b/Submodules/MatterSlice index 0b4f2cd53..718e75cc6 160000 --- a/Submodules/MatterSlice +++ b/Submodules/MatterSlice @@ -1 +1 @@ -Subproject commit 0b4f2cd533b66b436fda27cb64b96588d17dd3e2 +Subproject commit 718e75cc668e22ddf282091c02caa5a8e7a1bba9 diff --git a/Submodules/agg-sharp b/Submodules/agg-sharp index 10849d735..5f0626862 160000 --- a/Submodules/agg-sharp +++ b/Submodules/agg-sharp @@ -1 +1 @@ -Subproject commit 10849d735d861506c3189f8c1f2ed58bc8e02936 +Subproject commit 5f0626862c0dab00a901fa9724a536cd3a784e82 diff --git a/Tests/MatterControl.Tests/MatterControl/OemProfileTests.cs b/Tests/MatterControl.Tests/MatterControl/OemProfileTests.cs index 9dbbaec66..d0406167c 100644 --- a/Tests/MatterControl.Tests/MatterControl/OemProfileTests.cs +++ b/Tests/MatterControl.Tests/MatterControl/OemProfileTests.cs @@ -189,9 +189,9 @@ namespace MatterControl.Tests.MatterControl { ValidateOnAllPrinters((printer, settings) => { - if (settings.OemLayer.ContainsKey("layer_name")) + if (settings.OemLayer.ContainsKey(SettingsKey.layer_name)) { - if (settings.OemLayer["layer_name"].ToUpper() == "ABS") + if (settings.OemLayer[SettingsKey.layer_name].ToUpper() == "ABS") { double absDensity = settings.GetValue(SettingsKey.filament_density); if (absDensity != 1.04) @@ -199,7 +199,7 @@ namespace MatterControl.Tests.MatterControl Assert.Fail("[filament_density] value should be set to ABS 1.04: " + printer.RelativeFilePath); } } - else if (settings.OemLayer["layer_name"].ToUpper() == "PLA") + else if (settings.OemLayer[SettingsKey.layer_name].ToUpper() == "PLA") { double absDensity = settings.GetValue(SettingsKey.filament_density); if (absDensity != 1.24)