fix start screen
This commit is contained in:
parent
2c3d9c7a8d
commit
ca4615fa83
@ -1,70 +1,57 @@
|
|||||||
import os
|
import os
|
||||||
from PyQt5.QtWidgets import QWidget, QGridLayout, QLabel, QFrame, QVBoxLayout, QListWidget, QAbstractItemView, QListWidgetItem
|
from PyQt5.QtWidgets import QWidget, QGridLayout, QLabel
|
||||||
from PyQt5.QtGui import QPixmap
|
from PyQt5.QtGui import QFont, QPixmap
|
||||||
from PyQt5.QtCore import Qt, QSettings, pyqtSignal
|
from PyQt5.QtCore import Qt, pyqtSignal
|
||||||
|
|
||||||
import blipblop.constants as cnst
|
import blipblop.constants as cnst
|
||||||
|
|
||||||
|
|
||||||
|
class MyLabel(QLabel):
|
||||||
|
clicked = pyqtSignal()
|
||||||
|
def mouseReleaseEvent(self, QMouseEvent):
|
||||||
|
if QMouseEvent.button() == Qt.LeftButton:
|
||||||
|
self.clicked.emit()
|
||||||
|
|
||||||
|
|
||||||
class StartScreen(QWidget):
|
class StartScreen(QWidget):
|
||||||
keyPressed = pyqtSignal(int)
|
visual_task_signal = pyqtSignal()
|
||||||
|
auditory_task_signal = pyqtSignal()
|
||||||
|
|
||||||
def __init__(self, parent=None) -> None:
|
def __init__(self, parent=None) -> None:
|
||||||
super().__init__(parent=parent)
|
super().__init__(parent=parent)
|
||||||
#self.setStyleSheet("background-color: white;")
|
|
||||||
|
|
||||||
layout = QGridLayout()
|
layout = QGridLayout()
|
||||||
layout.setColumnStretch(0, 2)
|
layout.setColumnStretch(0, 2)
|
||||||
layout.setColumnStretch(1, 1)
|
layout.setColumnStretch(6, 1)
|
||||||
layout.setColumnStretch(2, 1)
|
|
||||||
layout.setColumnStretch(3, 1)
|
|
||||||
layout.setColumnStretch(4, 2)
|
|
||||||
|
|
||||||
layout.setRowStretch(0, 1)
|
layout.setRowStretch(0, 1)
|
||||||
layout.setRowStretch(1, 0)
|
layout.setRowStretch(4, 2)
|
||||||
layout.setRowStretch(2, 1)
|
|
||||||
layout.setRowStretch(3, 2)
|
|
||||||
self.setLayout(layout)
|
self.setLayout(layout)
|
||||||
|
|
||||||
label = QLabel("Measure your reaction times!\nselect a task!")
|
label = QLabel("Measure your reaction times!\nselect a task")
|
||||||
# label.setPixmap(QPixmap(os.path.join(cnst.ICONS_FOLDER, "nixview_transparent.png")))
|
font = QFont()
|
||||||
# label.setMaximumWidth(300)
|
font.setPointSize(25)
|
||||||
|
label.setFont(font)
|
||||||
label.setAlignment(Qt.AlignCenter)
|
label.setAlignment(Qt.AlignCenter)
|
||||||
layout.addWidget(label, 1, 1, 1, 3, Qt.AlignCenter)
|
layout.addWidget(label, 1, 2, 1, 3, Qt.AlignCenter)
|
||||||
|
|
||||||
frame = QFrame()
|
visual_task_label = MyLabel()
|
||||||
l = QVBoxLayout()
|
visual_task_label.setToolTip("Click to start a new visual task")
|
||||||
l.addWidget(QLabel("Recently opened files:"))
|
visual_task_label.setPixmap(QPixmap(os.path.join(cnst.ICONS_FOLDER, "visual_task_large.png")))
|
||||||
self._file_list = QListWidget(self)
|
visual_task_label.setMaximumWidth(256)
|
||||||
self._file_list.setSelectionMode(QAbstractItemView.SingleSelection)
|
visual_task_label.clicked.connect(self.new_visual_task)
|
||||||
self._file_list.setFrameShape(QFrame.NoFrame)
|
|
||||||
self.keyPressed.connect(self._on_key_pressed)
|
auditory_task_label = MyLabel()
|
||||||
l.addWidget(self._file_list)
|
auditory_task_label.setToolTip("Click to start a new auditory task")
|
||||||
frame.setLayout(l)
|
auditory_task_label.setPixmap(QPixmap(os.path.join(cnst.ICONS_FOLDER, "auditory_task_large.png")))
|
||||||
layout.addWidget(frame, 3, 1, 1, 3)
|
auditory_task_label.setMaximumWidth(256)
|
||||||
self._file_map = {}
|
auditory_task_label.clicked.connect(self.new_auditory_task)
|
||||||
|
|
||||||
def keyPressEvent(self, event):
|
layout.addWidget(visual_task_label, 2, 1, 2, 2, Qt.AlignCenter )
|
||||||
super(StartScreen, self).keyPressEvent(event)
|
layout.addWidget(auditory_task_label, 2, 4, 2, 2, Qt.AlignCenter )
|
||||||
if event.key() == Qt.Key_Return:
|
|
||||||
self.keyPressed.emit(event.key())
|
|
||||||
|
|
||||||
def _create_short_filename(self, original, index, max_len=40):
|
|
||||||
short = original
|
|
||||||
parts = original.split(os.sep)
|
|
||||||
if len(parts) == 1:
|
|
||||||
short = "%i: %s" % (index, short[:max_len])
|
|
||||||
else:
|
|
||||||
post = parts[-1]
|
|
||||||
if len(post) > max_len - 4:
|
|
||||||
post = post[:max_len - 4]
|
|
||||||
short = str("%i: " % index) + "... " + post
|
|
||||||
else:
|
|
||||||
short = str("%i: " % index) + " ... ".join([original[:max_len - len(post) - 4], post])
|
|
||||||
return short
|
|
||||||
|
|
||||||
def reset(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def _on_key_pressed(self, key):
|
def new_auditory_task(self):
|
||||||
pass
|
self.auditory_task_signal.emit()
|
||||||
|
|
||||||
|
def new_visual_task(self):
|
||||||
|
self.visual_task_signal.emit()
|
||||||
|
Loading…
Reference in New Issue
Block a user