Exemplo n.º 1
0
    def tree_item_click(self, item):

        from_node = item.text(0)

        attr_list = cmds.listAttr(str(from_node), userDefined=True)

        self.edit_attrs_table.clear()
        self.add_table_header()
        if attr_list:
            self.edit_attrs_table.setColumnCount(int(len(attr_list)))

            self.edit_attrs_table.setRowCount(1)
            vertical_item = QtGui.QTableWidgetItem()
            vertical_item.setText(from_node)
            self.edit_attrs_table.setVerticalHeaderItem(0, vertical_item)

            for i, attr in enumerate(attr_list):
                item = QtGui.QTableWidgetItem()
                item.setText(attr)
                self.edit_attrs_table.setHorizontalHeaderItem(i, item)

                attr_val = cmds.getAttr('{0}.{1}'.format(from_node, attr))
                value_item = QtGui.QTableWidgetItem()
                value_item.setText(str(attr_val))
                value_item.setData(1, [str(from_node), attr])
                self.edit_attrs_table.setItem(0, i, value_item)
Exemplo n.º 2
0
    def fill_edit_table_tree_widget(self, dicts_list):
        print dicts_list

        self.editTableWidget.setEditTriggers(
            QtGui.QAbstractItemView.AllEditTriggers)
        self.editTableWidget.setAlternatingRowColors(True)
        self.editTableWidget.setSelectionMode(
            QtGui.QAbstractItemView.ExtendedSelection)
        self.editTableWidget.setGridStyle(QtCore.Qt.DashLine)

        self.add_edit_table_tree_widget_header(dicts_list)
        # self.editTableWidget.clear()

        self.editTableWidget.setRowCount(10)
        vertical_item = QtGui.QTableWidgetItem()
        vertical_item.setText('aas')
        self.editTableWidget.setVerticalHeaderItem(0, vertical_item)

        for i, (key, val) in enumerate(sorted(dicts_list.items())):
            item = QtGui.QTableWidgetItem()
            item.setText(key)
            self.editTableWidget.setHorizontalHeaderItem(i, item)

            # attr_val = cmds.getAttr('{0}.{1}'.format(from_node, attr))
            value_item = QtGui.QTableWidgetItem()
            value_item.setText(str(val))
            # value_item.setData(1, [str(from_node), attr])
            self.editTableWidget.setItem(0, i, value_item)
Exemplo n.º 3
0
    def add_table_header(self):
        self.edit_attrs_table.setColumnCount(2)
        item = QtGui.QTableWidgetItem()
        item.setText('Attribute')
        self.edit_attrs_table.setHorizontalHeaderItem(0, item)
        item = QtGui.QTableWidgetItem()
        item.setText('Value')
        self.edit_attrs_table.setHorizontalHeaderItem(1, item)

        self.edit_attrs_table.setRowCount(0)
Exemplo n.º 4
0
    def list_all_attrs(self):
        self.attr_shape_dict = {}

        self.edit_attrs_table.clear()
        rows_count = 0
        col_count = 0
        all_attrs_list = []
        all_nodes_with_attrs = []

        # make lists
        for j in range(self.from_tree.topLevelItemCount()):
            from_item = self.from_tree.topLevelItem(j)
            from_node = from_item.text(0)
            attr_list = cmds.listAttr(str(from_node), userDefined=True)
            if attr_list:
                rows_count += 1
                all_attrs_list.extend(attr_list)
                all_nodes_with_attrs.append(from_node)

        # filling Table
        truncated_attrs_list = set(all_attrs_list)
        col_count = len(truncated_attrs_list)
        self.edit_attrs_table.setRowCount(rows_count)
        self.edit_attrs_table.setColumnCount(col_count)
        for j, node in enumerate(all_nodes_with_attrs):
            vertical_item = QtGui.QTableWidgetItem()
            vertical_item.setText(node)

            self.edit_attrs_table.setVerticalHeaderItem(j, vertical_item)
            attr_list = []
            for i, attr in enumerate(truncated_attrs_list):
                item = QtGui.QTableWidgetItem()
                item.setText(attr)
                self.edit_attrs_table.setHorizontalHeaderItem(i, item)
                exists = cmds.attributeQuery(attr, node=str(node), exists=True)
                if exists:
                    attr_val = cmds.getAttr('{0}.{1}'.format(str(node), attr))

                    value_item = QtGui.QTableWidgetItem()
                    value_item.setText(str(attr_val))
                    value_item.setData(1, [str(node), attr])
                    self.edit_attrs_table.setItem(j, i, value_item)

                    attr_list.append(attr)
            self.attr_shape_dict[str(node)] = attr_list
Exemplo n.º 5
0
    def add_edit_table_tree_widget_header(self, dicts_list):

        self.editTableWidget.setColumnCount(len(dicts_list))

        for i, (key, val) in enumerate(sorted(dicts_list.items())):
            # self.editTableWidget.headerItem().setText(i, key)
            item = QtGui.QTableWidgetItem()
            item.setText(key)
            self.editTableWidget.setHorizontalHeaderItem(i, item)