class DQuestFinalTC(DQuestFinal): def __init__(self, defered, automatique, parent): DQuestFinal.__init__(self, defered, automatique, parent) disciplines = [v for k, v in sorted(texts_TC.DISCIPLINES.viewitems())] disciplines.insert(0, le2mtrans(u"Choose")) disciplines.append(le2mtrans(u"Not in the list above")) self._study_topic.ui.comboBox.clear() self._study_topic.ui.comboBox.addItems(disciplines) niveaux = [v for k, v in sorted(texts_TC.ETUDES_ANNEES.viewitems())] niveaux.insert(0, le2mtrans(u"Choose")) niveaux.append(le2mtrans(u"Not in the list above")) self._study_level.ui.comboBox.clear() self._study_level.ui.comboBox.addItems(niveaux) self._religion_place.setVisible(False) self._religion_place.ui.comboBox.setCurrentIndex(1) self._religion_name.setVisible(False) self._religion_name.ui.comboBox.setCurrentIndex(1) self._religion_belief.setVisible(False) self._religion_belief.ui.comboBox.setCurrentIndex(1) residence = [v for k, v in sorted(texts_TC.COUNTRY_RESIDENCE.viewitems())] residence.insert(0, le2mtrans(u"Choose")) residence.append(le2mtrans(u"Not in the list above")) self._residence = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Country of residence"), items=residence) self._gridlayout.addWidget(self._residence, 0, 2) # profession professions = [v for k, v in sorted(texts_TC.PROFESSIONS.viewitems())] professions.insert(0, le2mtrans(u"Choose")) professions.append(le2mtrans(u"Not in the list above")) self._profession = WCombo( label=trans_TC(u"Your profession"), parent=self, automatique=self._automatique, items=professions) self._gridlayout.addWidget(self._profession, 2, 3) self._profession.setEnabled(False) self._study.ui.radioButton_1.toggled.connect( lambda _: self._enable_widgets(self._study.get_checkedbutton()==1, self._profession)) # language skills skills = [v for k, v in sorted(texts_TC.LANGUAGE_SKILLS.viewitems())] skills.insert(0, le2mtrans(u"Choose")) # luxembourgish self._luxembourgish_speak = WCombo( parent=self, automatique=self._automatique, label=u"<strong>" + trans_TC(u"Luxembourgish") + u"</strong> " + trans_TC(u"Speak"), items=skills) self._gridlayout.addWidget(self._luxembourgish_speak, 7, 0) self._luxembourgish_understrand = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Understand"), items=skills) self._gridlayout.addWidget(self._luxembourgish_understrand, 7, 1) self._luxembourgish_read = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Read"), items=skills) self._gridlayout.addWidget(self._luxembourgish_read, 7, 2) self._luxembourgish_write = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Write"), items=skills) self._gridlayout.addWidget(self._luxembourgish_write, 7, 3) # french self._french_speak = WCombo( parent=self, automatique=self._automatique, label=u"<strong>" + trans_TC(u"French") + u"</strong> " + trans_TC(u"Speak"), items=skills) self._gridlayout.addWidget(self._french_speak, 8, 0) self._french_understrand = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Understand"), items=skills) self._gridlayout.addWidget(self._french_understrand, 8, 1) self._french_read = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Read"), items=skills) self._gridlayout.addWidget(self._french_read, 8, 2) self._french_write = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Write"), items=skills) self._gridlayout.addWidget(self._french_write, 8, 3) # german self._german_speak = WCombo( parent=self, automatique=self._automatique, label=u"<strong>" + trans_TC(u"German") + u"</strong> " + trans_TC(u"Speak"), items=skills) self._gridlayout.addWidget(self._german_speak, 9, 0) self._german_understrand = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Understand"), items=skills) self._gridlayout.addWidget(self._german_understrand, 9, 1) self._german_read = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Read"), items=skills) self._gridlayout.addWidget(self._german_read, 9, 2) self._german_write = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Write"), items=skills) self._gridlayout.addWidget(self._german_write, 9, 3) # english self._english_speak = WCombo( parent=self, automatique=self._automatique, label=u"<strong>" + trans_TC(u"English") + u"</strong> " + trans_TC(u"Speak"), items=skills) self._gridlayout.addWidget(self._english_speak, 10, 0) self._english_understrand = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Understand"), items=skills) self._gridlayout.addWidget(self._english_understrand, 10, 1) self._english_read = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Read"), items=skills) self._gridlayout.addWidget(self._english_read, 10, 2) self._english_write = WCombo( parent=self, automatique=self._automatique, label=trans_TC(u"Write"), items=skills) self._gridlayout.addWidget(self._english_write, 10, 3) self.setMinimumSize(0, 0) self.setMaximumSize(16777215, 16777215) self.adjustSize() self.setFixedSize(self.size()) def _accept(self): try: self._timer_automatique.stop() except AttributeError: pass inputs = self._get_inputs() if type(inputs) is dict: try: inputs["residence"] = self._residence.get_currentindex() inputs["luxembourgish_speak"] = self._luxembourgish_speak.get_currentindex() inputs["luxembourgish_understand"] = self._luxembourgish_understrand.get_currentindex() inputs["luxembourgish_read"] = self._luxembourgish_read.get_currentindex() inputs["luxembourgish_write"] = self._luxembourgish_write.get_currentindex() inputs["french_speak"] = self._french_speak.get_currentindex() inputs["french_understand"] = self._french_understrand.get_currentindex() inputs["french_read"] = self._french_read.get_currentindex() inputs["french_write"] = self._french_write.get_currentindex() inputs["german_speak"] = self._german_speak.get_currentindex() inputs["german_understand"] = self._german_understrand.get_currentindex() inputs["german_read"] = self._german_read.get_currentindex() inputs["german_write"] = self._german_write.get_currentindex() inputs["english_speak"] = self._english_speak.get_currentindex() inputs["english_understand"] = self._english_understrand.get_currentindex() inputs["english_read"] = self._english_read.get_currentindex() inputs["english_write"] = self._english_write.get_currentindex() if inputs["etudiant"] == 1: # not student inputs["profession"] = self._profession.get_currentindex() except ValueError: return QtGui.QMessageBox.warning( self, le2mtrans(u"Warning"), le2mtrans(u"You must answer to all the questions")) if not self._automatique: confirm = QtGui.QMessageBox.question( self, le2mtrans(u"Confirmation"), le2mtrans(u"Do you confirm your answers?"), QtGui.QMessageBox.No | QtGui.QMessageBox.Yes) if confirm != QtGui.QMessageBox.Yes: return logger.info(u"Send back: {}".format(inputs)) self.accept() self._defered.callback(inputs) else: return