Push Changes from Techcrafters Repo
This commit is contained in:
@@ -4,491 +4,490 @@ using HMIToolkit;
|
||||
using TwinCAT.TypeSystem;
|
||||
using Heisig.HMI.AdsManager;
|
||||
|
||||
namespace InfineonHMI
|
||||
namespace InfineonHMI;
|
||||
|
||||
public sealed partial class UnitDetailsControlVM : ObservableObject, IDisposable
|
||||
{
|
||||
public sealed partial class UnitDetailsControlVM : ObservableObject, IDisposable
|
||||
{
|
||||
[ObservableProperty]
|
||||
private float rVoltage;
|
||||
[ObservableProperty]
|
||||
private float rVoltage;
|
||||
|
||||
[ObservableProperty]
|
||||
private E_COMPONENT_STATUS status;
|
||||
[ObservableProperty]
|
||||
private E_COMPONENT_STATUS status;
|
||||
|
||||
[ObservableProperty]
|
||||
private AnalogValueVM pressureNegolytSegmentInVM;
|
||||
[ObservableProperty]
|
||||
private AnalogValueVM pressureNegolytSegmentInVM;
|
||||
|
||||
[ObservableProperty]
|
||||
private AnalogValueVM pressureNegolytTankInVM;
|
||||
[ObservableProperty]
|
||||
private AnalogValueVM pressureNegolytTankInVM;
|
||||
|
||||
[ObservableProperty]
|
||||
private AnalogValueVM temperatureNegolytTankInVM;
|
||||
[ObservableProperty]
|
||||
private AnalogValueVM temperatureNegolytTankInVM;
|
||||
|
||||
[ObservableProperty]
|
||||
private AnalogValueVM pressurePosolytSegmentInVM;
|
||||
[ObservableProperty]
|
||||
private AnalogValueVM pressurePosolytSegmentInVM;
|
||||
|
||||
[ObservableProperty]
|
||||
private AnalogValueVM pressurePosolytTankInVM;
|
||||
[ObservableProperty]
|
||||
private AnalogValueVM pressurePosolytTankInVM;
|
||||
|
||||
[ObservableProperty]
|
||||
private AnalogValueVM temperaturePosolytTankInVM;
|
||||
[ObservableProperty]
|
||||
private AnalogValueVM temperaturePosolytTankInVM;
|
||||
|
||||
[ObservableProperty]
|
||||
private bool canOpenBothValves;
|
||||
[ObservableProperty]
|
||||
private bool canOpenBothValves;
|
||||
|
||||
[ObservableProperty]
|
||||
private bool canCloseBothValves;
|
||||
[ObservableProperty]
|
||||
private bool canCloseBothValves;
|
||||
|
||||
[ObservableProperty]
|
||||
private short feedbackOpenValves;
|
||||
[ObservableProperty]
|
||||
private short feedbackOpenValves;
|
||||
|
||||
[ObservableProperty]
|
||||
private short feedbackCloseValves;
|
||||
[ObservableProperty]
|
||||
private short feedbackCloseValves;
|
||||
|
||||
[ObservableProperty]
|
||||
private bool canStartBothPumps;
|
||||
[ObservableProperty]
|
||||
private bool canStartBothPumps;
|
||||
|
||||
[ObservableProperty]
|
||||
private bool canStopBothPumps;
|
||||
[ObservableProperty]
|
||||
private bool canStopBothPumps;
|
||||
|
||||
[ObservableProperty]
|
||||
private short feedbackStartPumps;
|
||||
[ObservableProperty]
|
||||
private short feedbackStartPumps;
|
||||
|
||||
[ObservableProperty]
|
||||
private short feedbackStopPumps;
|
||||
[ObservableProperty]
|
||||
private short feedbackStopPumps;
|
||||
|
||||
private float _posolytPumpOnSpeed;
|
||||
private float _negolytPumpOnSpeed;
|
||||
private float _posolytPumpOnSpeed;
|
||||
private float _negolytPumpOnSpeed;
|
||||
|
||||
private float valveWindowHorizontalPosition;
|
||||
private float valveWindowHorizontalPosition;
|
||||
|
||||
private readonly BinaryValveControlVM _valveNegolytVM;
|
||||
private readonly BinaryValveControlVM _valvePosolytVM;
|
||||
private readonly AnalogMotorControlVM _pumpNegolytVM;
|
||||
private readonly AnalogMotorControlVM _pumpPosolytVM;
|
||||
private readonly BinaryValveControlVM _valveNegolytVM;
|
||||
private readonly BinaryValveControlVM _valvePosolytVM;
|
||||
private readonly AnalogMotorControlVM _pumpNegolytVM;
|
||||
private readonly AnalogMotorControlVM _pumpPosolytVM;
|
||||
|
||||
private BinaryValveWindow? _windowValveNegolyt;
|
||||
private BinaryValveWindow? _windowValvePosolyt;
|
||||
private BinaryValveWindow? _windowValveNegolyt;
|
||||
private BinaryValveWindow? _windowValvePosolyt;
|
||||
|
||||
private AnalogMotorWindow? _windowPumpNegolyt;
|
||||
private AnalogMotorWindow? _windowPumpPosolyt;
|
||||
private AnalogMotorWindow? _windowPumpNegolyt;
|
||||
private AnalogMotorWindow? _windowPumpPosolyt;
|
||||
|
||||
private readonly IAdsManager? _adsManager;
|
||||
private readonly string _variableName;
|
||||
private readonly IAdsManager? _adsManager;
|
||||
private readonly string _variableName;
|
||||
|
||||
public UnitDetailsControlVM()
|
||||
{
|
||||
Status = E_COMPONENT_STATUS.OFF;
|
||||
rVoltage = 0.0f;
|
||||
_variableName = "";
|
||||
public UnitDetailsControlVM()
|
||||
{
|
||||
Status = E_COMPONENT_STATUS.OFF;
|
||||
rVoltage = 0.0f;
|
||||
_variableName = "";
|
||||
|
||||
// Negolyt
|
||||
PressureNegolytSegmentInVM = new AnalogValueVM();
|
||||
PressureNegolytTankInVM = new AnalogValueVM();
|
||||
TemperatureNegolytTankInVM = new AnalogValueVM();
|
||||
_valveNegolytVM = new BinaryValveControlVM();
|
||||
_pumpNegolytVM = new AnalogMotorControlVM();
|
||||
// Negolyt
|
||||
PressureNegolytSegmentInVM = new AnalogValueVM();
|
||||
PressureNegolytTankInVM = new AnalogValueVM();
|
||||
TemperatureNegolytTankInVM = new AnalogValueVM();
|
||||
_valveNegolytVM = new BinaryValveControlVM();
|
||||
_pumpNegolytVM = new AnalogMotorControlVM();
|
||||
|
||||
_windowValveNegolyt = null;
|
||||
_windowValveNegolyt = null;
|
||||
|
||||
// Posolyt
|
||||
PressurePosolytSegmentInVM = new AnalogValueVM();
|
||||
PressurePosolytTankInVM = new AnalogValueVM();
|
||||
TemperaturePosolytTankInVM = new AnalogValueVM();
|
||||
_valvePosolytVM = new BinaryValveControlVM();
|
||||
_pumpPosolytVM = new AnalogMotorControlVM();
|
||||
// Posolyt
|
||||
PressurePosolytSegmentInVM = new AnalogValueVM();
|
||||
PressurePosolytTankInVM = new AnalogValueVM();
|
||||
TemperaturePosolytTankInVM = new AnalogValueVM();
|
||||
_valvePosolytVM = new BinaryValveControlVM();
|
||||
_pumpPosolytVM = new AnalogMotorControlVM();
|
||||
|
||||
_windowValvePosolyt = null;
|
||||
_windowValvePosolyt = null;
|
||||
|
||||
valveWindowHorizontalPosition = 10;
|
||||
valveWindowHorizontalPosition = 10;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public UnitDetailsControlVM(IAdsManager adsManager, string variableName)
|
||||
{
|
||||
_adsManager = adsManager;
|
||||
_variableName = variableName;
|
||||
public UnitDetailsControlVM(IAdsManager adsManager, string variableName)
|
||||
{
|
||||
_adsManager = adsManager;
|
||||
_variableName = variableName;
|
||||
|
||||
|
||||
Status = E_COMPONENT_STATUS.OFF;
|
||||
rVoltage = 0.0f;
|
||||
Status = E_COMPONENT_STATUS.OFF;
|
||||
rVoltage = 0.0f;
|
||||
|
||||
|
||||
// Negolyt
|
||||
PressureNegolytSegmentInVM = new AnalogValueVM(_adsManager, _variableName + ".stP21", true);
|
||||
PressureNegolytTankInVM = new AnalogValueVM(_adsManager, _variableName + ".stP22", true);
|
||||
TemperatureNegolytTankInVM = new AnalogValueVM(_adsManager, _variableName + ".stT21", true);
|
||||
_valveNegolytVM = new BinaryValveControlVM(_adsManager, _variableName + ".stNS22");
|
||||
_valveNegolytVM.OpenButton.FeedbackChanged += OnValveNegolytOpenFeedbackChanged;
|
||||
_valveNegolytVM.CloseButton.FeedbackChanged += OnValveNegolytCloseFeedbackChanged;
|
||||
_valveNegolytVM.OpenButton.ReleaseChanged += OnValveNegolytOpenReleaseChanged;
|
||||
_valveNegolytVM.CloseButton.ReleaseChanged += OnValveNegolytCloseReleaseChanged;
|
||||
_pumpNegolytVM = new AnalogMotorControlVM(_adsManager, _variableName + ".stNS21");
|
||||
_pumpNegolytVM.StartButton.FeedbackChanged += OnPumpNegolytStartFeedbackChanged;
|
||||
_pumpNegolytVM.StopButton.FeedbackChanged += OnPumpNegolytStopFeedbackChanged;
|
||||
_pumpNegolytVM.StartButton.ReleaseChanged += OnPumpNegolytStartReleaseChanged;
|
||||
_pumpNegolytVM.StopButton.ReleaseChanged += OnPumpNegolytStopReleaseChanged;
|
||||
// Negolyt
|
||||
PressureNegolytSegmentInVM = new AnalogValueVM(_adsManager, _variableName + ".stP21", true);
|
||||
PressureNegolytTankInVM = new AnalogValueVM(_adsManager, _variableName + ".stP22", true);
|
||||
TemperatureNegolytTankInVM = new AnalogValueVM(_adsManager, _variableName + ".stT21", true);
|
||||
_valveNegolytVM = new BinaryValveControlVM(_adsManager, _variableName + ".stNS22");
|
||||
_valveNegolytVM.OpenButton.FeedbackChanged += OnValveNegolytOpenFeedbackChanged;
|
||||
_valveNegolytVM.CloseButton.FeedbackChanged += OnValveNegolytCloseFeedbackChanged;
|
||||
_valveNegolytVM.OpenButton.ReleaseChanged += OnValveNegolytOpenReleaseChanged;
|
||||
_valveNegolytVM.CloseButton.ReleaseChanged += OnValveNegolytCloseReleaseChanged;
|
||||
_pumpNegolytVM = new AnalogMotorControlVM(_adsManager, _variableName + ".stNS21");
|
||||
_pumpNegolytVM.StartButton.FeedbackChanged += OnPumpNegolytStartFeedbackChanged;
|
||||
_pumpNegolytVM.StopButton.FeedbackChanged += OnPumpNegolytStopFeedbackChanged;
|
||||
_pumpNegolytVM.StartButton.ReleaseChanged += OnPumpNegolytStartReleaseChanged;
|
||||
_pumpNegolytVM.StopButton.ReleaseChanged += OnPumpNegolytStopReleaseChanged;
|
||||
|
||||
|
||||
// Posolyt
|
||||
PressurePosolytSegmentInVM = new AnalogValueVM(_adsManager, _variableName + ".stP11", true);
|
||||
PressurePosolytTankInVM = new AnalogValueVM(_adsManager, _variableName + ".stP12", true);
|
||||
TemperaturePosolytTankInVM = new AnalogValueVM(_adsManager, _variableName + ".stT11", true);
|
||||
_valvePosolytVM = new BinaryValveControlVM(_adsManager, _variableName + ".stNS12");
|
||||
_valvePosolytVM.OpenButton.FeedbackChanged += OnValvePosolytOpenFeedbackChanged;
|
||||
_valvePosolytVM.CloseButton.FeedbackChanged += OnValvePosolytCloseFeedbackChanged;
|
||||
_valvePosolytVM.OpenButton.ReleaseChanged += OnValvePosolytOpenReleaseChanged;
|
||||
_valvePosolytVM.CloseButton.ReleaseChanged += OnValvePosolytCloseReleaseChanged;
|
||||
_pumpPosolytVM = new AnalogMotorControlVM(_adsManager, _variableName + ".stNS11");
|
||||
_pumpPosolytVM.StartButton.FeedbackChanged += OnPumpPosolytStartFeedbackChanged;
|
||||
_pumpPosolytVM.StopButton.FeedbackChanged += OnPumpPosolytStopFeedbackChanged;
|
||||
_pumpPosolytVM.StartButton.ReleaseChanged += OnPumpPosolytStartReleaseChanged;
|
||||
_pumpPosolytVM.StopButton.ReleaseChanged += OnPumpPosolytStopReleaseChanged;
|
||||
// Posolyt
|
||||
PressurePosolytSegmentInVM = new AnalogValueVM(_adsManager, _variableName + ".stP11", true);
|
||||
PressurePosolytTankInVM = new AnalogValueVM(_adsManager, _variableName + ".stP12", true);
|
||||
TemperaturePosolytTankInVM = new AnalogValueVM(_adsManager, _variableName + ".stT11", true);
|
||||
_valvePosolytVM = new BinaryValveControlVM(_adsManager, _variableName + ".stNS12");
|
||||
_valvePosolytVM.OpenButton.FeedbackChanged += OnValvePosolytOpenFeedbackChanged;
|
||||
_valvePosolytVM.CloseButton.FeedbackChanged += OnValvePosolytCloseFeedbackChanged;
|
||||
_valvePosolytVM.OpenButton.ReleaseChanged += OnValvePosolytOpenReleaseChanged;
|
||||
_valvePosolytVM.CloseButton.ReleaseChanged += OnValvePosolytCloseReleaseChanged;
|
||||
_pumpPosolytVM = new AnalogMotorControlVM(_adsManager, _variableName + ".stNS11");
|
||||
_pumpPosolytVM.StartButton.FeedbackChanged += OnPumpPosolytStartFeedbackChanged;
|
||||
_pumpPosolytVM.StopButton.FeedbackChanged += OnPumpPosolytStopFeedbackChanged;
|
||||
_pumpPosolytVM.StartButton.ReleaseChanged += OnPumpPosolytStartReleaseChanged;
|
||||
_pumpPosolytVM.StopButton.ReleaseChanged += OnPumpPosolytStopReleaseChanged;
|
||||
|
||||
|
||||
// Current status
|
||||
_adsManager.Register(_variableName + ".eStatus", StatusChanged);
|
||||
_adsManager.Register(_variableName + ".rVoltage", VoltageChanged);
|
||||
// Current status
|
||||
_adsManager.Register(_variableName + ".eStatus", StatusChanged);
|
||||
_adsManager.Register(_variableName + ".rVoltage", VoltageChanged);
|
||||
|
||||
|
||||
// Configured pump speed for on
|
||||
_adsManager.Register("GVL_CONFIG.rPumpNegolytOnPower", NegolytPumpOnSpeedChanged);
|
||||
_adsManager.Register("GVL_CONFIG.rPumpPosolytOnPower", PosolytPumpOnSpeedChanged);
|
||||
// Configured pump speed for on
|
||||
_adsManager.Register("GVL_CONFIG.rPumpNegolytOnPower", NegolytPumpOnSpeedChanged);
|
||||
_adsManager.Register("GVL_CONFIG.rPumpPosolytOnPower", PosolytPumpOnSpeedChanged);
|
||||
|
||||
valveWindowHorizontalPosition = 10;
|
||||
}
|
||||
valveWindowHorizontalPosition = 10;
|
||||
}
|
||||
|
||||
private void NegolytPumpOnSpeedChanged(object? sender, ValueChangedEventArgs e)
|
||||
{
|
||||
_negolytPumpOnSpeed = (float)e.Value;
|
||||
}
|
||||
private void NegolytPumpOnSpeedChanged(object? sender, ValueChangedEventArgs e)
|
||||
{
|
||||
_negolytPumpOnSpeed = (float)e.Value;
|
||||
}
|
||||
|
||||
private void PosolytPumpOnSpeedChanged(object? sender, ValueChangedEventArgs e)
|
||||
{
|
||||
_posolytPumpOnSpeed = (float)e.Value;
|
||||
}
|
||||
private void PosolytPumpOnSpeedChanged(object? sender, ValueChangedEventArgs e)
|
||||
{
|
||||
_posolytPumpOnSpeed = (float)e.Value;
|
||||
}
|
||||
|
||||
private void VoltageChanged(object? sender, ValueChangedEventArgs e)
|
||||
{
|
||||
RVoltage = (float)e.Value;
|
||||
}
|
||||
private void VoltageChanged(object? sender, ValueChangedEventArgs e)
|
||||
{
|
||||
RVoltage = (float)e.Value;
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
// Dispose all necessary view models
|
||||
// Negolyt
|
||||
PressureNegolytSegmentInVM.Dispose();
|
||||
PressureNegolytTankInVM.Dispose();
|
||||
TemperatureNegolytTankInVM.Dispose();
|
||||
_valveNegolytVM.OpenButton.FeedbackChanged -= OnValveNegolytOpenFeedbackChanged;
|
||||
_valveNegolytVM.CloseButton.FeedbackChanged -= OnValveNegolytCloseFeedbackChanged;
|
||||
_valveNegolytVM.OpenButton.ReleaseChanged -= OnValveNegolytOpenReleaseChanged;
|
||||
_valveNegolytVM.CloseButton.ReleaseChanged -= OnValveNegolytCloseReleaseChanged;
|
||||
_valveNegolytVM.Dispose();
|
||||
_pumpNegolytVM.Dispose();
|
||||
public void Dispose()
|
||||
{
|
||||
// Dispose all necessary view models
|
||||
// Negolyt
|
||||
PressureNegolytSegmentInVM.Dispose();
|
||||
PressureNegolytTankInVM.Dispose();
|
||||
TemperatureNegolytTankInVM.Dispose();
|
||||
_valveNegolytVM.OpenButton.FeedbackChanged -= OnValveNegolytOpenFeedbackChanged;
|
||||
_valveNegolytVM.CloseButton.FeedbackChanged -= OnValveNegolytCloseFeedbackChanged;
|
||||
_valveNegolytVM.OpenButton.ReleaseChanged -= OnValveNegolytOpenReleaseChanged;
|
||||
_valveNegolytVM.CloseButton.ReleaseChanged -= OnValveNegolytCloseReleaseChanged;
|
||||
_valveNegolytVM.Dispose();
|
||||
_pumpNegolytVM.Dispose();
|
||||
|
||||
// Posolyt
|
||||
PressurePosolytSegmentInVM.Dispose();
|
||||
PressurePosolytTankInVM.Dispose();
|
||||
TemperaturePosolytTankInVM.Dispose();
|
||||
_valvePosolytVM.OpenButton.FeedbackChanged -= OnValvePosolytOpenFeedbackChanged;
|
||||
_valvePosolytVM.CloseButton.FeedbackChanged -= OnValvePosolytCloseFeedbackChanged;
|
||||
_valvePosolytVM.OpenButton.ReleaseChanged -= OnValvePosolytOpenReleaseChanged;
|
||||
_valvePosolytVM.CloseButton.ReleaseChanged -= OnValvePosolytCloseReleaseChanged;
|
||||
_valvePosolytVM.Dispose();
|
||||
_pumpPosolytVM.Dispose();
|
||||
// Posolyt
|
||||
PressurePosolytSegmentInVM.Dispose();
|
||||
PressurePosolytTankInVM.Dispose();
|
||||
TemperaturePosolytTankInVM.Dispose();
|
||||
_valvePosolytVM.OpenButton.FeedbackChanged -= OnValvePosolytOpenFeedbackChanged;
|
||||
_valvePosolytVM.CloseButton.FeedbackChanged -= OnValvePosolytCloseFeedbackChanged;
|
||||
_valvePosolytVM.OpenButton.ReleaseChanged -= OnValvePosolytOpenReleaseChanged;
|
||||
_valvePosolytVM.CloseButton.ReleaseChanged -= OnValvePosolytCloseReleaseChanged;
|
||||
_valvePosolytVM.Dispose();
|
||||
_pumpPosolytVM.Dispose();
|
||||
|
||||
// Deregister variables
|
||||
_adsManager?.Deregister(_variableName + ".eStatus", StatusChanged);
|
||||
_adsManager?.Deregister(_variableName + ".rVoltage", VoltageChanged);
|
||||
_adsManager?.Deregister("GVL_CONFIG.rPumpNegolytOnPower", NegolytPumpOnSpeedChanged);
|
||||
_adsManager?.Deregister("GVL_CONFIG.rPumpPosolytOnPower", PosolytPumpOnSpeedChanged);
|
||||
// Deregister variables
|
||||
_adsManager?.Deregister(_variableName + ".eStatus", StatusChanged);
|
||||
_adsManager?.Deregister(_variableName + ".rVoltage", VoltageChanged);
|
||||
_adsManager?.Deregister("GVL_CONFIG.rPumpNegolytOnPower", NegolytPumpOnSpeedChanged);
|
||||
_adsManager?.Deregister("GVL_CONFIG.rPumpPosolytOnPower", PosolytPumpOnSpeedChanged);
|
||||
|
||||
// Destroy windows
|
||||
_windowValveNegolyt?.Close();
|
||||
_windowValvePosolyt?.Close();
|
||||
_windowPumpNegolyt?.Close();
|
||||
_windowPumpPosolyt?.Close();
|
||||
}
|
||||
// Destroy windows
|
||||
_windowValveNegolyt?.Close();
|
||||
_windowValvePosolyt?.Close();
|
||||
_windowPumpNegolyt?.Close();
|
||||
_windowPumpPosolyt?.Close();
|
||||
}
|
||||
|
||||
private void StatusChanged(object? sender, ValueChangedEventArgs e)
|
||||
{
|
||||
Status = (E_COMPONENT_STATUS)((short)e.Value);
|
||||
}
|
||||
private void StatusChanged(object? sender, ValueChangedEventArgs e)
|
||||
{
|
||||
Status = (E_COMPONENT_STATUS)((short)e.Value);
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
private void ShowValveNegolyt()
|
||||
{
|
||||
if (_adsManager != null && _windowValveNegolyt == null)
|
||||
{
|
||||
_windowValveNegolyt = new() { DataContext = _valveNegolytVM };
|
||||
_windowValveNegolyt.Closed += WindowValveNegolyt_Closed;
|
||||
_windowValveNegolyt.Show();
|
||||
}
|
||||
[RelayCommand]
|
||||
private void ShowValveNegolyt()
|
||||
{
|
||||
if (_adsManager != null && _windowValveNegolyt == null)
|
||||
{
|
||||
_windowValveNegolyt = new() { DataContext = _valveNegolytVM };
|
||||
_windowValveNegolyt.Closed += WindowValveNegolyt_Closed;
|
||||
_windowValveNegolyt.Show();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void WindowValveNegolyt_Closed(object? sender, EventArgs e)
|
||||
{
|
||||
_windowValveNegolyt!.Close();
|
||||
_windowValveNegolyt = null;
|
||||
}
|
||||
private void WindowValveNegolyt_Closed(object? sender, EventArgs e)
|
||||
{
|
||||
_windowValveNegolyt!.Close();
|
||||
_windowValveNegolyt = null;
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
private void ShowValvePosolyt()
|
||||
{
|
||||
if (_adsManager != null && _windowValvePosolyt == null)
|
||||
{
|
||||
_windowValvePosolyt = new() { DataContext = _valvePosolytVM };
|
||||
_windowValvePosolyt.Closed += WindowValvePosolyt_Closed;
|
||||
_windowValvePosolyt.Show();
|
||||
}
|
||||
}
|
||||
[RelayCommand]
|
||||
private void ShowValvePosolyt()
|
||||
{
|
||||
if (_adsManager != null && _windowValvePosolyt == null)
|
||||
{
|
||||
_windowValvePosolyt = new() { DataContext = _valvePosolytVM };
|
||||
_windowValvePosolyt.Closed += WindowValvePosolyt_Closed;
|
||||
_windowValvePosolyt.Show();
|
||||
}
|
||||
}
|
||||
|
||||
private void WindowValvePosolyt_Closed(object? sender, EventArgs e)
|
||||
{
|
||||
_windowValvePosolyt!.Close();
|
||||
_windowValvePosolyt = null;
|
||||
}
|
||||
private void WindowValvePosolyt_Closed(object? sender, EventArgs e)
|
||||
{
|
||||
_windowValvePosolyt!.Close();
|
||||
_windowValvePosolyt = null;
|
||||
}
|
||||
|
||||
|
||||
|
||||
[RelayCommand]
|
||||
public void ShowPumpNegolyt()
|
||||
{
|
||||
if (_adsManager != null && _windowPumpNegolyt == null)
|
||||
{
|
||||
_windowPumpNegolyt = new() { DataContext = _pumpNegolytVM };
|
||||
_windowPumpNegolyt.Closed += WindowPumpNegolyt_Closed;
|
||||
_windowPumpNegolyt.Show();
|
||||
}
|
||||
}
|
||||
[RelayCommand]
|
||||
public void ShowPumpNegolyt()
|
||||
{
|
||||
if (_adsManager != null && _windowPumpNegolyt == null)
|
||||
{
|
||||
_windowPumpNegolyt = new() { DataContext = _pumpNegolytVM };
|
||||
_windowPumpNegolyt.Closed += WindowPumpNegolyt_Closed;
|
||||
_windowPumpNegolyt.Show();
|
||||
}
|
||||
}
|
||||
|
||||
private void WindowPumpNegolyt_Closed(object? sender, EventArgs e)
|
||||
{
|
||||
_windowPumpNegolyt!.Close();
|
||||
_windowPumpNegolyt = null;
|
||||
}
|
||||
private void WindowPumpNegolyt_Closed(object? sender, EventArgs e)
|
||||
{
|
||||
_windowPumpNegolyt!.Close();
|
||||
_windowPumpNegolyt = null;
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
public void ShowPumpPosolyt()
|
||||
{
|
||||
if (_adsManager != null && _windowPumpPosolyt == null)
|
||||
{
|
||||
_windowPumpPosolyt = new() { DataContext = _pumpPosolytVM };
|
||||
_windowPumpPosolyt.Closed += WindowPumpPosolyt_Closed;
|
||||
_windowPumpPosolyt.Show();
|
||||
}
|
||||
}
|
||||
[RelayCommand]
|
||||
public void ShowPumpPosolyt()
|
||||
{
|
||||
if (_adsManager != null && _windowPumpPosolyt == null)
|
||||
{
|
||||
_windowPumpPosolyt = new() { DataContext = _pumpPosolytVM };
|
||||
_windowPumpPosolyt.Closed += WindowPumpPosolyt_Closed;
|
||||
_windowPumpPosolyt.Show();
|
||||
}
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
private void OpenBothValves()
|
||||
{
|
||||
_valveNegolytVM.OpenButton?.ButtonClickedCommand.Execute(null);
|
||||
_valvePosolytVM.OpenButton?.ButtonClickedCommand.Execute(null);
|
||||
}
|
||||
[RelayCommand]
|
||||
private void OpenBothValves()
|
||||
{
|
||||
_valveNegolytVM.OpenButton?.ButtonClickedCommand.Execute(null);
|
||||
_valvePosolytVM.OpenButton?.ButtonClickedCommand.Execute(null);
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
private void CloseBothValves()
|
||||
{
|
||||
_valveNegolytVM.CloseButton?.ButtonClickedCommand.Execute(null);
|
||||
_valvePosolytVM.CloseButton?.ButtonClickedCommand.Execute(null);
|
||||
}
|
||||
[RelayCommand]
|
||||
private void CloseBothValves()
|
||||
{
|
||||
_valveNegolytVM.CloseButton?.ButtonClickedCommand.Execute(null);
|
||||
_valvePosolytVM.CloseButton?.ButtonClickedCommand.Execute(null);
|
||||
}
|
||||
|
||||
private void OnValveNegolytOpenFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateOpenFeedback();
|
||||
}
|
||||
private void OnValveNegolytOpenFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateOpenFeedback();
|
||||
}
|
||||
|
||||
private void OnValvePosolytOpenFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateOpenFeedback();
|
||||
}
|
||||
private void OnValvePosolytOpenFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateOpenFeedback();
|
||||
}
|
||||
|
||||
private void CalculateOpenFeedback()
|
||||
{
|
||||
if (_valveNegolytVM?.OpenButton.IFeedback == 1 && _valvePosolytVM?.OpenButton.IFeedback == 1)
|
||||
FeedbackOpenValves = 1;
|
||||
else if (_valveNegolytVM?.OpenButton.IFeedback == 0 && _valvePosolytVM?.OpenButton.IFeedback == 0)
|
||||
FeedbackOpenValves = 0;
|
||||
else
|
||||
FeedbackOpenValves = 2;
|
||||
}
|
||||
private void CalculateOpenFeedback()
|
||||
{
|
||||
if (_valveNegolytVM?.OpenButton.IFeedback == 1 && _valvePosolytVM?.OpenButton.IFeedback == 1)
|
||||
FeedbackOpenValves = 1;
|
||||
else if (_valveNegolytVM?.OpenButton.IFeedback == 0 && _valvePosolytVM?.OpenButton.IFeedback == 0)
|
||||
FeedbackOpenValves = 0;
|
||||
else
|
||||
FeedbackOpenValves = 2;
|
||||
}
|
||||
|
||||
private void OnValveNegolytCloseFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateCloseFeedback();
|
||||
}
|
||||
private void OnValveNegolytCloseFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateCloseFeedback();
|
||||
}
|
||||
|
||||
private void OnValvePosolytCloseFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateCloseFeedback();
|
||||
}
|
||||
private void OnValvePosolytCloseFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateCloseFeedback();
|
||||
}
|
||||
|
||||
private void CalculateCloseFeedback()
|
||||
{
|
||||
if (_valveNegolytVM?.CloseButton.IFeedback == 1 && _valvePosolytVM?.CloseButton.IFeedback == 1)
|
||||
FeedbackCloseValves = 1;
|
||||
else if (_valveNegolytVM?.CloseButton.IFeedback == 0 && _valvePosolytVM?.CloseButton.IFeedback == 0)
|
||||
FeedbackCloseValves = 0;
|
||||
else
|
||||
FeedbackCloseValves = 2;
|
||||
}
|
||||
private void CalculateCloseFeedback()
|
||||
{
|
||||
if (_valveNegolytVM?.CloseButton.IFeedback == 1 && _valvePosolytVM?.CloseButton.IFeedback == 1)
|
||||
FeedbackCloseValves = 1;
|
||||
else if (_valveNegolytVM?.CloseButton.IFeedback == 0 && _valvePosolytVM?.CloseButton.IFeedback == 0)
|
||||
FeedbackCloseValves = 0;
|
||||
else
|
||||
FeedbackCloseValves = 2;
|
||||
}
|
||||
|
||||
private void OnValveNegolytOpenReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateOpenRelease();
|
||||
}
|
||||
private void OnValveNegolytOpenReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateOpenRelease();
|
||||
}
|
||||
|
||||
private void OnValvePosolytOpenReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateOpenRelease();
|
||||
}
|
||||
private void OnValvePosolytOpenReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateOpenRelease();
|
||||
}
|
||||
|
||||
private void CalculateOpenRelease()
|
||||
{
|
||||
if (_valvePosolytVM == null || _valveNegolytVM == null)
|
||||
return;
|
||||
private void CalculateOpenRelease()
|
||||
{
|
||||
if (_valvePosolytVM == null || _valveNegolytVM == null)
|
||||
return;
|
||||
|
||||
if (_valveNegolytVM.OpenButton.XRelease && _valvePosolytVM.OpenButton.XRelease)
|
||||
CanOpenBothValves = true;
|
||||
else
|
||||
CanOpenBothValves = false;
|
||||
}
|
||||
if (_valveNegolytVM.OpenButton.XRelease && _valvePosolytVM.OpenButton.XRelease)
|
||||
CanOpenBothValves = true;
|
||||
else
|
||||
CanOpenBothValves = false;
|
||||
}
|
||||
|
||||
private void OnValveNegolytCloseReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateCloseRelease();
|
||||
}
|
||||
private void OnValveNegolytCloseReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateCloseRelease();
|
||||
}
|
||||
|
||||
private void OnValvePosolytCloseReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateCloseRelease();
|
||||
}
|
||||
private void OnValvePosolytCloseReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateCloseRelease();
|
||||
}
|
||||
|
||||
private void CalculateCloseRelease()
|
||||
{
|
||||
if (_valvePosolytVM == null || _valveNegolytVM == null)
|
||||
return;
|
||||
private void CalculateCloseRelease()
|
||||
{
|
||||
if (_valvePosolytVM == null || _valveNegolytVM == null)
|
||||
return;
|
||||
|
||||
if (_valveNegolytVM.CloseButton.XRelease && _valvePosolytVM.CloseButton.XRelease)
|
||||
CanCloseBothValves = true;
|
||||
else
|
||||
CanCloseBothValves = false;
|
||||
}
|
||||
if (_valveNegolytVM.CloseButton.XRelease && _valvePosolytVM.CloseButton.XRelease)
|
||||
CanCloseBothValves = true;
|
||||
else
|
||||
CanCloseBothValves = false;
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
private void StartBothPumps()
|
||||
{
|
||||
if (_adsManager == null || _pumpNegolytVM == null || _pumpPosolytVM == null)
|
||||
return;
|
||||
[RelayCommand]
|
||||
private void StartBothPumps()
|
||||
{
|
||||
if (_adsManager == null || _pumpNegolytVM == null || _pumpPosolytVM == null)
|
||||
return;
|
||||
|
||||
_pumpNegolytVM.Setpoint.RValue = _negolytPumpOnSpeed;
|
||||
_pumpPosolytVM.Setpoint.RValue = _posolytPumpOnSpeed;
|
||||
_pumpNegolytVM.Setpoint.RValue = _negolytPumpOnSpeed;
|
||||
_pumpPosolytVM.Setpoint.RValue = _posolytPumpOnSpeed;
|
||||
|
||||
_pumpNegolytVM.StartButton?.ButtonClickedCommand.Execute(null);
|
||||
_pumpPosolytVM.StartButton?.ButtonClickedCommand.Execute(null);
|
||||
}
|
||||
_pumpNegolytVM.StartButton?.ButtonClickedCommand.Execute(null);
|
||||
_pumpPosolytVM.StartButton?.ButtonClickedCommand.Execute(null);
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
private void StopBothPumps()
|
||||
{
|
||||
_pumpNegolytVM.StopButton?.ButtonClickedCommand.Execute(null);
|
||||
_pumpPosolytVM.StopButton?.ButtonClickedCommand.Execute(null);
|
||||
}
|
||||
[RelayCommand]
|
||||
private void StopBothPumps()
|
||||
{
|
||||
_pumpNegolytVM.StopButton?.ButtonClickedCommand.Execute(null);
|
||||
_pumpPosolytVM.StopButton?.ButtonClickedCommand.Execute(null);
|
||||
}
|
||||
|
||||
private void CalculateStartRelease()
|
||||
{
|
||||
if (_pumpNegolytVM == null || _pumpPosolytVM == null)
|
||||
return;
|
||||
private void CalculateStartRelease()
|
||||
{
|
||||
if (_pumpNegolytVM == null || _pumpPosolytVM == null)
|
||||
return;
|
||||
|
||||
if (_pumpNegolytVM.StartButton.XRelease && _pumpPosolytVM.StartButton.XRelease)
|
||||
CanStartBothPumps = true;
|
||||
else
|
||||
CanStartBothPumps = false;
|
||||
}
|
||||
if (_pumpNegolytVM.StartButton.XRelease && _pumpPosolytVM.StartButton.XRelease)
|
||||
CanStartBothPumps = true;
|
||||
else
|
||||
CanStartBothPumps = false;
|
||||
}
|
||||
|
||||
private void CalculatStopRelease()
|
||||
{
|
||||
if (_pumpNegolytVM == null || _pumpPosolytVM == null)
|
||||
return;
|
||||
private void CalculatStopRelease()
|
||||
{
|
||||
if (_pumpNegolytVM == null || _pumpPosolytVM == null)
|
||||
return;
|
||||
|
||||
if (_pumpNegolytVM.StopButton.XRelease && _pumpPosolytVM.StopButton.XRelease)
|
||||
CanStopBothPumps = true;
|
||||
else
|
||||
CanStopBothPumps = false;
|
||||
}
|
||||
if (_pumpNegolytVM.StopButton.XRelease && _pumpPosolytVM.StopButton.XRelease)
|
||||
CanStopBothPumps = true;
|
||||
else
|
||||
CanStopBothPumps = false;
|
||||
}
|
||||
|
||||
private void CalculateStartFeedback()
|
||||
{
|
||||
if (_pumpNegolytVM == null || _pumpPosolytVM == null)
|
||||
return;
|
||||
private void CalculateStartFeedback()
|
||||
{
|
||||
if (_pumpNegolytVM == null || _pumpPosolytVM == null)
|
||||
return;
|
||||
|
||||
if (_pumpNegolytVM.StartButton.IFeedback == 1 && _pumpPosolytVM.StartButton.IFeedback == 1)
|
||||
FeedbackStartPumps = 1;
|
||||
else if (_pumpNegolytVM.StartButton.IFeedback == 0 && _pumpPosolytVM.StartButton.IFeedback == 0)
|
||||
FeedbackStartPumps = 0;
|
||||
else
|
||||
FeedbackStartPumps = 2;
|
||||
}
|
||||
if (_pumpNegolytVM.StartButton.IFeedback == 1 && _pumpPosolytVM.StartButton.IFeedback == 1)
|
||||
FeedbackStartPumps = 1;
|
||||
else if (_pumpNegolytVM.StartButton.IFeedback == 0 && _pumpPosolytVM.StartButton.IFeedback == 0)
|
||||
FeedbackStartPumps = 0;
|
||||
else
|
||||
FeedbackStartPumps = 2;
|
||||
}
|
||||
|
||||
private void CalculateStopFeedback()
|
||||
{
|
||||
if (_pumpNegolytVM == null || _pumpPosolytVM == null)
|
||||
return;
|
||||
private void CalculateStopFeedback()
|
||||
{
|
||||
if (_pumpNegolytVM == null || _pumpPosolytVM == null)
|
||||
return;
|
||||
|
||||
if (_pumpNegolytVM.StopButton.IFeedback == 1 && _pumpPosolytVM.StopButton.IFeedback == 1)
|
||||
FeedbackStopPumps = 1;
|
||||
else if (_pumpNegolytVM.StopButton.IFeedback == 0 && _pumpPosolytVM.StopButton.IFeedback == 0)
|
||||
FeedbackStopPumps = 0;
|
||||
else
|
||||
FeedbackStopPumps = 2;
|
||||
if (_pumpNegolytVM.StopButton.IFeedback == 1 && _pumpPosolytVM.StopButton.IFeedback == 1)
|
||||
FeedbackStopPumps = 1;
|
||||
else if (_pumpNegolytVM.StopButton.IFeedback == 0 && _pumpPosolytVM.StopButton.IFeedback == 0)
|
||||
FeedbackStopPumps = 0;
|
||||
else
|
||||
FeedbackStopPumps = 2;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void OnPumpPosolytStopReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculatStopRelease();
|
||||
}
|
||||
private void OnPumpPosolytStopReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculatStopRelease();
|
||||
}
|
||||
|
||||
private void OnPumpPosolytStartReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateStartRelease();
|
||||
}
|
||||
private void OnPumpPosolytStartReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateStartRelease();
|
||||
}
|
||||
|
||||
private void OnPumpPosolytStopFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateStopFeedback();
|
||||
}
|
||||
private void OnPumpPosolytStopFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateStopFeedback();
|
||||
}
|
||||
|
||||
private void OnPumpPosolytStartFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateStartFeedback();
|
||||
}
|
||||
private void OnPumpPosolytStartFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateStartFeedback();
|
||||
}
|
||||
|
||||
private void OnPumpNegolytStopReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculatStopRelease();
|
||||
}
|
||||
private void OnPumpNegolytStopReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculatStopRelease();
|
||||
}
|
||||
|
||||
private void OnPumpNegolytStartReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateStartRelease();
|
||||
}
|
||||
private void OnPumpNegolytStartReleaseChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateStartRelease();
|
||||
}
|
||||
|
||||
private void OnPumpNegolytStopFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateStopFeedback();
|
||||
}
|
||||
private void OnPumpNegolytStopFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateStopFeedback();
|
||||
}
|
||||
|
||||
private void OnPumpNegolytStartFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateStartFeedback();
|
||||
}
|
||||
private void OnPumpNegolytStartFeedbackChanged(object? sender, EventArgs e)
|
||||
{
|
||||
CalculateStartFeedback();
|
||||
}
|
||||
|
||||
private void WindowPumpPosolyt_Closed(object? sender, EventArgs e)
|
||||
{
|
||||
_windowPumpPosolyt!.Close();
|
||||
_windowPumpPosolyt = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
private void WindowPumpPosolyt_Closed(object? sender, EventArgs e)
|
||||
{
|
||||
_windowPumpPosolyt!.Close();
|
||||
_windowPumpPosolyt = null;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user