From 6524c6afde9715b8146d9e1d7e781f241d17b31c Mon Sep 17 00:00:00 2001 From: Jan Grewe Date: Mon, 8 Mar 2021 23:53:05 +0100 Subject: [PATCH] flake8 --- blipblop/constants.py | 6 +- blipblop/ui/filescreen.py | 142 ----------------------------------- blipblop/ui/resultsscreen.py | 17 ++--- blipblop/ui/startscreen.py | 18 ++--- 4 files changed, 20 insertions(+), 163 deletions(-) delete mode 100644 blipblop/ui/filescreen.py diff --git a/blipblop/constants.py b/blipblop/constants.py index f3115f6..c4822bd 100644 --- a/blipblop/constants.py +++ b/blipblop/constants.py @@ -12,7 +12,7 @@ while it.hasNext(): name = it.next() if "sounds/" in name: SNDS_DICT[name.split("/")[-1]] = "qrc" + name - +print(SNDS_DICT) organization_name = "de.uni-tuebingen.neuroetho" application_name = "BlipBlop" application_version = 0.1 @@ -32,7 +32,8 @@ for icon in ICONS_PATHS: def get_sound(name): if name in SNDS_DICT.keys(): - return QMediaContent(QUrl(SNDS_DICT[name])) + url = QUrl(SNDS_DICT[name]) + return QMediaContent(url) else: print("Sound %s not found!" % name) return None @@ -43,4 +44,3 @@ def get_icon(name): return QIcon(ICON_DICT[name]) else: return QIcon("blipblop_logo.png") - diff --git a/blipblop/ui/filescreen.py b/blipblop/ui/filescreen.py deleted file mode 100644 index 8ea6c98..0000000 --- a/blipblop/ui/filescreen.py +++ /dev/null @@ -1,142 +0,0 @@ -from PyQt5.QtWidgets import QComboBox, QFrame, QGroupBox, QHBoxLayout, QLabel, QSplitter, QTextEdit, QVBoxLayout, QWidget -from PyQt5.QtCore import QItemSelectionModel, Qt - -from nixview.util.file_handler import FileHandler -from nixview.util.descriptors import ItemDescriptor -import nixview.communicator as comm -import nixview.constants as cnst -from nixview.data_models.tree_model import NixTreeView, TreeModel, TreeType - - -class FileScreen(QWidget): - def __init__(self, parent=None) -> None: - super().__init__(parent=parent) - self._file_handler = FileHandler() - - vbox = QVBoxLayout() - self.setLayout(vbox) - - main_splitter = QSplitter(Qt.Vertical) - self.layout().addWidget(main_splitter) - - self._info = EntityInfo(self) - main_splitter.addWidget(self._info) - - self._data_tree = NixTreeView(self) - - self._tree_type_combo = QComboBox() - self._tree_type_combo.adjustSize() - self._tree_type_combo.addItems([TreeType.Data.value, TreeType.Full.value, TreeType.Metadata.value]) - self._tree_type_combo.currentTextChanged.connect(self.update) - - hbox = QHBoxLayout() - hbox.addWidget(QLabel("Tree type:")) - hbox.addWidget(self._tree_type_combo) - hbox.addStretch() - data_group = QGroupBox("Data") - data_vbox = QVBoxLayout() - data_vbox.setContentsMargins(1, 10, 1, 1) - - data_vbox.addLayout(hbox) - data_vbox.addWidget(self._data_tree) - data_group.setLayout(data_vbox) - - main_splitter.addWidget(data_group) - main_splitter.setSizes([200, 600]) - vbox.addWidget(main_splitter) - - def dataTreeSelection(self, current_index, last_index): - if not current_index.isValid(): - return - item = current_index.internalPointer() - comm.communicator.item_selected.emit(item) - self._info.setEntityInfo(item.node_descriptor) - - def update(self): - tt = TreeType.Data - if self._tree_type_combo.currentText() == TreeType.Data.value: - tt = TreeType.Data - elif self._tree_type_combo.currentText() == TreeType.Full.value: - tt = TreeType.Full - elif self._tree_type_combo.currentText() == TreeType.Metadata.value: - tt = TreeType.Metadata - self._info.setEntityInfo(None) - data_model = TreeModel(self._file_handler, tt) - self._data_tree.setModel(data_model) - selection_model = QItemSelectionModel(data_model) - self._data_tree.setSelectionModel(selection_model) - selection_model.currentChanged.connect(self.dataTreeSelection) - for i in range(data_model.columnCount(None)): - self._data_tree.resizeColumnToContents(i) - self._info.setFileInfo(self._file_handler.file_descriptor) - - def reset(self): - pass - - -class EntityInfo(QWidget): - - def __init__(self, parent): - super().__init__(parent=parent) - self._file_handler = FileHandler() - self.setLayout(QHBoxLayout()) - - self._metadata_tree = NixTreeView() - - mdata_grp = QGroupBox("Metadata") - mdata_grp.setLayout(QVBoxLayout()) - mdata_grp.layout().setContentsMargins(1, 10, 1, 1) - mdata_grp.layout().addWidget(self._metadata_tree) - - file_info_grp = QGroupBox("File info") - file_info_grp.setLayout(QVBoxLayout()) - file_info_grp.layout().setContentsMargins(1, 10, 1, 1) - self._file_info = QTextEdit("File information") - self._file_info.setEnabled(True) - self._file_info.setTextInteractionFlags(Qt.TextSelectableByKeyboard | Qt.TextSelectableByMouse) - self._file_info.setFrameShape(QFrame.NoFrame) - self._file_info.setLineWrapMode(QTextEdit.WidgetWidth) - file_info_grp.layout().addWidget(self._file_info) - - entity_info_grp = QGroupBox("Entity info") - entity_info_grp.setLayout(QVBoxLayout()) - entity_info_grp.layout().setContentsMargins(1, 10, 1, 1) - self._entity_info = QTextEdit("Entity information") - self._file_info.setEnabled(True) - self._file_info.setTextInteractionFlags(Qt.TextSelectableByKeyboard | Qt.TextSelectableByMouse) - self._file_info.setFrameShape(QFrame.NoFrame) - self._file_info.setLineWrapMode(QTextEdit.WidgetWidth) - entity_info_grp.layout().addWidget(self._entity_info) - - self._splitter = QSplitter(Qt.Horizontal) - self._splitter.addWidget(file_info_grp) - self._splitter.addWidget(entity_info_grp) - self._splitter.addWidget(mdata_grp) - self._splitter.setSizes([200, 400, 0]) - self._splitter.setStretchFactor(0, 0) - self._splitter.setStretchFactor(1, 1) - self._splitter.setStretchFactor(2, 1) - - self.layout().addWidget(self._splitter) - - - def setFileInfo(self, file_info): - if file_info is not None: - self._file_info.setText(file_info.toHtml()) - - def setEntityInfo(self, entity_info): - if entity_info is None or not isinstance(entity_info, ItemDescriptor): - self._splitter.setSizes([200, 400, 0]) - self._entity_info.setText("") - self._metadata_tree.setModel(None) - return - - if entity_info.metadata_id is not None: - self._splitter.setSizes([200, 400, 400]) - else: - self._splitter.setSizes([200, 400, 0]) - self._entity_info.setText(entity_info.to_html()) - metadata_model = TreeModel(self._file_handler, TreeType.Metadata, root_section_id=entity_info.metadata_id) - self._metadata_tree.setModel(metadata_model) - for i in range(metadata_model.columnCount(None)): - self._metadata_tree.resizeColumnToContents(i) diff --git a/blipblop/ui/resultsscreen.py b/blipblop/ui/resultsscreen.py index ac062a0..ad768a3 100644 --- a/blipblop/ui/resultsscreen.py +++ b/blipblop/ui/resultsscreen.py @@ -11,10 +11,10 @@ from blipblop.util.results import MeasurementResults class ResultsScreen(QWidget): back_signal = pyqtSignal() - + def __init__(self, parent=None) -> None: super().__init__(parent=parent) - + self.table = QTableWidget() self._stack = QStackedLayout(self) label = QLabel("There are no results to show\n(press ESC to go back)") @@ -27,27 +27,27 @@ class ResultsScreen(QWidget): self._stack.addWidget(label) # 0 self._stack.addWidget(self.table) # 1 self.setLayout(self._stack) - + self._back_action = QAction("back") self._back_action.setShortcut(QKeySequence("escape")) self._back_action.triggered.connect(self.on_back) - + self._copy_action = QAction("copy") self._copy_action.setShortcut(QKeySequence("ctrl+c")) self._copy_action.triggered.connect(self.copy_selection) self.addAction(self._back_action) self.addAction(self._copy_action) - + def set_results(self, measurement_results): if len(measurement_results) == 0: return - + for mr in measurement_results: if not isinstance(mr, MeasurementResults): print("Some result entries are no MeasurementResults!") - return - + return + row_count = max([len(r.results) for r in measurement_results]) col_count = len(measurement_results) self.table.setRowCount(row_count) @@ -89,4 +89,3 @@ class ResultsScreen(QWidget): def reset(self): self.table.clear() self._stack.setCurrentIndex(0) - diff --git a/blipblop/ui/startscreen.py b/blipblop/ui/startscreen.py index 0dd3510..f5eb498 100644 --- a/blipblop/ui/startscreen.py +++ b/blipblop/ui/startscreen.py @@ -1,4 +1,3 @@ -import os from PyQt5.QtWidgets import QWidget, QGridLayout, QLabel from PyQt5.QtGui import QFont, QPixmap from PyQt5.QtCore import Qt, pyqtSignal @@ -6,6 +5,7 @@ from PyQt5.QtCore import Qt, pyqtSignal class MyLabel(QLabel): clicked = pyqtSignal() + def mouseReleaseEvent(self, QMouseEvent): if QMouseEvent.button() == Qt.LeftButton: self.clicked.emit() @@ -21,11 +21,11 @@ class StartScreen(QWidget): layout = QGridLayout() layout.setColumnStretch(0, 1) layout.setColumnStretch(6, 1) - + layout.setRowStretch(0, 1) layout.setRowStretch(4, 1) self.setLayout(layout) - + label = QLabel("Measure your reaction times!\nselect a task") font = QFont() font.setBold(True) @@ -34,26 +34,26 @@ class StartScreen(QWidget): label.setFont(font) label.setAlignment(Qt.AlignCenter) layout.addWidget(label, 1, 2, 1, 3, Qt.AlignCenter) - + visual_task_label = MyLabel() visual_task_label.setStatusTip("Start a new visual measurement (Ctrl+1)") visual_task_label.setToolTip("Click to start a new visual task (Ctrl+1)") visual_task_label.setPixmap(QPixmap(":/icons/visual_task_large")) visual_task_label.setMaximumWidth(256) visual_task_label.clicked.connect(self.new_visual_task) - + auditory_task_label = MyLabel() auditory_task_label.setStatusTip("Start a new auditory measurement (Ctrl+2)") auditory_task_label.setToolTip("click to start a new auditory task (Ctrl+2)") auditory_task_label.setPixmap(QPixmap(":/icons/auditory_task_large")) auditory_task_label.setMaximumWidth(256) auditory_task_label.clicked.connect(self.new_auditory_task) - - layout.addWidget(visual_task_label, 2, 1, 2, 2, Qt.AlignCenter ) - layout.addWidget(auditory_task_label, 2, 4, 2, 2, Qt.AlignCenter ) + + layout.addWidget(visual_task_label, 2, 1, 2, 2, Qt.AlignCenter) + layout.addWidget(auditory_task_label, 2, 4, 2, 2, Qt.AlignCenter) def new_auditory_task(self): self.auditory_task_signal.emit() - + def new_visual_task(self): self.visual_task_signal.emit()