Eliminate IUIField interface
This commit is contained in:
parent
caeab53a2d
commit
5e6afa4496
11 changed files with 33 additions and 40 deletions
|
|
@ -77,7 +77,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
|
|||
|
||||
private PrinterConnection printerConnection;
|
||||
|
||||
private Dictionary<string, IUIField> allUiFields = new Dictionary<string, IUIField>();
|
||||
private Dictionary<string, BasicField> allUiFields = new Dictionary<string, BasicField>();
|
||||
|
||||
private EventHandler unregisterEvents;
|
||||
|
||||
|
|
@ -876,7 +876,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
|
|||
{
|
||||
string sliceSettingValue = settingsContext.GetValue(settingData.SlicerConfigName);
|
||||
|
||||
IUIField uiField = null;
|
||||
BasicField uiField = null;
|
||||
|
||||
bool useDefaultSavePattern = true;
|
||||
|
||||
|
|
@ -1057,9 +1057,8 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
|
|||
// After initializing the field, wrap with dropmenu if applicable
|
||||
if (settingData.QuickMenuSettings.Count > 0)
|
||||
{
|
||||
uiField = new DropMenuWrappedField(uiField, settingData);
|
||||
uiField.Initialize(tabIndexForItem);
|
||||
}
|
||||
var dropMenu = new DropMenuWrappedField(uiField, settingData);
|
||||
dropMenu.Initialize(tabIndexForItem);
|
||||
|
||||
settingsRow.AddContent(uiField.Content);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ using MatterHackers.Agg.UI;
|
|||
|
||||
namespace MatterHackers.MatterControl.SlicerConfiguration
|
||||
{
|
||||
public class BasicField
|
||||
public abstract class BasicField
|
||||
{
|
||||
public event EventHandler<FieldChangedEventArgs> ValueChanged;
|
||||
|
||||
|
|
@ -40,6 +40,8 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
|
|||
{
|
||||
string convertedValue = this.ConvertValue(newValue);
|
||||
|
||||
Console.WriteLine($"SetValue: {newValue}/{convertedValue}/{userInitiated}");
|
||||
|
||||
if (this.Value != convertedValue)
|
||||
{
|
||||
this.Value = convertedValue;
|
||||
|
|
@ -65,6 +67,10 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
|
|||
return newValue;
|
||||
}
|
||||
|
||||
public virtual void Initialize(int tabIndex)
|
||||
{
|
||||
}
|
||||
|
||||
protected virtual void OnValueChanged(FieldChangedEventArgs fieldChangedEventArgs)
|
||||
{
|
||||
ValueChanged?.Invoke(this, fieldChangedEventArgs);
|
||||
|
|
|
|||
|
|
@ -33,11 +33,11 @@ using MatterHackers.Agg.UI;
|
|||
|
||||
namespace MatterHackers.MatterControl.SlicerConfiguration
|
||||
{
|
||||
public class CheckboxField : BasicField, IUIField
|
||||
public class CheckboxField : BasicField
|
||||
{
|
||||
private CheckBox checkBoxWidget;
|
||||
|
||||
public virtual void Initialize(int tabIndex)
|
||||
public override void Initialize(int tabIndex)
|
||||
{
|
||||
checkBoxWidget = new CheckBox("")
|
||||
{
|
||||
|
|
@ -65,17 +65,19 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
|
|||
}
|
||||
|
||||
|
||||
public class ToggleboxField : BasicField, IUIField
|
||||
public class ToggleboxField : BasicField
|
||||
{
|
||||
private CheckBox checkBoxWidget;
|
||||
|
||||
public virtual void Initialize(int tabIndex)
|
||||
public override void Initialize(int tabIndex)
|
||||
{
|
||||
checkBoxWidget = ImageButtonFactory.CreateToggleSwitch(false, ActiveTheme.Instance.PrimaryTextColor, useStandardLabels: false);
|
||||
checkBoxWidget.VAnchor = VAnchor.Center;
|
||||
checkBoxWidget.Margin = new BorderDouble(0);
|
||||
checkBoxWidget.CheckedStateChanged += (s, e) =>
|
||||
checkBoxWidget.Click += (s, e) =>
|
||||
{
|
||||
Console.WriteLine("Checkbox Click Event: " + this.checkBoxWidget.Checked);
|
||||
|
||||
this.SetValue(
|
||||
this.checkBoxWidget.Checked ? "1" : "0",
|
||||
userInitiated: true);
|
||||
|
|
|
|||
|
|
@ -36,11 +36,11 @@ using MatterHackers.SerialPortCommunication.FrostedSerial;
|
|||
|
||||
namespace MatterHackers.MatterControl.SlicerConfiguration
|
||||
{
|
||||
public class ComPortField : BasicField, IUIField
|
||||
public class ComPortField : BasicField
|
||||
{
|
||||
private DropDownList dropdownList;
|
||||
|
||||
public void Initialize(int tabIndex)
|
||||
public override void Initialize(int tabIndex)
|
||||
{
|
||||
EventHandler unregisterEvents = null;
|
||||
|
||||
|
|
|
|||
|
|
@ -33,12 +33,12 @@ using MatterHackers.Agg.UI;
|
|||
|
||||
namespace MatterHackers.MatterControl.SlicerConfiguration
|
||||
{
|
||||
public class DropMenuWrappedField : IUIField
|
||||
public class DropMenuWrappedField
|
||||
{
|
||||
private IUIField uiField;
|
||||
private BasicField uiField;
|
||||
private SliceSettingData settingData;
|
||||
|
||||
public DropMenuWrappedField(IUIField uiField, SliceSettingData settingData)
|
||||
public DropMenuWrappedField(BasicField uiField, SliceSettingData settingData)
|
||||
{
|
||||
this.settingData = settingData;
|
||||
this.uiField = uiField;
|
||||
|
|
|
|||
|
|
@ -41,18 +41,4 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
|
|||
|
||||
public bool UserInitiated { get; }
|
||||
}
|
||||
|
||||
public interface IUIField
|
||||
{
|
||||
event EventHandler<FieldChangedEventArgs> ValueChanged;
|
||||
|
||||
string Value { get; }
|
||||
|
||||
void SetValue(string newValue, bool userInitiated);
|
||||
|
||||
void Initialize(int tabIndex);
|
||||
|
||||
GuiWidget Content { get; }
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,13 +35,13 @@ using MatterHackers.Localizations;
|
|||
|
||||
namespace MatterHackers.MatterControl.SlicerConfiguration
|
||||
{
|
||||
public class ListField : BasicField, IUIField
|
||||
public class ListField : BasicField
|
||||
{
|
||||
private DropDownList dropdownList;
|
||||
|
||||
public List<string> ListItems { get; set; }
|
||||
|
||||
public void Initialize(int tabIndex)
|
||||
public override void Initialize(int tabIndex)
|
||||
{
|
||||
dropdownList = new DropDownList("None".Localize(), maxHeight: 200)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -32,13 +32,13 @@ using MatterHackers.Agg.UI;
|
|||
|
||||
namespace MatterHackers.MatterControl.SlicerConfiguration
|
||||
{
|
||||
public class MultilineStringField : BasicField, IUIField
|
||||
public class MultilineStringField : BasicField
|
||||
{
|
||||
private readonly int multiLineEditHeight = (int)(120 * GuiWidget.DeviceScale + .5);
|
||||
|
||||
private MHTextEditWidget editWidget;
|
||||
|
||||
public void Initialize(int tabIndex)
|
||||
public override void Initialize(int tabIndex)
|
||||
{
|
||||
editWidget = new MHTextEditWidget("", pixelWidth: 320, pixelHeight: multiLineEditHeight, multiLine: true, tabIndex: tabIndex, typeFace: ApplicationController.MonoSpacedTypeFace)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -31,13 +31,13 @@ using MatterHackers.Agg.UI;
|
|||
|
||||
namespace MatterHackers.MatterControl.SlicerConfiguration
|
||||
{
|
||||
public abstract class NumberField : BasicField, IUIField
|
||||
public abstract class NumberField : BasicField
|
||||
{
|
||||
protected MHNumberEdit numberEdit;
|
||||
|
||||
private readonly int ControlWidth = (int)(60 * GuiWidget.DeviceScale + .5);
|
||||
|
||||
public virtual void Initialize(int tabIndex)
|
||||
public override void Initialize(int tabIndex)
|
||||
{
|
||||
numberEdit = new MHNumberEdit(0, pixelWidth: ControlWidth, tabIndex: tabIndex)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -31,13 +31,13 @@ using MatterHackers.Agg.UI;
|
|||
|
||||
namespace MatterHackers.MatterControl.SlicerConfiguration
|
||||
{
|
||||
public class TextField : BasicField, IUIField
|
||||
public class TextField : BasicField
|
||||
{
|
||||
protected MHTextEditWidget textEditWidget;
|
||||
|
||||
private readonly int ControlWidth = (int)(60 * GuiWidget.DeviceScale + .5);
|
||||
|
||||
public virtual void Initialize(int tabIndex)
|
||||
public override void Initialize(int tabIndex)
|
||||
{
|
||||
textEditWidget = new MHTextEditWidget("", pixelWidth: ControlWidth, tabIndex: tabIndex)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ using MatterHackers.Agg.UI;
|
|||
|
||||
namespace MatterHackers.MatterControl.SlicerConfiguration
|
||||
{
|
||||
public class Vector2Field : BasicField, IUIField
|
||||
public class Vector2Field : BasicField
|
||||
{
|
||||
public static readonly int VectorXYEditWidth = (int)(60 * GuiWidget.DeviceScale + .5);
|
||||
|
||||
|
|
@ -40,7 +40,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
|
|||
|
||||
private MHNumberEdit xEditWidget;
|
||||
|
||||
public void Initialize(int tabIndex)
|
||||
public override void Initialize(int tabIndex)
|
||||
{
|
||||
var container = new FlowLayoutWidget();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue