Hi.

I'm having problems with an onKnobChanged event. I'm trying to add a node under a Read node whenever the user sets the input colorspace to AlexaV3LogC. The node I'm trying to add is a gizmo, and when the event is fired, the node appears in the graph but it is unconnected and this error appears:
Traceback (most recent call last):

File "[...]/Nuke/Nuke6.3v5_win64/plugins\nuke\callbacks.py", line 127, in knobChanged

_doCallbacks(knobChangeds)

File "[...]/Nuke/Nuke6.3v5_win64/plugins\nuke\callbacks.py", line 46, in _doCallbacks

f[0](*f[1],**f[2])

File "[...]\nukePlugins\src/init.py", line 199, in onKnobChanged_Read_Colorspace

oObqAC = nuke.nodes.ObqAlexaCorrect(inputs=[nuke.thisNode()])

RuntimeError: [...]\nukePlugins\src/ObqAlexaCorrect.gizmo:

Missing end_group command(s)


It all works well when I add a normal node instead (when I replace "ObqAlexaCorrect" by "Grade"), but it fails with any gizmo. Is this something known?
Here is my event code.


    def onKnobChanged_Read_Colorspace():
if nuke.thisKnob().name() == "colorspace" and nuke.thisKnob().value() == "AlexaV3LogC": lDependentNodes = nuke.overrides.dependentNodes(nodes=[nuke.thisNode()], what=nuke.INPUTS)

            # Find ObqAlexaCorrect node in dependentNodes.
            found = False
            for node in lDependentNodes:
                if node.Class() == "ObqAlexaCorrect":
                    found = True
                    break
            if not found:
oObqAC = nuke.nodes.ObqAlexaCorrect(inputs=[nuke.thisNode()])

            # Reconnect dependentNodes to ObqAlexaCorrect.
            for node in lDependentNodes:
                iNbInputs = node.inputs()
                for i in range(0, iNbInputs):
                    if node.input(i) == nuke.thisNode():
                        node.setInput(i, oObqAC)

_______________________________________________
Nuke-python mailing list
Nuke-python@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python

Reply via email to