A long time ago I ran help(nuke.allNodes) :P
My advice is to trust what Python says over any documentation you find.
-Nathan
*From:* Brogan Ross <mailto:broganr...@gmail.com>
*Sent:* Wednesday, September 21, 2011 12:12 AM
*To:* Nuke Python discussion <mailto:nuke-python@support.thefoundry.co.uk>
*Subject:* Re: [Nuke-python] Gizmo onCreate callback going inside gizmo
Hey thanks. I figured the callback was saying: "Oh so I'm in here
now", but hadn't run into that in any of my other callbacks that dealt
with gizmos, so was a little confused.
Can you tell me where you found out about the adding
(group=WhatHaveYou) argument, I don't remember seeing anything like
that in the regular documentation. I've been trying to learn as much as
possible but sometimes the arguments listed in the documentation seem
limited, or undefined.
Thanks again,
Brogan
On Tue, Sep 20, 2011 at 7:50 PM, Nathan Rusch <nathan_ru...@hotmail.com
<mailto:nathan_ru...@hotmail.com>> wrote:
Well, callback functions are always run in the context of the node
they are attached to, so from the callback’s point of view, the
Gizmo is the correct context to run code in.
It’s sort of similar to a namespace in programming; in order to see
things that aren’t children of the namespace, you need to make
explicit references to them, otherwise many of the functions in Nuke
that run in the active context (nuke.selectedNode,
nuke.selectedNodes, nuke.allNodes, nuke.toNode, etc.) will only know
to look downward from (or relative to) the current 'namespace' when
operating on nodes or finding nodes.
-Nathan
*From:* Brogan Ross <mailto:broganr...@gmail.com>
*Sent:* Tuesday, September 20, 2011 7:08 PM
*To:* Nuke Python discussion
<mailto:nuke-python@support.thefoundry.co.uk>
*Subject:* Re: [Nuke-python] Gizmo onCreate callback going inside gizmo
Thanks Nathan that worked like a charm. I wonder why Nuke would
think that I wanted to look through the gizmo by default, instead of
the root(). Oh well, thanks a lot for the help.
Brogan
On Tue, Sep 20, 2011 at 6:42 PM, Nathan Rusch
<nathan_ru...@hotmail.com <mailto:nathan_ru...@hotmail.com>> wrote:
You can pass nuke.allNodes a node to use as an execution
context. If you know you always want to look at the top-level of
your comp, just use:
nuke.allNodes(group=nuke.root())
If you want to look at the container context of the new gizmo
regardless of whether it’s the root node or not, use:
nuke.allNodes(group=nuke.thisParent())
Obviously if the given 'parent' gizmo you’re looking for could
be anywhere, you’ll need to walk from nuke.root() into every
Group node.
-Nathan
*From:* Brogan Ross <mailto:broganr...@gmail.com>
*Sent:* Tuesday, September 20, 2011 6:34 PM
*To:* Nuke Python discussion
<mailto:nuke-python@support.thefoundry.co.uk>
*Subject:* [Nuke-python] Gizmo onCreate callback going inside gizmo
So I found this interesting little tidbit that I didn't want to
happen.
Basically, I have an onUserCreate callback to expression the
values of a given "parent" gizmo to the newly created gizmo.
But when I'm doing a search for the "parent" gizmo with
nuke.allNodes() the callback is looking at the innards of the
newly created gizmo.
def gizmoCallback():
newgizmo = nuke.thisNode()
for node in nuke.allNodes():
if node.Class() in ["list", "of", "possible", "matches"]:
if node.name <http://node.name>().split()[0].lower()
== "searchTag":
newgizmo.setExpressions()
nuke.onUserCreate(gizmoCallback, nodeClass='NewGizmo')
That's basically what I'm running, but if I have it print out
the nodes in nuke.allNodes() it prints the names of the nodes
inside the gizmo.
Anyone else run it this before? Any work arounds?
Thanks,
Brogan
------------------------------------------------------------------------
_______________________________________________
Nuke-python mailing list
Nuke-python@support.thefoundry.co.uk
<mailto:Nuke-python@support.thefoundry.co.uk>,
http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
_______________________________________________
Nuke-python mailing list
Nuke-python@support.thefoundry.co.uk
<mailto:Nuke-python@support.thefoundry.co.uk>,
http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
------------------------------------------------------------------------
_______________________________________________
Nuke-python mailing list
Nuke-python@support.thefoundry.co.uk
<mailto:Nuke-python@support.thefoundry.co.uk>,
http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
_______________________________________________
Nuke-python mailing list
Nuke-python@support.thefoundry.co.uk
<mailto:Nuke-python@support.thefoundry.co.uk>,
http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
------------------------------------------------------------------------
_______________________________________________
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
------------------------------------------------------------------------
_______________________________________________
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