From f1ac2fe74675d292dcfbae34461e008bcb2e07ad Mon Sep 17 00:00:00 2001 From: Kevin Pope Date: Mon, 24 Mar 2014 18:56:41 -0700 Subject: [PATCH] Prep work on slice settings layering. --- SlicerConfiguration/ActiveSliceSettings.cs | 18 ++++++++++++++++++ .../SliceSettingsLayerSelector.cs | 6 ++++++ 2 files changed, 24 insertions(+) diff --git a/SlicerConfiguration/ActiveSliceSettings.cs b/SlicerConfiguration/ActiveSliceSettings.cs index 7fdd99e84..ada709ce6 100644 --- a/SlicerConfiguration/ActiveSliceSettings.cs +++ b/SlicerConfiguration/ActiveSliceSettings.cs @@ -340,6 +340,24 @@ namespace MatterHackers.MatterControl.SlicerConfiguration return "Unknown"; } + /// + /// Returns whether or not the setting is overridden by the active layer + /// + /// + /// + public bool SettingExistsInLayer(string sliceSetting, int layer=0) + { + bool settingExistsInLayer; + if (layer < activeSettingsLayers.Count) + { + settingExistsInLayer = (activeSettingsLayers[layer].settingsDictionary.ContainsKey(sliceSetting)); + } + else + { + settingExistsInLayer = false; + } + return settingExistsInLayer; + } public Vector2 GetActiveVector2(string sliceSetting) { diff --git a/SlicerConfiguration/SliceSettingsLayerSelector.cs b/SlicerConfiguration/SliceSettingsLayerSelector.cs index 75af319e5..a08bea984 100644 --- a/SlicerConfiguration/SliceSettingsLayerSelector.cs +++ b/SlicerConfiguration/SliceSettingsLayerSelector.cs @@ -23,6 +23,12 @@ namespace MatterHackers.MatterControl.SlicerConfiguration } } + public int ActiveLayerIndex + { + get { return activeLayerIndex; } + } + + public void SaveSetting(string settingKey, string settingValue) { ActiveSliceSettings.Instance.SaveValue(settingKey, settingValue, this.activeLayerIndex);