Clear print_leveling_data on 'Reset To Defaults'

- Create and use SettingsKey for print_leveling_data
This commit is contained in:
John Lewin 2016-09-23 18:11:31 -07:00
parent 447a254e4a
commit 04ae06199c
5 changed files with 9 additions and 5 deletions

View file

@ -127,7 +127,7 @@ namespace MatterHackers.MatterControl.DataStorage.ClassicDB
printer.PrintLevelingJsonData,
printer.PrintLevelingProbePositions);
layeredProfile.UserLayer["print_leveling_data"] = JsonConvert.SerializeObject(printLevelingData);
layeredProfile.UserLayer[SettingsKey.print_leveling_data] = JsonConvert.SerializeObject(printLevelingData);
layeredProfile.UserLayer["print_leveling_enabled"] = printer.DoPrintLeveling ? "true" : "false";
layeredProfile.UserLayer["manual_movement_speeds"] = printer.ManualMovementSpeeds;

View file

@ -491,6 +491,9 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
// Leave user layer items that have no Organizer definition and thus cannot be changed by the user
var keysToRetain = new HashSet<string>(userOverrides.Except(KnownSettings));
// Print leveling data has no SliceSettingsWidget editor but should be removed on 'Reset to Defaults'
keysToRetain.Remove(SettingsKey.print_leveling_data);
// Iterate all items that have .ShowAsOverride = false and conditionally add to the retention list
foreach (var item in SliceSettingsOrganizer.Instance.SettingsData.Where(settingsItem => settingsItem.ShowAsOverride == false))
{

View file

@ -198,7 +198,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
break;
case "MatterControl.PrintLevelingData":
layer.Add("print_leveling_data", item.Value);
layer.Add(SettingsKey.print_leveling_data, item.Value);
break;
case "MatterControl.PrintLevelingEnabled":

View file

@ -100,6 +100,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
public const string start_gcode = nameof(start_gcode);
public const string windows_driver = nameof(windows_driver);
public const string z_homes_to_max = nameof(z_homes_to_max);
public const string print_leveling_data = nameof(print_leveling_data);
}
public class SettingsHelpers
@ -233,7 +234,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
{
printLevelingData = PrintLevelingData.Create(
ActiveSliceSettings.Instance,
printerSettings.GetValue("print_leveling_data"),
printerSettings.GetValue(SettingsKey.print_leveling_data),
printerSettings.GetValue("MatterControl.PrintLevelingProbePositions"));
PrintLevelingPlane.Instance.SetPrintLevelingEquation(
@ -249,7 +250,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
public void SetPrintLevelingData(PrintLevelingData data)
{
printLevelingData = data;
printerSettings.SetValue("print_leveling_data", JsonConvert.SerializeObject(data));
printerSettings.SetValue(SettingsKey.print_leveling_data, JsonConvert.SerializeObject(data));
}
public void DoPrintLeveling(bool doLeveling)

@ -1 +1 @@
Subproject commit 417b6c31427774f4ed7594cfb1b4534356b9a56b
Subproject commit d34d72b01f394d84db793edc2668c3322feaa3d9