Beispiel #1
0
    def __init__(self, app):
        QMainWindow.__init__(self)
        Ui_MainWindow.__init__(self)

        self.setupUi(self)
        self.setWindowTitle("BlobBackup")
        self.setWindowIcon(QIcon(get_resource_path("images/logo.ico")))

        self.app = app
        self.threads = {}
        self.thread = None

        self.log_text_edit.setMaximumBlockCount(500)
        self.log_text_edit.setLineWrapMode(QPlainTextEdit.LineWrapMode.NoWrap)
        self.log_file_thread = LogFileThread()
        self.log_file_thread.start()
        self.log_file_thread.updated.connect(self.add_log)
        self.full_log_button.pressed.connect(self.open_log_file)
        self.show_everything_radio_button.toggled.connect(
            self.log_text_edit.clear)
        self.only_errors_radio_button.toggled.connect(
            lambda: self.update_logs(force=True))
        self.backups_tree_widget.itemClicked.connect(self.update_logs)

        self.tool_bar.setToolButtonStyle(Qt.ToolButtonTextUnderIcon)
        self.tool_bar.setIconSize(QSize(10, 10))
        self.go_action.setIcon(QIcon(get_resource_path("images/go.png")))
        self.stop_action.setIcon(QIcon(get_resource_path("images/stop.png")))
        self.view_action.setIcon(QIcon(get_resource_path("images/view.png")))
        self.delete_action.setIcon(
            QIcon(get_resource_path("images/delete.png")))
        self.edit_action.setIcon(QIcon(get_resource_path("images/edit.png")))

        self.add_new_backup_action.triggered.connect(self.add_new_backup)
        self.connect_to_existing_backup_action.triggered.connect(
            self.connect_backup)
        self.delete_action.triggered.connect(self.delete_backup)
        self.edit_action.triggered.connect(self.edit_backup)
        self.backups_tree_widget.itemDoubleClicked.connect(self.edit_backup)
        self.go_action.triggered.connect(self.go_backup)
        self.stop_action.triggered.connect(self.stop_backup)
        self.view_action.triggered.connect(self.view_backup)
        self.exit_action.triggered.connect(self.exit)

        self.backups_tree_widget.itemClicked.connect(self.set_go_action)
        self.website_action.triggered.connect(
            lambda: webbrowser.open("https://blobbackup.com/docs.php"))

        self.run_all_action.triggered.connect(lambda: self.run_all(None))
        self.run_local_action.triggered.connect(
            lambda: self.run_all("Local Directory"))
        self.run_aws_action.triggered.connect(
            lambda: self.run_all("Amazon AWS"))
        self.run_gcp_action.triggered.connect(
            lambda: self.run_all("Google Cloud"))
        self.run_azure_action.triggered.connect(
            lambda: self.run_all("Microsoft Azure"))
        self.run_b2_action.triggered.connect(
            lambda: self.run_all("Backblaze B2"))
        self.run_s3_action.triggered.connect(
            lambda: self.run_all("S3 Storage"))
        self.run_sftp_only.triggered.connect(lambda: self.run_all("SFTP"))

        self.add_one_to_start_button.pressed.connect(
            self.add_new_backup_action.trigger)

        self.populate()