class LengthInputWidget(QWidget): valueChanged = pyqtSignal(int) lengthUnitChanged = pyqtSignal(LengthUnit) def __init__(self, parent, labelText=None): QWidget.__init__(self, parent) self.setContentsMargins(0, 0, 0, 0) self.setLayout(QHBoxLayout(self)) self.data = dict() self.valueW = IntLineEdit(self) self.unitsW = LengthUnitSelectionComboBox(self) self.unitsW.reload() if labelText is not None: self.layout().addWidget(QLabel(labelText, self)) self.layout().addWidget(self.valueW) self.layout().addWidget(self.unitsW) self.valueW.valueChanged.connect(self.onValueChange) self.unitsW.currentDatasetChanged.connect(self.onUnitActivate) def onValueChange(self, val): self.valueChanged.emit(val) def onUnitActivate(self, val): self.lengthUnitChanged.emit(val) def setValue(self, val, unit): self.valueW.setValue(val) self.unitsW.selectDataset(unit) print self.__class__.__name__, ": ", unit def reload(self): self.unitsW.reload()
def __init__(self, parent): QWidget.__init__(self, parent) self.setLayout(QHBoxLayout(self)) self.strikeW = IntLineEdit(self) self.dipW = IntLineEdit(self) self.strikeW.setRange(0, 360) self.dipW.setRange(0, 90) self.layout().addWidget(self.strikeW) self.layout().addWidget(QLabel("/", self)) self.layout().addWidget(self.dipW) self.strikeW.valueChanged.connect(self.onStrikeChange) self.dipW.valueChanged.connect(self.onDipChange)
def __init__(self, parent, labelText=None): QWidget.__init__(self, parent) self.setContentsMargins(0, 0, 0, 0) self.setLayout(QHBoxLayout(self)) self.data = dict() self.valueW = IntLineEdit(self) self.unitsW = LengthUnitSelectionComboBox(self) self.unitsW.reload() if labelText is not None: self.layout().addWidget(QLabel(labelText, self)) self.layout().addWidget(self.valueW) self.layout().addWidget(self.unitsW) self.valueW.valueChanged.connect(self.onValueChange) self.unitsW.currentDatasetChanged.connect(self.onUnitActivate)
class StrikeDipEditorWidget(QWidget): strikeChanged = pyqtSignal(int) dipChanged = pyqtSignal(int) def __init__(self, parent): QWidget.__init__(self, parent) self.setLayout(QHBoxLayout(self)) self.strikeW = IntLineEdit(self) self.dipW = IntLineEdit(self) self.strikeW.setRange(0, 360) self.dipW.setRange(0, 90) self.layout().addWidget(self.strikeW) self.layout().addWidget(QLabel("/", self)) self.layout().addWidget(self.dipW) self.strikeW.valueChanged.connect(self.onStrikeChange) self.dipW.valueChanged.connect(self.onDipChange) def onStrikeChange(self, v): self.strikeChanged.emit(v) def onDipChange(self, v): self.dipChanged.emit(v) def setValues(self, strike, dip): self.strikeW.setValue(strike) self.dipW.setValue(dip)