Esempio n. 1
0
    def _save_settings(self):
        success, warnings = self.manager.save_settings(self.settings_model)

        # Configurações alteradas com sucesso, porém algumas delas só surtirão após a reinicialização

        if success:
            if dialog.ask_confirmation(title=self.i18n['warning'].capitalize(),
                                       body="<p>{}</p><p>{}</p>".format(self.i18n['settings.changed.success.warning'],
                                                                        self.i18n['settings.changed.success.reboot']),
                                       i18n=self.i18n):
                util.restart_app(self.window and self.window.isVisible())
            else:
                if isinstance(self.manager, GenericSoftwareManager):
                    self.manager.reset_cache()

                self.manager.prepare()

                if self.window and self.window.isVisible():
                    self.window.verify_warnings()
                    self.window.types_changed = True
                    self.window.refresh_apps()
                self.close()
        else:
            msg = StringIO()
            msg.write("<p>{}</p>".format(self.i18n['settings.error']))

            for w in warnings:
                msg.write('<p style="font-weight: bold">* ' + w + '</p><br/>')

            msg.seek(0)
            dialog.show_message(title="Warning", body=msg.read(), type_=MessageType.WARNING)
Esempio n. 2
0
    def _save_settings(self):
        self.tab_group.setEnabled(False)
        self.bt_change.setEnabled(False)
        self.bt_close.setEnabled(False)

        success, warnings = self.manager.save_settings(self.settings_model)

        if success:
            if not self.window:
                dialog.show_message(title=self.i18n['success'].capitalize(),
                                    body=self.i18n['settings.changed.success.warning'],
                                    type_=MessageType.INFO)
                QCoreApplication.exit()
            elif ConfirmationDialog(title=self.i18n['warning'].capitalize(),
                                    body="<p>{}</p><p>{}</p>".format(self.i18n['settings.changed.success.warning'],
                                                                     self.i18n['settings.changed.success.reboot']),
                                    i18n=self.i18n).ask():
                self.close()
                util.restart_app()
            else:
                self.thread_reload_panel.start()
                QApplication.setOverrideCursor(Qt.WaitCursor)
        else:
            msg = StringIO()
            msg.write("<p>{}</p>".format(self.i18n['settings.error']))

            for w in warnings:
                msg.write('<p style="font-weight: bold">* ' + w + '</p><br/>')

            msg.seek(0)
            dialog.show_message(title=self.i18n['warning'].capitalize(), body=msg.read(), type_=MessageType.WARNING)
Esempio n. 3
0
    def reset(self, root_password: str, watcher: ProcessWatcher) -> bool:
        body = '<p>{}</p><p>{}</p>'.format(self.i18n['action.reset.body_1'].format(bold(self.context.app_name)),
                                           self.i18n['action.reset.body_2'])
        if watcher.request_confirmation(title=self.i18n['action.reset'],
                                        body=body,
                                        confirmation_label=self.i18n['proceed'].capitalize(),
                                        deny_label=self.i18n['cancel'].capitalize()):

            try:
                clean_app_files(managers=self.managers, logs=False)
                restart_app()
            except:
                return False

        return True
Esempio n. 4
0
    def change_style(self, idx: int):

        if dialog.ask_confirmation(
                self.i18n['style.change.title'],
                self.i18n['style.change.question'].format(bold(__app_name__)),
                self.i18n):
            self.last_index = idx
            style = self.styles[idx]

            user_config = config.read()
            user_config.style = style
            config.save(user_config)

            util.restart_app(self.show_panel_after_restart)
        else:
            self.blockSignals(True)
            self.setCurrentIndex(self.last_index)
            self.blockSignals(False)
Esempio n. 5
0
    def _save_settings(self):
        success, warnings = self.manager.save_settings(self.settings_model)

        if success:
            if not self.window:
                dialog.show_message(
                    title=self.i18n['success'].capitalize(),
                    body=self.i18n['settings.changed.success.warning'],
                    type_=MessageType.INFO)
                QCoreApplication.exit()
            elif ConfirmationDialog(
                    title=self.i18n['warning'].capitalize(),
                    body="<p>{}</p><p>{}</p>".format(
                        self.i18n['settings.changed.success.warning'],
                        self.i18n['settings.changed.success.reboot']),
                    i18n=self.i18n).ask():
                self.close()
                util.restart_app()
            else:
                if isinstance(self.manager, GenericSoftwareManager):
                    self.manager.reset_cache()

                self.manager.prepare(task_manager=None,
                                     root_password=None,
                                     internet_available=None)

                if self.window and self.window.isVisible():
                    self.window.update_custom_actions()
                    self.window.verify_warnings()
                    self.window.types_changed = True
                    self.window.begin_refresh_packages()
                self.close()
        else:
            msg = StringIO()
            msg.write("<p>{}</p>".format(self.i18n['settings.error']))

            for w in warnings:
                msg.write('<p style="font-weight: bold">* ' + w + '</p><br/>')

            msg.seek(0)
            dialog.show_message(title=self.i18n['warning'].capitalize(),
                                body=msg.read(),
                                type_=MessageType.WARNING)
Esempio n. 6
0
    def _save_settings(self):
        self.tab_group.setEnabled(False)
        self.bt_change.setEnabled(False)
        self.bt_close.setEnabled(False)

        success, warnings = self.manager.save_settings(self.settings_model)

        if success:
            if not self.window:
                ConfirmationDialog(title=self.i18n['success'].capitalize(),
                                   body=f"<p>{self.i18n['settings.changed.success.warning']}</p>",
                                   i18n=self.i18n,
                                   confirmation_label=self.i18n['ok'],
                                   confirmation_icon=False,
                                   deny_button=False).ask()
                QCoreApplication.exit()
            elif ConfirmationDialog(title=self.i18n['warning'].capitalize(),
                                    body=f"<p>{self.i18n['settings.changed.success.warning']}</p>"
                                         f"<p>{self.i18n['settings.changed.success.reboot']}</p>",
                                    i18n=self.i18n).ask():
                self.close()
                util.restart_app()
            else:
                self.thread_reload_panel.start()
                QApplication.setOverrideCursor(Qt.WaitCursor)
        else:
            msg = StringIO()
            msg.write(f"<p>{self.i18n['settings.error']}</p>")

            for w in warnings:
                msg.write(f'<p style="font-weight: bold">* {w}</p><br/>')

            dialog.show_message(title=self.i18n['warning'].capitalize(), body=msg.getvalue(), type_=MessageType.WARNING)

            self.tab_group.setEnabled(True)
            self.bt_change.setEnabled(True)
            self.bt_close.setEnabled(True)