예제 #1
0
    def update(self):
        '''update dict with latest edits'''
        #COMPONENT DICT

        #get endlist
        endList = list()
        for index in xrange(0, self.compWidget.endList_listWidget.count()):
            endList.append(
                self.compWidget.endList_listWidget.item(index).text())

        #get side
        if self.compWidget.center_radioButton.isChecked():
            self.side = None
        elif self.compWidget.left_radioButton.isChecked():
            self.side = 'left'
        else:
            self.side = 'right'

        #Get limb Name
        self.limb = self.compWidget.name_lineEdit.text() + naming.getSideName(
            self.side)

        #set component attrs
        self._componentAttrList = [
            str(self.compWidget.startJoint_lineEdit.text()),
            str(self.compWidget.name_lineEdit.text()), self.side, endList
        ]

        #set hier and attach attrs
        self.updateHierarchyAttrs()
        self.updateAttachAttrs()
예제 #2
0
    def assignObject(self):
        ''' fill form based on sender, then update group dict'''
        sender = self.sender()

        #COMPONENT SENDERS
        #start joint, side, name
        if sender is self.compWidget.startJoint_pushButton:
            sel = pm.ls(selection=True)
            if sel:
                self.compWidget.startJoint_lineEdit.setText(sel[0].shortName())
                name = naming.TipName(
                    self.compWidget.startJoint_lineEdit.text())
                self.compWidget.name_lineEdit.setText(name.base)
                if name.isSideLeft():
                    self.compWidget.left_radioButton.setChecked(True)
                    self.side == 'left'
                elif name.isSideRight():
                    self.compWidget.right_radioButton.setChecked(True)
                    self.side = 'right'
                else:
                    self.compWidget.center_radioButton.setChecked(True)
                    self.side = None
                #Get limb Name
                self.limb = self.compWidget.name_lineEdit.text(
                ) + naming.getSideName(self.side)
                self.attachWidget.attrPrefix_lineEdit.setText(self.limb)
        #endList
        elif sender is self.compWidget.endListAdd_pushButton:
            sel = pm.ls(selection=True)

            if sel:
                for item in pm.ls(selection=True):
                    self.compWidget.endList_listWidget.addItem(str(item))
            else:
                self.compWidget.endList_listWidget.addItem()
        elif sender is self.compWidget.endListRemove_pushButton:
            for item in self.compWidget.endList_listWidget.selectedItems():
                self.compWidget.endList_listWidget.takeItem(
                    self.compWidget.endList_listWidget.row(item))
        #aim List
        elif sender is self.compWidget.controlAdd_pushButton:
            sel = pm.ls(selection=True)
            numRows = self.compWidget.controlIndex_tableWidget.rowCount()
            for i, s in enumerate(sel):
                self.compWidget.controlIndex_tableWidget.insertRow(numRows + i)
                self.compWidget.controlIndex_tableWidget.setItem(
                    numRows + i, 0, QtGui.QTableWidgetItem(str(s)))
                self.compWidget.controlIndex_tableWidget.setItem(
                    numRows + i, 1, QtGui.QTableWidgetItem(str(numRows + i)))
        elif sender is self.compWidget.controlRemove_pushButton:
            for item in self.compWidget.controlIndex_tableWidget.selectedItems(
            ):
                self.attachWidget.controlIndex_tableWidget.removeRow(
                    item.row())

        #also excute overridden assign object
        super(AssignNewComponentWidget, self).assignObject(sender)

        #update
        self.update()
    def assignObject(self):
        ''' fill form based on sender, then update group dict'''
        sender = self.sender()

        #COMPONENT SENDERS
        #start joint, side, name
        if sender is self.widget.startJoint_pushButton:
            self.widget.startJoint_lineEdit.setText(self._selectedItem()[0].shortName())
            if self.widget.startJoint_lineEdit.text().find("Lf") > -1:
                self.side = "left"
                self.widget.side_lineEdit.setText("left")
            elif self.widget.startJoint_lineEdit.text().find("Rt") > -1:
                self.side = "right"
                self.widget.side_lineEdit.setText("right")
            else:
                self.side = None
                self.widget.side_lineEdit.clear()
            if self.side:
                self.name = self._selectedItem()[0].split(naming.getSideName(self.side))[0][:-2]
                self.widget.name_lineEdit.setText(self.name)
            else:
                self.name = self._selectedItem()[0].split("_bnd")[0][:-2]
                self.widget.name_lineEdit.setText(self._selectedItem()[0].split("_bnd")[0][:-2])
        elif sender is self.widget.endJoint_pushButton:
            self.widget.endJoint_lineEdit.setText(self._selectedItem()[0].shortName())
        elif sender is self.widget.orient_pushButton:
            self.widget.orient_lineEdit.setText(self._selectedItem()[0].shortName())
        elif sender is self.widget.aim_pushButton:
            self.widget.aim_lineEdit.setText(self._selectedItem()[0].shortName())

        #ATTACH SENDERS
        #driversList
        elif sender is self.widget.addDrivers_pushButton:
            self._addItem(self.widget.driver_listWidget, self._selectedItem())
        elif sender is self.widget.removeDrivers_pushButton:
            self._removeItem(self.widget.driver_listWidget)
        #labelsList
        elif sender is self.widget.addLabels_pushButton:
            self._addItem(self.widget.labels_listWidget, self._selectedItem())
        elif sender is self.widget.removeLabels_pushButton:
            self._removeItem(self.widget.labels_listWidget)

        #Get limb Name
        self.limb = self.widget.name_lineEdit.text() + naming.getSideName(self.side)

        self.update()
    def update(self):
        '''update dict with latest edits'''
        #COMPONENT DICT

        #get endlist
        endList = list()
        for index in xrange(self.compWidget.endList_listWidget.count()):
            endList.append(
                self.compWidget.endList_listWidget.item(index).text())

        #get control shapes and indeces
        parentSwitch = list()
        labels = list()
        numRows = self.compWidget.parentSwitch_tableWidget.rowCount()
        for x in range(0, numRows):
            if self.compWidget.parentSwitch_tableWidget.item(x, 0):
                parentSwitch.append(
                    self.compWidget.parentSwitch_tableWidget.item(x, 0).text())
            if self.compWidget.parentSwitch_tableWidget.item(x, 1):
                labels.append(
                    int(
                        self.compWidget.parentSwitch_tableWidget.item(
                            x, 1).text()))

        #get side
        if self.compWidget.center_radioButton.isChecked():
            self.side = None
        elif self.compWidget.left_radioButton.isChecked():
            self.side = 'left'
        else:
            self.side = 'right'

        #Get limb Name
        self.limb = self.compWidget.name_lineEdit.text() + naming.getSideName(
            self.side)

        #set component attrs
        self._componentAttrList = [
            str(self.compWidget.startJoint_lineEdit.text()),
            str(self.compWidget.name_lineEdit.text()), self.side, endList,
            self.compWidget.pvOffset_doubleSpinBox.value(),
            self.compWidget.pvScale_doubleSpinBox.value(),
            self.compWidget.inverseTop_lineEdit.text(),
            self.compWidget.inversePivot_lineEdit.text(),
            self.compWidget.inversePrefix_lineEdit.text(), parentSwitch, labels
        ]

        #set hier and attach attrs
        self.updateHierarchyAttrs()
        self.updateAttachAttrs()
예제 #5
0
    def update(self):
        '''update dict with latest edits'''
        #COMPONENT DICT

        #get endlist
        endList = list()
        for index in xrange(self.compWidget.endList_listWidget.count()):
            endList.append(
                self.compWidget.endList_listWidget.item(index).text())

        #get control shapes and indeces
        aimJoints = list()
        aimSockets = list()
        numRows = self.compWidget.aim_tabelWidget.rowCount()
        for x in range(0, numRows):
            if self.compWidget.aim_tabelWidget.item(x, 0):
                aimJoints.append(
                    self.compWidget.aim_tabelWidget.item(x, 0).text())
                aimSockets.append(
                    self.compWidget.aim_tabelWidget.item(x, 1).text())

        #get side
        if self.compWidget.center_radioButton.isChecked():
            self.side = None
        elif self.compWidget.left_radioButton.isChecked():
            self.side = 'left'
        else:
            self.side = 'right'

        #Get limb Name
        self.limb = self.compWidget.name_lineEdit.text() + naming.getSideName(
            self.side)

        self._componentAttrList = [
            str(self.compWidget.startJoint_lineEdit.text()),
            str(self.compWidget.name_lineEdit.text()), self.side, endList,
            aimJoints, aimSockets,
            self.compWidget.controlOffset_doubleSpinBox.value(),
            self.compWidget.controlScale_doubleSpinBox.value(),
            self.compWidget.controlStyle_comboBox.currentIndex()
        ]

        self.updateHierarchyAttrs()
        self.updateAttachAttrs()
예제 #6
0
    def assignObject(self):
        ''' fill form based on sender, then update group dict'''
        sender = self.sender()

        #COMPONENT SENDERS
        #start joint, side, name
        if sender is self.compWidget.startJoint_pushButton:
            sel = pm.ls(selection=True)
            if sel:
                self.compWidget.startJoint_lineEdit.setText(sel[0].shortName())
                name = naming.TipName(
                    self.compWidget.startJoint_lineEdit.text())
                self.compWidget.name_lineEdit.setText(name.base)
                if name.isSideLeft():
                    self.side = 'left'
                    self.compWidget.left_radioButton.setChecked(True)
                elif name.isSideRight():
                    self.side = 'right'
                    self.compWidget.right_radioButton.setChecked(True)
                else:
                    self.side = None
                    self.compWidget.center_radioButton.setChecked(True)
                #Get limb Name
                self.limb = self.compWidget.name_lineEdit.text(
                ) + naming.getSideName(self.side)
                self.attachWidget.attrPrefix_lineEdit.setText(self.limb)
        #endList
        elif sender is self.compWidget.nodeListAdd_pushButton:
            for item in pm.ls(selection=True):
                self.compWidget.nodeList_listWidget.addItem(str(item))
        elif sender is self.compWidget.nodeListRemove_pushButton:
            for item in self.compWidget.nodeList_listWidget.selectedItems():
                self.compWidget.nodeList_listWidget.removeItemWidget(item)

        #also excute overridden assign object
        super(AssignNewComponentWidget, self).assignObject(sender)

        #update
        self.update()