class NotesListUI(QDialog): def __init__(self,parent = None,name = None,modal = 0,fl = 0): QDialog.__init__(self,parent,name,modal,fl) if not name: self.setName("NotesListUI") self.notes_table = QTable(self,"notes_table") self.notes_table.setNumCols(self.notes_table.numCols() + 1) self.notes_table.horizontalHeader().setLabel(self.notes_table.numCols() - 1,self.__tr("Name")) self.notes_table.setNumCols(self.notes_table.numCols() + 1) self.notes_table.horizontalHeader().setLabel(self.notes_table.numCols() - 1,self.__tr("Content")) self.notes_table.setGeometry(QRect(20,20,510,360)) self.notes_table.setMinimumSize(QSize(300,0)) self.notes_table.setResizePolicy(QTable.AutoOne) self.notes_table.setVScrollBarMode(QTable.AlwaysOn) self.notes_table.setNumRows(0) self.notes_table.setNumCols(2) LayoutWidget = QWidget(self,"layout7") LayoutWidget.setGeometry(QRect(90,400,377,29)) layout7 = QHBoxLayout(LayoutWidget,5,5,"layout7") self.add_button = QPushButton(LayoutWidget,"add_button") layout7.addWidget(self.add_button) spacer = QSpacerItem(21,21,QSizePolicy.Expanding,QSizePolicy.Minimum) layout7.addItem(spacer) self.edit_button = QPushButton(LayoutWidget,"edit_button") layout7.addWidget(self.edit_button) layout7.addItem(spacer) self.delete_button = QPushButton(LayoutWidget,"delete_button") layout7.addWidget(self.delete_button) layout7.addItem(spacer) self.list_note_button = QPushButton(LayoutWidget,"list_note_button") layout7.addWidget(self.list_note_button) self.languageChange() self.resize(QSize(555,447).expandedTo(self.minimumSizeHint())) self.clearWState(Qt.WState_Polished) def languageChange(self): self.setCaption(self.__tr("Notes")) self.notes_table.horizontalHeader().setLabel(0,self.__tr("Name")) self.notes_table.horizontalHeader().setLabel(1,self.__tr("Content")) self.add_button.setText(self.__tr("New")) self.edit_button.setText(self.__tr("Edit")) self.delete_button.setText(self.__tr("Delete")) self.list_note_button.setText(self.__tr("List Notes")) def __tr(self,s,c = None): return qApp.translate("NotesListUI",s,c)
class Routing(QWidget): """A variable-sized table with sliders, ideal for signal routing purposes. Args: rows (int), columns (int), route to self (bool), Parent (obj) (None),""" def __init__(self, row, col, routeToSelf = True, parent = None,name = None,fl = 0): QWidget.__init__(self,parent,name,fl) if not name: self.setName("Form4") self.routeToSelf = routeToSelf self.empty_cells = [] self.currentvalue = None #holds current slider value self.table1 = QTable(self,"table1") self.table1.setPaletteBackgroundColor(QColor(0,0,0)) self.table1.viewport().setPaletteBackgroundColor(QColor(0,0,0)) self.table1.setResizePolicy(QTable.AutoOne) self.table1.setVScrollBarMode(QTable.AlwaysOff) for r in range(self.table1.numRows()): self.table1.setRowHeight(r, 18) self.table1.setRowStretchable(r, False) pr = Param()#Holding param self.root_param.insertChild(pr) self.params.append(pr) for c in range(self.table1.numCols()): if r == 0: self.table1.setColumnWidth(c, self.columnwidth) if self.routeToSelf is True or r is not c: p = Param(type=float) pr.insertChild(p) self.table1.setCellWidget(r, c, ParamProgress(p, self.table1)) else: #do nothing #self.params[r].append(-1) self.empty_cells.append((r, c)) self.table1.setHScrollBarMode(QTable.AlwaysOff) self.table1.setShowGrid(0) self.table1.setReadOnly(1) self.table1.setSelectionMode(QTable.NoSelection) self.table1.setFocusPolicy(QWidget.NoFocus) self.root_param = Param() self.params = [] #holds all parent Params self.columnwidth = 50 self.setsize(row, col) self.adjustSize() def setsize(self, row, col): """set size of table: row, col Creates a parent Param for every row, with child params for every col. No other adjustments, namings or range settings are done here, but has to be done in the subclass, preferrably after the init of this class.""" self.table1.setNumRows(row) self.table1.setNumCols(col) self.setUpdatesEnabled(False) for r in range(self.table1.numRows()): self.table1.setRowHeight(r, 18) self.table1.setRowStretchable(r, False) pr = Param()#Holding param self.root_param.insertChild(pr) self.params.append(pr) for c in range(self.table1.numCols()): if r == 0: self.table1.setColumnWidth(c, self.columnwidth) if self.routeToSelf is True or r is not c: p = Param(type=float) pr.insertChild(p) self.table1.setCellWidget(r, c, ParamProgress(p, self.table1)) else: #do nothing #self.params[r].append(-1) self.empty_cells.append((r, c)) self.table1.viewport().adjustSize() self.table1.adjustSize() self.setUpdatesEnabled(True) def set_row_labels(self, lust): self.table1.setRowLabels(lust) #self.table1.viewport().adjustSize() self.table1.adjustSize() def set_col_labels(self, lust): self.table1.setColumnLabels(lust) self.table1.setTopMargin(18) #self.table1.viewport().adjustSize() self.table1.adjustSize() def params_reparent(self, parent): for p in self.params: parent.insertChild(p) def set_column_width(self, i): for c in range(self.table1.numCols()): self.table1.setColumnWidth(c, i) self.table1.adjustSize() self.table1.viewport().adjustSize() self.columnwidth = i def set_row_height(self, i): for c in range(self.table1.numRows()): self.table1.setRowHeight(c, i) self.table1.adjustSize() self.table1.viewport().adjustSize() def setlabels(self, row, col): """set labels for headers: row(list), col(list)""" for i, item in enumerate(row): self.table1.verticalHeader().setLabel(i, QString(item)) for i, item in enumerate(col): self.table1.horizontalHeader().setLabel(i, QString(item)) def clear_cell(self, r, c): self.table1.clearCellWidget(r, c) self.table1.setCellWidget(r, c, QFrame()) self.table1.cellWidget(r, c).setPaletteBackgroundColor(QColor(50, 50, 50)) self.empty_cells.append((r, c))
class VulnerabilitiesUi(QDialog): def __init__(self,parent = None,name = None,modal = 0,fl = 0): QDialog.__init__(self,parent,name,modal,fl) if not name: self.setName("VulnerabilitiesUi") self.t_vulns = QTable(self,"t_vulns") self.t_vulns.setNumCols(self.t_vulns.numCols() + 1) self.t_vulns.horizontalHeader().setLabel(self.t_vulns.numCols() - 1,self.__tr("Name")) self.t_vulns.setNumCols(self.t_vulns.numCols() + 1) self.t_vulns.horizontalHeader().setLabel(self.t_vulns.numCols() - 1,self.__tr("Refs")) self.t_vulns.setNumCols(self.t_vulns.numCols() + 1) self.t_vulns.horizontalHeader().setLabel(self.t_vulns.numCols() - 1,self.__tr("Description")) self.t_vulns.setMinimumSize(QSize(700,0)) self.t_vulns.setResizePolicy(QTable.AutoOne) self.t_vulns.setVScrollBarMode(QTable.AlwaysOn) self.t_vulns.setNumRows(0) self.t_vulns.setNumCols(3) LayoutWidget = QWidget(self,"layout7") LayoutWidget.setGeometry(QRect(90,500,450,29)) layout7 = QHBoxLayout(LayoutWidget,5,5,"layout7") self.add_button = QPushButton(LayoutWidget,"add_button") layout7.addWidget(self.add_button) spacer6_2 = QSpacerItem(21,21,QSizePolicy.Expanding,QSizePolicy.Minimum) layout7.addItem(spacer6_2) self.edit_button = QPushButton(LayoutWidget,"edit_button") layout7.addWidget(self.edit_button) spacer6 = QSpacerItem(21,21,QSizePolicy.Expanding,QSizePolicy.Minimum) layout7.addItem(spacer6) self.delete_button = QPushButton(LayoutWidget,"delete_button") layout7.addWidget(self.delete_button) spacer6_3 = QSpacerItem(21,21,QSizePolicy.Expanding,QSizePolicy.Minimum) layout7.addItem(spacer6_3) self.list_note_button = QPushButton(LayoutWidget,"list_note_button") layout7.addWidget(self.list_note_button) spacer7_3 = QSpacerItem(21,21,QSizePolicy.Expanding,QSizePolicy.Minimum) layout7.addItem(spacer7_3) self.manage_evidence_button = QPushButton(LayoutWidget,"manage_evidence_button") layout7.addWidget(self.manage_evidence_button) self.languageChange() self.resize(QSize(733,550).expandedTo(self.minimumSizeHint())) self.clearWState(Qt.WState_Polished) def languageChange(self): self.setCaption(self.__tr("Vulnerability List")) self.t_vulns.horizontalHeader().setLabel(0,self.__tr("Name")) self.t_vulns.horizontalHeader().setLabel(1,self.__tr("Refs")) self.t_vulns.horizontalHeader().setLabel(2,self.__tr("Description")) self.add_button.setText(self.__tr("New")) self.edit_button.setText(self.__tr("Edit")) self.delete_button.setText(self.__tr("Delete")) self.list_note_button.setText(self.__tr("List Notes")) self.manage_evidence_button.setText(self.__tr("Evidence")) def __tr(self,s,c = None): return qApp.translate("VulnerabilitiesUi",s,c)
class PluginSettingsUi(QDialog): def __init__(self,parent = None,name = None,modal = 0,fl = 0): QDialog.__init__(self,parent,name,modal,fl) if not name: self.setName("PluginSettingsUi") self.setSizeGripEnabled(1) PluginSettingsUiLayout = QGridLayout(self,1,1,11,6,"PluginSettingsUiLayout") Layout1 = QHBoxLayout(None,0,6,"Layout1") Horizontal_Spacing2 = QSpacerItem(20,20,QSizePolicy.Expanding,QSizePolicy.Minimum) Layout1.addItem(Horizontal_Spacing2) self.bt_ok = QPushButton(self,"bt_ok") self.bt_ok.setAutoDefault(1) self.bt_ok.setDefault(1) Layout1.addWidget(self.bt_ok) self.bt_cancel = QPushButton(self,"bt_cancel") self.bt_cancel.setAutoDefault(1) Layout1.addWidget(self.bt_cancel) PluginSettingsUiLayout.addMultiCellLayout(Layout1,1,1,0,1) self.lw_plugins = QListView(self,"lw_plugins") self.lw_plugins.addColumn(self.__tr("Plugin")) self.lw_plugins.header().setClickEnabled(0,self.lw_plugins.header().count() - 1) self.lw_plugins.setMinimumSize(QSize(300,0)) self.lw_plugins.setMaximumSize(QSize(300,32767)) self.lw_plugins.setResizePolicy(QListView.AutoOneFit) self.lw_plugins.setResizeMode(QListView.LastColumn) PluginSettingsUiLayout.addWidget(self.lw_plugins,0,0) self.frame3 = QFrame(self,"frame3") self.frame3.setMinimumSize(QSize(330,0)) self.frame3.setFrameShape(QFrame.StyledPanel) self.frame3.setFrameShadow(QFrame.Raised) frame3Layout = QGridLayout(self.frame3,1,1,11,6,"frame3Layout") self.line1 = QFrame(self.frame3,"line1") self.line1.setFrameShape(QFrame.HLine) self.line1.setFrameShadow(QFrame.Sunken) self.line1.setFrameShape(QFrame.HLine) frame3Layout.addWidget(self.line1,3,0) self.t_parameters = QTable(self.frame3,"t_parameters") self.t_parameters.setSelectionMode(QTable.NoSelection) self.t_parameters.setNumCols(self.t_parameters.numCols() + 1) self.t_parameters.horizontalHeader().setLabel(self.t_parameters.numCols() - 1,self.__tr("Value")) self.t_parameters.horizontalHeader().setClickEnabled(False) self.t_parameters.setNumRows(self.t_parameters.numRows() + 1) self.t_parameters.verticalHeader().setLabel(self.t_parameters.numRows() - 1,self.__tr("Default ")) self.t_parameters.setMinimumSize(QSize(300,0)) self.t_parameters.setResizePolicy(QTable.Default) self.t_parameters.setVScrollBarMode(QTable.AlwaysOn) self.t_parameters.setNumRows(1) self.t_parameters.setNumCols(1) self.t_parameters.setSorting(1) frame3Layout.addWidget(self.t_parameters,3,0) layout5 = QHBoxLayout(None,0,6,"layout5") self.label_name = QLabel(self.frame3,"label_name") self.label_name.setMinimumSize(QSize(67,0)) self.label_name.setMaximumSize(QSize(67,32767)) label_name_font = QFont(self.label_name.font()) label_name_font.setBold(1) self.label_name.setFont(label_name_font) layout5.addWidget(self.label_name) self.le_name = QLineEdit(self.frame3,"le_name") self.le_name.setMinimumSize(QSize(250,0)) self.le_name.setReadOnly(1) layout5.addWidget(self.le_name) frame3Layout.addLayout(layout5,0,0) layout6 = QHBoxLayout(None,0,6,"layout6") self.label_version = QLabel(self.frame3,"label_version") self.label_version.setMinimumSize(QSize(67,0)) self.label_version.setMaximumSize(QSize(67,32767)) label_version_font = QFont(self.label_version.font()) label_version_font.setBold(1) self.label_version.setFont(label_version_font) layout6.addWidget(self.label_version) self.le_version = QLineEdit(self.frame3,"le_version") self.le_version.setMinimumSize(QSize(250,0)) self.le_version.setReadOnly(1) layout6.addWidget(self.le_version) frame3Layout.addLayout(layout6,1,0) layout7 = QHBoxLayout(None,0,6,"layout7") self.label_pversion = QLabel(self.frame3,"label_pversion") self.label_pversion.setMinimumSize(QSize(67,0)) self.label_pversion.setMaximumSize(QSize(67,32767)) label_pversion_font = QFont(self.label_pversion.font()) label_pversion_font.setBold(1) self.label_pversion.setFont(label_pversion_font) layout7.addWidget(self.label_pversion) self.le_pversion = QLineEdit(self.frame3,"le_pversion") self.le_pversion.setMinimumSize(QSize(250,0)) self.le_pversion.setReadOnly(1) layout7.addWidget(self.le_pversion) frame3Layout.addLayout(layout7,2,0) PluginSettingsUiLayout.addWidget(self.frame3,0,1) self.languageChange() self.resize(QSize(782,593).expandedTo(self.minimumSizeHint())) self.clearWState(Qt.WState_Polished) self.connect(self.bt_ok,SIGNAL("clicked()"),self.accept) self.connect(self.bt_cancel,SIGNAL("clicked()"),self.reject) def languageChange(self): self.setCaption(self.__tr("Plugin Settings")) self.bt_ok.setText(self.__tr("&OK")) self.bt_ok.setAccel(QKeySequence(QString.null)) self.bt_cancel.setText(self.__tr("&Cancel")) self.bt_cancel.setAccel(QKeySequence(QString.null)) self.lw_plugins.header().setLabel(0,self.__tr("Plugin")) self.t_parameters.horizontalHeader().setLabel(0,self.__tr("Value")) self.t_parameters.verticalHeader().setLabel(0,self.__tr("Default ")) self.label_name.setText(self.__tr("Name:")) self.label_version.setText(self.__tr("Tool:")) self.label_pversion.setText(self.__tr("Plugin:")) def lv_parameters_currentChanged(self,a0): devlog("PluginSettingsUi.lv_parameters_currentChanged(QListViewItem*): Not implemented yet") def __tr(self,s,c = None): return qApp.translate("PluginSettingsUi",s,c)
class VulnerabilitiesUi(QDialog): def __init__(self, parent=None, name=None, modal=0, fl=0): QDialog.__init__(self, parent, name, modal, fl) if not name: self.setName("VulnerabilitiesUi") self.t_vulns = QTable(self, "t_vulns") self.t_vulns.setNumCols(self.t_vulns.numCols() + 1) self.t_vulns.horizontalHeader().setLabel(self.t_vulns.numCols() - 1, self.__tr("Name")) self.t_vulns.setNumCols(self.t_vulns.numCols() + 1) self.t_vulns.horizontalHeader().setLabel(self.t_vulns.numCols() - 1, self.__tr("Refs")) self.t_vulns.setNumCols(self.t_vulns.numCols() + 1) self.t_vulns.horizontalHeader().setLabel(self.t_vulns.numCols() - 1, self.__tr("Description")) self.t_vulns.setMinimumSize(QSize(700, 0)) self.t_vulns.setResizePolicy(QTable.AutoOne) self.t_vulns.setVScrollBarMode(QTable.AlwaysOn) self.t_vulns.setNumRows(0) self.t_vulns.setNumCols(3) LayoutWidget = QWidget(self, "layout7") LayoutWidget.setGeometry(QRect(90, 500, 450, 29)) layout7 = QHBoxLayout(LayoutWidget, 5, 5, "layout7") self.add_button = QPushButton(LayoutWidget, "add_button") layout7.addWidget(self.add_button) spacer6_2 = QSpacerItem(21, 21, QSizePolicy.Expanding, QSizePolicy.Minimum) layout7.addItem(spacer6_2) self.edit_button = QPushButton(LayoutWidget, "edit_button") layout7.addWidget(self.edit_button) spacer6 = QSpacerItem(21, 21, QSizePolicy.Expanding, QSizePolicy.Minimum) layout7.addItem(spacer6) self.delete_button = QPushButton(LayoutWidget, "delete_button") layout7.addWidget(self.delete_button) spacer6_3 = QSpacerItem(21, 21, QSizePolicy.Expanding, QSizePolicy.Minimum) layout7.addItem(spacer6_3) self.list_note_button = QPushButton(LayoutWidget, "list_note_button") layout7.addWidget(self.list_note_button) spacer7_3 = QSpacerItem(21, 21, QSizePolicy.Expanding, QSizePolicy.Minimum) layout7.addItem(spacer7_3) self.manage_evidence_button = QPushButton(LayoutWidget, "manage_evidence_button") layout7.addWidget(self.manage_evidence_button) self.languageChange() self.resize(QSize(733, 550).expandedTo(self.minimumSizeHint())) self.clearWState(Qt.WState_Polished) def languageChange(self): self.setCaption(self.__tr("Vulnerability List")) self.t_vulns.horizontalHeader().setLabel(0, self.__tr("Name")) self.t_vulns.horizontalHeader().setLabel(1, self.__tr("Refs")) self.t_vulns.horizontalHeader().setLabel(2, self.__tr("Description")) self.add_button.setText(self.__tr("New")) self.edit_button.setText(self.__tr("Edit")) self.delete_button.setText(self.__tr("Delete")) self.list_note_button.setText(self.__tr("List Notes")) self.manage_evidence_button.setText(self.__tr("Evidence")) def __tr(self, s, c=None): return qApp.translate("VulnerabilitiesUi", s, c)