added autophase; fixes T217

This commit is contained in:
Dominik Demuth
2023-01-07 19:13:13 +01:00
parent 6533754e3a
commit f05d28f6e6
9 changed files with 237 additions and 172 deletions

View File

@ -656,7 +656,8 @@ class SignalContainer(ExperimentContainer):
def _update_actions(self):
super()._update_actions()
self.actions.update({'ph': self._data.manual_phase, 'bls': self._data.baseline_spline})
self.actions.update({'ph': self._data.manual_phase, 'bls': self._data.baseline_spline,
'autoph': self._data.autophase})
if isinstance(self._data, Spectrum):
self.actions.update({'bl': self._data.baseline, 'ls': self._data.shift,
'divide': self._data.divide, 'ft': self.fourier})

View File

@ -81,7 +81,7 @@ class DataTree(QtWidgets.QTreeWidget):
self.update_indexes()
@QtCore.pyqtSlot(QtWidgets.QTreeWidgetItem)
def data_change(self, item: QtWidgets.QTreeWidgetItem) -> Tuple[set, set]:
def data_change(self, item: QtWidgets.QTreeWidgetItem) -> tuple[set, set]:
idd = item.data(0, QtCore.Qt.UserRole)
is_selected = item.checkState(0) == QtCore.Qt.Checked
to_be_hidden = set()
@ -259,7 +259,7 @@ class DataTree(QtWidgets.QTreeWidget):
set_cnt = 0
item.setText(1, f'G[{graph_cnt}]')
else:
item.setText(1, f'G[{graph_cnt}].S[{set_cnt}]')
item.setText(1, f'.S[{set_cnt}]')
set_cnt += 1
iterator += 1

View File

@ -18,8 +18,8 @@ class EditSignalWidget(QtWidgets.QWidget, Ui_Form):
self.apodlist = find_models(apodization)
self.lineEdit.hide()
self.lineEdit.setValidator(QtGui.QDoubleValidator())
self.ls_lineEdit.hide()
self.ls_lineEdit.setValidator(QtGui.QDoubleValidator())
for ap in self.apodlist:
self.apodcombobox.addItem(str(ap().name))
@ -32,8 +32,8 @@ class EditSignalWidget(QtWidgets.QWidget, Ui_Form):
self.leftshiftbutton.clicked.connect(lambda: self.apply_changes('ls'))
self.fourierutton.clicked.connect(lambda: self.apply_changes('ft'))
self.pushButton.clicked.connect(lambda: self.preview_triggered.emit('ap'))
self.pushButton_2.clicked.connect(lambda: self.preview_triggered.emit('ph'))
self.apod_prev_button.clicked.connect(lambda: self.preview_triggered.emit('ap'))
self.phase_prev_button.clicked.connect(lambda: self.preview_triggered.emit('ph'))
@QtCore.pyqtSlot(str)
def apply_changes(self, sender):
@ -41,8 +41,8 @@ class EditSignalWidget(QtWidgets.QWidget, Ui_Form):
self.do_something.emit(sender, tuple())
elif sender == 'ls':
if self.comboBox.currentIndex() == 0:
_nop = int(self.lsspinBox.text())
if self.leftshift_comboBox.currentIndex() == 0:
_nop = int(self.ls_spinBox.text())
stype = 'pts'
else:
try:
@ -54,14 +54,17 @@ class EditSignalWidget(QtWidgets.QWidget, Ui_Form):
elif sender == 'ap':
apodmodel = self.apodlist[self.apodcombobox.currentIndex()]
p = [float(x.text()) for x in self.groupBox_3.findChildren(QtWidgets.QLineEdit)]
p = [float(x.text()) for x in self.apod_box.findChildren(QtWidgets.QLineEdit)]
self.do_something.emit(sender, (p, apodmodel))
elif sender == 'ph':
ph0 = float(self.ph0slider.value())
ph1 = float(self.ph1slider.value())
pvt = float(self.pivot_lineedit.text())
self.do_something.emit(sender, (ph0, ph1, pvt))
if self.autophase_check.isChecked():
self.do_something.emit('autoph', (pvt,))
else:
ph0 = float(self.ph0slider.value())
ph1 = float(self.ph1slider.value())
self.do_something.emit(sender, (ph0, ph1, pvt))
else:
print('You should never reach this by accident.')
@ -69,10 +72,10 @@ class EditSignalWidget(QtWidgets.QWidget, Ui_Form):
@QtCore.pyqtSlot(int, name='on_apodcombobox_currentIndexChanged')
def change_apodization(self, index):
apod_func = self.apodlist[index]
self.label_2.setText(convert(apod_func.equation))
self.apod_name_label.setText(convert(apod_func.equation))
while self.verticalLayout_8.count():
item = self.verticalLayout_8.takeAt(0)
while self.apod_layout.count():
item = self.apod_layout.takeAt(0)
try:
item.widget().deleteLater()
except AttributeError:
@ -80,13 +83,13 @@ class EditSignalWidget(QtWidgets.QWidget, Ui_Form):
for k, v in enumerate(apod_func.params):
widgt = FormWidget(name=v)
self.verticalLayout_8.addWidget(widgt)
self.apod_layout.addWidget(widgt)
@QtCore.pyqtSlot(int, name='on_comboBox_currentIndexChanged')
@QtCore.pyqtSlot(int, name='on_leftshift_comboBox_currentIndexChanged')
def change_ls(self, idx):
if idx:
self.lineEdit.show()
self.lsspinBox.hide()
self.ls_lineEdit.show()
self.ls_spinBox.hide()
else:
self.lineEdit.hide()
self.lsspinBox.show()
self.ls_lineEdit.hide()
self.ls_spinBox.show()

View File

@ -103,7 +103,7 @@ class QPhasedialog(QPreviewDialogs, Ui_SignalEdit):
return float(self.ph0slider.text()), float(self.ph1slider.text()), float(self.pivot_lineedit.text())
def move_line(self, evt):
self.pivot_lineedit.setText(str(int(evt.value())))
self.pivot_lineedit.setText(f'{evt.value():.5g}')
class QApodDialog(QPreviewDialogs, Ui_ApodEdit):