diff --git a/src/View/Geometry/Profile/Plot.py b/src/View/Geometry/Profile/Plot.py index 6fc5b40aefa577b853df266195663adea1648a08..85bb19b5e82c5ce99ec141344ad9c8b0704fe0ed 100644 --- a/src/View/Geometry/Profile/Plot.py +++ b/src/View/Geometry/Profile/Plot.py @@ -121,3 +121,4 @@ class Plot(APlot): @timer def update(self, ind=None): print("TODO: implemente update") + self.draw() diff --git a/src/View/Geometry/Profile/ProfileWindow.py b/src/View/Geometry/Profile/ProfileWindow.py index a7268790f638c1b7dffc966c0bf0761ad8789286..fb59d7d145165660b50710d9fd6092b1610dbef4 100644 --- a/src/View/Geometry/Profile/ProfileWindow.py +++ b/src/View/Geometry/Profile/ProfileWindow.py @@ -38,15 +38,12 @@ class ProfileWindow(QMainWindow): self.setup_connections() self.plot() - self._model.dataChanged.connect(self.plot) + self._model.dataChanged.connect(self.update_plot) self.fileName = None - self.ui.tableView.installEventFilter(self) - self.status_change_tableview = False - + # self.ui.tableView.installEventFilter(self) # self._model.dataChanged.connect(self.tableview_is_modified) - self.reference_data = None # self.ui.btn_go_back.setEnabled(False) # self.ui.btn_check.setEnabled(False) # self._model.dataChanged.connect(self.set_enable_cancel_btn) @@ -89,7 +86,6 @@ class ProfileWindow(QMainWindow): self.ui.tableView.setModel(self._model) self.ui.tableView.setItemDelegate(Delegate()) - @timer def plot(self): self.ui.tableView.model().blockSignals(True) @@ -103,6 +99,14 @@ class ProfileWindow(QMainWindow): self.ui.tableView.model().blockSignals(False) + def update_plot(self): + self.ui.tableView.model().blockSignals(True) + + # TODO: Do not rebuild all graph + self._plot.update() + + self.ui.tableView.model().blockSignals(False) + def insert_row(self): if len(self.ui.tableView.selectedIndexes()) == 0: @@ -125,19 +129,19 @@ class ProfileWindow(QMainWindow): def sort_X_ascending(self): self._model.sort('x', order=Qt.AscendingOrder) - self.plot() + self.update_plot() def sort_X_descending(self): self._model.sort('x', order=Qt.DescendingOrder) - self.plot() + self.update_plot() def sort_Y_ascending(self): self._model.sort('y', order=Qt.AscendingOrder) - self.plot() + self.update_plot() def sort_Y_descending(self): self._model.sort('y', order=Qt.DescendingOrder) - self.plot() + self.update_plot() def move_row_down(self): rows = list( @@ -150,7 +154,7 @@ class ProfileWindow(QMainWindow): if row < self._model.rowCount() - 1: self._model.moveRowDown(row) - self.plot() + self.update_plot() def move_row_up(self): rows = list( @@ -163,7 +167,7 @@ class ProfileWindow(QMainWindow): if 0 < row: self._model.moveRowUp(row) - self.plot() + self.update_plot() def handleSave(self): if self.fileName is None or self.fileName == '':