forked from IPKM/nmreval
dev (#275)
closes issues #267 #274, #255, #256 Co-authored-by: Dominik Demuth <dominik.demuth@physik.tu-darmstadt.de> Reviewed-on: IPKM/nmreval#275
This commit is contained in:
@ -62,6 +62,8 @@ class NMRMainWindow(QtWidgets.QMainWindow, Ui_BaseWindow):
|
||||
self.fitresult_dialog = None
|
||||
self.eval = None
|
||||
self.editor = None
|
||||
self._interpol_dialog = None
|
||||
self.fc_reader = None
|
||||
|
||||
self.logtext = QTextHandler(self)
|
||||
logger.addHandler(self.logtext)
|
||||
@ -233,7 +235,8 @@ class NMRMainWindow(QtWidgets.QMainWindow, Ui_BaseWindow):
|
||||
self.action_norm_first.triggered.connect(lambda: self.management.apply('norm', ('first',)))
|
||||
self.action_norm_last.triggered.connect(lambda: self.management.apply('norm', ('last',)))
|
||||
self.action_norm_area.triggered.connect(lambda: self.management.apply('norm', ('area',)))
|
||||
self.action_cut.triggered.connect(lambda: self.management.cut())
|
||||
self.action_cut_xaxis.triggered.connect(lambda: self.management.cut(True, False))
|
||||
self.action_cut_yaxis.triggered.connect(lambda: self.management.cut(False, True))
|
||||
|
||||
self.actionConcatenate_sets.triggered.connect(lambda: self.management.cat())
|
||||
|
||||
@ -264,14 +267,15 @@ class NMRMainWindow(QtWidgets.QMainWindow, Ui_BaseWindow):
|
||||
|
||||
@QtCore.pyqtSlot(name='on_actionOpen_FC_triggered')
|
||||
def read_fc(self):
|
||||
reader = QFCReader(path=self.path, parent=self)
|
||||
reader.add_graphs(self.management.graphs.list())
|
||||
reader.data_read.connect(self.management.add_new_data)
|
||||
reader.exec()
|
||||
if self.fc_reader is None:
|
||||
self.fc_reader = QFCReader(path=self.path, parent=self)
|
||||
self.fc_reader.data_read.connect(self.management.add_new_data)
|
||||
else:
|
||||
self.fc_reader(path=self.path)
|
||||
self.fc_reader.add_graphs(self.management.graphs.list())
|
||||
self.fc_reader.exec()
|
||||
|
||||
self.path = reader.path
|
||||
|
||||
del reader
|
||||
self.path = self.fc_reader.path
|
||||
|
||||
@QtCore.pyqtSlot(name='on_actionPrint_triggered')
|
||||
def print(self):
|
||||
@ -701,10 +705,13 @@ class NMRMainWindow(QtWidgets.QMainWindow, Ui_BaseWindow):
|
||||
return
|
||||
|
||||
gnames = self.management.graphs.tree()
|
||||
dialog = InterpolDialog(parent=self)
|
||||
dialog.set_data(gnames, self.current_graph_widget.id)
|
||||
dialog.new_data.connect(self.management.interpolate_data)
|
||||
dialog.show()
|
||||
if self._interpol_dialog is None:
|
||||
self._interpol_dialog = InterpolDialog(parent=self)
|
||||
self._interpol_dialog.new_data.connect(self.management.interpolate_data)
|
||||
else:
|
||||
self._interpol_dialog()
|
||||
self._interpol_dialog.set_data(gnames, self.current_graph_widget.id)
|
||||
self._interpol_dialog.show()
|
||||
|
||||
@QtCore.pyqtSlot(name='on_action_calc_triggered')
|
||||
def open_eval_dialog(self):
|
||||
|
@ -450,10 +450,17 @@ class UpperManagement(QtCore.QObject):
|
||||
self.undostack.push(single_undo)
|
||||
self.undostack.endMacro()
|
||||
|
||||
def cut(self):
|
||||
def cut(self, x: bool = False, y: bool = False) -> None:
|
||||
if self.current_graph:
|
||||
xlim, _ = self.graphs[self.current_graph].ranges
|
||||
self.apply('cut', xlim)
|
||||
xlim, ylim = self.graphs[self.current_graph].ranges
|
||||
|
||||
if x is False:
|
||||
xlim = (None, None)
|
||||
|
||||
if y is False:
|
||||
ylim = (None, None)
|
||||
|
||||
self.apply('cut', (*xlim, *ylim))
|
||||
|
||||
@QtCore.pyqtSlot()
|
||||
def unmask(self):
|
||||
|
Reference in New Issue
Block a user