From 7d84fa64538f3a0f31b862d1cd655f9f2b3a03be Mon Sep 17 00:00:00 2001 From: Divyansh Singh Date: Thu, 2 Mar 2023 16:55:35 +0530 Subject: [PATCH 1/7] feat: add a setting for files list views --- src/vorta/store/settings.py | 6 ++++++ src/vorta/views/diff_result.py | 7 +++++++ src/vorta/views/extract_dialog.py | 3 +++ src/vorta/views/partials/treemodel.py | 13 ++++++++++--- 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/src/vorta/store/settings.py b/src/vorta/store/settings.py index ae0b2006c..897d57403 100644 --- a/src/vorta/store/settings.py +++ b/src/vorta/store/settings.py @@ -93,6 +93,12 @@ def get_misc_settings() -> List[Dict[str, str]]: 'type': 'internal', 'label': 'Previous window height', }, + { + 'key': 'files_display_mode', + 'str_value': '0', + 'type': 'internal', + 'label': 'Files view display mode', + }, ] if sys.platform == 'darwin': settings += [ diff --git a/src/vorta/views/diff_result.py b/src/vorta/views/diff_result.py index 6a8e5badd..dcf39ef89 100644 --- a/src/vorta/views/diff_result.py +++ b/src/vorta/views/diff_result.py @@ -9,6 +9,7 @@ from PyQt5.QtCore import QMimeData, QModelIndex, QPoint, Qt, QThread, QUrl from PyQt5.QtGui import QColor, QKeySequence from PyQt5.QtWidgets import QApplication, QHeaderView, QMenu, QShortcut, QTreeView +from vorta.store.models import SettingsModel from vorta.utils import get_asset, pretty_bytes, uses_dark_mode from vorta.views.partials.treemodel import ( FileSystemItem, @@ -97,6 +98,8 @@ def __init__(self, archive_newer, archive_older, model: 'DiffTree'): self.archiveNameLabel_1.setText(f'{archive_newer.name}') self.archiveNameLabel_2.setText(f'{archive_older.name}') + diff_result_display_mode = SettingsModel.get(key='files_display_mode').str_value + self.comboBoxDisplayMode.setCurrentIndex(int(diff_result_display_mode)) self.comboBoxDisplayMode.currentIndexChanged.connect(self.change_display_mode) self.bFoldersOnTop.toggled.connect(self.sortproxy.keepFoldersOnTop) self.bCollapseAll.clicked.connect(self.treeView.collapseAll) @@ -183,6 +186,10 @@ def change_display_mode(self, selection: int): else: raise Exception("Unknown item in comboBoxDisplayMode with index {}".format(selection)) + SettingsModel.update({SettingsModel.str_value: str(selection)}).where( + SettingsModel.key == 'files_display_mode' + ).execute() + self.model.setMode(mode) def slot_sorted(self, column, order): diff --git a/src/vorta/views/extract_dialog.py b/src/vorta/views/extract_dialog.py index 134197d23..2bd8ee987 100644 --- a/src/vorta/views/extract_dialog.py +++ b/src/vorta/views/extract_dialog.py @@ -9,6 +9,7 @@ from PyQt5.QtCore import QDateTime, QLocale, QMimeData, QModelIndex, QPoint, Qt, QThread, QUrl from PyQt5.QtGui import QColor, QKeySequence from PyQt5.QtWidgets import QApplication, QDialogButtonBox, QHeaderView, QMenu, QPushButton, QShortcut +from vorta.store.models import SettingsModel from vorta.utils import borg_compat, get_asset, pretty_bytes, uses_dark_mode from vorta.views.utils import get_colored_icon from .partials.treemodel import FileSystemItem, FileTreeModel, FileTreeSortProxyModel, path_to_str, relative_path @@ -90,6 +91,8 @@ def __init__(self, archive, model): self.archiveNameLabel.setText(f"{archive.name}, {archive.time}") # connect signals + diff_result_display_mode = SettingsModel.get(key='files_display_mode').str_value + self.comboBoxDisplayMode.setCurrentIndex(int(diff_result_display_mode)) self.comboBoxDisplayMode.currentIndexChanged.connect(self.change_display_mode) self.bFoldersOnTop.toggled.connect(self.sortproxy.keepFoldersOnTop) self.bCollapseAll.clicked.connect(self.treeView.collapseAll) diff --git a/src/vorta/views/partials/treemodel.py b/src/vorta/views/partials/treemodel.py index b95357a6e..60f2df872 100644 --- a/src/vorta/views/partials/treemodel.py +++ b/src/vorta/views/partials/treemodel.py @@ -10,6 +10,7 @@ from pathlib import PurePath from typing import Generic, List, Optional, Sequence, Tuple, TypeVar, Union, overload from PyQt5.QtCore import QAbstractItemModel, QModelIndex, QObject, QSortFilterProxyModel, Qt, pyqtSignal +from vorta.store.models import SettingsModel #: A representation of a path Path = Tuple[str, ...] @@ -328,9 +329,15 @@ def __init__(self, parent=None): super().__init__(parent) self.root: FileSystemItem[T] = FileSystemItem([], None) - #: mode - self.mode: 'FileTreeModel.DisplayMode' = self.DisplayMode.TREE - + display_mode = SettingsModel.get(key='files_display_mode').str_value + if display_mode == '0': + self.mode: 'FileTreeModel.DisplayMode' = self.DisplayMode.TREE + elif display_mode == '1': + self.mode: 'FileTreeModel.DisplayMode' = self.DisplayMode.SIMPLIFIED_TREE + elif display_mode == '2': + self.mode: 'FileTreeModel.DisplayMode' = self.DisplayMode.FLAT + else: + raise ValueError("Invalid display mode: {}".format(display_mode)) #: flat representation of the tree self._flattened: List[FileSystemItem] = [] From 3b7b9c8af0031476322252cc8d8c0a75a7d45dd0 Mon Sep 17 00:00:00 2001 From: Divyansh Singh Date: Thu, 2 Mar 2023 17:36:48 +0530 Subject: [PATCH 2/7] separate logic from data class --- src/vorta/store/settings.py | 10 ++++++-- src/vorta/views/archive_tab.py | 33 ++++++++++++++++++++++++--- src/vorta/views/diff_result.py | 7 ++++-- src/vorta/views/extract_dialog.py | 9 +++++++- src/vorta/views/partials/treemodel.py | 13 ++--------- 5 files changed, 53 insertions(+), 19 deletions(-) diff --git a/src/vorta/store/settings.py b/src/vorta/store/settings.py index 897d57403..62c04210b 100644 --- a/src/vorta/store/settings.py +++ b/src/vorta/store/settings.py @@ -94,10 +94,16 @@ def get_misc_settings() -> List[Dict[str, str]]: 'label': 'Previous window height', }, { - 'key': 'files_display_mode', + 'key': 'diff_files_display_mode', 'str_value': '0', 'type': 'internal', - 'label': 'Files view display mode', + 'label': 'Diff dialog display mode', + }, + { + 'key': 'extract_files_display_mode', + 'str_value': '0', + 'type': 'internal', + 'label': 'Extract dialog display mode', }, ] if sys.platform == 'darwin': diff --git a/src/vorta/views/archive_tab.py b/src/vorta/views/archive_tab.py index db991f7bc..e89075231 100644 --- a/src/vorta/views/archive_tab.py +++ b/src/vorta/views/archive_tab.py @@ -31,7 +31,7 @@ from vorta.borg.rename import BorgRenameJob from vorta.borg.umount import BorgUmountJob from vorta.i18n import translate -from vorta.store.models import ArchiveModel, BackupProfileMixin +from vorta.store.models import ArchiveModel, BackupProfileMixin, SettingsModel from vorta.utils import ( choose_file_dialog, find_best_unit_for_sizes, @@ -43,6 +43,7 @@ from vorta.views import diff_result, extract_dialog from vorta.views.diff_result import DiffResultDialog, DiffTree from vorta.views.extract_dialog import ExtractDialog, ExtractTree +from vorta.views.partials.treemodel import FileTreeModel from vorta.views.source_tab import SizeItem from vorta.views.utils import get_colored_icon @@ -714,12 +715,24 @@ def extract_action(self): else: self._set_status(self.tr('Select an archive to restore first.')) + def get_extract_display_mode(self): + """ + Get the display mode for the extract dialog. + """ + display_mode = SettingsModel.get(key='extract_files_display_mode').str_value + if display_mode == '0': + return ExtractTree(mode=FileTreeModel.DisplayMode.TREE) + elif display_mode == '1': + return ExtractTree(mode=FileTreeModel.DisplayMode.SIMPLIFIED_TREE) + else: + raise ValueError("Invalid extract dialog display mode: {}".format(display_mode)) + def extract_list_result(self, result): """Process the contents of the archive to extract.""" self._set_status('') if result['returncode'] == 0: archive = ArchiveModel.get(name=result['params']['archive_name']) - model = ExtractTree() + model = self.get_extract_display_mode() self._set_status(self.tr("Processing archive contents")) self._t = extract_dialog.ParseThread(result['data'], model) self._t.finished.connect(lambda: self.extract_show_dialog(archive, model)) @@ -866,6 +879,20 @@ def diff_action(self): else: self._set_status(params['message']) + def get_diff_display_mode(self): + """ + Get the display mode for the diff dialog. + """ + display_mode = SettingsModel.get(key='diff_files_display_mode').str_value + if display_mode == '0': + return DiffTree(mode=FileTreeModel.DisplayMode.TREE) + elif display_mode == '1': + return DiffTree(mode=FileTreeModel.DisplayMode.SIMPLIFIED_TREE) + elif display_mode == '2': + return DiffTree(mode=FileTreeModel.DisplayMode.FLAT) + else: + raise ValueError("Invalid diff dialog display mode: {}".format(display_mode)) + def list_diff_result(self, result): """ Process the result of the `BorgDiffJob`. @@ -883,7 +910,7 @@ def list_diff_result(self, result): archive_older = ArchiveModel.get(name=result['params']['archive_name_older']) self._set_status(self.tr("Processing diff results.")) - model = DiffTree() + model = self.get_diff_display_mode() self._t = diff_result.ParseThread(result['data'], result['params']['json_lines'], model) self._t.finished.connect(lambda: self.show_diff_result(archive_newer, archive_older, model)) diff --git a/src/vorta/views/diff_result.py b/src/vorta/views/diff_result.py index dcf39ef89..51e5809fc 100644 --- a/src/vorta/views/diff_result.py +++ b/src/vorta/views/diff_result.py @@ -98,7 +98,7 @@ def __init__(self, archive_newer, archive_older, model: 'DiffTree'): self.archiveNameLabel_1.setText(f'{archive_newer.name}') self.archiveNameLabel_2.setText(f'{archive_older.name}') - diff_result_display_mode = SettingsModel.get(key='files_display_mode').str_value + diff_result_display_mode = SettingsModel.get(key='diff_files_display_mode').str_value self.comboBoxDisplayMode.setCurrentIndex(int(diff_result_display_mode)) self.comboBoxDisplayMode.currentIndexChanged.connect(self.change_display_mode) self.bFoldersOnTop.toggled.connect(self.sortproxy.keepFoldersOnTop) @@ -187,7 +187,7 @@ def change_display_mode(self, selection: int): raise Exception("Unknown item in comboBoxDisplayMode with index {}".format(selection)) SettingsModel.update({SettingsModel.str_value: str(selection)}).where( - SettingsModel.key == 'files_display_mode' + SettingsModel.key == 'diff_files_display_mode' ).execute() self.model.setMode(mode) @@ -852,3 +852,6 @@ def data(self, index: QModelIndex, role: int = Qt.ItemDataRole.DisplayRole): ) return tooltip + + def __init__(self, mode, parent=None): + super().__init__(mode, parent) diff --git a/src/vorta/views/extract_dialog.py b/src/vorta/views/extract_dialog.py index 2bd8ee987..e339b1f4d 100644 --- a/src/vorta/views/extract_dialog.py +++ b/src/vorta/views/extract_dialog.py @@ -91,7 +91,7 @@ def __init__(self, archive, model): self.archiveNameLabel.setText(f"{archive.name}, {archive.time}") # connect signals - diff_result_display_mode = SettingsModel.get(key='files_display_mode').str_value + diff_result_display_mode = SettingsModel.get(key='extract_files_display_mode').str_value self.comboBoxDisplayMode.setCurrentIndex(int(diff_result_display_mode)) self.comboBoxDisplayMode.currentIndexChanged.connect(self.change_display_mode) self.bFoldersOnTop.toggled.connect(self.sortproxy.keepFoldersOnTop) @@ -166,6 +166,10 @@ def change_display_mode(self, selection: int): else: raise Exception("Unknown item in comboBoxDisplayMode with index {}".format(selection)) + SettingsModel.update({SettingsModel.str_value: str(selection)}).where( + SettingsModel.key == 'extract_files_display_mode' + ).execute() + self.model.setMode(mode) def treeview_context_menu(self, pos: QPoint): @@ -410,6 +414,9 @@ def headerData( return None + def __init__(self, mode, parent=None): + super().__init__(mode, parent) + def data(self, index: QModelIndex, role: int = Qt.ItemDataRole.DisplayRole): """ Get the data for the given role and index. diff --git a/src/vorta/views/partials/treemodel.py b/src/vorta/views/partials/treemodel.py index 60f2df872..906505287 100644 --- a/src/vorta/views/partials/treemodel.py +++ b/src/vorta/views/partials/treemodel.py @@ -10,7 +10,6 @@ from pathlib import PurePath from typing import Generic, List, Optional, Sequence, Tuple, TypeVar, Union, overload from PyQt5.QtCore import QAbstractItemModel, QModelIndex, QObject, QSortFilterProxyModel, Qt, pyqtSignal -from vorta.store.models import SettingsModel #: A representation of a path Path = Tuple[str, ...] @@ -324,20 +323,12 @@ class DisplayMode(enum.Enum): #: simple list of items FLAT = enum.auto() - def __init__(self, parent=None): + def __init__(self, mode, parent=None): """Init.""" super().__init__(parent) self.root: FileSystemItem[T] = FileSystemItem([], None) - display_mode = SettingsModel.get(key='files_display_mode').str_value - if display_mode == '0': - self.mode: 'FileTreeModel.DisplayMode' = self.DisplayMode.TREE - elif display_mode == '1': - self.mode: 'FileTreeModel.DisplayMode' = self.DisplayMode.SIMPLIFIED_TREE - elif display_mode == '2': - self.mode: 'FileTreeModel.DisplayMode' = self.DisplayMode.FLAT - else: - raise ValueError("Invalid display mode: {}".format(display_mode)) + self.mode = mode #: flat representation of the tree self._flattened: List[FileSystemItem] = [] From c5efe360a4a82e0a59ad29c7b75dd5f17e489dc6 Mon Sep 17 00:00:00 2001 From: Divyansh Singh Date: Fri, 3 Mar 2023 02:51:06 +0530 Subject: [PATCH 3/7] make mode optional --- src/vorta/views/diff_result.py | 2 +- src/vorta/views/extract_dialog.py | 2 +- src/vorta/views/partials/treemodel.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/vorta/views/diff_result.py b/src/vorta/views/diff_result.py index 51e5809fc..ccd253300 100644 --- a/src/vorta/views/diff_result.py +++ b/src/vorta/views/diff_result.py @@ -853,5 +853,5 @@ def data(self, index: QModelIndex, role: int = Qt.ItemDataRole.DisplayRole): return tooltip - def __init__(self, mode, parent=None): + def __init__(self, mode=None, parent=None): super().__init__(mode, parent) diff --git a/src/vorta/views/extract_dialog.py b/src/vorta/views/extract_dialog.py index e339b1f4d..a1f4c3a33 100644 --- a/src/vorta/views/extract_dialog.py +++ b/src/vorta/views/extract_dialog.py @@ -414,7 +414,7 @@ def headerData( return None - def __init__(self, mode, parent=None): + def __init__(self, mode=None, parent=None): super().__init__(mode, parent) def data(self, index: QModelIndex, role: int = Qt.ItemDataRole.DisplayRole): diff --git a/src/vorta/views/partials/treemodel.py b/src/vorta/views/partials/treemodel.py index 906505287..71b79899d 100644 --- a/src/vorta/views/partials/treemodel.py +++ b/src/vorta/views/partials/treemodel.py @@ -323,7 +323,7 @@ class DisplayMode(enum.Enum): #: simple list of items FLAT = enum.auto() - def __init__(self, mode, parent=None): + def __init__(self, mode: 'FileTreeModel.DisplayMode' = DisplayMode.TREE, parent=None): """Init.""" super().__init__(parent) self.root: FileSystemItem[T] = FileSystemItem([], None) From 2d8b65280542700735b71290a42fc2a32465f87e Mon Sep 17 00:00:00 2001 From: Divyansh Singh Date: Sun, 5 Mar 2023 23:45:31 +0530 Subject: [PATCH 4/7] rename display mode methods --- src/vorta/views/archive_tab.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/vorta/views/archive_tab.py b/src/vorta/views/archive_tab.py index e89075231..1cefa8ef0 100644 --- a/src/vorta/views/archive_tab.py +++ b/src/vorta/views/archive_tab.py @@ -715,7 +715,7 @@ def extract_action(self): else: self._set_status(self.tr('Select an archive to restore first.')) - def get_extract_display_mode(self): + def get_extract_tree(self): """ Get the display mode for the extract dialog. """ @@ -732,7 +732,7 @@ def extract_list_result(self, result): self._set_status('') if result['returncode'] == 0: archive = ArchiveModel.get(name=result['params']['archive_name']) - model = self.get_extract_display_mode() + model = self.get_extract_tree() self._set_status(self.tr("Processing archive contents")) self._t = extract_dialog.ParseThread(result['data'], model) self._t.finished.connect(lambda: self.extract_show_dialog(archive, model)) @@ -879,7 +879,7 @@ def diff_action(self): else: self._set_status(params['message']) - def get_diff_display_mode(self): + def get_diff_tree(self): """ Get the display mode for the diff dialog. """ @@ -910,7 +910,7 @@ def list_diff_result(self, result): archive_older = ArchiveModel.get(name=result['params']['archive_name_older']) self._set_status(self.tr("Processing diff results.")) - model = self.get_diff_display_mode() + model = self.get_diff_tree() self._t = diff_result.ParseThread(result['data'], result['params']['json_lines'], model) self._t.finished.connect(lambda: self.show_diff_result(archive_newer, archive_older, model)) From 3cfd9087c553a63a28018b8d96a8e6477112dfbb Mon Sep 17 00:00:00 2001 From: Divyansh Singh Date: Tue, 7 Mar 2023 21:59:11 +0530 Subject: [PATCH 5/7] refactor --- src/vorta/views/archive_tab.py | 33 +++---------------------------- src/vorta/views/diff_result.py | 5 +---- src/vorta/views/extract_dialog.py | 5 +---- 3 files changed, 5 insertions(+), 38 deletions(-) diff --git a/src/vorta/views/archive_tab.py b/src/vorta/views/archive_tab.py index 1cefa8ef0..db991f7bc 100644 --- a/src/vorta/views/archive_tab.py +++ b/src/vorta/views/archive_tab.py @@ -31,7 +31,7 @@ from vorta.borg.rename import BorgRenameJob from vorta.borg.umount import BorgUmountJob from vorta.i18n import translate -from vorta.store.models import ArchiveModel, BackupProfileMixin, SettingsModel +from vorta.store.models import ArchiveModel, BackupProfileMixin from vorta.utils import ( choose_file_dialog, find_best_unit_for_sizes, @@ -43,7 +43,6 @@ from vorta.views import diff_result, extract_dialog from vorta.views.diff_result import DiffResultDialog, DiffTree from vorta.views.extract_dialog import ExtractDialog, ExtractTree -from vorta.views.partials.treemodel import FileTreeModel from vorta.views.source_tab import SizeItem from vorta.views.utils import get_colored_icon @@ -715,24 +714,12 @@ def extract_action(self): else: self._set_status(self.tr('Select an archive to restore first.')) - def get_extract_tree(self): - """ - Get the display mode for the extract dialog. - """ - display_mode = SettingsModel.get(key='extract_files_display_mode').str_value - if display_mode == '0': - return ExtractTree(mode=FileTreeModel.DisplayMode.TREE) - elif display_mode == '1': - return ExtractTree(mode=FileTreeModel.DisplayMode.SIMPLIFIED_TREE) - else: - raise ValueError("Invalid extract dialog display mode: {}".format(display_mode)) - def extract_list_result(self, result): """Process the contents of the archive to extract.""" self._set_status('') if result['returncode'] == 0: archive = ArchiveModel.get(name=result['params']['archive_name']) - model = self.get_extract_tree() + model = ExtractTree() self._set_status(self.tr("Processing archive contents")) self._t = extract_dialog.ParseThread(result['data'], model) self._t.finished.connect(lambda: self.extract_show_dialog(archive, model)) @@ -879,20 +866,6 @@ def diff_action(self): else: self._set_status(params['message']) - def get_diff_tree(self): - """ - Get the display mode for the diff dialog. - """ - display_mode = SettingsModel.get(key='diff_files_display_mode').str_value - if display_mode == '0': - return DiffTree(mode=FileTreeModel.DisplayMode.TREE) - elif display_mode == '1': - return DiffTree(mode=FileTreeModel.DisplayMode.SIMPLIFIED_TREE) - elif display_mode == '2': - return DiffTree(mode=FileTreeModel.DisplayMode.FLAT) - else: - raise ValueError("Invalid diff dialog display mode: {}".format(display_mode)) - def list_diff_result(self, result): """ Process the result of the `BorgDiffJob`. @@ -910,7 +883,7 @@ def list_diff_result(self, result): archive_older = ArchiveModel.get(name=result['params']['archive_name_older']) self._set_status(self.tr("Processing diff results.")) - model = self.get_diff_tree() + model = DiffTree() self._t = diff_result.ParseThread(result['data'], result['params']['json_lines'], model) self._t.finished.connect(lambda: self.show_diff_result(archive_newer, archive_older, model)) diff --git a/src/vorta/views/diff_result.py b/src/vorta/views/diff_result.py index ccd253300..34f6a9057 100644 --- a/src/vorta/views/diff_result.py +++ b/src/vorta/views/diff_result.py @@ -99,8 +99,8 @@ def __init__(self, archive_newer, archive_older, model: 'DiffTree'): self.archiveNameLabel_2.setText(f'{archive_older.name}') diff_result_display_mode = SettingsModel.get(key='diff_files_display_mode').str_value - self.comboBoxDisplayMode.setCurrentIndex(int(diff_result_display_mode)) self.comboBoxDisplayMode.currentIndexChanged.connect(self.change_display_mode) + self.comboBoxDisplayMode.setCurrentIndex(int(diff_result_display_mode)) self.bFoldersOnTop.toggled.connect(self.sortproxy.keepFoldersOnTop) self.bCollapseAll.clicked.connect(self.treeView.collapseAll) @@ -852,6 +852,3 @@ def data(self, index: QModelIndex, role: int = Qt.ItemDataRole.DisplayRole): ) return tooltip - - def __init__(self, mode=None, parent=None): - super().__init__(mode, parent) diff --git a/src/vorta/views/extract_dialog.py b/src/vorta/views/extract_dialog.py index a1f4c3a33..f8bd5efb5 100644 --- a/src/vorta/views/extract_dialog.py +++ b/src/vorta/views/extract_dialog.py @@ -92,8 +92,8 @@ def __init__(self, archive, model): # connect signals diff_result_display_mode = SettingsModel.get(key='extract_files_display_mode').str_value - self.comboBoxDisplayMode.setCurrentIndex(int(diff_result_display_mode)) self.comboBoxDisplayMode.currentIndexChanged.connect(self.change_display_mode) + self.comboBoxDisplayMode.setCurrentIndex(int(diff_result_display_mode)) self.bFoldersOnTop.toggled.connect(self.sortproxy.keepFoldersOnTop) self.bCollapseAll.clicked.connect(self.treeView.collapseAll) @@ -414,9 +414,6 @@ def headerData( return None - def __init__(self, mode=None, parent=None): - super().__init__(mode, parent) - def data(self, index: QModelIndex, role: int = Qt.ItemDataRole.DisplayRole): """ Get the data for the given role and index. From 66bac7c628df59cd80bfdf306aefd29dac11984c Mon Sep 17 00:00:00 2001 From: Divyansh Singh Date: Tue, 7 Mar 2023 22:02:05 +0530 Subject: [PATCH 6/7] move code above connect signals comment --- src/vorta/views/extract_dialog.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vorta/views/extract_dialog.py b/src/vorta/views/extract_dialog.py index f8bd5efb5..9b2fed4c3 100644 --- a/src/vorta/views/extract_dialog.py +++ b/src/vorta/views/extract_dialog.py @@ -89,9 +89,9 @@ def __init__(self, archive, model): self.buttonBox.addButton(self.extractButton, QDialogButtonBox.ButtonRole.AcceptRole) self.archiveNameLabel.setText(f"{archive.name}, {archive.time}") + diff_result_display_mode = SettingsModel.get(key='extract_files_display_mode').str_value # connect signals - diff_result_display_mode = SettingsModel.get(key='extract_files_display_mode').str_value self.comboBoxDisplayMode.currentIndexChanged.connect(self.change_display_mode) self.comboBoxDisplayMode.setCurrentIndex(int(diff_result_display_mode)) self.bFoldersOnTop.toggled.connect(self.sortproxy.keepFoldersOnTop) From c9dec7900052370f42a80df9779461ab6ddb56fa Mon Sep 17 00:00:00 2001 From: Divyansh Singh Date: Thu, 9 Mar 2023 01:24:38 +0530 Subject: [PATCH 7/7] reorder code --- src/vorta/views/diff_result.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vorta/views/diff_result.py b/src/vorta/views/diff_result.py index 34f6a9057..094ece37e 100644 --- a/src/vorta/views/diff_result.py +++ b/src/vorta/views/diff_result.py @@ -98,8 +98,8 @@ def __init__(self, archive_newer, archive_older, model: 'DiffTree'): self.archiveNameLabel_1.setText(f'{archive_newer.name}') self.archiveNameLabel_2.setText(f'{archive_older.name}') - diff_result_display_mode = SettingsModel.get(key='diff_files_display_mode').str_value self.comboBoxDisplayMode.currentIndexChanged.connect(self.change_display_mode) + diff_result_display_mode = SettingsModel.get(key='diff_files_display_mode').str_value self.comboBoxDisplayMode.setCurrentIndex(int(diff_result_display_mode)) self.bFoldersOnTop.toggled.connect(self.sortproxy.keepFoldersOnTop) self.bCollapseAll.clicked.connect(self.treeView.collapseAll)