def setupTable(self): try: self.tbl_members.clearContents() self.tbl_members.setRowCount(0) cache = ts3client.ServerCache(self.schid) (err, suid) = ts3lib.getServerVariable(self.schid, ts3defines.VirtualServerProperties.VIRTUALSERVER_UNIQUE_IDENTIFIER) q = self.execSQL("SELECT * FROM '{}|{}'".format(suid, self.cid)) while q.next(): pos = self.tbl_members.rowCount if PluginHost.cfg.getboolean("general", "verbose"): print(pos) self.tbl_members.insertRow(pos) self.tbl_members.setItem(pos, 0, QTableWidgetItem(datetime.utcfromtimestamp(q.value("timestamp")).strftime('%Y-%m-%d %H:%M:%S'))) self.tbl_members.setItem(pos, 1, QTableWidgetItem(q.value("name"))) self.tbl_members.setItem(pos, 2, QTableWidgetItem(q.value("uid"))) self.tbl_members.setItem(pos, 3, QTableWidgetItem(str(q.value("dbid")))) box = QComboBox() box.connect("currentIndexChanged(int index)", self.currentIndexChanged) i = 0 for cgroup in self.cgroups: icon = QIcon(cache.icon(self.cgroups[cgroup]["icon"])) text = "{} ({})".format(self.cgroups[cgroup]["name"], cgroup) box.addItem(icon, text) box.setItemData(i, cgroup) if cgroup == q.value("cgid"): box.setCurrentIndex(i) i += 1 self.tbl_members.setCellWidget(pos, 4, box) self.tbl_members.setItem(pos, 5, QTableWidgetItem("{} ({})".format(q.value("invokername"), q.value("INVOKERUID")))) except: ts3lib.logMessage(format_exc(), ts3defines.LogLevel.LogLevel_ERROR, "pyTSon", 0)
def updateMaterialTab(self, ent): #ent = self.controller.active if ent is not None: self.clearDialogForm() qprim = ent.prim mats = qprim.Materials for i in range(len(mats)): index = str(i) tuple = mats[index] line = lines.UUIDEditLine(self.controller) line.update_text(tuple[1]) line.name = index asset_type = tuple[0] combobox = QComboBox() for text in PRIMTYPES.itervalues(): combobox.addItem(text) if PRIMTYPES.has_key(asset_type): realIndex = combobox.findText(PRIMTYPES[asset_type]) combobox.setCurrentIndex(realIndex) applyButton = self.getButton("materialApplyButton", self.ICON_OK, line, line.applyAction) cancelButton = self.getButton("materialCancelButton", self.ICON_CANCEL, line, line.cancelAction) line.index = index line.combobox = combobox line.connect('textEdited(QString)', applyButton.lineValueChanged) line.connect('textEdited(QString)', cancelButton.lineValueChanged) box = QHBoxLayout() box.addWidget(line) box.addWidget(applyButton) box.addWidget(cancelButton) self.materialTabFormWidget.materialFormLayout.addRow( combobox, box)
def updateMaterialTab(self, ent): #ent = self.controller.active if ent is not None: self.clearDialogForm() qprim = ent.prim mats = qprim.Materials #print mats#, r.formwidget.formLayout.children() #for tuple in sorted(mats.itervalues()): for i in range(len(mats)): index = str(i) tuple = mats[index] line = lines.UUIDEditLine(self.controller)#QLineEdit() line.update_text(tuple[1]) line.name = index asset_type = tuple[0] combobox = QComboBox() for text in PRIMTYPES.itervalues(): combobox.addItem(text) if PRIMTYPES.has_key(asset_type): realIndex = combobox.findText(PRIMTYPES[asset_type]) #print realIndex, asset_type, PRIMTYPES[asset_type] combobox.setCurrentIndex(realIndex) applyButton = self.getButton("materialApplyButton", self.ICON_OK, line, line.applyAction) cancelButton = self.getButton("materialCancelButton", self.ICON_CANCEL, line, line.cancelAction) line.index = index line.combobox = combobox line.connect('textEdited(QString)', applyButton.lineValueChanged) line.connect('textEdited(QString)', cancelButton.lineValueChanged) box = QHBoxLayout() box.addWidget(line) box.addWidget(applyButton) box.addWidget(cancelButton) self.materialTabFormWidget.materialFormLayout.addRow(combobox, box) self.tabwidget.setTabEnabled(1, True)