Winify – Diff between revs 30 and 43

Subversion Repositories:
Rev:
Only display areas with differencesIgnore whitespace
Rev 30 Rev 43
1 using System; 1 using System;
2 using System.Linq; 2 using System.Linq;
3 using System.Threading; 3 using System.Threading;
4 using System.Windows.Forms; 4 using System.Windows.Forms;
5 using Announcements; 5 using Announcements;
6 using Servers; 6 using Servers;
7 using Winify.Utilities; 7 using Winify.Utilities;
8   8  
9 namespace Winify.Settings 9 namespace Winify.Settings
10 { 10 {
11 public partial class SettingsForm : Form 11 public partial class SettingsForm : Form
12 { 12 {
13 #region Public Events & Delegates 13 #region Public Events & Delegates
14   14  
15 public event EventHandler<SettingsSavedEventArgs> Save; 15 public event EventHandler<SettingsSavedEventArgs> Save;
16   16  
17 #endregion 17 #endregion
18   18  
19 #region Private Delegates, Events, Enums, Properties, Indexers and Fields 19 #region Private Delegates, Events, Enums, Properties, Indexers and Fields
20   20  
21 private readonly BindingSource _announcementBindingSource; 21 private readonly BindingSource _announcementBindingSource;
22   22  
23 private readonly Announcements.Announcements _announcements; 23 private readonly Announcements.Announcements _announcements;
24   24  
25 private readonly BindingSource _serverBindingSource; 25 private readonly BindingSource _serverBindingSource;
26   26  
27 private readonly Servers.Servers _servers; 27 private readonly Servers.Servers _servers;
28   28  
29 private Announcement _announcement; 29 private Announcement _announcement;
30   30  
31 private Server _server; 31 private Server _server;
32 private readonly MainForm _mainForm; 32 private readonly MainForm _mainForm;
33 private readonly CancellationToken _cancellationToken; 33 private readonly CancellationToken _cancellationToken;
34   34  
35 #endregion 35 #endregion
36   36  
37 #region Constructors, Destructors and Finalizers 37 #region Constructors, Destructors and Finalizers
38   38  
39 public SettingsForm() 39 public SettingsForm()
40 { 40 {
41 InitializeComponent(); 41 InitializeComponent();
42 } 42 }
43   43  
44 public SettingsForm(MainForm mainForm) : this() 44 public SettingsForm(MainForm mainForm) : this()
45 { 45 {
46 _mainForm = mainForm; 46 _mainForm = mainForm;
47 } 47 }
48   48  
49 public SettingsForm(MainForm mainForm, Servers.Servers servers, Announcements.Announcements announcements, 49 public SettingsForm(MainForm mainForm, Servers.Servers servers, Announcements.Announcements announcements,
50 CancellationToken cancellationToken) : this(mainForm) 50 CancellationToken cancellationToken) : this(mainForm)
51 { 51 {
52 _servers = servers; 52 _servers = servers;
53 _server = _servers.Server.FirstOrDefault() ?? new Server(); 53 _server = _servers.Server.FirstOrDefault() ?? new Server();
54 _cancellationToken = cancellationToken; 54 _cancellationToken = cancellationToken;
55   55  
56 _serverBindingSource = new BindingSource(); 56 _serverBindingSource = new BindingSource();
57 _serverBindingSource.DataSource = _server; 57 _serverBindingSource.DataSource = _server;
58   58  
59 serverNameTextBox.DataBindings.Add(new Binding("Text", _serverBindingSource, nameof(_server.Name), true, 59 serverNameTextBox.DataBindings.Add(new Binding("Text", _serverBindingSource, nameof(_server.Name), true,
60 DataSourceUpdateMode.OnPropertyChanged)); 60 DataSourceUpdateMode.OnPropertyChanged));
61 serverUrlTextBox.DataBindings.Add(new Binding("Text", _serverBindingSource, nameof(_server.Url), true, 61 serverUrlTextBox.DataBindings.Add(new Binding("Text", _serverBindingSource, nameof(_server.Url), true,
62 DataSourceUpdateMode.OnPropertyChanged)); 62 DataSourceUpdateMode.OnPropertyChanged));
63 serverUsernameTextBox.DataBindings.Add(new Binding("Text", _serverBindingSource, nameof(_server.Username), 63 serverUsernameTextBox.DataBindings.Add(new Binding("Text", _serverBindingSource, nameof(_server.Username),
64 true, 64 true,
65 DataSourceUpdateMode.OnPropertyChanged)); 65 DataSourceUpdateMode.OnPropertyChanged));
66 serverPasswordTextBox.DataBindings.Add(new Binding("Text", _serverBindingSource, nameof(_server.Password), 66 serverPasswordTextBox.DataBindings.Add(new Binding("Text", _serverBindingSource, nameof(_server.Password),
67 true, 67 true,
68 DataSourceUpdateMode.OnPropertyChanged)); 68 DataSourceUpdateMode.OnPropertyChanged));
69   69  
70 listBox1.DataSource = _servers.Server; 70 listBox1.DataSource = _servers.Server;
71 listBox1.DisplayMember = "Name"; 71 listBox1.DisplayMember = "Name";
72 listBox1.DataBindings.Add(new Binding("Text", _servers.Server, "Name", true, 72 listBox1.DataBindings.Add(new Binding("Text", _servers.Server, "Name", true,
73 DataSourceUpdateMode.OnPropertyChanged)); 73 DataSourceUpdateMode.OnPropertyChanged));
74   74  
75 _announcements = announcements; 75 _announcements = announcements;
76 _announcement = _announcements.Announcement.FirstOrDefault() ?? new Announcement(); 76 _announcement = _announcements.Announcement.FirstOrDefault() ?? new Announcement();
77   77  
78 _announcementBindingSource = new BindingSource(); 78 _announcementBindingSource = new BindingSource();
79 _announcementBindingSource.DataSource = _announcement; 79 _announcementBindingSource.DataSource = _announcement;
80   80  
81 appIdTextBox.DataBindings.Add(new Binding("Text", _announcementBindingSource, nameof(_announcement.AppId), 81 appIdTextBox.DataBindings.Add(new Binding("Text", _announcementBindingSource, nameof(_announcement.AppId),
82 true, 82 true,
83 DataSourceUpdateMode.OnPropertyChanged)); 83 DataSourceUpdateMode.OnPropertyChanged));
84 lingerTimeTextBox.DataBindings.Add(new Binding("Text", _announcementBindingSource, 84 lingerTimeTextBox.DataBindings.Add(new Binding("Text", _announcementBindingSource,
85 nameof(_announcement.LingerTime), true, 85 nameof(_announcement.LingerTime), true,
86 DataSourceUpdateMode.OnPropertyChanged)); 86 DataSourceUpdateMode.OnPropertyChanged));
87   87  
88 listBox2.DataSource = _announcements.Announcement; 88 listBox2.DataSource = _announcements.Announcement;
89 listBox2.DisplayMember = "Id"; 89 listBox2.DisplayMember = "Id";
90 listBox2.DataBindings.Add(new Binding("Text", _announcements.Announcement, "Id", true, 90 listBox2.DataBindings.Add(new Binding("Text", _announcements.Announcement, "Id", true,
91 DataSourceUpdateMode.OnPropertyChanged)); 91 DataSourceUpdateMode.OnPropertyChanged));
92 } 92 }
93   93  
94 #endregion 94 #endregion
95   95  
96 #region Event Handlers 96 #region Event Handlers
97   97  
98 private void CheckBox1_CheckedChanged(object sender, EventArgs e) 98 private void CheckBox1_CheckedChanged(object sender, EventArgs e)
99 { 99 {
100 _mainForm.Configuration.LaunchOnBoot = ((CheckBox)sender).Checked; 100 _mainForm.Configuration.LaunchOnBoot = ((CheckBox)sender).Checked;
101   101  
102 _mainForm.ChangedConfigurationContinuation.Schedule(TimeSpan.FromSeconds(1), 102 _mainForm.ChangedConfigurationContinuation.Schedule(TimeSpan.FromSeconds(1),
103 async () => { await _mainForm.SaveConfiguration(); }, _cancellationToken); 103 async () => { await _mainForm.SaveConfiguration(); }, _cancellationToken);
104   104  
105 Miscellaneous.LaunchOnBootSet(_mainForm.Configuration.LaunchOnBoot); 105 Miscellaneous.LaunchOnBootSet(_mainForm.Configuration.LaunchOnBoot);
106 } 106 }
107   107  
108 private void Button1_Click(object sender, EventArgs e) 108 private void Button1_Click(object sender, EventArgs e)
109 { 109 {
110 var server = new Server(); 110 var server = new Server();
-   111 server.Name = serverNameTextBox.Text;
-   112 server.Url = serverUrlTextBox.Text;
-   113 server.Username = serverUsernameTextBox.Text;
-   114 server.Password = serverPasswordTextBox.Text;
111   115  
112 _servers.Server.Add(server); 116 _servers.Server.Add(server);
-   117  
-   118 Save?.Invoke(this, new SettingsSavedEventArgs(_servers, _announcements));
113   119  
114 listBox1.SelectedItem = server; 120 listBox1.SelectedItem = server;
115 } 121 }
116   122  
117 private void Button2_Click(object sender, EventArgs e) 123 private void Button2_Click(object sender, EventArgs e)
118 { 124 {
119 if (listBox1.SelectedItem is Server server) _servers.Server.Remove(server); 125 if (listBox1.SelectedItem is Server server)
-   126 {
-   127 _servers.Server.Remove(server);
-   128 }
120 } 129 }
121   130  
122 private void ListBox1_SelectedIndexChanged(object sender, EventArgs e) 131 private void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
123 { 132 {
124 var listBox = (ListBox)sender; 133 var listBox = (ListBox)sender;
125   134  
126 if (listBox.SelectedItem is Server server) 135 if (listBox.SelectedItem is Server server)
127 { 136 {
128 _server = server; 137 _server = server;
129   138  
130 _serverBindingSource.DataSource = _server; 139 _serverBindingSource.DataSource = _server;
131 } 140 }
132 } 141 }
133   142  
134 private void Button3_Click(object sender, EventArgs e) 143 private void Button3_Click(object sender, EventArgs e)
135 { 144 {
136 if (listBox2.SelectedItem is Announcement announcement) _announcements.Announcement.Remove(announcement); 145 if (listBox2.SelectedItem is Announcement announcement)
-   146 {
-   147 _announcements.Announcement.Remove(announcement);
-   148 }
137 } 149 }
138   150  
139 private void Button4_Click(object sender, EventArgs e) 151 private void Button4_Click(object sender, EventArgs e)
140 { 152 {
141 var announcement = new Announcement(); 153 var announcement = new Announcement();
-   154 if (int.TryParse(appIdTextBox.Text, out var appId))
-   155 {
-   156 announcement.AppId = appId;
-   157 }
-   158  
-   159 if (int.TryParse(lingerTimeTextBox.Text, out var lingerTime))
-   160 {
-   161 announcement.LingerTime = lingerTime;
-   162 }
142   163  
143 _announcements.Announcement.Add(announcement); 164 _announcements.Announcement.Add(announcement);
-   165  
-   166 Save?.Invoke(this, new SettingsSavedEventArgs(_servers, _announcements));
144   167  
145 listBox2.SelectedItem = announcement; 168 listBox2.SelectedItem = announcement;
146 } 169 }
147   170  
148 private void ListBox2_SelectedIndexChanged(object sender, EventArgs e) 171 private void ListBox2_SelectedIndexChanged(object sender, EventArgs e)
149 { 172 {
150 var listBox = (ListBox)sender; 173 var listBox = (ListBox)sender;
151   174  
152 if (listBox.SelectedItem is Announcement announcement) 175 if (listBox.SelectedItem is Announcement announcement)
153 { 176 {
154 _announcement = announcement; 177 _announcement = announcement;
155   178  
156 _announcementBindingSource.DataSource = _announcement; 179 _announcementBindingSource.DataSource = _announcement;
157 } 180 }
158 } 181 }
159   182  
160 private void Button6_Click(object sender, EventArgs e) 183 private void Button6_Click(object sender, EventArgs e)
161 { 184 {
162 Close(); 185 Close();
163 } 186 }
164   187  
165 private void Button5_Click(object sender, EventArgs e) 188 private void Button5_Click(object sender, EventArgs e)
166 { 189 {
167 Save?.Invoke(this, new SettingsSavedEventArgs(_servers, _announcements)); 190 Save?.Invoke(this, new SettingsSavedEventArgs(_servers, _announcements));
168   191  
169 Close(); 192 Close();
170 } 193 }
171   194  
172 private void SettingsForm_Load(object sender, EventArgs e) 195 private void SettingsForm_Load(object sender, EventArgs e)
173 { 196 {
174 checkBox1.Checked = _mainForm.Configuration.LaunchOnBoot; 197 checkBox1.Checked = _mainForm.Configuration.LaunchOnBoot;
175 } 198 }
176   199  
177 #endregion 200 #endregion
178 } 201 }
179 } 202 }
180   203  
181
Generated by GNU Enscript 1.6.5.90.
204
Generated by GNU Enscript 1.6.5.90.
182   205  
183   206  
184   207