OpenHardwareMonitor.GUI.MainForm.treeView_Click C# (CSharp) Méthode

treeView_Click() private méthode

private treeView_Click ( object sender, EventArgs e ) : void
sender object
e EventArgs
Résultat void
        private void treeView_Click(object sender, EventArgs e)
        {
            MouseEventArgs m = e as MouseEventArgs;
              if (m == null || m.Button != MouseButtons.Right)
            return;

              NodeControlInfo info = treeView.GetNodeControlInfoAt(
            new Point(m.X, m.Y)
              );
              treeView.SelectedNode = info.Node;
              if (info.Node != null) {
            SensorNode node = info.Node.Tag as SensorNode;
            if (node != null && node.Sensor != null) {
              treeContextMenu.MenuItems.Clear();
              if (node.Sensor.Parameters.Length > 0) {
            MenuItem item = new MenuItem("Parameters...");
            item.Click += delegate(object obj, EventArgs args) {
              ShowParameterForm(node.Sensor);
            };
            treeContextMenu.MenuItems.Add(item);
              }
              if (nodeTextBoxText.EditEnabled) {
            MenuItem item = new MenuItem("Rename");
            item.Click += delegate(object obj, EventArgs args) {
              nodeTextBoxText.BeginEdit();
            };
            treeContextMenu.MenuItems.Add(item);
              }
              if (node.IsVisible) {
            MenuItem item = new MenuItem("Hide");
            item.Click += delegate(object obj, EventArgs args) {
              node.IsVisible = false;
            };
            treeContextMenu.MenuItems.Add(item);
              } else {
            MenuItem item = new MenuItem("Unhide");
            item.Click += delegate(object obj, EventArgs args) {
              node.IsVisible = true;
            };
            treeContextMenu.MenuItems.Add(item);
              }
              treeContextMenu.MenuItems.Add(new MenuItem("-"));
              {
            MenuItem item = new MenuItem("Pen Color...");
            item.Click += delegate(object obj, EventArgs args) {
              ColorDialog dialog = new ColorDialog();
              dialog.Color = node.PenColor.GetValueOrDefault();
              if (dialog.ShowDialog() == DialogResult.OK)
                node.PenColor = dialog.Color;
            };
            treeContextMenu.MenuItems.Add(item);
              }
              {
            MenuItem item = new MenuItem("Reset Pen Color");
            item.Click += delegate(object obj, EventArgs args) {
              node.PenColor = null;
            };
            treeContextMenu.MenuItems.Add(item);
              }
              treeContextMenu.MenuItems.Add(new 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);
            };
            treeContextMenu.MenuItems.Add(item);
              }
              if (gadget != null) {
            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);
              }
            };
            treeContextMenu.MenuItems.Add(item);
              }
              if (node.Sensor.Control != null) {
            treeContextMenu.MenuItems.Add(new MenuItem("-"));
            IControl control = node.Sensor.Control;
            MenuItem controlItem = new MenuItem("Control");
            MenuItem defaultItem = new MenuItem("Default");
            defaultItem.Checked = control.ControlMode == ControlMode.Default;
            controlItem.MenuItems.Add(defaultItem);
            defaultItem.Click += delegate(object obj, EventArgs args) {
              control.SetDefault();
            };
            MenuItem manualItem = new MenuItem("Manual");
            controlItem.MenuItems.Add(manualItem);
            manualItem.Checked = control.ControlMode == ControlMode.Software;
            for (int i = 0; i <= 100; i += 5) {
              if (i <= control.MaxSoftwareValue &&
                  i >= control.MinSoftwareValue) {
                MenuItem item = new MenuItem(i + " %");
                item.RadioCheck = true;
                manualItem.MenuItems.Add(item);
                item.Checked = control.ControlMode == ControlMode.Software &&
                  Math.Round(control.SoftwareValue) == i;
                int softwareValue = i;
                item.Click += delegate(object obj, EventArgs args) {
                  control.SetSoftware(softwareValue);
                };
              }
            }
            treeContextMenu.MenuItems.Add(controlItem);
              }

              treeContextMenu.Show(treeView, new Point(m.X, m.Y));
            }

            HardwareNode hardwareNode = info.Node.Tag as HardwareNode;
            if (hardwareNode != null && hardwareNode.Hardware != null) {
              treeContextMenu.MenuItems.Clear();

              if (nodeTextBoxText.EditEnabled) {
            MenuItem item = new MenuItem("Rename");
            item.Click += delegate(object obj, EventArgs args) {
              nodeTextBoxText.BeginEdit();
            };
            treeContextMenu.MenuItems.Add(item);
              }

              treeContextMenu.Show(treeView, new Point(m.X, m.Y));
            }
              }
        }