def reload(self): for label in self.findChildren(QLabel): label.setText(tr(label)) for button in self.findChildren(QPushButton): button.setText(tr(button)) self.setWindowTitle(tr_str("connect_dialog.title")) self.status_label.setStyleSheet("color: black;") self.status_label.setText(tr_str("connect_dialog.status.wait"))
def __init__(self, silent): super(UpdateDialog, self).__init__() self.setupUi(self) self.layout().setSizeConstraint(QLayout.SetFixedSize) self.silent = silent self.update_data_thread = GetUpdateDataThread() self.download_update_thread = DownloadUpdateThread() self.download_update_thread.chunk_downloaded.connect( self.on_chunk_downloaded) self.download_update_thread.download_complete.connect( self.run_installer) self.download_update_thread.error.connect(self.on_downloader_error) self.update_data_thread.update_available.connect(self.show_update_text) self.update_data_thread.no_update.connect(self.on_no_update) self.update_data_thread.error.connect(self.on_updater_error) self.downloadButton.clicked.connect(self.download_and_run) self.closeButton.clicked.connect(self.update_data_thread.exit) self.closeButton.clicked.connect(self.download_update_thread.exit) self.closeButton.clicked.connect(self.closeEvent) check_on_startup = CONFIG.getboolean("Options", "check_updates_on_startup", fallback=True) CONFIG["Options"][ "check_updates_on_startup"] = "yes" if check_on_startup else "no" save_config() self.checkOnStartupCheckBox.setCheckState( Qt.Checked if check_on_startup else Qt.Unchecked) self.checkOnStartupCheckBox.stateChanged.connect( self.on_startup_check_option_change) icon = QPixmap() icon.loadFromData(APP_ICON) self.setWindowIcon(QIcon(icon)) self.setWindowTitle(tr_str("updater_dialog.title")) self.checkLabel.setText(tr_str("updater_dialog.checking_updates")) self.checkOnStartupCheckBox.setText(tr(self.checkOnStartupCheckBox)) self.downloadButton.setText(tr(self.downloadButton)) self.closeButton.setText(tr(self.closeButton)) self.changelogBrowser.hide() self.progressLabel.hide() self.progressBar.hide() self.downloadButton.hide() self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint) self.adjustSize()
def translate_ui(self): self.ui.ui_tabs.setTabText(0, tr(self.ui.tab_maid_info)) for group in self.ui.tab_maid_info.findChildren(QGroupBox): group.setTitle(tr(group)) for label in self.ui.tab_maid_info.findChildren(QLabel): label.setText(tr(label)) for label in self.ui.checks_group.findChildren(QCheckBox): label.setText(tr(label)) for i, personality in enumerate(self.personality_names): self.ui.personality_combo.setItemText(i, tr_str(personality)) for i, contract in enumerate(self.contracts_names): self.ui.contract_combo.setItemText(i, tr_str(contract)) for i, relation in enumerate(self.relations_names): self.ui.relation_combo.setItemText(i, tr_str(relation)) for i, relation in enumerate(self.additional_relations_names): self.ui.additional_relation_combo.setItemText(i, tr_str(relation)) for i, seikeiken in enumerate(self.seikeiken_names): self.ui.current_combo.setItemText(i, tr_str(seikeiken)) self.ui.initial_combo.setItemText(i, tr_str(seikeiken)) for i, job_class in enumerate(self.job_classes_names): self.ui.job_class_combo.setItemText(i, tr_str(job_class)) for i, yotogi_class in enumerate(self.yotogi_classes_names): self.ui.yotogi_class_combo.setItemText(i, tr_str(yotogi_class))
def on_updater_error(self, msg): if self.silent: self.reject() else: self.checkLabel.setText( tr_str("updater_dialog.updater_error").format(msg)) self.adjustSize()
def show_update_text(self, data): self.download_update_thread.setUrl( data["assets"][0]["browser_download_url"]) self.progressBar.setMaximum(data["assets"][0]["size"]) self.checkLabel.setText( tr_str("updater_dialog.update_available").format( VERSION, data['tag_name'][1:])) self.changelogBrowser.setHtml(markdown2.markdown(data["body"])) self.changelogBrowser.show() self.downloadButton.show() self.adjustSize()
def translate_ui(self): self.ui.ui_tabs.setTabText(3, tr(self.ui.tab_maid_work)) for group in self.ui.tab_maid_work.findChildren(QGroupBox): group.setTitle(tr(group)) for label in self.ui.tab_maid_work.findChildren(QLabel): label.setText(tr(label)) for i, work_name in enumerate(self.work_day_names): self.ui.cur_noon_work_combo.setItemText(i, tr_str(work_name)) for i, work_name in enumerate(self.work_yotogi_names): self.ui.cur_night_work_combo.setItemText(i, tr_str(work_name)) for col in range(0, self.ui.noon_work_table.columnCount()): name = self.ui.noon_work_table.horizontalHeaderItem(col) name.setText(tr(name)) for row in range(0, self.ui.noon_work_table.rowCount()): name = self.ui.noon_work_table.item(row, 0) name.setText(tr(name))
def display_warning(self): if not CONFIG.getboolean("Options", "show_startup_warning", fallback=True) or not self.just_launched: return self.just_launched = False warning_box = QMessageBox(self) warning_box.setIcon(QMessageBox.Warning) dont_show_cb = QCheckBox(tr_str("warning_dialog.dont_show_again")) dont_show_cb.setCheckable(True) dont_show_cb.blockSignals(True) confirm_button = QPushButton() ok_text = tr_str("warning_dialog.ok") confirm_button.setText(ok_text) confirm_button.setEnabled(False) warning_box.addButton(dont_show_cb, QMessageBox.ResetRole) warning_box.addButton(confirm_button, QMessageBox.AcceptRole) warning_box.setTextFormat(Qt.RichText) warning_box.setText(tr_str("warning_dialog.warning")) warning_box.setWindowTitle(tr_str("warning_dialog.title")) def button_timer(): for i in range(5, -1, -1): time.sleep(1) confirm_button.setText(f"{ok_text} ({i})") confirm_button.setText(ok_text) confirm_button.setEnabled(True) threading._start_new_thread(button_timer, ()) warning_box.exec() if dont_show_cb.checkState() == Qt.Checked: CONFIG["Options"]["show_startup_warning"] = "no" save_config()
def load(self): icon = QPixmap() icon.loadFromData(APP_ICON) self.setWindowIcon(QIcon(icon)) self.description_label.setText(tr(self.description_label)) self.close_button.setText(tr(self.close_button)) error_icon = QPixmap() error_icon.loadFromData(ERR_ICON) self.icon_label.setPixmap(error_icon) self.setWindowTitle(tr_str("error_dialog.title")) self.error_text.setPlainText("".join( traceback.format_exception(self.t, self.error, self.traceback))) self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
def reload(self, core_version): icon = QPixmap() icon.loadFromData(APP_ICON) self.setWindowIcon(QIcon(icon)) self.description_label.setText(tr(self.description_label)) self.close_button.setText(tr(self.close_button)) about_icon = QPixmap() about_icon.loadFromData(APP_ICON) self.icon_label.setPixmap(about_icon.scaled(32, 32)) self.setWindowTitle(tr_str("about_dialog.title")) self.version_label.setText(tr(self.version_label)) self.version.setText(f"GUI: {info.VERSION}\nCore: {core_version}") self.contributors_label.setText(tr(self.contributors_label)) self.contributors.setText("\n".join(info.CONTRIBUTORS)) self.project_label.setText(tr(self.project_label)) self.project.setText(info.INFO_LINK)
def on_no_update(self): if self.silent: self.reject() else: self.checkLabel.setText(tr_str("updater_dialog.no_update")) self.adjustSize()
def on_downloader_error(self, msg): self.progressBar.setValue(0) self.progressLabel.setText( tr_str("updater_dialog.download_error").format(msg)) self.adjustSize()
def on_connection_reset(self): self.status_label.setStyleSheet("color: orange;") self.status_label.setText(tr_str("connect_dialog.status.connect"))
def on_connected(self): self.status_label.setStyleSheet("color: green;") self.status_label.setText(tr_str("connect_dialog.status.dl_info"))
def showEvent(self, evt): self.status_label.setStyleSheet("color: orange;") self.status_label.setText(tr_str("connect_dialog.status.connect")) self.worker.start()