diff -r 76aaf45a01c7 -r cea5477b4d72 GUI/MainForm.cs --- a/GUI/MainForm.cs Tue May 25 18:57:28 2010 +0000 +++ b/GUI/MainForm.cs Tue May 25 22:33:03 2010 +0000 @@ -173,8 +173,14 @@ // Create a handle, otherwise calling Close() does not fire FormClosed IntPtr handle = Handle; + + // Make sure the settings are saved when the user logs off + Microsoft.Win32.SystemEvents.SessionEnded += + delegate(object sender, Microsoft.Win32.SessionEndedEventArgs e) { + SaveConfiguration(); + }; } - + private void SubHardwareAdded(IHardware hardware, Node node) { Node hardwareNode = new HardwareNode(hardware); node.Nodes.Add(hardwareNode); @@ -262,8 +268,7 @@ sensorSystemTray.Redraw(); } - private void MainForm_FormClosed(object sender, FormClosedEventArgs e) { - + private void SaveConfiguration() { Config.Set(hiddenMenuItem.Name, hiddenMenuItem.Checked); Config.Set(plotMenuItem.Name, plotMenuItem.Checked); @@ -274,7 +279,7 @@ Config.Set(startMinMenuItem.Name, startMinMenuItem.Checked); Config.Set(minTrayMenuItem.Name, minTrayMenuItem.Checked); - Config.Set(hddMenuItem.Name, hddMenuItem.Checked); + Config.Set(hddMenuItem.Name, hddMenuItem.Checked); if (WindowState != FormWindowState.Minimized) { Config.Set("mainForm.Location.X", Location.X); @@ -283,12 +288,17 @@ Config.Set("mainForm.Height", Height); } - foreach (TreeColumn column in treeView.Columns) - Config.Set("treeView.Columns." + column.Header + ".Width", + foreach (TreeColumn column in treeView.Columns) + Config.Set("treeView.Columns." + column.Header + ".Width", column.Width); + Config.Save(); + } + + private void MainForm_FormClosed(object sender, FormClosedEventArgs e) { + SaveConfiguration(); + timer.Enabled = false; - sensorSystemTray.Dispose(); notifyIcon.Dispose(); computer.Close();