Suggest Mediacabinet View

This commit is contained in:
2026-03-10 22:05:18 +01:00
parent d2ba4baa1d
commit 57b8791dc0
5 changed files with 155 additions and 66 deletions

View File

@@ -19,18 +19,23 @@ public sealed partial class MediaContainerVm : ObservableValidator, IDisposable
[ObservableProperty] private bool full = false;
[ObservableProperty] private bool overload = false;
[ObservableProperty] private BinaryValveControlVM? fillValveControlVm;
[ObservableProperty] private HMIControlButtonVM? emptyButton;
[ObservableProperty] private HMIControlButtonVM? fillButton;
[ObservableProperty] private BinaryValveControlVM? drainValveControlVm;
[ObservableProperty] private BinaryValveControlVM? pumpValveControlVm;
public MediaContainerVm()
{
sName = "No Name";
EmptyButton = new HMIControlButtonVM();
FillButton = new HMIControlButtonVM();
FillValveControlVm = new();
DrainValveControlVm = new();
PumpValveControlVm = new();
}
@@ -41,8 +46,10 @@ public sealed partial class MediaContainerVm : ObservableValidator, IDisposable
sName = "No Name";
EmptyButton = new HMIControlButtonVM(_adsManager, _variableName + ".stEmptyButton");
FillButton = new HMIControlButtonVM(_adsManager, _variableName + ".stFillButton");
FillValveControlVm = new BinaryValveControlVM(_adsManager, _variableName + ".stFillingValve");
DrainValveControlVm = new BinaryValveControlVM(_adsManager, _variableName + ".stDrainValve");
PumpValveControlVm = new BinaryValveControlVM(_adsManager, _variableName + ".stPumpValve");
_adsManager.Register(_variableName + ".xEmpty", EmptyChanged);
_adsManager.Register(_variableName + ".xFull", FullChanged);
_adsManager.Register(_variableName + ".xOverload", OverloadChanged);
@@ -62,12 +69,16 @@ public sealed partial class MediaContainerVm : ObservableValidator, IDisposable
}
public void Dispose()
{
EmptyButton?.Dispose();
EmptyButton = null;
FillButton?.Dispose();
FillButton = null;
FillValveControlVm?.Dispose();
DrainValveControlVm?.Dispose();
PumpValveControlVm?.Dispose();
_adsManager?.Deregister(_variableName + ".xEmpty", EmptyChanged);
FillValveControlVm = null;
DrainValveControlVm = null;
PumpValveControlVm = null;
_adsManager?.Deregister(_variableName + ".xEmpty", EmptyChanged);
_adsManager?.Deregister(_variableName + ".xFull", FullChanged);
_adsManager?.Deregister(_variableName + ".xOverload", OverloadChanged);
}