Beispiel #1
0
        private void SetSelection()
        {
            var cleanedSelectArea = _selection.area.FixNegativeSize();

            _selection.RemoveAll();
            var selected = _window.Nodes.Where(n => cleanedSelectArea.Overlaps(n.Data.rect));

            _selection.Add(selected);

            _selection.area.size = Vector2.zero;
            _selectingArea       = false;
            GUI.changed          = true;
        }
        private void NodeContextClick(Event e)
        {
            switch (e.type)
            {
            case EventType.MouseDown when !_selection.Contains(_clickedNode):
                _selection.RemoveAll();
                _selection.Add(_clickedNode);
                GUI.changed = true;
                break;

            case EventType.MouseUp when _selection.Selected.Count == 1:
                _clickedNode.ShowContextMenu();
                break;

            case EventType.MouseUp:
                ShowEditGroupMenu(e);
                break;
            }
        }