diff --git a/ConfigurationPage/CalibrationSettings/CalibrationSettingsView.cs b/ConfigurationPage/CalibrationSettings/CalibrationSettingsView.cs index 9cd190fbe..ff39c8edb 100644 --- a/ConfigurationPage/CalibrationSettings/CalibrationSettingsView.cs +++ b/ConfigurationPage/CalibrationSettings/CalibrationSettingsView.cs @@ -12,33 +12,46 @@ using MatterHackers.MatterControl.SlicerConfiguration; using System; using System.Diagnostics; using System.IO; +using MatterHackers.MatterControl.PrinterControls; namespace MatterHackers.MatterControl.ConfigurationPage { - public class CalibrationSettingsWidget : SettingsViewBase + public class CalibrationSettingsWidget : ControlWidgetBase { - private DisableableWidget printLevelingContainer; private EventHandler unregisterEvents; private EditLevelingSettingsWindow editLevelingSettingsWindow; private TextWidget printLevelingStatusLabel; - Button runPrintLevelingButton; + private Button runPrintLevelingButton; - public CalibrationSettingsWidget(TextImageButtonFactory buttonFactory) - : base("Calibration".Localize(), buttonFactory) + private TextImageButtonFactory buttonFactory; + + public CalibrationSettingsWidget(TextImageButtonFactory buttonFactory, int headingPointSize) { + var mainContainer = new AltGroupBox(new TextWidget("Calibration".Localize(), pointSize: headingPointSize, textColor: ActiveTheme.Instance.SecondaryAccentColor)) + { + Margin = new BorderDouble(0), + BorderColor = ActiveTheme.Instance.PrimaryTextColor, + HAnchor = HAnchor.ParentLeftRight, + VAnchor = VAnchor.FitToChildren + }; + this.AddChild(mainContainer); + + var container = new FlowLayoutWidget(FlowDirection.TopToBottom) + { + HAnchor = HAnchor.ParentLeftRight, + VAnchor = VAnchor.FitToChildren, + Padding = new BorderDouble(3, 0) + }; + mainContainer.AddChild(container); + this.buttonFactory = buttonFactory; - printLevelingContainer = new DisableableWidget(); if (!ActiveSliceSettings.Instance.GetValue(SettingsKey.has_hardware_leveling)) { - printLevelingContainer.AddChild(GetAutoLevelControl()); - - mainContainer.AddChild(printLevelingContainer); + container.AddChild(GetAutoLevelControl()); } - mainContainer.AddChild(new HorizontalLine(50)); - - AddChild(mainContainer); + container.AddChild(CreateSeparatorLine()); PrinterConnection.Instance.CommunicationStateChanged.RegisterEvent(PrinterStatusChanged, ref unregisterEvents); PrinterConnection.Instance.EnableChanged.RegisterEvent(PrinterStatusChanged, ref unregisterEvents); @@ -52,7 +65,7 @@ namespace MatterHackers.MatterControl.ConfigurationPage { Name = "AutoLevelRowItem", HAnchor = HAnchor.ParentLeftRight, - Margin = new BorderDouble(0, 4), + Margin = new BorderDouble(0, 8, 0, 4) }; ImageBuffer levelingImage = StaticData.Instance.LoadIcon("leveling_32x32.png", 24, 24).InvertLightness(); @@ -155,12 +168,12 @@ namespace MatterHackers.MatterControl.ConfigurationPage || PrinterConnection.Instance.CommunicationState == CommunicationStates.Printing || PrinterConnection.Instance.PrinterIsPaused) { - printLevelingContainer.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); + this.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); runPrintLevelingButton.Enabled = true; // setting this true when the element is disabled makes the colors stay correct } else { - printLevelingContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled); + this.SetEnableLevel(DisableableWidget.EnableLevel.Enabled); runPrintLevelingButton.Enabled = PrinterConnection.Instance.PrinterIsConnected; } } diff --git a/ConfigurationPage/SettingsViewBase.cs b/ConfigurationPage/SettingsViewBase.cs deleted file mode 100644 index ef42ad5fe..000000000 --- a/ConfigurationPage/SettingsViewBase.cs +++ /dev/null @@ -1,25 +0,0 @@ -using MatterHackers.Agg; -using MatterHackers.Agg.UI; - -namespace MatterHackers.MatterControl.ConfigurationPage -{ - public class SettingsViewBase : AltGroupBox - { - protected FlowLayoutWidget mainContainer; - - protected TextImageButtonFactory buttonFactory; - - public SettingsViewBase(string title, TextImageButtonFactory buttonFactory) - : base(new TextWidget(title, pointSize: 18, textColor: ActiveTheme.Instance.SecondaryAccentColor)) - { - this.buttonFactory = buttonFactory; - this.Margin = new BorderDouble(2, 4, 2, 0); - - mainContainer = new FlowLayoutWidget(Agg.UI.FlowDirection.TopToBottom) - { - HAnchor = HAnchor.ParentLeftRight, - Margin = new BorderDouble(left: 6) - }; - } - } -} \ No newline at end of file diff --git a/MatterControl.csproj b/MatterControl.csproj index 3157b0aa6..7f55f40a8 100644 --- a/MatterControl.csproj +++ b/MatterControl.csproj @@ -158,7 +158,6 @@ - diff --git a/PrinterControls/ManualPrinterControls.cs b/PrinterControls/ManualPrinterControls.cs index 5b02d08bd..a643c91e5 100644 --- a/PrinterControls/ManualPrinterControls.cs +++ b/PrinterControls/ManualPrinterControls.cs @@ -76,6 +76,7 @@ namespace MatterHackers.MatterControl private DisableableWidget actionControlsContainer; private DisableableWidget tuningAdjustmentControlsContainer; private MovementControls movementControlsContainer; + private DisableableWidget calibrationControlsContainer; private EventHandler unregisterEvents; @@ -107,7 +108,8 @@ namespace MatterHackers.MatterControl if (!ActiveSliceSettings.Instance.GetValue(SettingsKey.has_hardware_leveling)) { - controlsTopToBottomLayout.AddChild(new CalibrationSettingsWidget(ApplicationController.Instance.Theme.ButtonFactory)); + calibrationControlsContainer = new CalibrationSettingsWidget(ApplicationController.Instance.Theme.ButtonFactory, headingPointSize); + controlsTopToBottomLayout.AddChild(calibrationControlsContainer); } macroControlsContainer = new MacroControls(headingPointSize); @@ -160,6 +162,7 @@ namespace MatterHackers.MatterControl fanControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); macroControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); actionControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); + calibrationControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); tuningAdjustmentControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); } else // we at least have a printer selected @@ -176,6 +179,7 @@ namespace MatterHackers.MatterControl macroControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.ConfigOnly); actionControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); tuningAdjustmentControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); + calibrationControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); foreach (var widget in movementControlsContainer.DisableableWidgets) { @@ -192,6 +196,7 @@ namespace MatterHackers.MatterControl macroControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Enabled); actionControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Enabled); tuningAdjustmentControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Enabled); + calibrationControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Enabled); foreach (var widget in movementControlsContainer.DisableableWidgets) { @@ -206,6 +211,7 @@ namespace MatterHackers.MatterControl macroControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.ConfigOnly); actionControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); tuningAdjustmentControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); + calibrationControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); break; case CommunicationStates.PreparingToPrint: @@ -220,8 +226,9 @@ namespace MatterHackers.MatterControl macroControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.ConfigOnly); actionControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); tuningAdjustmentControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Enabled); + calibrationControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); - foreach(var widget in movementControlsContainer.DisableableWidgets) + foreach (var widget in movementControlsContainer.DisableableWidgets) { widget?.SetEnableLevel(DisableableWidget.EnableLevel.Disabled); } @@ -240,6 +247,7 @@ namespace MatterHackers.MatterControl macroControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Enabled); actionControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Enabled); tuningAdjustmentControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Enabled); + calibrationControlsContainer?.SetEnableLevel(DisableableWidget.EnableLevel.Enabled); foreach (var widget in movementControlsContainer.DisableableWidgets) {