From ddbef452c16d7f9ee2ffc5fc4d95095c8a94538a Mon Sep 17 00:00:00 2001 From: Lars Brubaker Date: Thu, 21 Apr 2016 18:02:02 -0700 Subject: [PATCH] Took out the onidle timing in MH text widget Making more delegates call by invoke took out unused usings Made the settings save on edit complete (so they work) --- ControlElements/MHTextEditWidget.cs | 37 ------------------- .../SliceSettingsDetailControl.cs | 15 ++------ SlicerConfiguration/SliceSettingsWidget.cs | 30 +++++++++------ Submodules/agg-sharp | 2 +- .../MatterControl/MatterControlUiFeatures.cs | 8 ---- 5 files changed, 22 insertions(+), 70 deletions(-) diff --git a/ControlElements/MHTextEditWidget.cs b/ControlElements/MHTextEditWidget.cs index 10050a5d3..8ad73aed4 100644 --- a/ControlElements/MHTextEditWidget.cs +++ b/ControlElements/MHTextEditWidget.cs @@ -115,7 +115,6 @@ namespace MatterHackers.MatterControl public class MHNumberEdit : GuiWidget { - private Stopwatch timeSinceLastTextChanged = new Stopwatch(); private NumberEdit actuallNumberEdit; public NumberEdit ActuallNumberEdit @@ -140,9 +139,6 @@ namespace MatterHackers.MatterControl BackgroundColor = RGBA_Bytes.White; HAnchor = HAnchor.FitToChildren; VAnchor = VAnchor.FitToChildren; - - actuallNumberEdit.TextChanged += new EventHandler(internalNumberEdit_TextChanged); - actuallNumberEdit.InternalTextEditWidget.EditComplete += new EventHandler(InternalTextEditWidget_EditComplete); } public override int TabIndex @@ -157,39 +153,6 @@ namespace MatterHackers.MatterControl } } - private void InternalTextEditWidget_EditComplete(object sender, EventArgs e) - { - timeSinceLastTextChanged.Stop(); - } - - public void OnIdle(object state) - { - if (timeSinceLastTextChanged.IsRunning) - { - if (timeSinceLastTextChanged.Elapsed.TotalSeconds > 2) - { - if (actuallNumberEdit.InternalTextEditWidget.TextHasChanged()) - { - actuallNumberEdit.InternalTextEditWidget.OnEditComplete(null); - } - timeSinceLastTextChanged.Stop(); - } - if (!WidgetHasBeenClosed) - { - UiThread.RunOnIdle(OnIdle, 1); - } - } - } - - private void internalNumberEdit_TextChanged(object sender, EventArgs e) - { - if (!timeSinceLastTextChanged.IsRunning) - { - UiThread.RunOnIdle(OnIdle, 1); - } - timeSinceLastTextChanged.Restart(); - } - public override void OnDraw(Graphics2D graphics2D) { base.OnDraw(graphics2D); diff --git a/SlicerConfiguration/SliceSettingsDetailControl.cs b/SlicerConfiguration/SliceSettingsDetailControl.cs index 95cbc76dc..48ca6f1d4 100644 --- a/SlicerConfiguration/SliceSettingsDetailControl.cs +++ b/SlicerConfiguration/SliceSettingsDetailControl.cs @@ -1,15 +1,7 @@ -using System; -using MatterHackers.Agg; -using MatterHackers.Agg.Font; +using MatterHackers.Agg; using MatterHackers.Agg.UI; -using MatterHackers.Agg.VertexSource; using MatterHackers.Localizations; -using MatterHackers.MatterControl.CustomWidgets; -using MatterHackers.MatterControl.PrinterCommunication; -using MatterHackers.VectorMath; -using System.Collections.Generic; -using MatterHackers.MatterControl.DataStorage; -using System.Linq; +using System; namespace MatterHackers.MatterControl.SlicerConfiguration { @@ -150,5 +142,4 @@ namespace MatterHackers.MatterControl.SlicerConfiguration get { return showHelpBox.Checked; } } } - -} +} \ No newline at end of file diff --git a/SlicerConfiguration/SliceSettingsWidget.cs b/SlicerConfiguration/SliceSettingsWidget.cs index dd45631b5..96093705b 100644 --- a/SlicerConfiguration/SliceSettingsWidget.cs +++ b/SlicerConfiguration/SliceSettingsWidget.cs @@ -623,7 +623,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration int.TryParse(sliceSettingValue, out currentValue); MHNumberEdit intEditWidget = new MHNumberEdit(currentValue, pixelWidth: intEditWidth, tabIndex: tabIndexForItem++); intEditWidget.ToolTipText = settingData.HelpText; - intEditWidget.ActuallNumberEdit.EnterPressed += (sender, e) => + intEditWidget.ActuallNumberEdit.EditComplete += (sender, e) => { presetChanged = true; SaveSetting(settingData.SlicerConfigName, ((NumberEdit)sender).Value.ToString()); @@ -698,7 +698,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration } doubleEditWidget.ActuallNumberEdit.InternalTextEditWidget.MarkAsStartingState(); - doubleEditWidget.ActuallNumberEdit.EnterPressed += (sender, e) => + doubleEditWidget.ActuallNumberEdit.EditComplete += (sender, e) => { presetChanged = true; NumberEdit numberEdit = (NumberEdit)sender; @@ -739,7 +739,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration double.TryParse(sliceSettingValue, out currentValue); MHNumberEdit doubleEditWidget = new MHNumberEdit(currentValue, allowDecimals: true, allowNegatives: true, pixelWidth: doubleEditWidth, tabIndex: tabIndexForItem++); doubleEditWidget.ToolTipText = settingData.HelpText; - doubleEditWidget.ActuallNumberEdit.EnterPressed += (sender, e) => + doubleEditWidget.ActuallNumberEdit.EditComplete += (sender, e) => { presetChanged = true; CreateSliceSettingContainer(container, settingData); @@ -758,7 +758,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration MHTextEditWidget stringEdit = new MHTextEditWidget(sliceSettingValue, pixelWidth: doubleEditWidth - 2, tabIndex: tabIndexForItem++); stringEdit.ToolTipText = settingData.HelpText; - stringEdit.ActualTextEditWidget.EnterPressed += (sender, e) => + stringEdit.ActualTextEditWidget.EditComplete += (sender, e) => { presetChanged = true; TextEditWidget textEditWidget = (TextEditWidget)sender; @@ -816,7 +816,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration stringEdit.ToolTipText = settingData.HelpText; string startingText = stringEdit.Text; - stringEdit.ActualTextEditWidget.EnterPressed += (sender, e) => + stringEdit.ActualTextEditWidget.EditComplete += (sender, e) => { presetChanged = true; TextEditWidget textEditWidget = (TextEditWidget)sender; @@ -919,7 +919,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration { MHTextEditWidget stringEdit = new MHTextEditWidget(sliceSettingValue, pixelWidth: 120, tabIndex: tabIndexForItem++); stringEdit.ToolTipText = settingData.HelpText; - stringEdit.ActualTextEditWidget.EnterPressed += (sender, e) => + stringEdit.ActualTextEditWidget.EditComplete += (sender, e) => { presetChanged = true; CreateSliceSettingContainer(container, settingData); @@ -1020,7 +1020,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration MHNumberEdit yEditWidget = new MHNumberEdit(currentYValue, allowDecimals: true, pixelWidth: vectorXYEditWidth, tabIndex: tabIndexForItem++); yEditWidget.ToolTipText = settingData.HelpText; - xEditWidget.ActuallNumberEdit.EnterPressed += (sender, e) => + xEditWidget.ActuallNumberEdit.EditComplete += (sender, e) => { presetChanged = true; CreateSliceSettingContainer(container, settingData); @@ -1030,7 +1030,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration xEditWidget.SelectAllOnFocus = true; leftToRightLayout.AddChild(xEditWidget); - yEditWidget.ActuallNumberEdit.EnterPressed += (sender, e) => + yEditWidget.ActuallNumberEdit.EditComplete += (sender, e) => { presetChanged = true; CreateSliceSettingContainer(container, settingData); @@ -1050,7 +1050,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration MHNumberEdit yEditWidget = new MHNumberEdit(offset.y, allowDecimals: true, allowNegatives: true, pixelWidth: vectorXYEditWidth, tabIndex: tabIndexForItem++); yEditWidget.ToolTipText = settingData.HelpText; { - xEditWidget.ActuallNumberEdit.EnterPressed += (sender, e) => + xEditWidget.ActuallNumberEdit.EditComplete += (sender, e) => { presetChanged = true; CreateSliceSettingContainer(container, settingData); @@ -1063,7 +1063,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration leftToRightLayout.AddChild(xEditWidget); } { - yEditWidget.ActuallNumberEdit.EnterPressed += (sender, e) => + yEditWidget.ActuallNumberEdit.EditComplete += (sender, e) => { presetChanged = true; CreateSliceSettingContainer(container, settingData); @@ -1143,7 +1143,10 @@ namespace MatterHackers.MatterControl.SlicerConfiguration if (!presetChanged) { container.BackgroundColor = materialSettingBackgroundColor; - container.AddChild(GetOverrideNameWidget(this.activeMaterialPreset)); + if (this.activeMaterialPreset != null) + { + container.AddChild(GetOverrideNameWidget(this.activeMaterialPreset)); + } revertButton.Visible = false; } else @@ -1158,7 +1161,10 @@ namespace MatterHackers.MatterControl.SlicerConfiguration if (!presetChanged) { container.BackgroundColor = qualitySettingBackgroundColor; - container.AddChild(GetOverrideNameWidget(this.activeQualityPreset)); + if (this.activeQualityPreset != null) + { + container.AddChild(GetOverrideNameWidget(this.activeQualityPreset)); + } revertButton.Visible = false; } else diff --git a/Submodules/agg-sharp b/Submodules/agg-sharp index 61a5a7e92..53df794a5 160000 --- a/Submodules/agg-sharp +++ b/Submodules/agg-sharp @@ -1 +1 @@ -Subproject commit 61a5a7e92043e32f38aa4bda429a121bb2feacec +Subproject commit 53df794a540297e6173f10820d3d9e01e0e1e2c1 diff --git a/Tests/MatterControl.Tests/MatterControl/MatterControlUiFeatures.cs b/Tests/MatterControl.Tests/MatterControl/MatterControlUiFeatures.cs index a10b62f1e..9332034f9 100644 --- a/Tests/MatterControl.Tests/MatterControl/MatterControlUiFeatures.cs +++ b/Tests/MatterControl.Tests/MatterControl/MatterControlUiFeatures.cs @@ -29,16 +29,8 @@ either expressed or implied, of the FreeBSD Project. using MatterHackers.Agg; using MatterHackers.Agg.Image; -using MatterHackers.Agg.PlatformAbstract; using MatterHackers.Agg.UI; -using MatterHackers.Agg.UI.Tests; -using MatterHackers.MatterControl.DataStorage; using NUnit.Framework; -using System; -using System.Diagnostics; -using System.IO; -using System.Threading; -using System.Threading.Tasks; namespace MatterHackers.MatterControl.UI {