Пример #1
0
 public static NodeGraphVariableData Convert(NodeGraphVariable variable)
 {
     return(new NodeGraphVariableData
     {
         Name = variable.Name,
         ID = variable.ID,
         VariableType = variable.WrappedType.ToString(),
         Value = variable.WrappedValue.ToString(),
     });
 }
Пример #2
0
        public void RemoveVariable(NodeGraphVariable graphVariable)
        {
            NodeEditor.Assertions.IsTrue(Variables.Contains(graphVariable));
            NodeEditor.Logger.Log <NodeGraph>("Removing variable '{0}'", graphVariable.Name);

            Variables.Remove(graphVariable);
            VariableRemoved.InvokeSafe(graphVariable);
            graphVariable.Remove();

            Edited.InvokeSafe(this);
        }
Пример #3
0
        NodeGraphVariable AddVariable(NodeGraphVariableData graphVariableData)
        {
            NodeEditor.Assertions.IsFalse(Variables.Any(x => x.ID == graphVariableData.ID), "Tried to spawn a variable that has the same ID as an existing variable.");

            var variable = new NodeGraphVariable(graphVariableData);

            variable.NameChangeRequested += Variable_NameChangeRequested;
            Variables.Add(variable);

            NodeEditor.Logger.Log <NodeGraph>("Added variable '{0}' ({1})", variable.Name, variable.GetType());

            VariableAdded.InvokeSafe(variable);
            Edited.InvokeSafe(this);

            return(variable);
        }
Пример #4
0
        public void Set(NodeGraphVariable variable, NodeGraphVariableAccessorType accessorType)
        {
            AccessorType = accessorType;

            if (variable == null)
            {
                NodeEditor.Logger.LogWarning <NodeVariable>("Variable ({0}) spawned with a null variable. The variable probably doesn't exist.", ID);
            }
            else
            {
                _variable = variable;
                _variable.PreTypeChanged  += Variable_PreTypeChanged;
                _variable.PostTypeChanged += Variable_PostTypeChanged;
                _variable.Removed         += Variable_Removed;

                SpawnPins();
            }
        }
Пример #5
0
 public NodeVariableData(NodeGraphVariable variable, NodeGraphVariableAccessorType accessorType, string id) : base(typeof(NodeVariable), id, "Variable")
 {
     VariableID   = variable.ID;
     AccessorType = accessorType;
 }
 public NodeGraphVariableNameChangeRequestEvent(NodeGraphVariable variable, string replacementName)
 {
     Variable        = variable;
     ReplacementName = replacementName;
 }
 public NodeGraphVariableTypeChangeEvent(NodeGraphVariable variable, Type oldType, Type newType)
 {
     Variable = variable;
     OldType  = oldType;
     NewType  = newType;
 }
Пример #8
0
 void Graph_VariableAdded(NodeGraphVariable variable)
 {
     VariableAdded.InvokeSafe(variable);
 }
Пример #9
0
 public List <NodeVariable> GetNodesByVariableReference(NodeGraphVariable variable)
 {
     return(GetNodes <NodeVariable>().Where(x => x.VariableID == variable.ID).ToList());
 }
Пример #10
0
 void Variable_Removed(NodeGraphVariable variable)
 {
     _variable = null;
     RemoveAllPins();
 }