Increased flexibility and folder obscuring.
This commit is contained in:
@@ -9,7 +9,7 @@ from PyQt6.QtWidgets import QMainWindow, QFileDialog
|
||||
logger = logging.getLogger(f"submissions.{__name__}")
|
||||
|
||||
|
||||
def select_open_file(obj:QMainWindow, file_extension:str) -> Path:
|
||||
def select_open_file(obj: QMainWindow, file_extension: str | None = None) -> Path:
|
||||
"""
|
||||
File dialog to select a file to read from
|
||||
|
||||
@@ -19,19 +19,23 @@ def select_open_file(obj:QMainWindow, file_extension:str) -> Path:
|
||||
|
||||
Returns:
|
||||
Path: Path of file to be opened
|
||||
"""
|
||||
"""
|
||||
try:
|
||||
home_dir = obj.last_dir.resolve().__str__()
|
||||
except FileNotFoundError:
|
||||
home_dir = Path.home().resolve().__str__()
|
||||
except AttributeError:
|
||||
home_dir = obj.app.last_dir.resolve().__str__()
|
||||
fname = Path(QFileDialog.getOpenFileName(obj, 'Open file', home_dir, filter = f"{file_extension}(*.{file_extension})")[0])
|
||||
if file_extension is None:
|
||||
fname = Path(QFileDialog.getExistingDirectory(obj, "Open Folder", home_dir))
|
||||
else:
|
||||
fname = Path(
|
||||
QFileDialog.getOpenFileName(obj, 'Open file', home_dir, filter=f"{file_extension}(*.{file_extension})")[0])
|
||||
obj.last_dir = fname.parent
|
||||
return fname
|
||||
|
||||
|
||||
def select_save_file(obj:QMainWindow, default_name:str, extension:str) -> Path:
|
||||
def select_save_file(obj: QMainWindow, default_name: str, extension: str) -> Path:
|
||||
"""
|
||||
File dialog to select a file to write to
|
||||
|
||||
@@ -42,13 +46,13 @@ def select_save_file(obj:QMainWindow, default_name:str, extension:str) -> Path:
|
||||
|
||||
Returns:
|
||||
Path: Path of file to be opened
|
||||
"""
|
||||
"""
|
||||
try:
|
||||
home_dir = obj.last_dir.joinpath(default_name).resolve().__str__()
|
||||
except FileNotFoundError:
|
||||
home_dir = Path.home().joinpath(default_name).resolve().__str__()
|
||||
except AttributeError:
|
||||
home_dir = obj.app.last_dir.joinpath(default_name).resolve().__str__()
|
||||
fname = Path(QFileDialog.getSaveFileName(obj, "Save File", home_dir, filter = f"{extension}(*.{extension})")[0])
|
||||
fname = Path(QFileDialog.getSaveFileName(obj, "Save File", home_dir, filter=f"{extension}(*.{extension})")[0])
|
||||
obj.last_dir = fname.parent
|
||||
return fname
|
||||
|
||||
Reference in New Issue
Block a user