It looks like my highlighting that piece of text created asterisks (*) on your end; they should just be removed:
... cmds.button(l='Sel',w=20, command = Callback(selectMe, fullName) ) - Ofer www.mrbroken.com On Tue, Jan 11, 2011 at 9:08 PM, PixelMuncher <[email protected]> wrote: > > Thanks Oren: > I'm not familiar w/using classes, but I did try your suggestion. > Assuming that I unwrapped your Class correctly: > class Callback(object): > def __init__(self, func, *args, **kwargs): > self.func= func > self.args = args > self.kwargs = kwargs > def __call__(self): > return self.func( *self.args, **self.kwargs ) > > When run the script, I get this error: > # File "C:\Documents and Settings\Administrator\My Documents\maya > \myScripts\panelContentChange.py", line 125 > # cmds.button(l='Sel',w=20, command = > *Callback(selectMe,fullName)* ) > # ^ > # SyntaxError: invalid syntax # > > On Jan 11, 12:29 pm, Ofer Koren <[email protected]> wrote: > > If you have pymel you should use the Callback class implemented there. It > > has better handling of errors and undos and whatnot. > > If you don't have pymel you could just define this simple version and use > > it: > > > > class Callback(object): def __init__(self, func, *args, **kwargs): self.func > > = func self.args = args self.kwargs = kwargs def __call__(self): return > > self.func( *self.args, **self.kwargs ) > > > > def fillUDPanel(): > > global sliderContainer > > sel=cmds.ls(sl=1) > > if len(sel) == 0: > > mel.error("You must have an object selected!") > > > > for obj in sel: > > attributes=cmds.listAttr(obj, ud=1) > > if not attributes : > > print obj,'doesn\'t have obj user-defined atttrs.' > > continue > > cmds.setParent('frameBegin') > > sliderContainer > > = cmds.frameLayout('sliderFrame',collapsable=1,l=obj ,bs="etchedOut") > > cmds.rowColumnLayout('sliderPanel', nc = 2, columnWidth=[(2, > > 40)]) > > for attr in attributes: > > fullName=(str(obj) + "." + str(attr)) > > cmds.attrFieldSliderGrp(cw=(1, > > 90),at=fullName,cat=(1, 'left', 10)) > > cmds.button(l='Sel',w=20, command = > > *Callback(selectMe, > > fullName)* ) > > > > - Oferwww.mrbroken.com > > > > On Tue, Jan 11, 2011 at 7:55 PM, PixelMuncher <[email protected]> wrote: > > > and this is the command I'm trying to assign to the buttons: > > > def selectMe(who): > > > print 'selectMe:',who > > > cmds.select (who) > > > > > -- > > >http://groups.google.com/group/python_inside_maya > > > > > > -- > http://groups.google.com/group/python_inside_maya -- http://groups.google.com/group/python_inside_maya
