| from PyQt5.QtCore import Qt |
| from PyQt5.QtWidgets import (QHBoxLayout, QLabel, QSpinBox, QVBoxLayout, QProgressBar) |
|
|
|
|
| def create_parameter_box(min_val, max_val, text, step=1, callback=None): |
| layout = QHBoxLayout() |
|
|
| dial = QSpinBox() |
| dial.setMaximumHeight(28) |
| dial.setMaximumWidth(150) |
| dial.setMinimum(min_val) |
| dial.setMaximum(max_val) |
| dial.setAlignment(Qt.AlignRight) |
| dial.setSingleStep(step) |
| dial.valueChanged.connect(callback) |
|
|
| label = QLabel(text) |
| label.setAlignment(Qt.AlignRight) |
|
|
| layout.addWidget(label) |
| layout.addWidget(dial) |
|
|
| return dial, layout |
|
|
|
|
| def create_gauge(text): |
| layout = QHBoxLayout() |
|
|
| gauge = QProgressBar() |
| gauge.setMaximumHeight(28) |
| gauge.setMaximumWidth(200) |
| gauge.setAlignment(Qt.AlignCenter) |
|
|
| label = QLabel(text) |
| label.setAlignment(Qt.AlignRight) |
|
|
| layout.addWidget(label) |
| layout.addWidget(gauge) |
|
|
| return gauge, layout |
|
|