From ef8c7f7ae955b6d03777480e24b570586bebb614 Mon Sep 17 00:00:00 2001 From: AlexandreSajus Date: Wed, 8 Dec 2021 21:59:46 +0100 Subject: [PATCH 1/2] :beetle: saves when save as --- opencodeblocks/graphics/window.py | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/opencodeblocks/graphics/window.py b/opencodeblocks/graphics/window.py index e5fb673c..7273b21c 100644 --- a/opencodeblocks/graphics/window.py +++ b/opencodeblocks/graphics/window.py @@ -37,14 +37,17 @@ def __init__(self): ) loadStylesheets( ( - os.path.join(os.path.dirname(__file__), "..", "qss", "ocb_dark.qss"), + os.path.join(os.path.dirname(__file__), + "..", "qss", "ocb_dark.qss"), self.stylesheet_filename, ) ) self.mdiArea = QMdiArea() - self.mdiArea.setHorizontalScrollBarPolicy(Qt.ScrollBarPolicy.ScrollBarAsNeeded) - self.mdiArea.setVerticalScrollBarPolicy(Qt.ScrollBarPolicy.ScrollBarAsNeeded) + self.mdiArea.setHorizontalScrollBarPolicy( + Qt.ScrollBarPolicy.ScrollBarAsNeeded) + self.mdiArea.setVerticalScrollBarPolicy( + Qt.ScrollBarPolicy.ScrollBarAsNeeded) self.mdiArea.setViewMode(QMdiArea.ViewMode.TabbedView) self.mdiArea.setDocumentMode(True) self.mdiArea.setTabsMovable(True) @@ -306,7 +309,8 @@ def onFileNew(self): def onFileOpen(self): """Open a file.""" - filename, _ = QFileDialog.getOpenFileName(self, "Open ipygraph from file") + filename, _ = QFileDialog.getOpenFileName( + self, "Open ipygraph from file") if filename == "": return if os.path.isfile(filename): @@ -314,14 +318,16 @@ def onFileOpen(self): subwnd.show() self.statusbar.showMessage(f"Successfully loaded {filename}", 2000) - def onFileSave(self) -> bool: + def onFileSave(self, current_window: OCBWidget = None) -> bool: """Save file. Returns: True if the file was successfully saved, False otherwise. """ - current_window = self.activeMdiChild() + if current_window is None: + current_window = self.activeMdiChild() + if current_window is not None: if current_window.savepath is None: return self.onFileSaveAs() @@ -340,11 +346,12 @@ def onFileSaveAs(self) -> bool: """ current_window = self.activeMdiChild() if current_window is not None: - filename, _ = QFileDialog.getSaveFileName(self, "Save ipygraph to file") + filename, _ = QFileDialog.getSaveFileName( + self, "Save ipygraph to file") if filename == "": return False current_window.savepath = filename - self.onFileSave() + self.onFileSave(current_window=current_window) return True return False From 1a3c0e566c2d75f682c82400d293809f7fee3806 Mon Sep 17 00:00:00 2001 From: AlexandreSajus Date: Wed, 8 Dec 2021 22:12:42 +0100 Subject: [PATCH 2/2] :beetle: Sets default file suffix to .ipyg --- opencodeblocks/graphics/window.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/opencodeblocks/graphics/window.py b/opencodeblocks/graphics/window.py index 7273b21c..b6c19270 100644 --- a/opencodeblocks/graphics/window.py +++ b/opencodeblocks/graphics/window.py @@ -346,8 +346,10 @@ def onFileSaveAs(self) -> bool: """ current_window = self.activeMdiChild() if current_window is not None: - filename, _ = QFileDialog.getSaveFileName( - self, "Save ipygraph to file") + dialog = QFileDialog() + dialog.setDefaultSuffix(".ipyg") + filename, _ = dialog.getSaveFileName( + self, "Save ipygraph to file", filter="IPython Graph (*.ipyg)") if filename == "": return False current_window.savepath = filename