from vorta.borg.mount import BorgMountThread from vorta.borg.prune import BorgPruneThread from vorta.borg.umount import BorgUmountThread from vorta.i18n import trans_late from vorta.models import ArchiveModel, BackupProfileMixin from vorta.utils import (choose_file_dialog, format_archive_name, get_asset, get_mount_points, pretty_bytes) from vorta.views.diff_dialog import DiffDialog from vorta.views.diff_result import DiffResult from vorta.views.extract_dialog import ExtractDialog from vorta.views.utils import get_theme_class uifile = get_asset('UI/archivetab.ui') ArchiveTabUI, ArchiveTabBase = uic.loadUiType(uifile, from_imports=True, import_from=get_theme_class()) class ArchiveTab(ArchiveTabBase, ArchiveTabUI, BackupProfileMixin): prune_intervals = ['hour', 'day', 'week', 'month', 'year'] def __init__(self, parent=None): super().__init__(parent) self.setupUi(parent) self.mount_points = {} self.menu = None self.toolBox.setCurrentIndex(0) header = self.archiveTable.horizontalHeader() header.setVisible(True) header.setSectionResizeMode(0, QHeaderView.ResizeToContents)
from PyQt5 import uic, QtCore from PyQt5.QtGui import QKeySequence from .repo_tab import RepoTab from .source_tab import SourceTab from .archive_tab import ArchiveTab from .schedule_tab import ScheduleTab from .misc_tab import MiscTab from .profile_add_edit_dialog import AddProfileWindow, EditProfileWindow from ..utils import get_asset from ..models import BackupProfileModel from vorta.borg.borg_thread import BorgThread from vorta.views.utils import get_theme_class uifile = get_asset('UI/mainwindow.ui') MainWindowUI, MainWindowBase = uic.loadUiType(uifile, from_imports=True, import_from=get_theme_class()) class MainWindow(MainWindowBase, MainWindowUI): def __init__(self, parent=None): super().__init__() self.setupUi(self) self.setWindowTitle('Vorta for Borg Backup') self.setAttribute(QtCore.Qt.WA_DeleteOnClose, True) self.app = parent self.current_profile = BackupProfileModel.select().order_by('id').first() self.setWindowFlags(QtCore.Qt.WindowCloseButtonHint | QtCore.Qt.WindowMinimizeButtonHint) # Load tab models self.repoTab = RepoTab(self.repoTabSlot) self.sourceTab = SourceTab(self.sourceTabSlot)
import re from PyQt5 import uic from ..utils import get_private_keys, get_asset, choose_file_dialog from vorta.borg.init import BorgInitThread from vorta.borg.info import BorgInfoThread from vorta.views.utils import get_theme_class uifile = get_asset('UI/repoadd.ui') AddRepoUI, AddRepoBase = uic.loadUiType(uifile, from_imports=True, import_from=get_theme_class()) class AddRepoWindow(AddRepoBase, AddRepoUI): def __init__(self, parent=None): super().__init__(parent) self.setupUi(self) self.result = None self.is_remote_repo = True self.closeButton.clicked.connect(self.close) self.saveButton.clicked.connect(self.run) self.chooseLocalFolderButton.clicked.connect(self.choose_local_backup_folder) self.useRemoteRepoButton.clicked.connect(self.use_remote_repo_action) self.tabWidget.setCurrentIndex(0) self.init_encryption() self.init_ssh_key() @property def values(self): out = dict(
from vorta.borg.prune import BorgPruneThread from vorta.borg.list_repo import BorgListRepoThread from vorta.borg.list_archive import BorgListArchiveThread from vorta.borg.check import BorgCheckThread from vorta.borg.mount import BorgMountThread from vorta.borg.extract import BorgExtractThread from vorta.borg.umount import BorgUmountThread from vorta.borg.delete import BorgDeleteThread from vorta.views.extract_dialog import ExtractDialog from vorta.i18n import trans_late from vorta.utils import get_asset, pretty_bytes, choose_file_dialog, format_archive_name, get_mount_points from vorta.models import BackupProfileMixin, ArchiveModel from vorta.views.utils import get_theme_class uifile = get_asset('UI/archivetab.ui') ArchiveTabUI, ArchiveTabBase = uic.loadUiType(uifile, from_imports=True, import_from=get_theme_class()) class ArchiveTab(ArchiveTabBase, ArchiveTabUI, BackupProfileMixin): prune_intervals = ['hour', 'day', 'week', 'month', 'year'] def __init__(self, parent=None): super().__init__(parent) self.setupUi(parent) self.mount_points = {} self.menu = None self.toolBox.setCurrentIndex(0) header = self.archiveTable.horizontalHeader() header.setVisible(True) header.setSectionResizeMode(0, QHeaderView.ResizeToContents)