# HG changeset patch # User moel.mich # Date 1283884357 0 # Node ID 67b9b4d8c5fcfd0e96530fe00eaf6ccf94f555ae # Parent 510f27ad65ac96a8c4a35a617d3ae66c39c6a941 Fixed a few closure variables. The local variables used in the closure can not be shared between closures if their values should be different. diff -r 510f27ad65ac -r 67b9b4d8c5fc GUI/MainForm.cs --- a/GUI/MainForm.cs Tue Sep 07 17:52:43 2010 +0000 +++ b/GUI/MainForm.cs Tue Sep 07 18:32:37 2010 +0000 @@ -394,27 +394,29 @@ sensorContextMenu.MenuItems.Add(item); } sensorContextMenu.MenuItems.Add(new MenuItem("-")); - - MenuItem menuItem = new MenuItem("Show in Tray"); - menuItem.Checked = systemTray.Contains(node.Sensor); - menuItem.Click += delegate(object obj, EventArgs args) { - if (menuItem.Checked) - systemTray.Remove(node.Sensor); - else - systemTray.Add(node.Sensor, true); - }; - sensorContextMenu.MenuItems.Add(menuItem); - - menuItem = new MenuItem("Show in Gadget"); - menuItem.Checked = gadget.Contains(node.Sensor); - menuItem.Click += delegate(object obj, EventArgs args) { - if (menuItem.Checked) { - gadget.Remove(node.Sensor); - } else { - gadget.Add(node.Sensor); - } - }; - sensorContextMenu.MenuItems.Add(menuItem); + { + MenuItem item = new MenuItem("Show in Tray"); + item.Checked = systemTray.Contains(node.Sensor); + item.Click += delegate(object obj, EventArgs args) { + if (item.Checked) + systemTray.Remove(node.Sensor); + else + systemTray.Add(node.Sensor, true); + }; + sensorContextMenu.MenuItems.Add(item); + } + { + MenuItem item = new MenuItem("Show in Gadget"); + item.Checked = gadget.Contains(node.Sensor); + item.Click += delegate(object obj, EventArgs args) { + if (item.Checked) { + gadget.Remove(node.Sensor); + } else { + gadget.Add(node.Sensor); + } + }; + sensorContextMenu.MenuItems.Add(item); + } sensorContextMenu.Show(treeView, new Point(m.X, m.Y)); } diff -r 510f27ad65ac -r 67b9b4d8c5fc GUI/SensorGadget.cs --- a/GUI/SensorGadget.cs Tue Sep 07 17:52:43 2010 +0000 +++ b/GUI/SensorGadget.cs Tue Sep 07 18:32:37 2010 +0000 @@ -100,13 +100,12 @@ for (int i = 0; i < 5; i++) { MenuItem item = new MenuItem((20 * (i + 1)).ToString() + " %"); byte o = (byte)(51 * (i + 1)); - item.Tag = o; item.Checked = Opacity == o; item.Click += delegate(object sender, EventArgs e) { - Opacity = (byte)item.Tag; + Opacity = o; settings.SetValue("sensorGadget.Opacity", Opacity); foreach (MenuItem mi in opacityMenu.MenuItems) - mi.Checked = (byte)mi.Tag == Opacity; + mi.Checked = mi == item; }; opacityMenu.MenuItems.Add(item); }