1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Data;
using Tango.BL.Entities;
using Tango.BL.Enumerations;
using Tango.PPC.Events.EventsViews;
namespace Tango.PPC.Events.Converters
{
public class MachineEventToViewConverter : IValueConverter
{
private static Dictionary<EventTypes, Type> _eventViews = new Dictionary<EventTypes, Type>();
static MachineEventToViewConverter()
{
//Jobs
_eventViews.Add(EventTypes.JOB_STARTED, typeof(JobEventView));
_eventViews.Add(EventTypes.JOB_ABORTED, typeof(JobEventView));
_eventViews.Add(EventTypes.JOB_COMPLETED, typeof(JobEventView));
_eventViews.Add(EventTypes.JOB_FAILED, typeof(JobFailedEventView));
//Thread Break
_eventViews.Add(EventTypes.THREAD_BREAK, typeof(ThreadBreakView));
_eventViews.Add(EventTypes.THREAD_TENSION_CONTROL_FAILURE_FEEDER_DANCER, typeof(ThreadBreakView));
_eventViews.Add(EventTypes.THREAD_TENSION_CONTROL_FAILURE_PULLER_DANCER, typeof(ThreadBreakView));
_eventViews.Add(EventTypes.THREAD_TENSION_CONTROL_FAILURE_WINDER_DANCER, typeof(ThreadBreakView));
//BIT Failed
_eventViews.Add(EventTypes.POWER_UP_BIT_FAILURE, typeof(BitFailedView));
}
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
MachinesEvent ev = value as MachinesEvent;
FrameworkElement view = null;
if (ev != null)
{
if (_eventViews.ContainsKey(ev.Type))
{
view = Activator.CreateInstance(_eventViews[ev.Type]) as FrameworkElement;
}
else
{
view = Activator.CreateInstance<GeneralView>();
}
return view;
}
else
{
return null;
}
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
}
|