def __init__(self, parent, case, stbar): """ Constructor """ QWidget.__init__(self, parent) Ui_DefineUserScalarsForm.__init__(self) self.setupUi(self) self.case = case self.case.undoStopGlobal() self.mdl = DefineUserScalarsModel(self.case) # tableView self.modelScalars = StandardItemModelScalars(self, self.mdl) self.modelVariance = StandardItemModelVariance(self, self.mdl) self.tableScalars.horizontalHeader().setResizeMode(QHeaderView.Stretch) self.tableVariance.horizontalHeader().setResizeMode(QHeaderView.Stretch) # Delegates delegateLabel = NameDelegate(self.tableScalars) delegateGGDH = GGDHDelegate(self.tableScalars, self.case) delegateVarianceName = VarianceNameDelegate(self.tableVariance) delegateVariance = VarianceDelegate(self.tableVariance) self.tableScalars.setItemDelegateForColumn(0, delegateLabel) self.tableScalars.setItemDelegateForColumn(1, delegateGGDH) self.tableVariance.setItemDelegateForColumn(0, delegateVarianceName) self.tableVariance.setItemDelegateForColumn(1, delegateVariance) # Connections self.connect(self.pushButtonNew, SIGNAL("clicked()"), self.slotAddScalar) self.connect(self.pushButtonDelete, SIGNAL("clicked()"), self.slotDeleteScalar) self.connect(self.modelScalars, SIGNAL("dataChanged(const QModelIndex &, const QModelIndex &)"), self.dataChanged) self.connect(self.pushButtonVarNew, SIGNAL("clicked()"), self.slotAddVariance) self.connect(self.pushButtonVarDelete, SIGNAL("clicked()"), self.slotDeleteVariance) self.connect(self.modelVariance, SIGNAL("dataChanged(const QModelIndex &, const QModelIndex &)"), self.dataChanged) # widget initialization self.tableScalars.reset() self.modelScalars = StandardItemModelScalars(self, self.mdl) self.tableScalars.setModel(self.modelScalars) self.tableVariance.reset() self.modelVariance = StandardItemModelVariance(self, self.mdl) self.tableVariance.setModel(self.modelVariance) l1 = self.mdl.getScalarNameList() for s in self.mdl.getScalarsVarianceList(): if s in l1: l1.remove(s) for name in self.mdl.getThermalScalarName(): self.modelScalars.newItem(name) for name in l1: self.modelScalars.newItem(name) for name in self.mdl.getScalarsVarianceList(): self.modelVariance.newItem(name) self.case.undoStartGlobal()
class DefineUserScalarsView(QWidget, Ui_DefineUserScalarsForm): """ """ def __init__(self, parent, case, stbar, tree): """ Constructor """ QWidget.__init__(self, parent) Ui_DefineUserScalarsForm.__init__(self) self.setupUi(self) self.case = case self.case.undoStopGlobal() self.mdl = DefineUserScalarsModel(self.case) self.browser = tree # tableView self.modelScalars = StandardItemModelScalars(self, self.mdl) self.modelVariance = StandardItemModelVariance(self, self.mdl) if QT_API == "PYQT4": self.tableScalars.horizontalHeader().setResizeMode( QHeaderView.Stretch) self.tableVariance.horizontalHeader().setResizeMode( QHeaderView.Stretch) elif QT_API == "PYQT5": self.tableScalars.horizontalHeader().setSectionResizeMode( QHeaderView.Stretch) self.tableVariance.horizontalHeader().setSectionResizeMode( QHeaderView.Stretch) # Delegates delegateLabel = NameDelegate(self.tableScalars) delegateGGDH = GGDHDelegate(self.tableScalars, self.case) delegateVarianceName = VarianceNameDelegate(self.tableVariance) delegateVariance = VarianceDelegate(self.tableScalars) self.tableScalars.setItemDelegateForColumn(0, delegateLabel) self.tableScalars.setItemDelegateForColumn(1, delegateGGDH) self.tableVariance.setItemDelegateForColumn(0, delegateVarianceName) self.tableVariance.setItemDelegateForColumn(1, delegateVariance) # Connections self.pushButtonNew.clicked.connect(self.slotAddScalar) self.pushButtonDelete.clicked.connect(self.slotDeleteScalar) self.modelScalars.dataChanged.connect(self.dataChanged) self.pushButtonVarNew.clicked.connect(self.slotAddVariance) self.pushButtonVarDelete.clicked.connect(self.slotDeleteVariance) self.modelVariance.dataChanged.connect(self.dataChanged) # widget initialization self.tableScalars.reset() self.modelScalars = StandardItemModelScalars(self, self.mdl) self.tableScalars.setModel(self.modelScalars) self.tableVariance.reset() self.modelVariance = StandardItemModelVariance(self, self.mdl) self.tableVariance.setModel(self.modelVariance) l1 = self.mdl.getScalarNameList() for s in self.mdl.getScalarsVarianceList(): if s in l1: l1.remove(s) for name in self.mdl.getThermalScalarName(): self.modelScalars.newItem(name) for name in l1: self.modelScalars.newItem(name) for name in self.mdl.getScalarsVarianceList(): self.modelVariance.newItem(name) if GroundwaterModel(self.case).getGroundwaterModel() != "off": self.groupBox_3.hide()