def __setupUi(self): layout = QFormLayout() layout.setRowWrapPolicy(QFormLayout.WrapAllRows) layout.setFieldGrowthPolicy(QFormLayout.ExpandingFieldsGrow) self.name_edit = LineEdit(self) self.name_edit.setPlaceholderText(self.tr("untitled")) self.name_edit.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) self.desc_edit = QTextEdit(self) self.desc_edit.setTabChangesFocus(True) layout.addRow(self.tr("Name"), self.name_edit) layout.addRow(self.tr("Description"), self.desc_edit) self.__schemeIsUntitled = True self.setLayout(layout)
class ConfigurationWidget(QWidget): """An abstract configuration widget.""" def __init__(self): QWidget.__init__(self) self.layout = QFormLayout() self.layout.setRowWrapPolicy(QFormLayout.WrapLongRows) self.stateCombo = QComboBox() for state in enums.ert_state_enum.values(): self.stateCombo.addItem(state.name) self.stateCombo.setCurrentIndex(0) self.layout.addRow("State:", self.stateCombo) self.setLayout(self.layout) self.connect(self.stateCombo, SIGNAL("currentIndexChanged(QString)"), self.applyConfiguration) def addRow(self, label, widget): """Add another item to this widget.""" self.layout.addRow(label, widget) def setParameter(self, parameter): """Set the parameter to configure.""" self.parameter = parameter self.applyConfiguration(False) def getState(self): """State is common for all parameters.""" selectedName = str(self.stateCombo.currentText()) return enums.ert_state_enum.resolveName(selectedName) def emitConfigurationChanged(self, emit=True): """Emitted when a sub widget changes the state of the parameter.""" if emit: self.emit(SIGNAL("configurationChanged()")) def applyConfiguration(self, emit=True): """Override! Set the user_data of self.paramater and optionally: emitConfigurationChanged()""" pass
def __init__(self, plot_config): QFrame.__init__(self) self.plot_config = plot_config self.connect(plot_config.signal_handler, SIGNAL('plotConfigChanged(PlotConfig)'), self._fetchValues) layout = QFormLayout() layout.setRowWrapPolicy(QFormLayout.WrapLongRows) self.chk_visible = QCheckBox() layout.addRow("Visible:", self.chk_visible) self.connect(self.chk_visible, SIGNAL('stateChanged(int)'), self._setVisibleState) self.plot_linestyle = QComboBox() self.plot_linestyle.addItems(self.plot_line_styles) self.connect(self.plot_linestyle, SIGNAL("currentIndexChanged(QString)"), self._setLineStyle) layout.addRow("Line style:", self.plot_linestyle) self.plot_marker_style = QComboBox() self.plot_marker_style.addItems(self.plot_marker_styles) self.connect(self.plot_marker_style, SIGNAL("currentIndexChanged(QString)"), self._setMarker) layout.addRow("Marker style:", self.plot_marker_style) self.alpha_spinner = QDoubleSpinBox(self) self.alpha_spinner.setMinimum(0.0) self.alpha_spinner.setMaximum(1.0) self.alpha_spinner.setDecimals(3) self.alpha_spinner.setSingleStep(0.01) self.connect(self.alpha_spinner, SIGNAL('valueChanged(double)'), self._setAlpha) layout.addRow("Blend factor:", self.alpha_spinner) self.color_picker = ColorPicker(plot_config) layout.addRow("Color:", self.color_picker) self.setLayout(layout) self._fetchValues(plot_config)