Winify – Blame information for rev 25

Subversion Repositories:
Rev:
Rev Author Line No. Line
1 office 1 using System;
4 office 2 using System.Linq;
1 office 3 using System.Windows.Forms;
15 office 4 using Announcements;
6 office 5 using Servers;
1 office 6 using Winify.Utilities;
7  
25 office 8 namespace Winify.Settings
1 office 9 {
10 public partial class SettingsForm : Form
11 {
25 office 12 #region Public Events & Delegates
13  
14 public event EventHandler<SettingsSavedEventArgs> Save;
15  
16 #endregion
17  
4 office 18 #region Private Delegates, Events, Enums, Properties, Indexers and Fields
19  
21 office 20 private readonly BindingSource _announcementBindingSource;
15 office 21  
21 office 22 private readonly Announcements.Announcements _announcements;
23  
24 private readonly BindingSource _serverBindingSource;
25  
8 office 26 private readonly global::Servers.Servers _servers;
4 office 27  
21 office 28 private Announcement _announcement;
29  
30 private Server _server;
31  
4 office 32 #endregion
33  
1 office 34 #region Constructors, Destructors and Finalizers
35  
4 office 36 private SettingsForm()
1 office 37 {
38 InitializeComponent();
39 }
40  
21 office 41 public SettingsForm(global::Servers.Servers servers, Announcements.Announcements announcements) : this()
4 office 42 {
43 _servers = servers;
21 office 44 _server = _servers.Server.FirstOrDefault() ?? new Server();
7 office 45  
21 office 46 _serverBindingSource = new BindingSource();
47 _serverBindingSource.DataSource = _server;
48  
49 serverNameTextBox.DataBindings.Add(new Binding("Text", _serverBindingSource, nameof(_server.Name), true,
50 DataSourceUpdateMode.OnPropertyChanged));
51 serverUrlTextBox.DataBindings.Add(new Binding("Text", _serverBindingSource, nameof(_server.Url), true,
52 DataSourceUpdateMode.OnPropertyChanged));
53 serverUsernameTextBox.DataBindings.Add(new Binding("Text", _serverBindingSource, nameof(_server.Username),
54 true,
55 DataSourceUpdateMode.OnPropertyChanged));
56 serverPasswordTextBox.DataBindings.Add(new Binding("Text", _serverBindingSource, nameof(_server.Password),
57 true,
58 DataSourceUpdateMode.OnPropertyChanged));
59  
7 office 60 listBox1.DataSource = _servers.Server;
61 listBox1.DisplayMember = "Name";
62 listBox1.DataBindings.Add(new Binding("Text", _servers.Server, "Name", true,
63 DataSourceUpdateMode.OnPropertyChanged));
15 office 64  
21 office 65 _announcements = announcements;
66 _announcement = _announcements.Announcement.FirstOrDefault() ?? new Announcement();
67  
68 _announcementBindingSource = new BindingSource();
69 _announcementBindingSource.DataSource = _announcement;
70  
71 appIdTextBox.DataBindings.Add(new Binding("Text", _announcementBindingSource, nameof(_announcement.AppId),
72 true,
73 DataSourceUpdateMode.OnPropertyChanged));
74 lingerTimeTextBox.DataBindings.Add(new Binding("Text", _announcementBindingSource,
75 nameof(_announcement.LingerTime), true,
76 DataSourceUpdateMode.OnPropertyChanged));
77  
78 listBox2.DataSource = _announcements.Announcement;
15 office 79 listBox2.DisplayMember = "Id";
21 office 80 listBox2.DataBindings.Add(new Binding("Text", _announcements.Announcement, "Id", true,
15 office 81 DataSourceUpdateMode.OnPropertyChanged));
4 office 82 }
83  
1 office 84 #endregion
85  
86 #region Event Handlers
87  
88 private void CheckBox1_CheckedChanged(object sender, EventArgs e)
89 {
25 office 90 Properties.Settings.Default.LaunchOnBoot = ((CheckBox) sender).Checked;
1 office 91  
25 office 92 Miscellaneous.LaunchOnBootSet(Properties.Settings.Default.LaunchOnBoot);
1 office 93 }
94  
4 office 95 private void Button1_Click(object sender, EventArgs e)
96 {
21 office 97 var server = new Server();
4 office 98  
21 office 99 _servers.Server.Add(server);
25 office 100  
101 listBox1.SelectedItem = server;
4 office 102 }
103  
104 private void Button2_Click(object sender, EventArgs e)
105 {
21 office 106 if (listBox1.SelectedItem is Server server)
4 office 107 {
21 office 108 _servers.Server.Remove(server);
109 }
4 office 110 }
111  
112 private void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
113 {
114 var listBox = (ListBox) sender;
115  
21 office 116 if (listBox.SelectedItem is Server server)
4 office 117 {
21 office 118 _server = server;
4 office 119  
21 office 120 _serverBindingSource.DataSource = _server;
4 office 121 }
122 }
123  
15 office 124 private void Button3_Click(object sender, EventArgs e)
125 {
21 office 126 if (listBox2.SelectedItem is Announcement announcement)
15 office 127 {
21 office 128 _announcements.Announcement.Remove(announcement);
129 }
15 office 130 }
131  
132 private void Button4_Click(object sender, EventArgs e)
133 {
21 office 134 var announcement = new Announcement();
15 office 135  
21 office 136 _announcements.Announcement.Add(announcement);
25 office 137  
138 listBox2.SelectedItem = announcement;
15 office 139 }
140  
141 private void ListBox2_SelectedIndexChanged(object sender, EventArgs e)
142 {
143 var listBox = (ListBox) sender;
144  
21 office 145 if (listBox.SelectedItem is Announcement announcement)
15 office 146 {
21 office 147 _announcement = announcement;
15 office 148  
21 office 149 _announcementBindingSource.DataSource = _announcement;
15 office 150 }
151 }
152  
25 office 153 private void Button6_Click(object sender, EventArgs e)
154 {
155 Close();
156 }
157  
158 private void Button5_Click(object sender, EventArgs e)
159 {
160 Save?.Invoke(this, new SettingsSavedEventArgs(_servers, _announcements));
161 Close();
162 }
163  
1 office 164 #endregion
165 }
166 }