private void GenerateCommentBlocks() { foreach (var commentBlock in CommentBlocks) { _graphView.RemoveElement(commentBlock); } foreach (var commentBlockData in _dialogueContainer.CommentBlockData) { var block = _graphView.CreateCommentBlock(new Rect(commentBlockData.Position, _graphView.DefaultCommentBlockSize), commentBlockData); block.AddElements(Nodes.Where(x => commentBlockData.ChildNodes.Contains(x.GUID))); } }
public bool OnSelectEntry(SearchTreeEntry SearchTreeEntry, SearchWindowContext context) { //Editor window-based mouse position var mousePosition = _window.rootVisualElement.ChangeCoordinatesTo(_window.rootVisualElement.parent, context.screenMousePosition - _window.position.position); var graphMousePosition = _graphView.contentViewContainer.WorldToLocal(mousePosition); switch (SearchTreeEntry.userData) { case ContentNode dialogueNode: _graphView.CreateNewNode("Dialogue Node", graphMousePosition); return(true); case Group group: var rect = new Rect(graphMousePosition, _graphView.DefaultCommentBlockSize); _graphView.CreateCommentBlock(rect); return(true); } return(false); }