From 1a225b2cd296274b00bdb632df2c92457e77af23 Mon Sep 17 00:00:00 2001 From: Dominik Demuth Date: Thu, 15 Jun 2023 20:16:42 +0200 Subject: [PATCH] multiselection and check in graph and bdsdialog; part of #82 --- src/gui_qt/_py/bdsdialog.py | 18 +++++++++++------- src/gui_qt/_py/graph.py | 11 +++++++---- src/resources/_ui/bdsdialog.ui | 12 +++++++++++- src/resources/_ui/graph.ui | 10 +++++++++- 4 files changed, 38 insertions(+), 13 deletions(-) diff --git a/src/gui_qt/_py/bdsdialog.py b/src/gui_qt/_py/bdsdialog.py index 3014019..795bff1 100644 --- a/src/gui_qt/_py/bdsdialog.py +++ b/src/gui_qt/_py/bdsdialog.py @@ -1,13 +1,16 @@ # -*- coding: utf-8 -*- -# Form implementation generated from reading ui file 'resources/_ui/bdsdialog.ui' +# Form implementation generated from reading ui file 'src/resources/_ui/bdsdialog.ui' # -# Created by: PyQt5 UI code generator 5.9.2 +# Created by: PyQt5 UI code generator 5.15.9 # -# WARNING! All changes made in this file will be lost! +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. + from PyQt5 import QtCore, QtGui, QtWidgets + class Ui_Dialog(object): def setupUi(self, Dialog): Dialog.setObjectName("Dialog") @@ -16,12 +19,13 @@ class Ui_Dialog(object): self.gridLayout.setContentsMargins(3, 3, 3, 3) self.gridLayout.setSpacing(3) self.gridLayout.setObjectName("gridLayout") - self.listWidget = QtWidgets.QListWidget(Dialog) + self.listWidget = QListWidgetSelect(Dialog) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.MinimumExpanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.listWidget.sizePolicy().hasHeightForWidth()) self.listWidget.setSizePolicy(sizePolicy) + self.listWidget.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection) self.listWidget.setObjectName("listWidget") self.gridLayout.addWidget(self.listWidget, 1, 0, 2, 1) self.groupBox_2 = QtWidgets.QGroupBox(Dialog) @@ -93,8 +97,8 @@ class Ui_Dialog(object): self.gridLayout.addWidget(self.label, 0, 0, 1, 2) self.retranslateUi(Dialog) - self.buttonBox.accepted.connect(Dialog.accept) - self.buttonBox.rejected.connect(Dialog.reject) + self.buttonBox.accepted.connect(Dialog.accept) # type: ignore + self.buttonBox.rejected.connect(Dialog.reject) # type: ignore QtCore.QMetaObject.connectSlotsByName(Dialog) Dialog.setTabOrder(self.freq_button, self.temp_button) Dialog.setTabOrder(self.temp_button, self.eps_checkBox) @@ -117,4 +121,4 @@ class Ui_Dialog(object): self.temp_checkBox.setText(_translate("Dialog", "Meas. temperature")) self.time_checkBox.setText(_translate("Dialog", "Meas. time")) self.label.setText(_translate("Dialog", "Found entries")) - +from ..lib.listwidget import QListWidgetSelect diff --git a/src/gui_qt/_py/graph.py b/src/gui_qt/_py/graph.py index 32e7c0e..8ecac0b 100644 --- a/src/gui_qt/_py/graph.py +++ b/src/gui_qt/_py/graph.py @@ -1,10 +1,11 @@ # -*- coding: utf-8 -*- -# Form implementation generated from reading ui file 'resources/_ui/graph.ui' +# Form implementation generated from reading ui file 'src/resources/_ui/graph.ui' # -# Created by: PyQt5 UI code generator 5.12.3 +# Created by: PyQt5 UI code generator 5.15.9 # -# WARNING! All changes made in this file will be lost! +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. from PyQt5 import QtCore, QtGui, QtWidgets @@ -196,12 +197,13 @@ class Ui_GraphWindow(object): self.gridLayout.setHorizontalSpacing(3) self.gridLayout.setVerticalSpacing(0) self.gridLayout.setObjectName("gridLayout") - self.listWidget = QtWidgets.QListWidget(GraphWindow) + self.listWidget = QListWidgetSelect(GraphWindow) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.MinimumExpanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.listWidget.sizePolicy().hasHeightForWidth()) self.listWidget.setSizePolicy(sizePolicy) + self.listWidget.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection) self.listWidget.setObjectName("listWidget") self.gridLayout.addWidget(self.listWidget, 1, 1, 1, 1) self.checkBox = QtWidgets.QCheckBox(GraphWindow) @@ -272,4 +274,5 @@ class Ui_GraphWindow(object): self.label_6.setText(_translate("GraphWindow", "X Axis")) self.label_7.setText(_translate("GraphWindow", "Y Axis")) self.checkBox.setText(_translate("GraphWindow", "Show legend")) +from ..lib.listwidget import QListWidgetSelect from pyqtgraph import PlotWidget diff --git a/src/resources/_ui/bdsdialog.ui b/src/resources/_ui/bdsdialog.ui index fa275ee..9779e8e 100644 --- a/src/resources/_ui/bdsdialog.ui +++ b/src/resources/_ui/bdsdialog.ui @@ -30,13 +30,16 @@ 3 - + 0 0 + + QAbstractItemView::ExtendedSelection + @@ -207,6 +210,13 @@ + + + QListWidgetSelect + QListWidget +
..lib.listwidget
+
+
freq_button temp_button diff --git a/src/resources/_ui/graph.ui b/src/resources/_ui/graph.ui index 7c829d1..02f573f 100644 --- a/src/resources/_ui/graph.ui +++ b/src/resources/_ui/graph.ui @@ -515,13 +515,16 @@ 0 - + 0 0 + + QAbstractItemView::ExtendedSelection + @@ -554,6 +557,11 @@ QGraphicsView
pyqtgraph
+ + QListWidgetSelect + QListWidget +
..lib.listwidget
+
logx_button