From 250a481f318de9b0e487ec935f9d9faba82b0d12 Mon Sep 17 00:00:00 2001 From: deeplow Date: Mon, 12 Jun 2023 11:40:38 +0100 Subject: [PATCH] Store ref file_selection dialog Allow an outside module (e.g. tests) to be able to "grab" the document selection dialog. --- dangerzone/gui/main_window.py | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/dangerzone/gui/main_window.py b/dangerzone/gui/main_window.py index 91d3331..b92a2eb 100644 --- a/dangerzone/gui/main_window.py +++ b/dangerzone/gui/main_window.py @@ -544,24 +544,25 @@ class DocSelectionWidget(QtWidgets.QWidget): layout.addStretch() self.setLayout(layout) - def dangerous_doc_button_clicked(self) -> None: - file_dialog = QtWidgets.QFileDialog() - file_dialog.setWindowTitle("Open Documents") - file_dialog.setFileMode(QtWidgets.QFileDialog.ExistingFiles) - file_dialog.setNameFilters( + # Open Docs Dialog + self.file_dialog = QtWidgets.QFileDialog() + self.file_dialog.setWindowTitle("Open Documents") + self.file_dialog.setFileMode(QtWidgets.QFileDialog.ExistingFiles) + self.file_dialog.setNameFilters( [ "Documents (*.pdf *.docx *.doc *.docm *.xlsx *.xls *.pptx *.ppt *.odt *.odg *.odp *.ods *.jpg *.jpeg *.gif *.png *.tif *.tiff)" ] ) + def dangerous_doc_button_clicked(self) -> None: unconverted_docs = self.dangerzone.get_unconverted_documents() if len(unconverted_docs) > 0: # In case there were some already selected documents, open the dir of selected files first_doc_dir = os.path.dirname(unconverted_docs[0].input_filename) - file_dialog.setDirectory(first_doc_dir) + self.file_dialog.setDirectory(first_doc_dir) - if file_dialog.exec(): - documents = [Document(filename) for filename in file_dialog.selectedFiles()] + if self.file_dialog.exec(): + documents = [Document(filename) for filename in self.file_dialog.selectedFiles()] self.documents_selected.emit(documents) else: # No files selected