DirectOutputR1
DirectOutput framework R1 for virtual pinball cabinets.
Go to:
Overview 
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties Events Macros Pages
LedControlIniFile.cs
Go to the documentation of this file.
1 using System.ComponentModel;
2 using System.IO;
3 
4 
5 namespace DirectOutput.GlobalConfiguration
6 {
7  public class LedControlIniFile : INotifyPropertyChanged
8  {
9 
10  #region INotifyPropertyChanged Member
11 
12  public event PropertyChangedEventHandler PropertyChanged;
13 
14 
15  private void NotifyPropertyChanged(string PropertyName)
16  {
17  if (PropertyChanged != null)
18  {
19  PropertyChanged(this, new PropertyChangedEventArgs(PropertyName));
20  }
21  }
22 
23 
24 
25  #endregion
26 
27 
28  private string _Filename = "";
29  private FileInfo _File;
30 
31  public string Filename
32  {
33  get { return _Filename; }
34  set
35  {
36  _Filename = value;
37  try
38  {
39  _File = new FileInfo(value);
40  }
41  catch
42  {
43  _File = null;
44  }
45  NotifyPropertyChanged("FileName");
46  }
47  }
48 
49  public FileInfo File
50  {
51  get
52  {
53  return _File;
54  }
55  }
56 
57  public bool FileExists
58  {
59  get
60  {
61  if (File != null)
62  {
63  return _File.Exists;
64  }
65  return false;
66  }
67  }
68 
69  public string Status
70  {
71  get
72  {
73  if (Filename.IsNullOrWhiteSpace())
74  {
75  return "No file set.";
76  }
77  if (FileExists)
78  {
79  return "OK";
80  }
81  else
82  {
83  return "File does not exist";
84  }
85  }
86  }
87 
88 
89  private int _LedWizNumber = 99999;
90 
91 
92  public int LedWizNumber
93  {
94  get { return _LedWizNumber; }
95  set
96  {
97  _LedWizNumber = value;
98  NotifyPropertyChanged("LedWizNumber");
99  }
100  }
101 
102 
103  public override string ToString()
104  {
105  return "{0} (LedWiz:{1})".Build(Filename,LedWizNumber);
106  }
107 
108  public LedControlIniFile(string Filename, int LedWizNumber)
109  {
110  this.Filename = Filename;
111  this.LedWizNumber = LedWizNumber;
112  }
113 
114  public LedControlIniFile() { }
115 
116 
117  }
118 }