From 04d971ff44b29803a581a0cdff6f731f52bb3c11 Mon Sep 17 00:00:00 2001 From: Michael Becker Date: Sun, 22 Dec 2019 15:21:40 -0500 Subject: [PATCH] fix some stuff related to saving document --- .../MainWindow.cs | 26 ++++++++++--------- 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/CSharp/Libraries/UniversalEditor.UserInterface/MainWindow.cs b/CSharp/Libraries/UniversalEditor.UserInterface/MainWindow.cs index cba6976b..4b383f54 100644 --- a/CSharp/Libraries/UniversalEditor.UserInterface/MainWindow.cs +++ b/CSharp/Libraries/UniversalEditor.UserInterface/MainWindow.cs @@ -1010,9 +1010,14 @@ namespace UniversalEditor.UserInterface public bool SaveFileAs(Accessor accessor, DataFormat df, ObjectModel om) { - Document.Save(om, df, accessor); + EditorPage page = GetCurrentEditorPage(); + if (page == null) return false; - DockingWindow di = dckContainer.Items[GetCurrentEditorPage()] as DockingWindow; + Document d = new Document(om, df, accessor); + d.Save(); + page.Document = d; + + DockingWindow di = dckContainer.Items[page] as DockingWindow; if (di != null) { di.Name = accessor.GetFileName(); @@ -1101,18 +1106,15 @@ namespace UniversalEditor.UserInterface public void CloseFile() { DockingWindow dw = (dckContainer.CurrentItem as DockingWindow); - if (dw != null) + EditorPage ep = (dw?.ChildControl as EditorPage); + if (ep != null && !ConfirmExit(ep)) { - if (dw.ChildControl is EditorPage) - { - if (!ConfirmExit(dw.ChildControl as EditorPage)) - { - return; - } - } - dckContainer.Items.Remove(dckContainer.CurrentItem); - documentWindowCount--; + return; } + + dckContainer.Items.Remove(dckContainer.CurrentItem); + documentWindowCount--; + if (documentWindowCount == 0) { CloseWindow ();