@@ -58,6 +58,7 @@ def __init__(self, name, varType, hints=None, default='', select=None, owner=Fal
5858 self .list = list
5959 self .loopLevel = 0
6060 self .usedDefault = False
61+ self .pure = 0
6162
6263 def setOwner (self , owner ):
6364 self .owner = owner
@@ -126,16 +127,21 @@ def set(self, value, override=False, loopLevel=0):
126127 if not self .name == 'Control' :
127128 self .loopLevel = loopLevel
128129
130+ def setPure (self ):
131+ self .pure = 1
132+
129133 def setConnected (self , value : bool ):
130134 self .connected = value
131135
132136 def isAvailable (self ):
133137 if self .valueSet :
134138 # print('^^^^^^^^^^^^^^^^^^', self.name, self.value, self.valueSet)
135139 return True
136- elif self .default != None and not self .connected and not self .usedDefault :
140+ elif self .default != None and not self .connected and not self .usedDefault and self .pure < 2 :
141+ if self .pure == 1 :
142+ self .pure = 2
137143 # self.usedDefault = True
138- # print('+++++++++++++++++', self.name, self.value, self.valueSet, self.owner)
144+ print ('+++++++++++++++++' , self .name , self .value , self .valueSet , self .owner , self . usedDefault )
139145 return True
140146 return False
141147
@@ -275,6 +281,9 @@ def __init__(self, nodeID, graph):
275281 self .outputBuffer [out .name ] = None
276282 if not self .inputs .keys ():
277283 raise AttributeError ('Nodes without any input are not valid.' )
284+ if len (self .inputs .keys ()) == 1 :
285+ self .inputs [list (self .inputs .keys ())[0 ]].setPure ()
286+
278287
279288 def __str__ (self ):
280289 return '{}-{}' .format (self .__class__ .__name__ , self .ID )
0 commit comments