From ff9add40817cb352b5964cdbdca3b5b088d03209 Mon Sep 17 00:00:00 2001 From: bliestlech-tc Date: Mon, 9 Mar 2026 10:52:42 +0100 Subject: [PATCH] Push Changes from other Github --- .../Common/FlowStationsViewModelBase.cs | 50 ++ .../UniperHMI/Common/IChangeTrackingEx.cs | 14 + .../UniperHMI/Common/L4ItXmlSerializer.cs | 4 +- .../UniperHMI/Common/MediaContainer.xaml | 6 +- .../UniperHMI/Common/ParamControlFloat.xaml | 7 +- .../Common/ParamControlFloat.xaml.cs | 5 - .../UniperHMI/Common/ParamControlFloatVM.cs | 24 +- .../UniperHMI/Common/ParamControlInt.xaml | 5 +- .../UniperHMI/Common/ParamControlIntVM.cs | 44 +- .../Common/UserManagementWindowVm.cs | 1 + .../HMIObjects/BoolToVisibilityConverter.cs | 36 + uniper_hmi/UniperHMI/InfineonHMI.csproj | 4 + uniper_hmi/UniperHMI/MainWindow.xaml | 9 +- uniper_hmi/UniperHMI/MainWindow.xaml.cs | 4 +- uniper_hmi/UniperHMI/MainWindowVM.cs | 61 +- uniper_hmi/UniperHMI/Model/Models.cs | 35 +- uniper_hmi/UniperHMI/Model/ReceipeDto.cs | 11 +- .../Pages/ViewModels/MachineOverviewPageVM.cs | 377 -------- .../Pages/ViewModels/MediaCabinetPageVM.cs | 6 - .../Pages/ViewModels/OverviewPageVM.cs | 177 ++++ .../ViewModels/ProductionOverviewPageVM.cs | 568 +++++++----- .../Pages/ViewModels/ReceipePageVM.cs | 816 ++++++++++++------ .../Pages/Views/AlignmentStationPage.xaml | 2 +- .../Pages/Views/AlignmentStationPage.xaml.cs | 24 +- .../Pages/Views/EtchingStation1Page.xaml | 2 +- .../Pages/Views/EtchingStation1Page.xaml.cs | 33 +- .../Pages/Views/EtchingStation2Page.xaml | 2 +- .../Pages/Views/EtchingStation2Page.xaml.cs | 33 +- .../UniperHMI/Pages/Views/EventsPage.xaml | 2 +- .../Pages/Views/HighVoltageStationPage.xaml | 2 +- .../Views/HighVoltageStationPage.xaml.cs | 26 +- .../Pages/Views/HotCoolPlatePage.xaml.cs | 26 +- .../Pages/Views/KukaRobotPage.xaml.cs | 24 +- .../Pages/Views/MachineOverviewPage.xaml | 196 ----- .../Pages/Views/MachineOverviewPage.xaml.cs | 22 - .../Pages/Views/MediaCabinetPage.xaml | 2 +- .../Pages/Views/MediaCabinetPage.xaml.cs | 26 +- .../UniperHMI/Pages/Views/NIOStationPage.xaml | 2 +- .../Pages/Views/NIOStationPage.xaml.cs | 26 +- .../UniperHMI/Pages/Views/OverviewPage.xaml | 95 ++ .../Pages/Views/OverviewPage.xaml.cs | 29 + .../Pages/Views/ProductionOverviewPage.xaml | 160 ++-- .../UniperHMI/Pages/Views/ReceipePage.xaml | 277 ++++-- .../UniperHMI/Pages/Views/ReceipePage.xaml.cs | 5 +- .../UniperHMI/Pages/Views/TrayFeederPage.xaml | 2 +- .../Pages/Views/TrayFeederPage.xaml.cs | 18 +- uniper_hmi/UniperHMI/Resources/Check.png | Bin 0 -> 17494 bytes uniper_hmi/UniperHMI/Resources/X.png | Bin 0 -> 14540 bytes 48 files changed, 1857 insertions(+), 1443 deletions(-) create mode 100644 uniper_hmi/UniperHMI/Common/FlowStationsViewModelBase.cs create mode 100644 uniper_hmi/UniperHMI/Common/IChangeTrackingEx.cs create mode 100644 uniper_hmi/UniperHMI/HMIToolkit/HMIObjects/BoolToVisibilityConverter.cs delete mode 100644 uniper_hmi/UniperHMI/Pages/ViewModels/MachineOverviewPageVM.cs create mode 100644 uniper_hmi/UniperHMI/Pages/ViewModels/OverviewPageVM.cs delete mode 100644 uniper_hmi/UniperHMI/Pages/Views/MachineOverviewPage.xaml delete mode 100644 uniper_hmi/UniperHMI/Pages/Views/MachineOverviewPage.xaml.cs create mode 100644 uniper_hmi/UniperHMI/Pages/Views/OverviewPage.xaml create mode 100644 uniper_hmi/UniperHMI/Pages/Views/OverviewPage.xaml.cs create mode 100644 uniper_hmi/UniperHMI/Resources/Check.png create mode 100644 uniper_hmi/UniperHMI/Resources/X.png diff --git a/uniper_hmi/UniperHMI/Common/FlowStationsViewModelBase.cs b/uniper_hmi/UniperHMI/Common/FlowStationsViewModelBase.cs new file mode 100644 index 0000000..eb59709 --- /dev/null +++ b/uniper_hmi/UniperHMI/Common/FlowStationsViewModelBase.cs @@ -0,0 +1,50 @@ +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.ComponentModel; +using System.Linq; +using System.Reactive.Linq; +using System.Text; +using System.Threading.Tasks; +using CommunityToolkit.Mvvm.ComponentModel; +using InfineonHMI.Model; + +namespace InfineonHMI.Common +{ + public sealed partial class FlowStationsViewModelBase : ObservableValidator, IChangeTrackingEx + { + private ObservableCollection initFlowStations = new(); + [ObservableProperty] + private ObservableCollection flowStations = new ObservableCollection(); + + public void AcceptChanges() + { + initFlowStations = new(FlowStations); + } + + public bool IsChanged => !initFlowStations.Equals(FlowStations); + public void DiscardChanges() + { + FlowStations = new(initFlowStations); + } + } + + public sealed partial class FlowReceipe : ObservableValidator, IChangeTrackingEx + { + + private ObservableCollection initEntries = new(); + [ObservableProperty] private ObservableCollection flowReceipeEntries; + + + public void AcceptChanges() + { + initEntries = new(FlowReceipeEntries); + } + + public bool IsChanged => !FlowReceipeEntries.Equals(initEntries); + public void DiscardChanges() + { + FlowReceipeEntries = new(initEntries); + } + } +} diff --git a/uniper_hmi/UniperHMI/Common/IChangeTrackingEx.cs b/uniper_hmi/UniperHMI/Common/IChangeTrackingEx.cs new file mode 100644 index 0000000..e3264d8 --- /dev/null +++ b/uniper_hmi/UniperHMI/Common/IChangeTrackingEx.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace InfineonHMI.Common +{ + public interface IChangeTrackingEx : IChangeTracking + { + void DiscardChanges(); + } +} diff --git a/uniper_hmi/UniperHMI/Common/L4ItXmlSerializer.cs b/uniper_hmi/UniperHMI/Common/L4ItXmlSerializer.cs index 4c6dc75..12807d1 100644 --- a/uniper_hmi/UniperHMI/Common/L4ItXmlSerializer.cs +++ b/uniper_hmi/UniperHMI/Common/L4ItXmlSerializer.cs @@ -19,7 +19,7 @@ public static class L4ItXmlSerializer /// /// - public static void SerializeObject(T serializableObject, string fileName, bool encrypt = false, string rootElementName = null) + public static void SerializeObject(T serializableObject, string fileName, bool encrypt = false, string? rootElementName = null) { if (string.IsNullOrEmpty(fileName)) return; @@ -73,7 +73,7 @@ public static class L4ItXmlSerializer /// /// /// - public static T DeSerializeObject(string fileName, bool decrypt = false, string rootElementName = null) + public static T DeSerializeObject(string fileName, bool decrypt = false, string? rootElementName = null) { if (string.IsNullOrEmpty(fileName) || !File.Exists(fileName)) return default!; diff --git a/uniper_hmi/UniperHMI/Common/MediaContainer.xaml b/uniper_hmi/UniperHMI/Common/MediaContainer.xaml index cda2874..a4c410e 100644 --- a/uniper_hmi/UniperHMI/Common/MediaContainer.xaml +++ b/uniper_hmi/UniperHMI/Common/MediaContainer.xaml @@ -44,7 +44,7 @@