private void Graph_GeneratingPopup(object sender, GeneratingPopupEventArgs e) { if (AllowGraphEditing) { foreach (NodeTypeEntry nte in NodeTypes) { TextBlock txb = new TextBlock() { Text = string.Format("Insert {0}", nte.Name), Tag = nte }; txb.MouseLeftButtonUp += (sender2, e2) => { m_MenuSelectedNodeType = (sender2 as TextBlock).Tag as NodeTypeEntry; DNode node = Graph.AddNodeAtLocation(e.MousePos, true); m_MenuSelectedNodeType = null; Graph.ClosePopup(); Graph.BeginContentEdit(node); }; e.ListBox.Items.Add(txb); } } else { e.ListBox.Items.RemoveAt(2); e.ListBox.Items.RemoveAt(1); } if (!AllowLabelEditing) { e.ListBox.Items.RemoveAt(0); } }
void Graph_GeneratingPopup(object sender, GeneratingPopupEventArgs e) { foreach (NodeTypeEntry nte in NodeTypes) { TextBlock txb = new TextBlock() { Text = string.Format("Insert {0}", nte.Name), Tag = nte }; txb.MouseLeftButtonUp += (sender2, e2) => { NodeTypeEntry nte2 = (sender2 as TextBlock).Tag as NodeTypeEntry; m_AddingFromMenu = true; DNode node = Graph.AddNodeAtLocation(e.MousePos, true); m_AddingFromMenu = false; ApplyNodeTypeToInsertedNode(nte2, node); Graph.ClosePopup(); Graph.BeginContentEdit(node); }; e.ListBox.Items.Add(txb); } }