コード例 #1
0
ファイル: cgmSetKey.py プロジェクト: GuidoPollini/MuTools
	def __init__(self):	
		"""
		Initializes the pop up menu class call
		"""
		self.optionVars = []
		IsClickedOptionVar = OptionVarFactory('cgmVar_IsClicked', 0)
		mmActionOptionVar = OptionVarFactory('cgmVar_mmAction',0)			
		
		panel = mc.getPanel(up = True)
		if panel:
			# Attempt at fixing a bug of some tools not working when the pop up parent isn't 'viewPanes'
			if 'MayaWindow' in mc.panel(panel,q = True,ctl = True):
				panel = 'viewPanes'
			
		sel = search.selectCheck()
		
		IsClickedOptionVar.set(0)
		mmActionOptionVar.set(0)
		
		if mc.popupMenu('cgmMM',ex = True):
			mc.deleteUI('cgmMM')
			
		if panel:
			if mc.control(panel, ex = True):
				try:
					mc.popupMenu('cgmMM', ctl = 0, alt = 0, sh = 0, mm = 1, b =1, aob = 1, p = panel,
						         pmc = lambda *a: self.createUI('cgmMM'))
				except:
					guiFactory.warning('Exception on set key marking menu')
					mel.eval('performSetKeyframeArgList 1 {"0", "animationList"};')		
コード例 #2
0
	def __init__(self):	
		"""
		Initializes the pop up menu class call
		"""
		self.optionVars = []
		self.toolName = 'cgm.snapMM'
		IsClickedOptionVar = OptionVarFactory('cgmVar_IsClicked', 'int')
		mmActionOptionVar = OptionVarFactory('cgmVar_mmAction', 'int')	
		surfaceSnapAimModeVar = OptionVarFactory('cgmVar_SurfaceSnapAimMode', 'int')	
		UpdateRotateOrderOnTagVar = OptionVarFactory('cgmVar_TaggingUpdateRO', 'int')	
		self.LocinatorUpdateObjectsBufferOptionVar = OptionVarFactory('cgmVar_LocinatorUpdateObjectsBuffer',defaultValue = [''])
		
		self.LocinatorUpdateObjectsOptionVar = OptionVarFactory('cgmVar_SnapMMUpdateMode',defaultValue = 0)
		guiFactory.appendOptionVarList(self,self.LocinatorUpdateObjectsOptionVar.name)
		
		self.SnapModeOptionVar = OptionVarFactory('cgmVar_SnapMatchMode',defaultValue = 0)
		guiFactory.appendOptionVarList(self,self.SnapModeOptionVar.name)
				
		
		panel = mc.getPanel(up = True)
		sel = search.selectCheck()
		
		IsClickedOptionVar.set(0)
		mmActionOptionVar.set(0)
		
		if mc.popupMenu('cgmMM',ex = True):
			mc.deleteUI('cgmMM')
			
		if panel:
			if mc.control(panel, ex = True):
				mc.popupMenu('cgmMM', ctl = 0, alt = 0, sh = 0, mm = 1, b =1, aob = 1, p = 'viewPanes',
					         pmc = lambda *a: self.createUI('cgmMM'))
コード例 #3
0
    def __init__(self):
        """
		Initializes the pop up menu class call
		"""
        self.optionVars = []
        self.IsClickedOptionVar = OptionVarFactory("cgmVar_IsClicked", "int", 0)
        self.mmActionOptionVar = OptionVarFactory("cgmVar_mmAction", "int", 0)

        self.setupVariables()

        panel = mc.getPanel(up=True)
        if panel:
            # Attempt at fixing a bug of some tools not working when the pop up parent isn't 'viewPanes'
            if "MayaWindow" in mc.panel(panel, q=True, ctl=True):
                panel = "viewPanes"

        sel = search.selectCheck()

        self.IsClickedOptionVar.set(0)
        self.mmActionOptionVar.set(0)

        if mc.popupMenu("cgmMM", ex=True):
            mc.deleteUI("cgmMM")

        if panel:
            if mc.control(panel, ex=True):
                try:
                    mc.popupMenu(
                        "cgmMM", ctl=0, alt=0, sh=0, mm=1, b=1, aob=1, p=panel, pmc=lambda *a: self.createUI("cgmMM")
                    )
                except:
                    guiFactory.warning("cgm.setMenu failed!")
コード例 #4
0
ファイル: cgmSetKey.py プロジェクト: GuidoPollini/MuTools
def killUI():
	IsClickedOptionVar = OptionVarFactory('cgmVar_IsClicked')
	mmActionOptionVar = OptionVarFactory('cgmVar_mmAction')
	
	sel = search.selectCheck()
	
	if mc.popupMenu('cgmMM',ex = True):
		mc.deleteUI('cgmMM')

	if sel:
		if not mmActionOptionVar.value:
			setKey()
コード例 #5
0
ファイル: cgmPuppetKey.py プロジェクト: Italic-/maya-prefs
def killUI():
    IsClickedOptionVar = cgmMeta.cgmOptionVar('cgmVar_IsClicked')
    mmActionOptionVar = cgmMeta.cgmOptionVar('cgmVar_mmAction')

    sel = search.selectCheck()
    
    #>>> Timer stuff
    #=============================================================================
    var_clockStart = cgmMeta.cgmOptionVar('cgmVar_PuppetKeyClockStart', defaultValue = 0.0)    
    f_seconds = time.clock()-var_clockStart.value
    log.debug(">"*10  + '   cgmPuppetKey =  %0.3f seconds  ' % (f_seconds) + '<'*10)    
    
    #>>>Delete our gui and default behavior
    if mc.popupMenu('cgmMM',ex = True):
	mc.deleteUI('cgmMM')
    if sel and f_seconds <= .5 and not mmActionOptionVar.value:
	setKey()
コード例 #6
0
ファイル: cgmPuppetKey.py プロジェクト: liudger/cgmTools
def killUI():
    log.info("killUI()...")        
    IsClickedOptionVar = cgmMeta.cgmOptionVar('cgmVar_IsClicked')
    mmActionOptionVar = cgmMeta.cgmOptionVar('cgmVar_mmAction')

    sel = search.selectCheck()

    #>>> Timer stuff
    #=============================================================================
    var_clockStart = cgmMeta.cgmOptionVar('cgmVar_PuppetKeyClockStart', defaultValue = 0.0)    
    f_seconds = time.clock()-var_clockStart.value
    log.debug(">"*10  + '   cgmPuppetKey =  %0.3f seconds  ' % (f_seconds) + '<'*10)    

    #>>>Delete our gui and default behavior
    if mc.popupMenu('cgmMM',ex = True):
        mc.deleteUI('cgmMM')
    if sel and f_seconds <= .5 and not mmActionOptionVar.value:
        setKey()
コード例 #7
0
    def __init__(self):
        """
		Initializes the pop up menu class call
		"""
        self.optionVars = []
        self.toolName = 'cgm.snapMM'
        IsClickedOptionVar = OptionVarFactory('cgmVar_IsClicked', 'int')
        mmActionOptionVar = OptionVarFactory('cgmVar_mmAction', 'int')
        surfaceSnapAimModeVar = OptionVarFactory('cgmVar_SurfaceSnapAimMode',
                                                 'int')
        UpdateRotateOrderOnTagVar = OptionVarFactory('cgmVar_TaggingUpdateRO',
                                                     'int')
        self.LocinatorUpdateObjectsBufferOptionVar = OptionVarFactory(
            'cgmVar_LocinatorUpdateObjectsBuffer', defaultValue=[''])

        self.LocinatorUpdateObjectsOptionVar = OptionVarFactory(
            'cgmVar_SnapMMUpdateMode', defaultValue=0)
        guiFactory.appendOptionVarList(
            self, self.LocinatorUpdateObjectsOptionVar.name)

        self.SnapModeOptionVar = OptionVarFactory('cgmVar_SnapMatchMode',
                                                  defaultValue=0)
        guiFactory.appendOptionVarList(self, self.SnapModeOptionVar.name)

        panel = mc.getPanel(up=True)
        sel = search.selectCheck()

        IsClickedOptionVar.set(0)
        mmActionOptionVar.set(0)

        if mc.popupMenu('cgmMM', ex=True):
            mc.deleteUI('cgmMM')

        if panel:
            if mc.control(panel, ex=True):
                mc.popupMenu('cgmMM',
                             ctl=0,
                             alt=0,
                             sh=0,
                             mm=1,
                             b=1,
                             aob=1,
                             p='viewPanes',
                             pmc=lambda *a: self.createUI('cgmMM'))
コード例 #8
0
ファイル: cgmSetKey.py プロジェクト: liudger/cgmTools
    def __init__(self):
        """
		Initializes the pop up menu class call
		"""
        self.optionVars = []
        IsClickedOptionVar = OptionVarFactory('cgmVar_IsClicked', 0)
        mmActionOptionVar = OptionVarFactory('cgmVar_mmAction', 0)

        panel = mc.getPanel(up=True)
        if panel:
            # Attempt at fixing a bug of some tools not working when the pop up parent isn't 'viewPanes'
            if 'MayaWindow' in mc.panel(panel, q=True, ctl=True):
                panel = 'viewPanes'

        sel = search.selectCheck()

        IsClickedOptionVar.set(0)
        mmActionOptionVar.set(0)

        if mc.popupMenu('cgmMM', ex=True):
            mc.deleteUI('cgmMM')

        if panel:
            if mc.control(panel, ex=True):
                try:
                    mc.popupMenu('cgmMM',
                                 ctl=0,
                                 alt=0,
                                 sh=0,
                                 mm=1,
                                 b=1,
                                 aob=1,
                                 p=panel,
                                 pmc=lambda *a: self.createUI('cgmMM'))
                except:
                    guiFactory.warning('Exception on set key marking menu')
                    mel.eval(
                        'performSetKeyframeArgList 1 {"0", "animationList"};')
コード例 #9
0
ファイル: cgmPuppetKey.py プロジェクト: liudger/cgmTools
    def __init__(self):	
        """
        Initializes the pop up menu class call
        """
        self._str_funcName = "puppetKeyMarkingMenu"
        self.optionVars = []
        IsClickedOptionVar = cgmMeta.cgmOptionVar('cgmVar_IsClicked', value = 0)
        mmActionOptionVar = cgmMeta.cgmOptionVar('cgmVar_mmAction',value = 0)			

        panel = mc.getPanel(up = True)
        if panel:
            # Attempt at fixing a bug of some tools not working when the pop up parent isn't 'viewPanes'
            if 'MayaWindow' in mc.panel(panel,q = True,ctl = True):
                panel = 'viewPanes'

        sel = search.selectCheck()

        #>>>> Clock set
        #====================================================================
        self.clockStartVar = cgmMeta.cgmOptionVar('cgmVar_PuppetKeyClockStart', defaultValue = 0.0)	
        self.clockStartVar.value = time.clock()
        log.debug("cgmPuppetKey.clockStart: %s"%self.clockStartVar.value)

        IsClickedOptionVar.value = 0
        mmActionOptionVar.value = 0

        if mc.popupMenu('cgmMM',ex = True):
            mc.deleteUI('cgmMM')

        if panel:
            if mc.control(panel, ex = True):
                try:
                    mc.popupMenu('cgmMM', ctl = 0, alt = 0, sh = 0, mm = 1, b =1, aob = 1, p = panel,
                                 pmc = lambda *a: self.createUI('cgmMM'))
                except:
                    log.warning('Exception on set key marking menu')
                    mel.eval('performSetKeyframeArgList 1 {"0", "animationList"};')		
コード例 #10
0
ファイル: cgmPuppetKey.py プロジェクト: Italic-/maya-prefs
    def __init__(self):	
	"""
	Initializes the pop up menu class call
	"""
	self.optionVars = []
	IsClickedOptionVar = cgmMeta.cgmOptionVar('cgmVar_IsClicked', value = 0)
	mmActionOptionVar = cgmMeta.cgmOptionVar('cgmVar_mmAction',value = 0)			

	panel = mc.getPanel(up = True)
	if panel:
	    # Attempt at fixing a bug of some tools not working when the pop up parent isn't 'viewPanes'
	    if 'MayaWindow' in mc.panel(panel,q = True,ctl = True):
		panel = 'viewPanes'

	sel = search.selectCheck()
	
	#>>>> Clock set
	#====================================================================
	self.clockStartVar = cgmMeta.cgmOptionVar('cgmVar_PuppetKeyClockStart', defaultValue = 0.0)	
	self.clockStartVar.value = time.clock()
	log.debug("cgmPuppetKey.clockStart: %s"%self.clockStartVar.value)
	
	IsClickedOptionVar.value = 0
	mmActionOptionVar.value = 0

	if mc.popupMenu('cgmMM',ex = True):
	    mc.deleteUI('cgmMM')

	if panel:
	    if mc.control(panel, ex = True):
		try:
		    mc.popupMenu('cgmMM', ctl = 0, alt = 0, sh = 0, mm = 1, b =1, aob = 1, p = panel,
		                 pmc = lambda *a: self.createUI('cgmMM'))
		except:
		    log.warning('Exception on set key marking menu')
		    mel.eval('performSetKeyframeArgList 1 {"0", "animationList"};')		
コード例 #11
0
    def createUI(self, parent):
        """
		Create the UI
		"""
        def buttonAction(command):
            """
			execute a command and let the menu know not do do the default button action but just kill the ui
			"""
            killUI()
            command
            mmActionOptionVar.set(1)

        self.LocinatorUpdateObjectsBufferOptionVar = OptionVarFactory(
            'cgmVar_LocinatorUpdateObjectsBuffer', defaultValue=[''])
        IsClickedOptionVar = OptionVarFactory('cgmVar_IsClicked', 'int')
        mmActionOptionVar = OptionVarFactory('cgmVar_mmAction', 'int')

        self.SnapModeOptionVar.update(
        )  #Check if another tool has changed this setting

        sel = search.selectCheck()
        selPair = search.checkSelectionLength(2)

        IsClickedOptionVar.set(1)

        mc.menu(parent, e=True, deleteAllItems=True)
        MelMenuItem(parent,
                    en=selPair,
                    l='Point Snap',
                    c=lambda *a: buttonAction(tdToolsLib.doPointSnap()),
                    rp='NW')
        MelMenuItem(parent,
                    en=selPair,
                    l='Parent Snap',
                    c=lambda *a: buttonAction(tdToolsLib.doParentSnap()),
                    rp='N')
        MelMenuItem(parent,
                    en=selPair,
                    l='Orient Snap',
                    c=lambda *a: buttonAction(tdToolsLib.doOrientSnap()),
                    rp='NE')

        MelMenuItem(parent,
                    en=selPair,
                    l='Surface Snap',
                    c=lambda *a: buttonAction(
                        tdToolsLib.doSnapClosestPointToSurface(False)),
                    rp='W')

        if self.LocinatorUpdateObjectsOptionVar.value:
            ShowMatch = False
            if self.LocinatorUpdateObjectsBufferOptionVar.value:
                ShowMatch = True
            MelMenuItem(parent,
                        en=ShowMatch,
                        l='Buffer Snap',
                        c=lambda *a: buttonAction(
                            locinatorLib.doUpdateLoc(self, True)),
                        rp='S')
        else:
            ShowMatch = search.matchObjectCheck()
            MelMenuItem(parent,
                        en=ShowMatch,
                        l='Match Snap',
                        c=lambda *a: buttonAction(
                            locinatorLib.doUpdateSelectedObjects(self)),
                        rp='S')

        MelMenuItem(
            parent,
            en=0,
            l='Mirror',
            c=lambda *a: buttonAction(locinatorLib.doUpdateObj(self, True)),
            rp='SW')

        MelMenuItemDiv(parent)
        MelMenuItem(parent,
                    l='Loc Me',
                    c=lambda *a: buttonAction(locinatorLib.doLocMe(self)))
        MelMenuItem(parent,
                    l='Tag Loc to Object',
                    en=selPair,
                    c=lambda *a: buttonAction(locinatorLib.doTagObjects(self)))
        # Update Mode
        UpdateMenu = MelMenuItem(parent, l='Update Mode', subMenu=True)
        UpdateMenuCollection = MelRadioMenuCollection()

        if self.LocinatorUpdateObjectsOptionVar.value == 0:
            slMode = True
            bufferMode = False
        else:
            slMode = False
            bufferMode = True

        UpdateMenuCollection.createButton(
            UpdateMenu,
            l='Selected',
            c=lambda *a: self.LocinatorUpdateObjectsOptionVar.set(0),
            rb=slMode)
        UpdateMenuCollection.createButton(
            UpdateMenu,
            l='Buffer',
            c=lambda *a: self.LocinatorUpdateObjectsOptionVar.set(1),
            rb=bufferMode)
        #>>>Match Mode
        self.MatchModeOptions = ['parent', 'point', 'orient']

        self.MatchModeCollection = MelRadioMenuCollection()
        self.MatchModeCollectionChoices = []

        MatchModeMenu = MelMenuItem(parent, l='Match Mode', subMenu=True)
        self.matchMode = self.SnapModeOptionVar.value
        for c, item in enumerate(self.MatchModeOptions):
            if self.matchMode == c:
                rbValue = True
            else:
                rbValue = False
            self.MatchModeCollectionChoices.append(
                self.MatchModeCollection.createButton(
                    MatchModeMenu,
                    label=item,
                    rb=rbValue,
                    command=Callback(self.SnapModeOptionVar.set, c)))
        #>>> Define
        DefineMenu = MelMenuItem(parent, l='Buffer', subMenu=True)
        MelMenuItem(DefineMenu,
                    l="Define",
                    c=lambda *a: locinatorLib.defineObjBuffer(
                        self.LocinatorUpdateObjectsBufferOptionVar))

        MelMenuItem(DefineMenu,
                    l="Add Selected",
                    c=lambda *a: locinatorLib.addSelectedToObjBuffer(
                        self.LocinatorUpdateObjectsBufferOptionVar))

        MelMenuItem(DefineMenu,
                    l="Remove Selected",
                    c=lambda *a: locinatorLib.removeSelectedFromObjBuffer(
                        self.LocinatorUpdateObjectsBufferOptionVar))

        MelMenuItemDiv(DefineMenu)
        MelMenuItem(DefineMenu,
                    l="Select Members",
                    c=lambda *a: locinatorLib.selectObjBufferMembers(
                        self.LocinatorUpdateObjectsBufferOptionVar))
        MelMenuItem(DefineMenu,
                    l="Clear",
                    c=lambda *a: locinatorLib.clearObjBuffer(
                        self.LocinatorUpdateObjectsBufferOptionVar))

        MelMenuItemDiv(parent)
        MelMenuItem(parent,
                    l='Locinator',
                    c=lambda *a: buttonAction(cgmToolbox.loadLocinator()))
        MelMenuItem(parent,
                    l='cgm.animTools',
                    c=lambda *a: buttonAction(cgmToolbox.loadAnimTools()))
        MelMenuItem(parent,
                    l='cgm.tdTools',
                    c=lambda *a: buttonAction(cgmToolbox.loadTDTools()))
        MelMenuItem(parent,
                    l='cgm.attrTools',
                    c=lambda *a: buttonAction(cgmToolbox.loadAttrTools()))

        MelMenuItemDiv(parent)
        MelMenuItem(parent,
                    l="Reset",
                    c=lambda *a: guiFactory.resetGuiInstanceOptionVars(
                        self.optionVars))
コード例 #12
0
ファイル: cgmSetKey.py プロジェクト: liudger/cgmTools
    def createUI(self, parent):
        """
		Create the UI
		"""
        IsClickedOptionVar = OptionVarFactory('cgmVar_IsClicked', value=0)
        self.setupVariables()

        def buttonAction(command):
            """
			execute a command and let the menu know not do do the default button action but just kill the ui
			"""
            self.mmActionOptionVar.set(1)
            command
            killUI()

        sel = search.selectCheck()
        selPair = search.checkSelectionLength(2)
        ShowMatch = search.matchObjectCheck()

        IsClickedOptionVar.set(1)

        mc.menu(parent, e=True, deleteAllItems=True)
        MelMenuItem(
            parent,
            en=sel,
            l='Reset Selected',
            c=lambda *a: buttonAction(animToolsLib.ml_resetChannelsCall()),
            rp='N')

        MelMenuItem(
            parent,
            en=sel,
            l='dragBreakdown',
            c=lambda *a: buttonAction(animToolsLib.ml_breakdownDraggerCall()),
            rp='S')

        #>>> Keying Options
        KeyMenu = MelMenuItem(parent, l='Key type', subMenu=True)
        KeyMenuCollection = MelRadioMenuCollection()

        if self.KeyTypeOptionVar.value == 0:
            regKeyOption = True
            bdKeyOption = False
        else:
            regKeyOption = False
            bdKeyOption = True

        KeyMenuCollection.createButton(KeyMenu,
                                       l=' Reg ',
                                       c=Callback(self.toggleVarAndReset,
                                                  self.KeyTypeOptionVar),
                                       rb=regKeyOption)
        KeyMenuCollection.createButton(KeyMenu,
                                       l=' Breakdown ',
                                       c=Callback(self.toggleVarAndReset,
                                                  self.KeyTypeOptionVar),
                                       rb=bdKeyOption)

        #>>> Keying Mode
        KeyMenu = MelMenuItem(parent, l='Key Mode', subMenu=True)
        KeyMenuCollection = MelRadioMenuCollection()

        if self.KeyModeOptionVar.value == 0:
            regModeOption = True
            cbModeOption = False
        else:
            regModeOption = False
            cbModeOption = True

        KeyMenuCollection.createButton(KeyMenu,
                                       l=' Default ',
                                       c=Callback(self.toggleVarAndReset,
                                                  self.KeyModeOptionVar),
                                       rb=regModeOption)
        KeyMenuCollection.createButton(KeyMenu,
                                       l=' Channelbox ',
                                       c=Callback(self.toggleVarAndReset,
                                                  self.KeyModeOptionVar),
                                       rb=cbModeOption)

        MelMenuItemDiv(parent)
        MelMenuItem(parent,
                    l='autoTangent',
                    c=lambda *a: buttonAction(mel.eval('autoTangent')))
        MelMenuItem(parent,
                    l='tweenMachine',
                    c=lambda *a: buttonAction(mel.eval('tweenMachine')))
        MelMenuItem(parent,
                    l='cgm.animTools',
                    c=lambda *a: buttonAction(cgmToolbox.loadAnimTools()))
        MelMenuItemDiv(parent)
        MelMenuItem(parent,
                    l='ml Set Key',
                    c=lambda *a: buttonAction(animToolsLib.ml_setKeyCall()))
        MelMenuItem(parent,
                    l='ml Hold',
                    c=lambda *a: buttonAction(animToolsLib.ml_holdCall()))
        MelMenuItem(parent,
                    l='ml Delete Key',
                    c=lambda *a: buttonAction(animToolsLib.ml_deleteKeyCall()))
        MelMenuItem(parent,
                    l='ml Arc Tracer',
                    c=lambda *a: buttonAction(animToolsLib.ml_arcTracerCall()))

        MelMenuItemDiv(parent)
        MelMenuItem(parent,
                    l="Reset",
                    c=lambda *a: guiFactory.resetGuiInstanceOptionVars(
                        self.optionVars))
コード例 #13
0
ファイル: cgmSetKey.py プロジェクト: GuidoPollini/MuTools
	def createUI(self,parent):
		"""
		Create the UI
		"""		
		IsClickedOptionVar = OptionVarFactory('cgmVar_IsClicked',value = 0)
		self.setupVariables()
		
		def buttonAction(command):
			"""
			execute a command and let the menu know not do do the default button action but just kill the ui
			"""			
			self.mmActionOptionVar.set(1)			
			command
			killUI()
			
		sel = search.selectCheck()
		selPair = search.checkSelectionLength(2)
		ShowMatch = search.matchObjectCheck()
		
		IsClickedOptionVar.set(1)
		
		mc.menu(parent,e = True, deleteAllItems = True)
		MelMenuItem(parent,
		            en = sel,
		            l = 'Reset Selected',
		            c = lambda *a:buttonAction(animToolsLib.ml_resetChannelsCall()),
		            rp = 'N')            
		
		MelMenuItem(parent,
		            en = sel,
		            l = 'dragBreakdown',
		            c = lambda *a:buttonAction(animToolsLib.ml_breakdownDraggerCall()),
		            rp = 'S')
		
	
		#>>> Keying Options
		KeyMenu = MelMenuItem( parent, l='Key type', subMenu=True)
		KeyMenuCollection = MelRadioMenuCollection()
	
		if self.KeyTypeOptionVar.value == 0:
			regKeyOption = True
			bdKeyOption = False
		else:
			regKeyOption = False
			bdKeyOption = True
	
		KeyMenuCollection.createButton(KeyMenu,l=' Reg ',
		                               c= Callback(self.toggleVarAndReset,self.KeyTypeOptionVar),
		                               rb= regKeyOption )
		KeyMenuCollection.createButton(KeyMenu,l=' Breakdown ',
		                               c= Callback(self.toggleVarAndReset,self.KeyTypeOptionVar),
		                               rb= bdKeyOption )
		
		#>>> Keying Mode
		KeyMenu = MelMenuItem( parent, l='Key Mode', subMenu=True)
		KeyMenuCollection = MelRadioMenuCollection()
	
		if self.KeyModeOptionVar.value == 0:
			regModeOption = True
			cbModeOption = False
		else:
			regModeOption = False
			cbModeOption = True
	
		KeyMenuCollection.createButton(KeyMenu,l=' Default ',
		                               c= Callback(self.toggleVarAndReset,self.KeyModeOptionVar),
		                               rb= regModeOption )
		KeyMenuCollection.createButton(KeyMenu,l=' Channelbox ',
		                               c= Callback(self.toggleVarAndReset,self.KeyModeOptionVar),
		                               rb= cbModeOption )		
		
		MelMenuItemDiv(parent)
		MelMenuItem(parent,l = 'autoTangent',
				    c = lambda *a: buttonAction(mel.eval('autoTangent')))
		MelMenuItem(parent,l = 'tweenMachine',
				    c = lambda *a: buttonAction(mel.eval('tweenMachine')))	
		MelMenuItem(parent, l = 'cgm.animTools',
	                c = lambda *a: buttonAction(cgmToolbox.loadAnimTools()))	
		MelMenuItemDiv(parent)
		MelMenuItem(parent,l = 'ml Set Key',
			        c = lambda *a: buttonAction(animToolsLib.ml_setKeyCall()))
		MelMenuItem(parent,l = 'ml Hold',
			        c = lambda *a: buttonAction(animToolsLib.ml_holdCall()))
		MelMenuItem(parent,l = 'ml Delete Key',
			        c = lambda *a: buttonAction(animToolsLib.ml_deleteKeyCall()))
		MelMenuItem(parent,l = 'ml Arc Tracer',
			        c = lambda *a: buttonAction(animToolsLib.ml_arcTracerCall()))

		MelMenuItemDiv(parent)	
		MelMenuItem(parent, l="Reset",
	                 c=lambda *a: guiFactory.resetGuiInstanceOptionVars(self.optionVars))
コード例 #14
0
	def createUI(self,parent):
		"""
		Create the UI
		"""		
		def buttonAction(command):
			"""
			execute a command and let the menu know not do do the default button action but just kill the ui
			"""			
			killUI()
			command
			mmActionOptionVar.set(1)
		
		self.LocinatorUpdateObjectsBufferOptionVar = OptionVarFactory('cgmVar_LocinatorUpdateObjectsBuffer',defaultValue = [''])
		IsClickedOptionVar = OptionVarFactory('cgmVar_IsClicked', 'int')
		mmActionOptionVar = OptionVarFactory('cgmVar_mmAction', 'int')
		
		self.SnapModeOptionVar.update()#Check if another tool has changed this setting
		
		sel = search.selectCheck()
		selPair = search.checkSelectionLength(2)
		
		IsClickedOptionVar.set(1)
		
		mc.menu(parent,e = True, deleteAllItems = True)
		MelMenuItem(parent,
		            en = selPair,
		            l = 'Point Snap',
		            c = lambda *a:buttonAction(tdToolsLib.doPointSnap()),
		            rp = 'NW')		            
		MelMenuItem(parent,
		            en = selPair,
		            l = 'Parent Snap',
		            c = lambda *a:buttonAction(tdToolsLib.doParentSnap()),
		            rp = 'N')	
		MelMenuItem(parent,
		            en = selPair,
		            l = 'Orient Snap',
		            c = lambda *a:buttonAction(tdToolsLib.doOrientSnap()),
		            rp = 'NE')	
		
		MelMenuItem(parent,
		            en = selPair,
		            l = 'Surface Snap',
		            c = lambda *a:buttonAction(tdToolsLib.doSnapClosestPointToSurface(False)),
		            rp = 'W')
		
		if self.LocinatorUpdateObjectsOptionVar.value:
			ShowMatch = False
			if self.LocinatorUpdateObjectsBufferOptionVar.value:
				ShowMatch = True
			MelMenuItem(parent,
				        en = ShowMatch,
				        l = 'Buffer Snap',
				        c = lambda *a:buttonAction(locinatorLib.doUpdateLoc(self,True)),
				        rp = 'S')					
		else:
			ShowMatch = search.matchObjectCheck()			
			MelMenuItem(parent,
				        en = ShowMatch,
				        l = 'Match Snap',
				        c = lambda *a:buttonAction(locinatorLib.doUpdateSelectedObjects(self)),
				        rp = 'S')	
			
		
		MelMenuItem(parent,
		            en = 0,
		            l = 'Mirror',
		            c = lambda *a:buttonAction(locinatorLib.doUpdateObj(self,True)),
		            rp = 'SW')			
		
		MelMenuItemDiv(parent)
		MelMenuItem(parent,l = 'Loc Me',
	                c = lambda *a: buttonAction(locinatorLib.doLocMe(self)))
		MelMenuItem(parent, l = 'Tag Loc to Object',en = selPair,
	                c = lambda *a: buttonAction(locinatorLib.doTagObjects(self)))
		# Update Mode
		UpdateMenu = MelMenuItem(parent, l='Update Mode', subMenu=True)
		UpdateMenuCollection = MelRadioMenuCollection()

		if self.LocinatorUpdateObjectsOptionVar.value == 0:
			slMode = True
			bufferMode = False
		else:
			slMode = False
			bufferMode = True

		UpdateMenuCollection.createButton(UpdateMenu,l='Selected',
				                             c=lambda *a: self.LocinatorUpdateObjectsOptionVar.set(0),
				                             rb=slMode )
		UpdateMenuCollection.createButton(UpdateMenu,l='Buffer',
				                             c=lambda *a:self.LocinatorUpdateObjectsOptionVar.set(1),
				                             rb=bufferMode )
		#>>>Match Mode
		self.MatchModeOptions = ['parent','point','orient']
		
		self.MatchModeCollection = MelRadioMenuCollection()
		self.MatchModeCollectionChoices = []
					
		MatchModeMenu = MelMenuItem( parent, l='Match Mode', subMenu=True)
		self.matchMode = self.SnapModeOptionVar.value
		for c,item in enumerate(self.MatchModeOptions):
			if self.matchMode == c:
				rbValue = True
			else:
				rbValue = False
			self.MatchModeCollectionChoices.append(self.MatchModeCollection.createButton(MatchModeMenu,label=item,
			                                                                             rb = rbValue,
			                                                                             command = Callback(self.SnapModeOptionVar.set,c)))
		#>>> Define
		DefineMenu = MelMenuItem( parent, l='Buffer', subMenu=True)
		MelMenuItem( DefineMenu, l="Define",
		             c= lambda *a: locinatorLib.defineObjBuffer(self.LocinatorUpdateObjectsBufferOptionVar))
		
		MelMenuItem( DefineMenu, l="Add Selected",
		             c= lambda *a: locinatorLib.addSelectedToObjBuffer(self.LocinatorUpdateObjectsBufferOptionVar))
		
		MelMenuItem( DefineMenu, l="Remove Selected",
		             c= lambda *a: locinatorLib.removeSelectedFromObjBuffer(self.LocinatorUpdateObjectsBufferOptionVar))
		
		MelMenuItemDiv( DefineMenu )
		MelMenuItem( DefineMenu, l="Select Members",
				     c= lambda *a: locinatorLib.selectObjBufferMembers(self.LocinatorUpdateObjectsBufferOptionVar))
		MelMenuItem( DefineMenu, l="Clear",
		             c= lambda *a: locinatorLib.clearObjBuffer(self.LocinatorUpdateObjectsBufferOptionVar))
				
		
		
		
		
		MelMenuItemDiv(parent)		
		MelMenuItem(parent, l = 'Locinator',
	                c = lambda *a: buttonAction(cgmToolbox.loadLocinator()))
		MelMenuItem(parent, l = 'cgm.animTools',
	                c = lambda *a: buttonAction(cgmToolbox.loadAnimTools()))
		MelMenuItem(parent, l = 'cgm.tdTools',
	                c = lambda *a: buttonAction(cgmToolbox.loadTDTools()))
		MelMenuItem(parent, l = 'cgm.attrTools',
	                c = lambda *a: buttonAction(cgmToolbox.loadAttrTools()))
		

		MelMenuItemDiv(parent)	
		MelMenuItem(parent, l="Reset",
	                 c=lambda *a: guiFactory.resetGuiInstanceOptionVars(self.optionVars))
コード例 #15
0
ファイル: cgmSetKey.py プロジェクト: jonntd/tak_maya_preset
    def createUI(self, parent):
        """
		Create the UI
		"""
        IsClickedOptionVar = OptionVarFactory('cgmVar_IsClicked')
        self.mmActionOptionVar = OptionVarFactory('cgmVar_mmAction')

        def buttonAction(command):
            """
			execute a command and let the menu know not do do the default button action but just kill the ui
			"""
            self.mmActionOptionVar.set(1)
            command
            killUI()

        sel = search.selectCheck()
        selPair = search.checkSelectionLength(2)
        ShowMatch = search.matchObjectCheck()

        IsClickedOptionVar.set(1)

        mc.menu(parent, e=True, deleteAllItems=True)
        MelMenuItem(
            parent,
            en=sel,
            l='Reset Selected',
            c=lambda *a: buttonAction(animToolsLib.ml_resetChannelsCall()),
            rp='N')

        MelMenuItem(
            parent,
            en=sel,
            l='dragBreakdown',
            c=lambda *a: buttonAction(animToolsLib.ml_breakdownDraggerCall()),
            rp='S')

        MelMenuItemDiv(parent)
        MelMenuItem(parent,
                    l='autoTangent',
                    c=lambda *a: buttonAction(mel.eval('autoTangent')))
        MelMenuItem(parent,
                    l='tweenMachine',
                    c=lambda *a: buttonAction(mel.eval('tweenMachine')))
        MelMenuItem(parent,
                    l='cgm.animTools',
                    c=lambda *a: buttonAction(cgmToolbox.loadAnimTools()))
        MelMenuItemDiv(parent)
        MelMenuItem(parent,
                    l='ml Set Key',
                    c=lambda *a: buttonAction(animToolsLib.ml_setKeyCall()))
        MelMenuItem(parent,
                    l='ml Hold',
                    c=lambda *a: buttonAction(animToolsLib.ml_holdCall()))
        MelMenuItem(parent,
                    l='ml Delete Key',
                    c=lambda *a: buttonAction(animToolsLib.ml_deleteKeyCall()))
        MelMenuItem(parent,
                    l='ml Arc Tracer',
                    c=lambda *a: buttonAction(animToolsLib.ml_arcTracerCall()))

        MelMenuItemDiv(parent)
        MelMenuItem(parent,
                    l="Reset",
                    c=lambda *a: guiFactory.resetGuiInstanceOptionVars(
                        self.optionVars))