internal void RemoveVariablesDefinedInNode(VisualNode node) { List <string> variables = node.GetDefinedVariables(false); if (variables == null || variables.Count <= 0) { return; } foreach (string variable in variables) { this.RemoveDefinition(variable, node.NodeId); } }
internal void AddVariablesDefinedInNode(VisualNode node, bool isPriority) { List <string> variables = node.GetDefinedVariables(false); if (variables == null || variables.Count <= 0) { return; } foreach (string variable in variables) { this.AddDefinition(variable, node.NodeId, isPriority); } }
internal void UpdateVariablesDefinedInNode(VisualNode node, bool isPriority) { List <string> mappingToRemove = new List <string>(); List <string> variables = node.GetDefinedVariables(false); if (null != variables) { foreach (KeyValuePair <string, List <uint> > kvp in this.variableNodesMap) { if (!variables.Contains(kvp.Key) && kvp.Value.Contains(node.NodeId)) { mappingToRemove.Add(kvp.Key); } } } foreach (string variable in mappingToRemove) { this.RemoveDefinition(variable, node.NodeId); } if (null != variables) { foreach (string variable in variables) { this.AddDefinition(variable, node.NodeId, isPriority); } } if (null != undefinedVarsTracker && (mappingToRemove.Count > 0)) { if (!undefinedVarsTracker.ContainsKey(node.NodeId)) { undefinedVarsTracker.Add(node.NodeId, new List <string>()); } foreach (string variable in mappingToRemove) { undefinedVarsTracker[node.NodeId].Add(variable); } } }
internal void UpdateVariablesDefinedInNode(VisualNode node, bool isPriority) { List<string> mappingToRemove = new List<string>(); List<string> variables = node.GetDefinedVariables(false); if (null != variables) { foreach (KeyValuePair<string, List<uint>> kvp in this.variableNodesMap) { if (!variables.Contains(kvp.Key) && kvp.Value.Contains(node.NodeId)) mappingToRemove.Add(kvp.Key); } } foreach (string variable in mappingToRemove) this.RemoveDefinition(variable, node.NodeId); if (null != variables) { foreach (string variable in variables) this.AddDefinition(variable, node.NodeId, isPriority); } if (null != undefinedVarsTracker && (mappingToRemove.Count > 0)) { if (!undefinedVarsTracker.ContainsKey(node.NodeId)) undefinedVarsTracker.Add(node.NodeId, new List<string>()); foreach (string variable in mappingToRemove) undefinedVarsTracker[node.NodeId].Add(variable); } }
internal void RemoveVariablesDefinedInNode(VisualNode node) { List<string> variables = node.GetDefinedVariables(false); if (variables == null || variables.Count <= 0) return; foreach (string variable in variables) this.RemoveDefinition(variable, node.NodeId); }
internal void AddVariablesDefinedInNode(VisualNode node, bool isPriority) { List<string> variables = node.GetDefinedVariables(false); if (variables == null || variables.Count <= 0) return; foreach (string variable in variables) this.AddDefinition(variable, node.NodeId, isPriority); }
private void TransferInformationFromMethodToProperty(VisualNode sourceNode, VisualNode destinationNode) { if (sourceNode == null) throw new ArgumentNullException("sourceNode"); if (sourceNode == null) throw new ArgumentNullException("destinationNode"); destinationNode.Text = sourceNode.Text; Slot destinationInputSlot = this.GetSlot(destinationNode.GetInputSlot(0)) as Slot; Slot sourceInputSlot = this.GetSlot(sourceNode.GetInputSlot(0)) as Slot; if (sourceInputSlot.ConnectingSlots != null) { Slot outputSlot = this.GetSlot(sourceInputSlot.ConnectingSlots[0]) as Slot; this.edgeController.CreateLinkingEdge(outputSlot, destinationInputSlot); } Slot destinationOutputSlot = this.GetSlot(destinationNode.GetOutputSlot(0)) as Slot; Slot sourceOutputSlot = this.GetSlot(sourceNode.GetOutputSlot(0)) as Slot; if (sourceOutputSlot.ConnectingSlots != null) { foreach (uint slotId in sourceOutputSlot.ConnectingSlots) { Slot inputSlot = this.GetSlot(slotId) as Slot; this.edgeController.CreateLinkingEdge(destinationOutputSlot, inputSlot); } } List<string> defined = sourceNode.GetDefinedVariables(false); graphProperties.RuntimeStates.TransferVariableDefinitionMapping( defined, sourceNode.NodeId, destinationNode.NodeId); }