Exemplo n.º 1
0
        void OnDrawingAreaNodeContextClicked(string nodeId, int x, int y)
        {
            diagramDetails.nodes.TryGetValue(nodeId, out StoredNode node);
            var menu = new ClassGroupsContextMenu(diagramDetails.classGroups, node);

            menu.GroupSelected += (groupId) =>
            {
                if (node == null)
                {
                    diagramDetails.nodes.Add(nodeId, new StoredNode {
                        classGroups = new List <string> {
                            groupId
                        }
                    });
                }
                else if (node.classGroups == null)
                {
                    node.classGroups = new List <string> {
                        groupId
                    }
                }
                ;
                else
                {
                    node.classGroups.Add(groupId);
                }

                // TODO: REFRESH TREE
                groupsTree.Model = groupsTree.Model;
            };
            menu.GroupDeselected += (groupId) => node.classGroups.Remove(groupId);

            menu.Popup();
        }
Exemplo n.º 2
0
 public ClassGroupContextMenuItem(ClassGroupsContextMenu parentMenu, string groupId, ClassGroup g)
 {
     this.parentMenu = parentMenu;
     GroupId         = groupId;
     InitUI(g);
 }