def __init__(self, parent=None): super(MainWindow, self).__init__(parent) self.setupUi(self) self.test = Test() # Copy the default irv file into app data directory if necessary data_path = QDesktopServices.storageLocation(QDesktopServices.DataLocation) if not os.path.exists(data_path): os.makedirs(data_path) verbs_file_path = os.path.join(data_path, VERBS_FILE) if not os.path.exists(verbs_file_path): shutil.copy(os.path.join(QApplication.applicationDirPath(), VERBS_FILE), verbs_file_path) format_file_path = os.path.join(data_path, FORMAT_FILE) if not os.path.exists(format_file_path): shutil.copy(os.path.join(QApplication.applicationDirPath(), FORMAT_FILE), format_file_path) # Load verbs informations workbook = xlrd.open_workbook(verbs_file_path) self.levels_list = [] self.levels_dict = {} for sheet in workbook.sheets(): verbs = [] for i in range(sheet.nrows): verb = Verb(sheet.row(i)[0].value, sheet.row(i)[1].value, sheet.row(i)[2].value, sheet.row(i)[3].value) verbs.append(verb) self.levels_list.append(sheet.name) self.levels_dict[sheet.name] = Level(verbs) self.mClassList.currentIndexChanged.connect(self._on_level_selected_changed) for level in self.levels_list: self.mClassList.addItem(level, level) self.mGenerate.clicked.connect(self._on_generate) self.mExport.clicked.connect(self._on_export) self.mActionExport.triggered.connect(self._on_export) self.mActionEditVerbsList.triggered.connect(self._on_edit_verbs_list) self.mActionEditExportStyle.triggered.connect(self._on_edit_export_style)