def __init__(self, parent, model): super(cTestsuiteView, self).__init__(parent) self.mapper = QtGui.QDataWidgetMapper() self.mapper.setModel(model) layout = QtGui.QGridLayout() self.setLayout(layout) layout.addWidget(QtGui.QLabel(nafdb.getColumnDisplayName("testsuites", "title")), 0, 0) layout.addWidget(QtGui.QLabel(nafdb.getColumnDisplayName("testsuites", "id")), 1, 0) layout.addWidget(QtGui.QLabel(nafdb.getColumnDisplayName("testsuites", "keywords")), 2, 0) layout.addWidget(QtGui.QLabel(nafdb.getColumnDisplayName("testsuites", "description"), alignment=Qt.AlignTop), 3, 0) layout.addWidget(QtGui.QLabel(nafdb.getColumnDisplayName("testsuites", "execorder")), 4, 0) ledId = QtGui.QSpinBox(self, maximum=sys.maxint) ledId.setReadOnly(True) # id is always read only ledTitle = QtGui.QLineEdit(self, readOnly=True) ledKeywords = QtGui.QLineEdit(self, readOnly=True) tedDescription = _oatr_commons.getTextViewer(self) ledExecorder = QtGui.QLineEdit(self, readOnly=True) # addWidget(widget, fromRow, fromColumn, rowSpan, columnSpan, alignment) layout.addWidget(ledTitle, 0, 1, 1, 1) layout.addWidget(ledId, 1, 1, 1, 1) layout.addWidget(ledKeywords, 2, 1, 1, 1) layout.addWidget(tedDescription, 3, 1, 1, 1) layout.addWidget(ledExecorder, 4, 1, 1, 1) layout.setColumnStretch(1, 1) layout.setRowStretch(3, 2) self.mapper.addMapping(ledId, model.fieldIndex('id')) self.mapper.addMapping(ledTitle, model.fieldIndex('title')) self.mapper.addMapping(ledKeywords, model.fieldIndex('keywords')) self.mapper.addMapping(tedDescription, model.fieldIndex('description')) self.mapper.addMapping(ledExecorder, model.fieldIndex('execorder'))
def updateView(self, data): try: itemList = json.loads(data) except: return for label, col in zip([self.tr('Old value'), self.tr('New value')], [1, 2]): lbl = QtGui.QLabel(label) lbl.setStyleSheet("font-weight: bold; background-color:rgba(255, 10, 10, 10%); border-style: outset; border-width:2px; border-color:#909090;") self.layout().addWidget(lbl, 0, col, alignment=Qt.AlignTop) row = 1 for item in itemList: for field, col in zip(['old', 'new'], [1, 2]): if self._isHtml(item['old']) or self._isHtml(item['new']): widget = _naf_textviewer.cTextEditor(self, readOnly=True) widget.setImageProvider(_imageProvider) QtGui.QTextEdit(readOnly=True) widget.setHtml(item[field]) alignment=Qt.AlignTop else: widget = QtGui.QLineEdit() widget.setText(unicode(item[field])) alignment=Qt.AlignVCenter self.layout().addWidget(widget, row, col, alignment=Qt.AlignTop) if item.has_key('table'): # this key is available in version 0.3.1 and newer s = nafdb.getColumnDisplayName(item['table'], item['column']) else: s = item['column'] self.layout().addWidget(QtGui.QLabel(s, alignment=alignment), row, 0) row = row + 1 self.layout().addItem(QtGui.QSpacerItem(1,1, 1, -1), row, 0)
def setHeader(self): self.horizontalHeader().setStretchLastSection(True) for section in range(self.model().columnCount()): coltitle = unicode(self.model().headerData( section, Qt.Horizontal).toString()) self.model().setHeaderData( section, Qt.Horizontal, nafdb.getColumnDisplayName('testsuites', coltitle))
def setEditItem(self, tableName, columnName, itemId): ##print "setEditItem", tableName, columnName, itemId self.tableName = tableName self.columnName = columnName self.itemId = itemId title = nafdb.getItemForId(tableName, itemId, "title") columnDisplayName = nafdb.getColumnDisplayName(tableName, columnName) self.setTitleFunc(itemId, title, columnDisplayName) self.textEdit.setHtml(nafdb.getItemForId(tableName, itemId, columnName) or "")
def __init__(self, parent, model): super(cTestsuiteView, self).__init__(parent) self.mapper = QtGui.QDataWidgetMapper() self.mapper.setModel(model) layout = QtGui.QGridLayout() self.setLayout(layout) layout.addWidget( QtGui.QLabel(nafdb.getColumnDisplayName("testsuites", "title")), 0, 0) layout.addWidget( QtGui.QLabel(nafdb.getColumnDisplayName("testsuites", "id")), 1, 0) layout.addWidget( QtGui.QLabel(nafdb.getColumnDisplayName("testsuites", "keywords")), 2, 0) layout.addWidget( QtGui.QLabel(nafdb.getColumnDisplayName("testsuites", "description"), alignment=Qt.AlignTop), 3, 0) layout.addWidget( QtGui.QLabel(nafdb.getColumnDisplayName("testsuites", "execorder")), 4, 0) ledId = QtGui.QSpinBox(self, maximum=sys.maxint) ledId.setReadOnly(True) # id is always read only ledTitle = QtGui.QLineEdit(self, readOnly=True) ledKeywords = QtGui.QLineEdit(self, readOnly=True) tedDescription = _oatr_commons.getTextViewer(self) ledExecorder = QtGui.QLineEdit(self, readOnly=True) # addWidget(widget, fromRow, fromColumn, rowSpan, columnSpan, alignment) layout.addWidget(ledTitle, 0, 1, 1, 1) layout.addWidget(ledId, 1, 1, 1, 1) layout.addWidget(ledKeywords, 2, 1, 1, 1) layout.addWidget(tedDescription, 3, 1, 1, 1) layout.addWidget(ledExecorder, 4, 1, 1, 1) layout.setColumnStretch(1, 1) layout.setRowStretch(3, 2) self.mapper.addMapping(ledId, model.fieldIndex('id')) self.mapper.addMapping(ledTitle, model.fieldIndex('title')) self.mapper.addMapping(ledKeywords, model.fieldIndex('keywords')) self.mapper.addMapping(tedDescription, model.fieldIndex('description')) self.mapper.addMapping(ledExecorder, model.fieldIndex('execorder'))
def setEditItem(self, tableName, columnName, itemId): ##print "setEditItem", tableName, columnName, itemId self.tableName = tableName self.columnName = columnName self.itemId = itemId title = nafdb.getItemForId(tableName, itemId, 'title') columnDisplayName = nafdb.getColumnDisplayName(tableName, columnName) self.setTitleFunc(itemId, title, columnDisplayName) self.textEdit.setHtml( nafdb.getItemForId(tableName, itemId, columnName) or '')
def updateView(self, data): try: itemList = json.loads(data) except: return for label, col in zip( [self.tr('Old value'), self.tr('New value')], [1, 2]): lbl = QtGui.QLabel(label) lbl.setStyleSheet( "font-weight: bold; background-color:rgba(255, 10, 10, 10%); border-style: outset; border-width:2px; border-color:#909090;" ) self.layout().addWidget(lbl, 0, col, alignment=Qt.AlignTop) row = 1 for item in itemList: for field, col in zip(['old', 'new'], [1, 2]): if self._isHtml(item['old']) or self._isHtml(item['new']): widget = _naf_textviewer.cTextEditor(self, readOnly=True) widget.setImageProvider(_imageProvider) QtGui.QTextEdit(readOnly=True) widget.setHtml(item[field]) alignment = Qt.AlignTop else: widget = QtGui.QLineEdit() widget.setText(unicode(item[field])) alignment = Qt.AlignVCenter self.layout().addWidget(widget, row, col, alignment=Qt.AlignTop) if item.has_key('table'): # this key is available in version 0.3.1 and newer s = nafdb.getColumnDisplayName(item['table'], item['column']) else: s = item['column'] self.layout().addWidget(QtGui.QLabel(s, alignment=alignment), row, 0) row = row + 1 self.layout().addItem(QtGui.QSpacerItem(1, 1, 1, -1), row, 0)
def setHeader(self): self.horizontalHeader().setStretchLastSection(True) for section in range(self.model().columnCount()): coltitle = unicode(self.model().headerData(section, Qt.Horizontal).toString()) self.model().setHeaderData(section, Qt.Horizontal, nafdb.getColumnDisplayName('testsuites', coltitle))