ECToo / pymel

Automatically exported from code.google.com/p/pymel
0 stars 0 forks source link

re-wrapping of api methods #231

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Here's the sitch:

First, we create the 'DependNode' PyNode, whose api class is MFnDependencyNode; 
everything goes swimmingly - in particular, when attempting to wrap setName, it 
looks up it's data in apiToMelData[ ('DependNode', 'setName')], finds in there 
that it is disabled, and doesn't wrap it. Everyone is happy.

Then, we try to create RandomNodeX.  We don't know anything about it, so it's 
api class is also MFnDependencyNode.  When we go to wrap it, we don't detect 
that it inherits from DependNode, which has already wrapped MFnDependencyNode; 
so we try re-wrapping all of it's methods.  A waste of time, if nothing else. 
Also, when looking up information for the api wrap of setName, we check under 
apiToMelData[ ('RandomNodeX', 'setName')] ... which isn't there, so we just use 
defaults; this means that all methods are enabled be default.  This is sad.

Fix it.

When you do, restore the warning in factories:1960 (about x having an inverse, 
which is not allowed for a 'setter')

Original issue reported on code.google.com by elron...@gmail.com on 26 Jan 2011 at 12:57