private void tree_AfterLabelEdit(object sender, NodeLabelEditEventArgs e) { try { if (e.Node is DATreeNode) { DATreeNode ada = (DATreeNode)e.Node; if (e.Label == null) { ada.Text = ada.m_node.Title; return; } string newname = e.Label; e.CancelEdit = true;// revert to old name ada.Text = ada.m_node.Title; MacroManager.RenameNode(ada.m_node, newname); ada.m_node.RenameNode(newname); TreeNodeExtension.CompleteRefresh(ada.m_node.Parent); } } catch (Exception ex) { Errors.Report(ex); } }
private void tree_MouseUp(object sender, MouseEventArgs e) { if (!TreeBehaviour.AllowPopupMenu) { return; } try { if (e.Button == MouseButtons.Right) { // select the clicked node tree.SelectedNode = tree.GetNodeAt(e.Location); // show the context menu in the right position if (tree.SelectedNode != null) { ContextMenuStrip menu = ((DATreeNode)tree.SelectedNode).m_menu; if (menu != null) { MacroManager.SetPopupMenuObject(((DATreeNode)tree.SelectedNode).m_node); ((DATreeNode)tree.SelectedNode).FillPopupMenu(); menu.ShowOnCursor(); } } //tree.ContextMenuStrip.Show(treeView, e.Location); } } catch (Exception ex) { Errors.Report(ex); } }
private void tree_MouseDoubleClick(object sender, MouseEventArgs e) { m_lastDoubleClick = DateTime.Now; if (TreeBehaviour.AllowDoubleClickNodeHandling) { try { TreeNode node = tree.GetNodeAt(e.X, e.Y); if (node != null) { if (Control.ModifierKeys != Keys.None) { ((DATreeNode)node).ModifiedDoubleClick(Control.ModifierKeys); } else { ((DATreeNode)node).DoubleClick(); } MacroManager.DoubleClickNode(((DATreeNode)node).m_node); } } catch (Exception ex) { Errors.Report(ex); } } else { if (TreeDoubleClick != null) { TreeDoubleClick(sender, e); } } }
private void tree_DragDrop(object sender, DragEventArgs e) { if (!TreeBehaviour.AllowDragDrop) { return; } try { TreeNode dropNode = tree.GetNodeAt(tree.PointToClient(new Point(e.X, e.Y))); DragObjectContainer cnt = (DragObjectContainer)e.Data.GetData(typeof(DragObjectContainer)); if (cnt != null && dropNode != null && cnt.Data is AppObject[]) { ITreeNode targetNode = ((DATreeNode)dropNode).m_node; AppObject[] draggedObjs = (AppObject[])cnt.Data; targetNode.DragDrop(draggedObjs); //MacroManager.DragDropNode(targetNode, draggedObjs); } try { IDataObject obj = e.Data; string[] files = (string[])obj.GetData("FileDrop"); foreach (string f in files) { string fn = IOTool.GetUniqueFileName(Path.Combine(Root.FileSystemPath, Path.GetFileNameWithoutExtension(f) + ".lnk")); using (StreamWriter sw = new StreamWriter(fn)) sw.Write(f); RefreshRoot(); MacroManager.DropFileIntoTree(tree, f); } } catch (Exception) { } tree.SelectedNode = dropNode; } catch (Exception ex) { Errors.Report(ex); } }
//void m_menu_Opening(object sender, System.ComponentModel.CancelEventArgs e) //{ // m_menu.Items.Clear(); // m_node.GetPopupMenu(new MenuBuilder(m_menu.Items)); //} //void m_menu_Popup(object sender, EventArgs e) //{ // //m_menu.MenuItems.Clear(); // m_menu.Items.Clear(); // m_node.GetPopupMenu(new PopupMenuBuilder(m_menu, m_tree)); //} public bool AllowExpand() { if (!m_node.AllowExpand()) { return(false); } MacroManager.ExpandNode(m_node); if (m_filledChildren) { m_node.NotifyExpanded(); return(true); } if (!m_node.PreparedChildren) { ProcessRegister.AddBackgroundTask("s_expand"); m_node.BeginLoadChildren(Async.CreateInvokeCallback(Invoker, OnPreparedExpand)); m_expanding = true; RefreshSelf(); return(false); } FillChildren(); m_node.NotifyExpanded(); return(true); }
private void tree_KeyDown(object sender, KeyEventArgs e) { try { if (Selected == null) { return; } bool processed = false; if (e.KeyCode == Keys.Delete) { var sel = Selected; var par = sel.Parent; if (!processed) { processed = sel.Delete(); } MacroManager.DeleteNode(sel); //par.CompleteRefresh(); } else if (e.KeyCode == Keys.Enter) { if (!processed) { processed = Selected.DoubleClick(); } MacroManager.DoubleClickNode(Selected); } else if (e.KeyCode == Keys.F5) { if (!processed) { Selected.CompleteRefresh(true); processed = true; } } if (e.KeyCode == Keys.C && e.Control) { CallCopy(); processed = true; } if (e.KeyCode == Keys.V && e.Control && btnPaste.Enabled) { btnPaste.ShowDropDown(); processed = true; } if (e.KeyCode == Keys.G && e.Control && Selected != null) { var appobj = Selected.GetFirstValidAppObject(); if (appobj != null) { if (appobj.GenerateSqlVisible()) { appobj.GenerateSql(new object[] { appobj }); } } processed = true; } if (!processed) { var mb = new MenuBuilder(); Selected.GetPopupMenu(mb); mb.ProcessKeyDown(e.KeyCode); } } catch (Exception ex) { Errors.Report(ex); } }
void FormEx_Shown(object sender, EventArgs e) { MacroManager.RunDialogMacro(this); }