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)
This commit is contained in:
Lars Brubaker 2016-04-21 18:02:02 -07:00
parent edd2aa135f
commit ddbef452c1
5 changed files with 22 additions and 70 deletions

View file

@ -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);

View file

@ -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; }
}
}
}
}

View file

@ -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

@ -1 +1 @@
Subproject commit 61a5a7e92043e32f38aa4bda429a121bb2feacec
Subproject commit 53df794a540297e6173f10820d3d9e01e0e1e2c1

View file

@ -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
{