From a1827a07fcb20a95a9271828ed0b86fa85173ffc Mon Sep 17 00:00:00 2001 From: Michael Becker Date: Sun, 15 Dec 2019 04:40:09 -0500 Subject: [PATCH] horribly inefficent signaling to let us know when a document is changed --- .../Editors/FileSystem/FileSystemEditor.cs | 25 ++++++++++++------- .../Editors/Text/Plain/PlainTextEditor.cs | 3 +++ 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/CSharp/Libraries/UniversalEditor.UserInterface/Editors/FileSystem/FileSystemEditor.cs b/CSharp/Libraries/UniversalEditor.UserInterface/Editors/FileSystem/FileSystemEditor.cs index c994f25b..34534eca 100644 --- a/CSharp/Libraries/UniversalEditor.UserInterface/Editors/FileSystem/FileSystemEditor.cs +++ b/CSharp/Libraries/UniversalEditor.UserInterface/Editors/FileSystem/FileSystemEditor.cs @@ -113,6 +113,8 @@ namespace UniversalEditor.Editors.FileSystem fd.MultiSelect = true; if (fd.ShowDialog() == DialogResult.OK) { + BeginEdit(); + foreach (string fileName in fd.SelectedFileNames) { string fileTitle = System.IO.Path.GetFileName(fileName); @@ -120,6 +122,8 @@ namespace UniversalEditor.Editors.FileSystem UIAddExistingFile(fsom, fileTitle, data); } + + EndEdit(); } } @@ -195,6 +199,8 @@ namespace UniversalEditor.Editors.FileSystem { Folder f = FolderFromPath(fd.SelectedFileNames[fd.SelectedFileNames.Count - 1]); IFileSystemObject[] files = f.GetContents(); + + BeginEdit(); foreach (IFileSystemObject fso in files) { if (fso is File) @@ -206,6 +212,7 @@ namespace UniversalEditor.Editors.FileSystem RecursiveAddFolder(fso as Folder); } } + EndEdit(); } } @@ -215,20 +222,16 @@ namespace UniversalEditor.Editors.FileSystem if (fsom == null) return; - if (item != null) + BeginEdit(); + if (item is Folder) { - if (item is File) - { - } - else if (item is Folder) - { - (item as Folder).Folders.Add(f); - } + (item as Folder).Folders.Add(f); } - else + else if (item == null) { fsom.Folders.Add(f); } + EndEdit(); } private void FileAddExistingFolder_Click(object sender, EventArgs e) @@ -241,9 +244,13 @@ namespace UniversalEditor.Editors.FileSystem fd.Mode = FileDialogMode.SelectFolder; if (fd.ShowDialog() == DialogResult.OK) { + BeginEdit(); + Folder f = FolderFromPath(fd.SelectedFileNames[fd.SelectedFileNames.Count - 1]); RecursiveAddFolder(f); AddFolderToItem(f, null); + + EndEdit(); } } diff --git a/CSharp/Libraries/UniversalEditor.UserInterface/Editors/Text/Plain/PlainTextEditor.cs b/CSharp/Libraries/UniversalEditor.UserInterface/Editors/Text/Plain/PlainTextEditor.cs index 25680e9f..ce72fb4c 100644 --- a/CSharp/Libraries/UniversalEditor.UserInterface/Editors/Text/Plain/PlainTextEditor.cs +++ b/CSharp/Libraries/UniversalEditor.UserInterface/Editors/Text/Plain/PlainTextEditor.cs @@ -65,7 +65,10 @@ namespace UniversalEditor.Editors.Text.Plain private void txt_Changed(object sender, EventArgs e) { PlainTextObjectModel om = (this.ObjectModel as PlainTextObjectModel); + + BeginEdit(); om.Text = txt.Text; + EndEdit(); } public PlainTextEditor ()