I'm not sure if it's still the case, but one version used to pipe the
function call through mel, something like this (only a lot more OOP and with
better error handling etc...):
callbackData = None
def _doRunCallback():
global callbackData
someFunc, args, kwargs = callbackData
callbackData = someFunc(*args, **kwargs)
def runCallback(someFunc, args, kwargs):
global callbackData
callbackData = someFunc, args, kwargs
pm.mel.eval('python("sys.modules['%s']._doRunCallback()")' % __name__)
return callbackData
- Ofer
www.mrbroken.com
On Thu, Feb 4, 2010 at 11:22 PM, ryant <[email protected]> wrote:
> I saw this post:
>
>
> http://groups.google.com/group/python_inside_maya/browse_thread/thread/4d6f6b8ed7b10dbc/02914aaabb25a9b6?lnk=gst&q=undo#02914aaabb25a9b6
>
> And I am curious as to how pymel implements the pm.Callback() function
> to get around the undo bug with calling functions inside of UIs. What
> exactly are you doing to make it work?
>
> Ryan
>
> --
> http://groups.google.com/group/python_inside_maya
--
http://groups.google.com/group/python_inside_maya