def __init__(self, parameter, parent=None): _ParameterWidget.__init__(self, parameter, parent) # Variables model = _LayerModel() self._material_class = Material # Actions act_add = QAction(getIcon("list-add"), "Add layer", self) act_remove = QAction(getIcon("list-remove"), "Remove layer", self) act_clean = QAction(getIcon('edit-clear'), "Clear", self) # Widgets self._cb_unit = UnitComboBox('m') self._cb_unit.setUnit('um') self._tbl_layers = QTableView() self._tbl_layers.setModel(model) self._tbl_layers.setItemDelegate(_LayerDelegate()) header = self._tbl_layers.horizontalHeader() header.setResizeMode(QHeaderView.Stretch) header.setStyleSheet('color: blue') self._tlb_layers = QToolBar() spacer = QWidget() spacer.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) self._tlb_layers.addWidget(spacer) self._tlb_layers.addAction(act_add) self._tlb_layers.addAction(act_remove) self._tlb_layers.addAction(act_clean) # Layouts layout = QVBoxLayout() layout.setContentsMargins(0, 0, 0, 0) sublayout = QHBoxLayout() sublayout.addStretch() sublayout.addWidget(QLabel('Thickness unit')) sublayout.addWidget(self._cb_unit) layout.addLayout(sublayout) layout.addWidget(self._tbl_layers) layout.addWidget(self._tlb_layers) self.setLayout(layout) # Signals self.valuesChanged.connect(self._onChanged) self.validationRequested.connect(self._onChanged) act_add.triggered.connect(self._onAdd) act_remove.triggered.connect(self._onRemove) act_clean.triggered.connect(self._onClear) self._tbl_layers.doubleClicked.connect(self._onDoubleClicked) model.dataChanged.connect(self.valuesChanged) model.rowsInserted.connect(self.valuesChanged) model.rowsRemoved.connect(self.valuesChanged) self.validationRequested.emit()
def __init__(self, parameter, parent=None): _ParameterWidget.__init__(self, parameter, parent) # Widgets self._txt_lower = MultiNumericalLineEdit() self._txt_upper = MultiNumericalLineEdit() self._cb_unit = AngleComboBox() self._cb_unit.setUnit(u'\u00b0') # Layouts layout = QHBoxLayout() layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(self._txt_lower, 1) layout.addWidget(QLabel("-")) layout.addWidget(self._txt_upper, 1) layout.addWidget(self._cb_unit) self.setLayout(layout) # Signals self.valuesChanged.connect(self._onChanged) self.validationRequested.connect(self._onChanged) self._txt_lower.textChanged.connect(self.valuesChanged) self._txt_upper.textChanged.connect(self.valuesChanged) self._cb_unit.currentIndexChanged.connect(self.valuesChanged) self.validationRequested.emit()
def __init__(self, parameter, parent=None): _ParameterWidget.__init__(self, parameter, parent) # Widgets self._lbl_u = QLabel('u') self._lbl_u.setStyleSheet("color: blue") self._txt_u = MultiNumericalLineEdit() self._lbl_v = QLabel('v') self._lbl_v.setStyleSheet("color: blue") self._txt_v = MultiNumericalLineEdit() self._lbl_w = QLabel('w') self._lbl_w.setStyleSheet("color: blue") self._txt_w = MultiNumericalLineEdit() # Layouts layout = QFormLayout() layout.setContentsMargins(0, 0, 0, 0) if sys.platform == 'darwin': # Fix for Mac OS layout.setFieldGrowthPolicy(QFormLayout.FieldGrowthPolicy.ExpandingFieldsGrow) layout.addRow(self._lbl_u, self._txt_u) layout.addRow(self._lbl_v, self._txt_v) layout.addRow(self._lbl_w, self._txt_w) self.setLayout(layout) # Signals self.valuesChanged.connect(self._onChanged) self.validationRequested.connect(self._onChanged) self._txt_u.textChanged.connect(self.valuesChanged) self._txt_v.textChanged.connect(self.valuesChanged) self._txt_w.textChanged.connect(self.valuesChanged) self.validationRequested.emit()
def __init__(self, parameter, parent=None): _ParameterWidget.__init__(self, parameter, parent) # Widgets self._lbl_x = QLabel('x') self._lbl_x.setStyleSheet("color: blue") self._txt_x = MultiNumericalLineEdit() self._lbl_y = QLabel('y') self._lbl_y.setStyleSheet("color: blue") self._txt_y = MultiNumericalLineEdit() self._lbl_z = QLabel('z') self._lbl_z.setStyleSheet("color: blue") self._txt_z = MultiNumericalLineEdit() self._cb_unit = UnitComboBox(parameter.unit) # Layouts layout = QFormLayout() layout.setContentsMargins(0, 0, 0, 0) if sys.platform == 'darwin': # Fix for Mac OS layout.setFieldGrowthPolicy(QFormLayout.FieldGrowthPolicy.ExpandingFieldsGrow) layout.addRow(self._lbl_x, self._txt_x) layout.addRow(self._lbl_y, self._txt_y) layout.addRow(self._lbl_z, self._txt_z) layout.addRow('Unit', self._cb_unit) self.setLayout(layout) # Signals self.valuesChanged.connect(self._onChanged) self.validationRequested.connect(self._onChanged) self._txt_x.textChanged.connect(self.valuesChanged) self._txt_y.textChanged.connect(self.valuesChanged) self._txt_z.textChanged.connect(self.valuesChanged) self._cb_unit.currentIndexChanged.connect(self.valuesChanged) self.validationRequested.emit()
def __init__(self, parameter, parent=None): _ParameterWidget.__init__(self, parameter, parent) # Widgets self._widgets = {} for particle in sorted(PARTICLES): self._widgets[particle] = QCheckBox(str(particle)) # Layouts layout = QHBoxLayout() layout.setContentsMargins(0, 0, 0, 0) for particle in sorted(self._widgets.keys()): layout.addWidget(self._widgets[particle]) self.setLayout(layout) # Signals self.valuesChanged.connect(self._onChanged) self.validationRequested.connect(self._onChanged) for widget in self._widgets.values(): widget.stateChanged.connect(self.valuesChanged) self.validationRequested.emit()