1.1 --- a/GUI/MainForm.cs Tue Aug 24 22:11:10 2010 +0000
1.2 +++ b/GUI/MainForm.cs Mon Sep 06 19:53:13 2010 +0000
1.3 @@ -62,6 +62,7 @@
1.4 private SystemTray systemTray;
1.5 private StartupManager startupManager = new StartupManager();
1.6 private UpdateVisitor updateVisitor = new UpdateVisitor();
1.7 + private SensorGadget gadget;
1.8
1.9 private UserOption showHiddenSensors;
1.10 private UserOption showPlot;
1.11 @@ -72,6 +73,7 @@
1.12 private UserOption minimizeToTray;
1.13 private UserOption autoStart;
1.14 private UserOption readHddSensors;
1.15 + private UserOption showGadget;
1.16
1.17 public MainForm() {
1.18 InitializeComponent();
1.19 @@ -138,6 +140,8 @@
1.20 systemTray.HideShowCommand += hideShowClick;
1.21 systemTray.ExitCommand += exitClick;
1.22
1.23 + gadget = new SensorGadget(computer, settings, unitManager);
1.24 +
1.25 computer.HardwareAdded += new HardwareEventHandler(HardwareAdded);
1.26 computer.HardwareRemoved += new HardwareEventHandler(HardwareRemoved);
1.27 computer.Open();
1.28 @@ -194,7 +198,7 @@
1.29
1.30 autoStart = new UserOption(null, startupManager.Startup, startupMenuItem, settings);
1.31 autoStart.Changed += delegate(object sender, EventArgs e) {
1.32 - startupManager.Startup = autoStart.Value; ;
1.33 + startupManager.Startup = autoStart.Value;
1.34 };
1.35
1.36 readHddSensors = new UserOption("hddMenuItem", true, hddMenuItem, settings);
1.37 @@ -203,6 +207,11 @@
1.38 UpdatePlotSelection(null, null);
1.39 };
1.40
1.41 + showGadget = new UserOption("gadgetMenuItem", false, gadgetMenuItem, settings);
1.42 + showGadget.Changed += delegate(object sender, EventArgs e) {
1.43 + gadget.Visible = showGadget.Value;
1.44 + };
1.45 +
1.46 celciusMenuItem.Checked =
1.47 unitManager.TemperatureUnit == TemperatureUnit.Celcius;
1.48 fahrenheitMenuItem.Checked = !celciusMenuItem.Checked;
1.49 @@ -225,7 +234,7 @@
1.50 Microsoft.Win32.SystemEvents.SessionEnded +=
1.51 delegate(object sender, Microsoft.Win32.SessionEndedEventArgs e) {
1.52 SaveConfiguration();
1.53 - };
1.54 + };
1.55 }
1.56
1.57 private void SubHardwareAdded(IHardware hardware, Node node) {
1.58 @@ -313,6 +322,7 @@
1.59 treeView.Invalidate();
1.60 plotPanel.Invalidate();
1.61 systemTray.Redraw();
1.62 + gadget.Redraw();
1.63 }
1.64
1.65 private void SaveConfiguration() {
1.66 @@ -369,7 +379,7 @@
1.67 nodeTextBoxText.BeginEdit();
1.68 };
1.69 sensorContextMenu.MenuItems.Add(item);
1.70 - }
1.71 + }
1.72 if (node.IsVisible) {
1.73 MenuItem item = new MenuItem("Hide");
1.74 item.Click += delegate(object obj, EventArgs args) {
1.75 @@ -382,20 +392,30 @@
1.76 node.IsVisible = true;
1.77 };
1.78 sensorContextMenu.MenuItems.Add(item);
1.79 - }
1.80 - if (systemTray.Contains(node.Sensor)) {
1.81 - MenuItem item = new MenuItem("Remove From Tray");
1.82 - item.Click += delegate(object obj, EventArgs args) {
1.83 + }
1.84 + sensorContextMenu.MenuItems.Add(new MenuItem("-"));
1.85 +
1.86 + MenuItem menuItem = new MenuItem("Show in Tray");
1.87 + menuItem.Checked = systemTray.Contains(node.Sensor);
1.88 + menuItem.Click += delegate(object obj, EventArgs args) {
1.89 + if (menuItem.Checked)
1.90 systemTray.Remove(node.Sensor);
1.91 - };
1.92 - sensorContextMenu.MenuItems.Add(item);
1.93 - } else {
1.94 - MenuItem item = new MenuItem("Add To Tray");
1.95 - item.Click += delegate(object obj, EventArgs args) {
1.96 + else
1.97 systemTray.Add(node.Sensor, true);
1.98 - };
1.99 - sensorContextMenu.MenuItems.Add(item);
1.100 - }
1.101 + };
1.102 + sensorContextMenu.MenuItems.Add(menuItem);
1.103 +
1.104 + menuItem = new MenuItem("Show in Gadget");
1.105 + menuItem.Checked = gadget.Contains(node.Sensor);
1.106 + menuItem.Click += delegate(object obj, EventArgs args) {
1.107 + if (menuItem.Checked) {
1.108 + gadget.Remove(node.Sensor);
1.109 + } else {
1.110 + gadget.Add(node.Sensor);
1.111 + }
1.112 + };
1.113 + sensorContextMenu.MenuItems.Add(menuItem);
1.114 +
1.115 sensorContextMenu.Show(treeView, new Point(m.X, m.Y));
1.116 }
1.117 }