leon-thomm / Ryven

Flow-based visual scripting for Python
https://ryven.org
MIT License
3.8k stars 443 forks source link

Nodes updating the values of the widgets on update? #145

Closed ArEnSc closed 1 year ago

ArEnSc commented 1 year ago

Hey I am noticing that the nodes don't update their widget values when they update. I have an idea to fix that but it seems like it doesn't work 100%? This appears to fail not work in exec mode

    input_value = self.input(i)  # Cannot call this more than once otherwise stuff computes twice or more!!!!
                #CSNodeBase.log.error(f"[Input Value] {self.title} : {self} @ {i} = {input_value}")
                # probably specific widgets dont have this function. Boolean_IW <-- search this find the IW's and figure out if they have set value
                object_ = self.input_widget(i)

                if hasattr(object_,"setValue"):
                    # Made sure an update doesn't happen but draw values
                    object_.val_update_event(input_value)
                elif hasattr(object_,"setText"):
                    # Made sure an update doesn't happen but ddraw values
                    object_.val_update_event(str(input_value))

@leon-thomm Do you know why this might not work ? I am expecting it to update after input has been called which is recursive.