def __init__(self, materialData): self.materialData = materialData uiPath = os.path.join(os.path.dirname(os.path.abspath(__file__)), "ui") uiFileName = os.path.join(uiPath, "SingleMaterialEditorWidget.ui") l = QtUiTools.QUiLoader() l.setWorkingDirectory(QtCore.QDir(uiPath)) self.ui = l.load(QtCore.QFile(str(uiFileName))) findChild = lambda name: self.ui.findChild(PythonQt.QtCore.QObject, name) self.scriptTextEditor = findChild("scriptTextEdit") self.highlighter = PythonHighlighter.PythonHighlighter(self.scriptTextEditor) self.scriptTextEditor.setText(materialData.scriptData) self.scriptTextEditor.connect('textChanged()', self.saveScriptText) self.helpButton = findChild("helpButton") self.helpButton.connect('clicked(bool)', self.showHelpTooltip) self.inputVariableComboBox = findChild("inputVariableComboBox") self.inputVariableComboBox.setCurrentIndex(self.materialData.tableData.inputVariableType) self.inputVariableComboBox.connect('currentIndexChanged(int)', self.setInputVariableType) self.representationComboBox = findChild("representationComboBox") self.customMaterialFrame = findChild("customMaterialFrame") self.overrideCheckBox = findChild("overrideCheckBox") if materialData.representation == RepresentationType.Constant: self.customMaterialFrame.hide() else: self.overrideCheckBox.setChecked(True) self.representationComboBox.setCurrentIndex(materialData.representation) self.overrideCheckBox.connect('toggled(bool)', self.enableRepresentationOverride) self.representationComboBox.connect('currentIndexChanged(int)', self.setRepresentationByComboBoxIndex) self.materialNameLineEdit = findChild("materialNameLineEdit") self.materialNameLineEdit.setText(materialData.name) self.tableWidget = findChild("tableWidget") findChild("addRowBeforeButton").connect('clicked(bool)', self.addRowBefore) findChild("addRowAfterButton").connect('clicked(bool)', self.addRowAfter) findChild("removeRowsButton").connect('clicked(bool)', self.removeRows) findChild("loadTableButton").connect('clicked(bool)', self.loadTableFromFile) findChild("saveTableButton").connect('clicked(bool)', self.saveTableToFile) class DoubleValueDelegate(QtGui.QItemDelegate): def createEditor(self, parent, option, index): le = QtGui.QLineEdit(parent) le.setValidator(QtGui.QDoubleValidator(le)) return le self.doubleValueDelegate = DoubleValueDelegate() self.tableWidget.setItemDelegate(self.doubleValueDelegate) self.fillingTable = False self.fillTableFromData() self.tableWidget.model().connect('dataChanged(QModelIndex, QModelIndex)', self.fillDataFromTable) self.tableWidget.model().connect('rowsRemoved(QModelIndex, int, int)', self.fillDataFromTable)
def __init__(self, netlistBC): self.netlistBC = netlistBC uiPath = os.path.join(os.path.dirname(os.path.abspath(__file__)), "ui") uiFileName = os.path.join(uiPath, "NetlistBCEditorWidget.ui") l = QtUiTools.QUiLoader() l.setWorkingDirectory(QtCore.QDir(uiPath)) self.ui = l.load(QtCore.QFile(str(uiFileName))) netlistEditorLaunchButton = self.ui.findChild(PythonQt.QtCore.QObject, "launchEditorButton") netlistEditorLaunchButton.connect('clicked(bool)', self.launchEditor) netlistLoadFileButton = self.ui.findChild(PythonQt.QtCore.QObject, "loadCircuitButton") netlistLoadFileButton.connect('clicked(bool)', self.loadCircuit) netlistLoadScriptButton = self.ui.findChild(PythonQt.QtCore.QObject, "loadAdjustmentScriptButton") netlistLoadScriptButton.connect('clicked(bool)', self.loadAdjustmentScript) netlistLoadAdditionalDatFileButton = self.ui.findChild(PythonQt.QtCore.QObject, "loadDataFileButton") netlistLoadAdditionalDatFileButton.connect('clicked(bool)', self.loadAdditionalDatFile) removeButton = self.ui.findChild(PythonQt.QtCore.QObject, "removeButton") removeButton.connect('clicked(bool)', self.removeSelected) self.fileContentsViewer = self.ui.findChild(PythonQt.QtCore.QObject, "scriptContestTextEdit") self.scriptListTable = self.ui.findChild(PythonQt.QtCore.QObject, "scriptListTable") self.scriptListTable.connect('currentCellChanged(int, int, int, int)', self.showContents) self.recreateSavedState()