void ConnectToWaitingBranche(ICanvasNode node) { if (!(node is Condition.Node) || !(_waitingBranch is Condition.ConditionBranch)) { _setFormButtonAsConnected(); Edge e = new Edge(); node.ClipInputEdge(e); _waitingBranch.ClipOutputEdge(e); _waitingBranch = null; if (_waitingNode != _selectedNode) { _waitingNode.Deselect(); } else { _waitingNode.DrawBorder(BorderStyle.Selected); } _waitingNode = null; _escapeButtonAbortingState = null; } else { if (_escapeButtonAbortingState != null) { _escapeButtonAbortingState(); } AbortWaiting(); } }
void SelectNode(ICanvasNode node) { if (_selectedNode != null && _waitingBranch == null) { _selectedNode.Deselect(); } node.Select(); _selectedNode = node; }
string NodeToString(ICanvasNode node) { string result = ""; result += _startGroup; result += node.ID.ToString(); result += TypeSpecificString(node); result += _endGroup; return(result); }
string TypeSpecificString(ICanvasNode node) { if (node is Story.Node) { return(StoryNodeToString((Story.Node)node)); } else { return(ConditionNodeToString((Condition.Node)node)); } }
public void RemoveNode(ICanvasNode node) { node.Clean(); if (_selectedNode == node) { _selectedNode = null; } TurnOffPropertyWindow(); canvas.Children.Remove((UIElement)node); _nodes.Remove(node); }
public void HandleNodeClick(ICanvasNode node) { if (_waitingBranch == null) { SelectNode(node); } else { ConnectToWaitingBranche(node); } }
public void SetAsWaiting(DockBranch b, Action a, Action a2) { _setFormButtonAsConnected = a; if (_escapeButtonAbortingState != null) { _escapeButtonAbortingState(); _waitingNode.Deselect(); } _escapeButtonAbortingState = a2; _waitingBranch = b; _selectedNode.SelectAsWaiting(); _waitingNode = _selectedNode; }
public void AbortWaiting() { _setFormButtonAsConnected = null; _waitingBranch = null; if (_waitingNode != _selectedNode) { _waitingNode.Deselect(); } else { _waitingNode.DrawBorder(BorderStyle.Selected); } _waitingNode = null; _escapeButtonAbortingState = null; }
void AddNode(ICanvasNode node) { _nodes.Add(node); canvas.Children.Add((UIElement)node); }