using MainShell.Filewritable; using MXJM.FileWritable; using Stylet; using System.Collections.Generic; namespace MainShell.ParaSetting.Model { public class AxisSoftLimitSetting : JsonFileWritableBase { private List _axisSoftLimitItems = new List(); public override string Dir => Paths.CalibSettingPath; public override string FileName => "AxisSoftLimitSetting.json"; public List AxisSoftLimitItems { get { return _axisSoftLimitItems; } set { _axisSoftLimitItems = value ?? new List(); } } } public class AxisSoftLimitItem : PropertyChangedBase { private string _axisName; private string _cardName; private int _cardNum; private int _axisNum; private double _negativeSoftLimit; private double _positiveSoftLimit; public string AxisName { get { return _axisName; } set { SetAndNotify(ref _axisName, value); } } public string CardName { get { return _cardName; } set { SetAndNotify(ref _cardName, value); } } public int CardNum { get { return _cardNum; } set { SetAndNotify(ref _cardNum, value); } } public int AxisNum { get { return _axisNum; } set { SetAndNotify(ref _axisNum, value); } } public double NegativeSoftLimit { get { return _negativeSoftLimit; } set { SetAndNotify(ref _negativeSoftLimit, value); } } public double PositiveSoftLimit { get { return _positiveSoftLimit; } set { SetAndNotify(ref _positiveSoftLimit, value); } } } }