private void treeView_NodeMouseDoubleClick(object sender, VirtualTreeNodeMouseClickEventArgs e) { if (okButton.Enabled) { okButton_Click(sender, null); } }
private void treeView_NodeMouseDoubleClick(object sender, VirtualTreeNodeMouseClickEventArgs e) { if (radioButtonChoose.Checked && treeView.SelectedNode != null && e.Node == treeView.SelectedNode) { DialogResult = DialogResult.OK; } }
// In the expected items, represent a separator by a null protected void VerifyContextMenu(object ixmo, ExpectedMenuItem[] expectedItems) { string ixmoString = (ixmo == null ? "XenCenter node" : ixmo.ToString()); // The easiest way to generate the context menu is to call TreeView_NodeMouseClick_ ourselves. // So construct fake click event data. VirtualTreeNode node = FindInTree(ixmo); Assert.IsNotNull(node, "Couldn't find a node for " + ixmoString + " in the tree"); VirtualTreeNodeMouseClickEventArgs e = new VirtualTreeNodeMouseClickEventArgs(node, MouseButtons.Right, 1, 0, 0); // Generate the TreeContextMenu MW(delegate() { node.EnsureVisible(); MainWindowWrapper.TreeView_NodeMouseClick_(MainWindowWrapper.TreeView, e); }); ContextMenuStrip menu = MainWindowWrapper.TreeContextMenu; AssertToolStripItems(ixmoString, expectedItems, menu.Items, true); // Close the menu again MW(menu.Close); Thread.Sleep(100); }
private void treeView_NodeMouseClick(object sender, VirtualTreeNodeMouseClickEventArgs e) { if (e.Button != MouseButtons.Right || e.Node == null) { return; } Folder folder = e.Node.Tag as Folder; if (folder == null) { return; } ContextMenuStrip menu = new ContextMenuStrip(); ToolStripMenuItem item = new ToolStripMenuItem(Messages.NEW_FOLDER, Resources._000_Folder_open_h32bit_16, newMenuItem_Click); item.Tag = folder; menu.Items.Add(item); menu.Show(treeView, e.Location); }
// In the expected items, represent a separator by a null protected void VerifyContextMenu(object ixmo, ExpectedMenuItem[] expectedItems) { string ixmoString = (ixmo == null ? "XenCenter node" : ixmo.ToString()); Assert.IsTrue(SelectInTree(ixmo), "Couldn't find a node for " + ixmoString + " in the tree"); MW(() => { var tree = TestUtils.GetFlickerFreeTreeView(MainWindowWrapper.Item, "navigationPane.navigationView.treeView"); // Generate the TreeContextMenu var e = new VirtualTreeNodeMouseClickEventArgs(tree.SelectedNode, MouseButtons.Right, 1, 0, 0); var view = TestUtils.GetNavigationView(MainWindowWrapper.Item, "navigationPane.navigationView"); TestUtils.ExecuteMethod(view, "HandleNodeRightClick", new object[] { e }); }); var menu = TestUtils.GetContextMenuStrip(MainWindowWrapper.Item, "navigationPane.navigationView.TreeContextMenu"); AssertToolStripItems(ixmoString, expectedItems, menu.Items, true); // Close the menu again MW(menu.Close); Thread.Sleep(100); }
private void treeView_NodeMouseClick(object sender, VirtualTreeNodeMouseClickEventArgs e) { try { if (treeView.Nodes.Count > 0) { HandleNodeRightClick(e); } if (TreeNodeClicked != null) { TreeNodeClicked(); } } catch (Exception exn) { log.Error(exn, exn); // Swallow this exception -- there's no point throwing it on. #if DEBUG throw; #endif } }
private void treeView_NodeMouseDoubleClick(object sender, VirtualTreeNodeMouseClickEventArgs e) { if (e.Button != MouseButtons.Left) { return; } if (e.Node == null) { return; } IXenConnection conn = e.Node.Tag as IXenConnection; if (conn == null) { var obj = e.Node.Tag as IXenObject; if (obj != null) { conn = obj.Connection; } } if (conn != null && !conn.IsConnected) { new ReconnectHostCommand(Program.MainWindow, conn).Execute(); return; } VM vm = e.Node.Tag as VM; if (vm != null) { Command cmd = null; if (vm.is_a_template) { cmd = new NewVMCommand(Program.MainWindow, Program.MainWindow.SelectionManager.Selection); } else if (vm.power_state == vm_power_state.Halted && vm.allowed_operations.Contains(vm_operations.start)) { cmd = new StartVMCommand(Program.MainWindow, Program.MainWindow.SelectionManager.Selection); } else if (vm.power_state == vm_power_state.Suspended && vm.allowed_operations.Contains(vm_operations.resume)) { cmd = new ResumeVMCommand(Program.MainWindow, Program.MainWindow.SelectionManager.Selection); } if (cmd != null && cmd.CanExecute()) { treeView.SelectedNode = e.Node; cmd.Execute(); } return; } Host host = e.Node.Tag as Host; if (host != null) { Command cmd = new PowerOnHostCommand(Program.MainWindow, host); if (cmd.CanExecute()) { treeView.SelectedNode = e.Node; cmd.Execute(); } } }
private void HandleNodeRightClick(VirtualTreeNodeMouseClickEventArgs e) { if (e.Button != MouseButtons.Right) { return; } if (treeView.SelectedNodes.Count == 0) { treeView.SelectedNode = e.Node; if (treeView.SelectedNode != e.Node) // if node is unselectable in TreeView_BeforeSelect: CA-26615 { return; } } if (TreeNodeRightClicked != null) { TreeNodeRightClicked(); } TreeContextMenu.Items.Clear(); if (e.Node == treeView.Nodes[0] && treeView.SelectedNodes.Count == 1) { if (e.Node.Tag == null)// XenCenter (top most) { TreeContextMenu.Items.Add(new CommandToolStripMenuItem(new AddHostCommand(Program.MainWindow), true)); TreeContextMenu.Items.Add(new CommandToolStripMenuItem(new NewPoolCommand(Program.MainWindow, new SelectedItem[0]), true)); TreeContextMenu.Items.Add(new CommandToolStripMenuItem(new ConnectAllHostsCommand(Program.MainWindow), true)); TreeContextMenu.Items.Add(new CommandToolStripMenuItem(new DisconnectAllHostsCommand(Program.MainWindow), true)); } else { var groupingTag = e.Node.Tag as GroupingTag; if (groupingTag != null && groupingTag.Grouping as OrganizationViewFolders != null) { TreeContextMenu.Items.Add(new CommandToolStripMenuItem( new NewFolderCommand(Program.MainWindow, new[] { new SelectedItem(groupingTag, e.Node) }), true)); } } } else { TreeContextMenu.Items.AddRange(Program.MainWindow.ContextMenuBuilder.Build(Program.MainWindow.SelectionManager.Selection)); } int insertIndex = TreeContextMenu.Items.Count; if (TreeContextMenu.Items.Count > 0) { CommandToolStripMenuItem lastItem = TreeContextMenu.Items[TreeContextMenu.Items.Count - 1] as CommandToolStripMenuItem; if (lastItem != null && lastItem.Command is PropertiesCommand) { insertIndex--; } } AddExpandCollapseItems(insertIndex, treeView.SelectedNodes); AddOrgViewItems(insertIndex, treeView.SelectedNodes); if (TreeContextMenu.Items.Count > 0) { TreeContextMenu.Show(treeView.PointToScreen(Point.Empty) + (Size)treeView.LastMouseDownEventPosition); } }
private void treeView_NodeMouseDoubleClick(object sender, VirtualTreeNodeMouseClickEventArgs e) { if (e.Button != MouseButtons.Left) return; if (e.Node == null) return; IXenConnection conn = e.Node.Tag as IXenConnection; if (conn == null) { var obj = e.Node.Tag as IXenObject; if (obj != null) conn = obj.Connection; } if (conn != null && !conn.IsConnected) { new ReconnectHostCommand(Program.MainWindow, conn).Execute(); return; } VM vm = e.Node.Tag as VM; if (vm != null) { Command cmd = null; if (vm.is_a_template) { cmd = new NewVMCommand(Program.MainWindow, Program.MainWindow.SelectionManager.Selection); } else if (vm.power_state == vm_power_state.Halted && vm.allowed_operations.Contains(vm_operations.start)) { cmd = new StartVMCommand(Program.MainWindow, Program.MainWindow.SelectionManager.Selection); } else if (vm.power_state == vm_power_state.Suspended && vm.allowed_operations.Contains(vm_operations.resume)) { cmd = new ResumeVMCommand(Program.MainWindow, Program.MainWindow.SelectionManager.Selection); } if (cmd != null && cmd.CanExecute()) { treeView.SelectedNode = e.Node; cmd.Execute(); } return; } Host host = e.Node.Tag as Host; if (host != null) { Command cmd = new PowerOnHostCommand(Program.MainWindow, host); if (cmd.CanExecute()) { treeView.SelectedNode = e.Node; cmd.Execute(); } } }
private void treeView_NodeMouseClick(object sender, VirtualTreeNodeMouseClickEventArgs e) { try { if (treeView.Nodes.Count > 0) HandleNodeRightClick(e); if (TreeNodeClicked != null) TreeNodeClicked(); } catch (Exception exn) { log.Error(exn, exn); // Swallow this exception -- there's no point throwing it on. #if DEBUG throw; #endif } }
private void HandleNodeRightClick(VirtualTreeNodeMouseClickEventArgs e) { if (e.Button != MouseButtons.Right) return; if (treeView.SelectedNodes.Count == 0) { treeView.SelectedNode = e.Node; if (treeView.SelectedNode != e.Node) // if node is unselectable in TreeView_BeforeSelect: CA-26615 { return; } } if (TreeNodeRightClicked != null) TreeNodeRightClicked(); TreeContextMenu.Items.Clear(); if (e.Node == treeView.Nodes[0] && treeView.SelectedNodes.Count == 1) { if (e.Node.Tag == null)// XenCenter (top most) { TreeContextMenu.Items.Add(new CommandToolStripMenuItem(new AddHostCommand(Program.MainWindow), true)); TreeContextMenu.Items.Add(new CommandToolStripMenuItem(new NewPoolCommand(Program.MainWindow, new SelectedItem[0]), true)); TreeContextMenu.Items.Add(new CommandToolStripMenuItem(new ConnectAllHostsCommand(Program.MainWindow), true)); TreeContextMenu.Items.Add(new CommandToolStripMenuItem(new DisconnectAllHostsCommand(Program.MainWindow), true)); } else { var groupingTag = e.Node.Tag as GroupingTag; if (groupingTag != null && groupingTag.Grouping as OrganizationViewFolders != null) TreeContextMenu.Items.Add(new CommandToolStripMenuItem( new NewFolderCommand(Program.MainWindow, new[] { new SelectedItem(groupingTag, e.Node) }), true)); } } else { TreeContextMenu.Items.AddRange(Program.MainWindow.ContextMenuBuilder.Build(Program.MainWindow.SelectionManager.Selection)); } int insertIndex = TreeContextMenu.Items.Count; if (TreeContextMenu.Items.Count > 0) { CommandToolStripMenuItem lastItem = TreeContextMenu.Items[TreeContextMenu.Items.Count - 1] as CommandToolStripMenuItem; if (lastItem != null && lastItem.Command is PropertiesCommand) insertIndex--; } AddExpandCollapseItems(insertIndex, treeView.SelectedNodes); AddOrgViewItems(insertIndex, treeView.SelectedNodes); if (TreeContextMenu.Items.Count > 0) { TreeContextMenu.Show(treeView.PointToScreen(Point.Empty) + (Size)treeView.LastMouseDownEventPosition); } }
public void TreeView_NodeMouseClick_(object sender, VirtualTreeNodeMouseClickEventArgs e) { ExecuteMethod("TreeView_NodeMouseClick_", new object[] { sender, e }); }