aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels')
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs38
1 files changed, 37 insertions, 1 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs
index ba94cd860..b3c6236f8 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs
@@ -11,6 +11,7 @@ using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
+using Tango.BL.Entities;
using Tango.Core.Commands;
using Tango.Integration.Services;
using Tango.Logging;
@@ -75,6 +76,16 @@ namespace Tango.MachineStudio.UI.ViewModels
set { _isMenuOpened = value; RaisePropertyChangedAuto(); }
}
+ private bool _isMachineErrorsOpened;
+ /// <summary>
+ /// Gets or sets a value indicating whether to display the machine errors.
+ /// </summary>
+ public bool IsMachineErrorsOpened
+ {
+ get { return _isMachineErrorsOpened; }
+ set { _isMachineErrorsOpened = value; RaisePropertyChangedAuto(); }
+ }
+
/// <summary>
/// Gets or sets the start module command.
/// </summary>
@@ -225,6 +236,31 @@ namespace Tango.MachineStudio.UI.ViewModels
_updateCheckThread = new Thread(UpdateCheckThreadMethod);
_updateCheckThread.IsBackground = true;
_updateCheckThread.Start();
+
+ ApplicationManager.ConnectedMachineChanged += (sender, machine) =>
+ {
+ if (machine != null)
+ {
+ machine.MachineEventsStateProvider.NewEvents -= MachineEventsStateProvider_NewEvents;
+ machine.MachineEventsStateProvider.NewEvents += MachineEventsStateProvider_NewEvents;
+
+ machine.MachineEventsStateProvider.EventsResolved -= MachineEventsStateProvider_EventsResolved;
+ machine.MachineEventsStateProvider.EventsResolved += MachineEventsStateProvider_EventsResolved;
+ }
+ };
+ }
+
+ private void MachineEventsStateProvider_EventsResolved(object sender, IEnumerable<MachinesEvent> e)
+ {
+ if (ApplicationManager.ConnectedMachine.MachineEventsStateProvider.Events.Count == 0)
+ {
+ IsMachineErrorsOpened = false;
+ }
+ }
+
+ private void MachineEventsStateProvider_NewEvents(object sender, IEnumerable<MachinesEvent> e)
+ {
+ IsMachineErrorsOpened = true;
}
private void UpdateCheckThreadMethod()
@@ -323,7 +359,7 @@ namespace Tango.MachineStudio.UI.ViewModels
else
{
ApplicationManager.ConnectedMachine = x.SelectedMachine;
- _eventLogger.Log(String.Format("Successfully connected to machine {0} via TCP",x.SelectedMachine.SerialNumber));
+ _eventLogger.Log(String.Format("Successfully connected to machine {0} via TCP", x.SelectedMachine.SerialNumber));
}
}
catch (Exception ex)