Winify – Blame information for rev 28

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 {
28 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 {
28 office 106 if (listBox1.SelectedItem is Server server) _servers.Server.Remove(server);
4 office 107 }
108  
109 private void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
110 {
28 office 111 var listBox = (ListBox)sender;
4 office 112  
21 office 113 if (listBox.SelectedItem is Server server)
4 office 114 {
21 office 115 _server = server;
4 office 116  
21 office 117 _serverBindingSource.DataSource = _server;
4 office 118 }
119 }
120  
15 office 121 private void Button3_Click(object sender, EventArgs e)
122 {
28 office 123 if (listBox2.SelectedItem is Announcement announcement) _announcements.Announcement.Remove(announcement);
15 office 124 }
125  
126 private void Button4_Click(object sender, EventArgs e)
127 {
21 office 128 var announcement = new Announcement();
15 office 129  
21 office 130 _announcements.Announcement.Add(announcement);
25 office 131  
132 listBox2.SelectedItem = announcement;
15 office 133 }
134  
135 private void ListBox2_SelectedIndexChanged(object sender, EventArgs e)
136 {
28 office 137 var listBox = (ListBox)sender;
15 office 138  
21 office 139 if (listBox.SelectedItem is Announcement announcement)
15 office 140 {
21 office 141 _announcement = announcement;
15 office 142  
21 office 143 _announcementBindingSource.DataSource = _announcement;
15 office 144 }
145 }
146  
25 office 147 private void Button6_Click(object sender, EventArgs e)
148 {
149 Close();
150 }
151  
152 private void Button5_Click(object sender, EventArgs e)
153 {
154 Save?.Invoke(this, new SettingsSavedEventArgs(_servers, _announcements));
155 Close();
156 }
157  
1 office 158 #endregion
159 }
160 }