from PySide import QtGui, QtCore #class QuestionWindow(QtGui.QWidget): class QuestionWindow(QtGui.QDialog): def __init__(self, section, question, parent=None): super(QuestionWindow, self).__init__(parent) self.section = section self.question = question self.results = [] self._setupGui() self.setWindowTitle("Seopardy") def get_results(self): return self.results def _mkQuestionLabel(self, text): question = QtGui.QLabel(text, alignment=QtCore.Qt.AlignCenter) question.setWordWrap(True) question.setStyleSheet("QLabel { font-size: 40px; }") return question def _setupGui(self): self.layout = QtGui.QVBoxLayout() seclabel = QtGui.QLabel(self.section) seclabel.setStyleSheet("QLabel { font-size: 30px; }") self.layout.addWidget(seclabel, alignment=QtCore.Qt.AlignCenter) self.layout.addStretch() qlabel = None if self.question["Type"] == "Text": qlabel = self.mkQuestionLabel(self.question["Question"]) elif self.question["Type"] == "Music": qlabel = self.mkQuestionLabel("Listen...") elif self.question["Type"] == "Image": qlabel = QtGui.QLabel() pixmap = QtGui.QPixmap() pixmap.loadFromData(open(self.question["Question"]).read()) qlabel.setPixmap(pixmap) else: raise ValueError("%s is an unknown type for section %s question name %s" % (self.question["Type"], self.section, self.question["Name"])) self.layout.addWidget(qlabel, alignment=QtCore.Qt.AlignCenter) self.layout.addStretch() self.setLayout(self.layout)