diff --git a/src/View/Geometry/PlotKPZ.py b/src/View/Geometry/PlotKPZ.py index fb72c5d5d27bd01bfaa06c68853c12bff9fde061..eed3542b99d07aa42a81361ffd260513620d5d60 100644 --- a/src/View/Geometry/PlotKPZ.py +++ b/src/View/Geometry/PlotKPZ.py @@ -85,15 +85,15 @@ class PlotKPZ(PamhyrPlot): ) if ind in rows: rows.remove(ind) - self._select_in_table(rows) else: - self._select_in_table(rows+[ind]) + rows.append(ind) + self._select_in_table(rows) elif modifiers == Qt.ShiftModifier: - rows = list( + rows = sorted(list( set( (i.row() for i in self.parent.tableView.selectedIndexes()) ) - ) + )) if len(rows) > 0: i1 = min(rows[0], rows[-1], ind) i2 = max(rows[0], rows[-1], ind) @@ -102,7 +102,7 @@ class PlotKPZ(PamhyrPlot): i2 = ind self._select_range_in_table(i1, i2) else: - self.parent.select_row_profile_slider(ind) + self._select_in_table([ind]) self.parent._table.blockSignals(False) return diff --git a/src/View/Geometry/PlotXY.py b/src/View/Geometry/PlotXY.py index c4a7cde47af409d34e945fb521162b03cae79ffa..548b7ee048ea7551842527ecefb4b3f9527469c9 100644 --- a/src/View/Geometry/PlotXY.py +++ b/src/View/Geometry/PlotXY.py @@ -98,7 +98,7 @@ class PlotXY(PamhyrPlot): i2 = ind self._select_range_in_table(i1, i2) else: - self.parent.select_row_profile_slider(ind) + self._select_in_table([ind]) self._table.blockSignals(False) return diff --git a/src/View/Geometry/Window.py b/src/View/Geometry/Window.py index 0f3891ca2b8e9ec6411035e4fbba1f9119bd8944..dad1a29fac63e8fdc3ac40b3c3cabd046482a6c4 100644 --- a/src/View/Geometry/Window.py +++ b/src/View/Geometry/Window.py @@ -36,7 +36,7 @@ from PyQt5.QtCore import ( from PyQt5.QtWidgets import ( QApplication, QMainWindow, QFileDialog, QCheckBox, QUndoStack, QShortcut, QTableView, QHeaderView, - QAction, QSlider, QPushButton, QVBoxLayout, + QAction, QPushButton, QVBoxLayout, QLabel, QAbstractItemView, ) @@ -97,7 +97,7 @@ class GeometryWindow(PamhyrWindow): self.setup_plots() self.setup_statusbar() self.setup_connections() - self.changed_slider_value() + #self.changed_slider_value() def setup_table(self): table_headers = self._trad.get_dict("table_headers") @@ -201,13 +201,6 @@ class GeometryWindow(PamhyrWindow): self.find(QAction, action)\ .triggered.connect(actions[action]) - self.find(QSlider, "verticalSlider").valueChanged.connect( - self.changed_slider_value) - self.find(QPushButton, "pushButton_up").clicked.connect( - self.decrement_value_slider) - self.find(QPushButton, "pushButton_down").clicked.connect( - self.increment_value_slider) - # Profile selection when line change in table self.find(QTableView, "tableView").selectionModel()\ .selectionChanged\ @@ -228,7 +221,6 @@ class GeometryWindow(PamhyrWindow): self._plot_ac.draw() self.select_current_profile() - self.changed_slider_value() if propagate: self._propagate_update(key=Modules.GEOMETRY) @@ -439,26 +431,11 @@ class GeometryWindow(PamhyrWindow): self._plot_ac.update() self.tableView.model().blockSignals(False) - def select_row_profile_slider(self, ind: int = 0): - if self.tableView is not None: - selectionModel = self.tableView.selectionModel() - index = self.tableView.model().index(ind, 0) - - selectionModel.select( - index, - QItemSelectionModel.Rows | - QItemSelectionModel.ClearAndSelect | - QItemSelectionModel.Select - ) - - self.tableView.scrollTo(index) - def select_current_profile(self): self.tableView.model().blockSignals(True) row = self.index_selected_row() if row is not None: - self.find(QSlider, "verticalSlider").setValue(row) self.select_plot_xy(row) self.select_plot_kpc(row) self.select_plot_ac(row) @@ -469,33 +446,6 @@ class GeometryWindow(PamhyrWindow): self.tableView.model().blockSignals(False) - def changed_slider_value(self): - self.tableView.model().blockSignals(True) - - if self._table.rowCount() != 0: - slider = self.find(QSlider, "verticalSlider") - slider.setMaximum(self._table.rowCount() - 1) - - slider_value = slider.value() - kp = self._reach.profile(slider_value).kp - - self.select_plot_xy(slider_value) - self.select_plot_kpc(slider_value) - self.select_row_profile_slider(slider_value) - self.update_statusbar() - - self.tableView.model().blockSignals(False) - - def increment_value_slider(self): - slider = self.find(QSlider, "verticalSlider") - if 0 <= slider.value() < self._table.rowCount() - 1: - slider.setValue(slider.value() + 1) - - def decrement_value_slider(self): - slider = self.find(QSlider, "verticalSlider") - if 0 < slider.value() < self._table.rowCount(): - slider.setValue(slider.value() - 1) - def add(self): if len(self.tableView.selectedIndexes()) == 0: self._table.add(self._table.rowCount()) @@ -528,13 +478,13 @@ class GeometryWindow(PamhyrWindow): def sort_ascending(self): self._table.sort_profiles(False) self.select_current_profile() - self.changed_slider_value() + #self.changed_slider_value() def sort_descending(self): self._table.sort_profiles(True) self.select_current_profile() - self.changed_slider_value() + #self.changed_slider_value() def move_up(self): row = self.index_selected_row() diff --git a/src/View/ui/GeometryReach.ui b/src/View/ui/GeometryReach.ui index a124c8995c092ec823b9959b9dfc0a84b4699617..ceda44502daed61bc26069bf526f70b9f856ddd7 100644 --- a/src/View/ui/GeometryReach.ui +++ b/src/View/ui/GeometryReach.ui @@ -28,49 +28,6 @@ <item> <widget class="QTableView" name="tableView"/> </item> - <item> - <layout class="QVBoxLayout" name="verticalLayout_5"> - <item> - <widget class="QPushButton" name="pushButton_up"> - <property name="text"> - <string/> - </property> - <property name="icon"> - <iconset> - <normaloff>ressources/up.png</normaloff>ressources/up.png</iconset> - </property> - </widget> - </item> - <item> - <layout class="QHBoxLayout" name="horizontalLayout_2"> - <item> - <widget class="QSlider" name="verticalSlider"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="invertedAppearance"> - <bool>true</bool> - </property> - <property name="invertedControls"> - <bool>true</bool> - </property> - </widget> - </item> - </layout> - </item> - <item> - <widget class="QPushButton" name="pushButton_down"> - <property name="text"> - <string/> - </property> - <property name="icon"> - <iconset> - <normaloff>ressources/down.png</normaloff>ressources/down.png</iconset> - </property> - </widget> - </item> - </layout> - </item> </layout> </widget> <widget class="QSplitter" name="splitter_2">