From 328728fa321dbd89e5915e76044de172c3afbcfa Mon Sep 17 00:00:00 2001 From: Michael Becker Date: Sat, 6 Aug 2022 19:24:48 -0400 Subject: [PATCH] support multiple configuration files for reading, but only write to user-writable files --- .../UniversalEditor.UserInterface/ConfigurationManager.cs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Libraries/UniversalEditor.UserInterface/ConfigurationManager.cs b/Libraries/UniversalEditor.UserInterface/ConfigurationManager.cs index c65af08d..e765303e 100644 --- a/Libraries/UniversalEditor.UserInterface/ConfigurationManager.cs +++ b/Libraries/UniversalEditor.UserInterface/ConfigurationManager.cs @@ -48,10 +48,11 @@ namespace UniversalEditor.UserInterface public void Load() { + UniversalEditor.DataFormats.PropertyList.XML.XMLPropertyListDataFormat xdf = new DataFormats.PropertyList.XML.XMLPropertyListDataFormat(); - string FileName = ((UIApplication)Application.Instance).BasePath + System.IO.Path.DirectorySeparatorChar.ToString() + "Configuration.xml"; - if (System.IO.File.Exists(FileName)) + string[] FileNames = Application.Instance.FindFiles("~/Configuration.xml"); + foreach (string FileName in FileNames) { Document.Load(mvarLocalConfiguration, xdf, new Accessors.FileAccessor(FileName)); } @@ -59,8 +60,9 @@ namespace UniversalEditor.UserInterface public void Save() { + string FileName = Application.Instance.FindFile("~/Configuration.xml", FindFileOptions.UserWritable); + UniversalEditor.DataFormats.PropertyList.XML.XMLPropertyListDataFormat xdf = new DataFormats.PropertyList.XML.XMLPropertyListDataFormat(); - string FileName = ((UIApplication)Application.Instance).BasePath + System.IO.Path.DirectorySeparatorChar.ToString() + "Configuration.xml"; string dir = System.IO.Path.GetDirectoryName (FileName); if (!System.IO.Directory.Exists(dir)) {