void tree_NodeMouseReleased(object sender, TreeMouseEventArgs e) { if (e.Button == MouseButtonCode.MB_BUTTON1) { EditInterfaceTreeNode node = e.Node as EditInterfaceTreeNode; tree.SelectedNode = e.Node; currentMenuInterface = node.EditInterface; if (currentMenuInterface.hasCommands()) { PopupMenu menu = Gui.Instance.createWidgetT("PopupMenu", "PopupMenu", 0, 0, 1000, 1000, Align.Default, "Overlapped", "") as PopupMenu; menu.ItemAccept += new MyGUIEvent(menu_ItemAccept); menu.Closed += new MyGUIEvent(menu_Closed); menu.Visible = false; foreach (EditInterfaceCommand command in currentMenuInterface.getCommands()) { MenuItem item = menu.addItem(command.Name); item.UserObject = command; } LayerManager.Instance.upLayerItem(menu); menu.setPosition(e.MousePosition.x, e.MousePosition.y); menu.ensureVisible(); menu.setVisibleSmooth(true); } } }
public void nodeRemoved(EditInterfaceTreeNode editInterfaceTreeNode) { if (EditInterfaceRemoved != null) { EditInterfaceRemoved.Invoke(new EditInterfaceViewEventArgs(editInterfaceTreeNode.EditInterface)); } tree.layout(); }
public void nodeAdded(EditInterfaceTreeNode editInterfaceTreeNode) { editInterfaceTreeNode.Expanded = true; if (EditInterfaceAdded != null) { EditInterfaceAdded.Invoke(new EditInterfaceViewEventArgs(editInterfaceTreeNode.EditInterface)); } tree.layout(); }
void editInterface_OnSubInterfaceRemoved(EditInterface editInterface) { EditInterfaceTreeNode matchingNode = null; foreach (EditInterfaceTreeNode node in Children) { if (node.EditInterface == editInterface) { matchingNode = node; break; } } if (matchingNode != null) { editInterfaceTreeView.nodeRemoved(this); this.Children.remove(matchingNode); } else { Log.Default.sendMessage("Malformed EditInterfaceTreeNodes the EditInterface {0} does not contain a child named {1} when remove was attempted.", LogLevel.Error, "Editor", this.editInterface.getName(), editInterface.getName()); } }