diff --git a/Source/Core/Duality/Utility/SettingsContainer.cs b/Source/Core/Duality/Utility/SettingsContainer.cs index 020bd1f40..9da2a6f51 100644 --- a/Source/Core/Duality/Utility/SettingsContainer.cs +++ b/Source/Core/Duality/Utility/SettingsContainer.cs @@ -10,7 +10,7 @@ namespace Duality public class SettingsContainer : ISettingsContainer where TSettings : class, new() { - private readonly string path; + public string Path { get; } /// /// Fired when has changed. @@ -28,7 +28,7 @@ public class SettingsContainer : ISettingsContainer /// public SettingsContainer(string path) { - this.path = path; + this.Path = path; } /// @@ -36,7 +36,7 @@ public SettingsContainer(string path) /// public void Load() { - this.Instance = Serializer.TryReadObject(this.path, typeof(XmlSerializer)) ?? new TSettings(); + this.Instance = Serializer.TryReadObject(this.Path, typeof(XmlSerializer)) ?? new TSettings(); this.Changed?.Invoke(this, EventArgs.Empty); } @@ -45,7 +45,7 @@ public void Load() /// public void Save() { - Serializer.WriteObject(this.Instance, this.path, typeof(XmlSerializer)); + Serializer.WriteObject(this.Instance, this.Path, typeof(XmlSerializer)); } } } diff --git a/Source/Editor/DualityEditor/DesignTimeObjectData.cs b/Source/Editor/DualityEditor/DesignTimeObjectData.cs index 3a2b0cd74..1f7779cfe 100644 --- a/Source/Editor/DualityEditor/DesignTimeObjectData.cs +++ b/Source/Editor/DualityEditor/DesignTimeObjectData.cs @@ -1,11 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; -using System.Drawing; -using System.IO; -using Duality; -using Duality.Serialization; using Duality.Resources; namespace Duality.Editor @@ -77,42 +73,20 @@ public bool Equals(DataContainer other) } } - private static DesignTimeObjectDataManager manager = new DesignTimeObjectDataManager(); - internal static void Init() { - Load(DualityEditorApp.DesignTimeDataFile); Scene.Leaving += Scene_Leaving; } internal static void Terminate() { Scene.Leaving -= Scene_Leaving; - Save(DualityEditorApp.DesignTimeDataFile); } - public static DesignTimeObjectData Get(Guid objId) - { - return manager.RequestDesignTimeData(objId); - } - public static DesignTimeObjectData Get(GameObject obj) - { - return manager.RequestDesignTimeData(obj.Id); - } - - private static void Save(string filePath) - { - Serializer.WriteObject(manager, filePath, typeof(BinarySerializer)); - } - private static void Load(string filePath) - { - manager = Serializer.TryReadObject(filePath) ?? new DesignTimeObjectDataManager(); - } private static void Scene_Leaving(object sender, EventArgs e) { - manager.CleanupDesignTimeData(); + DualityEditorApp.DualityEditorUserData.Instance?.DesignTimeObjectDataManager.CleanupDesignTimeData(); } - public static readonly DesignTimeObjectData Default = new DesignTimeObjectData(); private Guid objId = Guid.Empty; @@ -184,6 +158,11 @@ public DesignTimeObjectData(Guid parentId, DesignTimeObjectData baseData) this.attached = true; } + public static DesignTimeObjectData Get(GameObject obj) + { + return DualityEditorApp.DualityEditorUserData.Instance.DesignTimeObjectDataManager.RequestDesignTimeData(obj.Id); + } + public T RequestCustomData() where T : new() { this.Detach(); @@ -231,14 +210,10 @@ private void Detach() } } - internal class DesignTimeObjectDataManager : ISerializeExplicit + public class DesignTimeObjectDataManager { - private static readonly int GuidByteLength = Guid.Empty.ToByteArray().Length; - private const int Version_First = 1; - private Dictionary dataStore = new Dictionary(); - - + public DesignTimeObjectData RequestDesignTimeData(Guid objId) { DesignTimeObjectData data; @@ -273,66 +248,5 @@ public void OptimizeDesignTimeData() shareValues.RemoveAt(shareValues.Count - 1); } } - - void ISerializeExplicit.WriteData(IDataWriter writer) - { - this.CleanupDesignTimeData(); - this.OptimizeDesignTimeData(); - - Guid[] guidArray = dataStore.Keys.ToArray(); - byte[] data = new byte[guidArray.Length * GuidByteLength]; - for (int i = 0; i < guidArray.Length; i++) - { - Array.Copy( - guidArray[i].ToByteArray(), 0, - data, i * GuidByteLength, GuidByteLength); - } - DesignTimeObjectData.DataContainer[] objData = dataStore.Values.Select(d => d.Data).ToArray(); - bool[] objDataDirty = dataStore.Values.Select(d => d.IsAttached).ToArray(); - - writer.WriteValue("version", Version_First); - writer.WriteValue("dataStoreKeys", data); - writer.WriteValue("dataStoreValues", objData); - writer.WriteValue("dataStoreDirtyFlag", objDataDirty); - } - void ISerializeExplicit.ReadData(IDataReader reader) - { - int version; - reader.ReadValue("version", out version); - - if (this.dataStore == null) - this.dataStore = new Dictionary(); - else - this.dataStore.Clear(); - - if (version == Version_First) - { - byte[] data; - DesignTimeObjectData.DataContainer[] objData; - bool[] objDataDirty; - reader.ReadValue("dataStoreKeys", out data); - reader.ReadValue("dataStoreValues", out objData); - reader.ReadValue("dataStoreDirtyFlag", out objDataDirty); - - Guid[] guidArray = new Guid[data.Length / GuidByteLength]; - byte[] guidData = new byte[GuidByteLength]; - for (int i = 0; i < guidArray.Length; i++) - { - Array.Copy( - data, i * GuidByteLength, - guidData, 0, GuidByteLength); - guidArray[i] = new Guid(guidData); - } - - for (int i = 0; i < objData.Length; i++) - { - this.dataStore.Add(guidArray[i], new DesignTimeObjectData(guidArray[i], objData[i], objDataDirty[i])); - } - } - else - { - // Unknown format - } - } } } diff --git a/Source/Editor/DualityEditor/DualityEditorApp.cs b/Source/Editor/DualityEditor/DualityEditorApp.cs index aea48fb2e..2c22477ff 100644 --- a/Source/Editor/DualityEditor/DualityEditorApp.cs +++ b/Source/Editor/DualityEditor/DualityEditorApp.cs @@ -3,15 +3,10 @@ using System.Linq; using System.Text; using System.IO; -using System.IO.Compression; using System.Reflection; using System.Windows.Forms; using System.Drawing; -using System.Xml; -using System.Xml.Linq; -using System.Text.RegularExpressions; -using Duality; using Duality.IO; using Duality.Components; using Duality.Resources; @@ -22,7 +17,6 @@ using Duality.Editor.UndoRedoActions; using Duality.Editor.AssetManagement; -using WeifenLuo.WinFormsUI.Docking; using Duality.Launcher; namespace Duality.Editor @@ -32,9 +26,6 @@ public static class DualityEditorApp public const string EditorLogfilePath = "logfile_editor.txt"; public const string EditorPrevLogfileName = "logfile_editor_{0}.txt"; public const string EditorPrevLogfileDir = "Temp"; - public const string DesignTimeDataFile = "DesignTimeData.dat"; - public const string UserDataFile = "EditorUserData.dat"; - private const string UserDataDockSeparator = ""; public const string ActionContextMenu = "ContextMenu"; public const string ActionContextOpenRes = "OpenRes"; @@ -131,6 +122,11 @@ public static bool IsFirstEditorSession get { return firstEditorSession; } } + /// + /// [GET] Provides access to Duality's current user data. This is never null. + /// + public static SettingsContainer DualityEditorUserData { get; } = new SettingsContainer("EditorUserData.xml"); + /// /// [GET] Provides access to Duality's current application data. This is never null. /// @@ -216,11 +212,12 @@ public static void Init(MainForm mainForm, bool recover) DualityApp.InitPostWindow(); EditorAppData.Load(); - EditorAppData.Save(); mainForm.UpdateLaunchAppActions(); - LoadUserData(); + DualityEditorUserData.Load(); + mainForm.LoadDockPanelData(DualityEditorUserData.Instance.DockPanelState); + PluginManager.LoadUserData(DualityEditorUserData.Instance.PluginSettings); pluginManager.InitPlugins(); @@ -407,146 +404,6 @@ public static IEnumerable GetEditorActions(Type subjectType, IEnu } } - public static void SaveUserData() - { - Logs.Editor.Write("Saving user data..."); - Logs.Editor.PushIndent(); - - using (FileStream str = File.Create(UserDataFile)) - { - Encoding encoding = Encoding.Default; - using (StreamWriter writer = new StreamWriter(str.NonClosing())) - { - encoding = writer.Encoding; - - XDocument xmlDoc = new XDocument(); - XElement rootElement = new XElement("UserData"); - { - XElement editorAppElement = new XElement("EditorApp"); - { - editorAppElement.SetElementValue("Backups", backupsEnabled); - editorAppElement.SetElementValue("Autosaves", autosaveFrequency); - editorAppElement.SetElementValue("LauncherPath", launcherApp); - editorAppElement.SetElementValue("FirstSession", false); - editorAppElement.SetElementValue("ActiveDocumentIndex", mainForm.ActiveDocumentIndex); - editorAppElement.SetElementValue("LastOpenScene", lastOpenScene.Path); - editorAppElement.SetElementValue("StartWithLastScene", startWithLastScene); - } - if (!editorAppElement.IsEmpty) - rootElement.Add(editorAppElement); - - XElement pluginsElement = new XElement("Plugins"); - pluginManager.SaveUserData(pluginsElement); - if (!pluginsElement.IsEmpty) - rootElement.Add(pluginsElement); - } - xmlDoc.Add(rootElement); - xmlDoc.Save(writer.BaseStream); - - writer.WriteLine(); - writer.WriteLine(UserDataDockSeparator); - writer.Flush(); - } - mainForm.MainDockPanel.SaveAsXml(str, encoding); - } - - Logs.Editor.PopIndent(); - } - private static void LoadUserData() - { - if (!File.Exists(UserDataFile)) - { - File.WriteAllText(UserDataFile, Properties.GeneralRes.DefaultEditorUserData); - if (!File.Exists(UserDataFile)) return; - } - - Logs.Editor.Write("Loading user data..."); - Logs.Editor.PushIndent(); - - Encoding encoding = Encoding.Default; - StringBuilder editorData = new StringBuilder(); - StringBuilder dockPanelData = new StringBuilder(); - using (StreamReader reader = new StreamReader(UserDataFile)) - { - encoding = reader.CurrentEncoding; - string line; - - // Retrieve pre-DockPanel section - while ((line = reader.ReadLine()) != null && line.Trim() != UserDataDockSeparator) - editorData.AppendLine(line); - - // Retrieve DockPanel section - while ((line = reader.ReadLine()) != null) - dockPanelData.AppendLine(line); - } - - // Load DockPanel Data - { - Logs.Editor.Write("Loading DockPanel data..."); - Logs.Editor.PushIndent(); - MemoryStream dockPanelDataStream = new MemoryStream(encoding.GetBytes(dockPanelData.ToString())); - try - { - mainForm.MainDockPanel.LoadFromXml(dockPanelDataStream, DeserializeDockContent); - } - catch (Exception e) - { - Logs.Editor.WriteError("Cannot load DockPanel data due to malformed or non-existent Xml: {0}", LogFormat.Exception(e)); - } - Logs.Editor.PopIndent(); - } - - // Load editor userdata - { - Logs.Editor.Write("Loading editor user data..."); - Logs.Editor.PushIndent(); - try - { - int activeDocumentIndex = 0; - - // Load main editor data - XDocument xmlDoc = XDocument.Parse(editorData.ToString()); - XElement rootElement = xmlDoc.Root; - XElement editorAppElement = rootElement.Elements("EditorApp").FirstOrDefault(); - if (editorAppElement != null) - { - editorAppElement.TryGetElementValue("Backups", ref backupsEnabled); - editorAppElement.TryGetElementValue("Autosaves", ref autosaveFrequency); - editorAppElement.TryGetElementValue("LauncherPath", ref launcherApp); - editorAppElement.TryGetElementValue("FirstSession", ref firstEditorSession); - editorAppElement.TryGetElementValue("ActiveDocumentIndex", ref activeDocumentIndex); - - string scenePath; - editorAppElement.GetElementValue("LastOpenScene", out scenePath); - if (scenePath != null) lastOpenScene = new ContentRef(null, scenePath); - - editorAppElement.TryGetElementValue("StartWithLastScene", ref startWithLastScene); - } - - // Load plugin editor data - XElement pluginsElement = rootElement.Elements("Plugins").FirstOrDefault(); - if (pluginsElement != null) - pluginManager.LoadUserData(pluginsElement); - - // Set the active document as loaded from user data - mainForm.ActiveDocumentIndex = activeDocumentIndex; - } - catch (Exception e) - { - Logs.Editor.WriteError("Error loading editor user data: {0}", LogFormat.Exception(e)); - } - Logs.Editor.PopIndent(); - } - - Logs.Editor.PopIndent(); - return; - } - private static IDockContent DeserializeDockContent(string persistName) - { - Logs.Editor.Write("Deserializing layout: '" + persistName + "'"); - return pluginManager.DeserializeDockContent(persistName); - } - private static void InitMainGraphicsContext() { if (mainGraphicsContext != null) return; diff --git a/Source/Editor/DualityEditor/EditorPlugin.cs b/Source/Editor/DualityEditor/EditorPlugin.cs index 8d5cbedfd..38a3f02af 100644 --- a/Source/Editor/DualityEditor/EditorPlugin.cs +++ b/Source/Editor/DualityEditor/EditorPlugin.cs @@ -25,12 +25,30 @@ internal protected virtual void InitPlugin(MainForm main) {} /// Saves the plugins user data to the provided Xml Node. /// /// + [Obsolete("Use the model based api")] internal protected virtual void SaveUserData(XElement node) {} + + [Obsolete("Use the model based api")] + internal protected virtual XElement GetDefaultUserData() + { + return null; + } /// /// Loads the plugins user data from the provided Xml Node. /// /// + [Obsolete("Use the model based api")] internal protected virtual void LoadUserData(XElement node) {} + + /// + /// Saves the plugins user data by serializing the returned object. + /// + internal protected virtual void SaveUserData(PluginSettings settings) { } + /// + /// Loads the plugins user data from the provided . + /// + /// + internal protected virtual void LoadUserData(PluginSettings settings) { } /// /// Called when initializing the editors layout and trying to set up one of this plugins DockContent. /// Returns an IDockContent instance of the specified dockContentType. May return already existing diff --git a/Source/Editor/DualityEditor/EditorPluginManager.cs b/Source/Editor/DualityEditor/EditorPluginManager.cs index 63ec4244f..413633978 100644 --- a/Source/Editor/DualityEditor/EditorPluginManager.cs +++ b/Source/Editor/DualityEditor/EditorPluginManager.cs @@ -84,38 +84,60 @@ public override void InitPlugins() } /// - /// Saves all editor plugin user data into the specified parent . + /// Saves all editor plugin user data into the />. /// - /// - public void SaveUserData(XElement parentElement) + /// + public void SaveUserData(PluginSettings settings) { + settings.Clear(); + foreach (EditorPlugin loadedPlugin in this.LoadedPlugins) + { + loadedPlugin.SaveUserData(settings); + } + + // Legacy support + XElement parentElement = settings.OldStyleSettings; foreach (EditorPlugin plugin in this.LoadedPlugins) { XElement pluginElement = new XElement("Plugin"); pluginElement.SetAttributeValue("id", plugin.Id); + plugin.SaveUserData(pluginElement); if (!pluginElement.IsEmpty) parentElement.Add(pluginElement); } + + settings.OldStyleSettings = parentElement; } /// - /// Loads all editor plugin user data from the specified parent . + /// Loads all editor plugin user data from the >. /// - /// - public void LoadUserData(XElement parentElement) + /// + public void LoadUserData(PluginSettings pluginSettings) { - foreach (XElement child in parentElement.Elements("Plugin")) + foreach (EditorPlugin loadedPlugin in this.LoadedPlugins) { - string id = child.GetAttributeValue("id"); - if (id == null) continue; + loadedPlugin.LoadUserData(pluginSettings); + } + + // Legacy support + XElement parentElement = pluginSettings.OldStyleSettings; + XElement[] childs = parentElement.Elements("Plugin").ToArray(); - foreach (EditorPlugin plugin in this.LoadedPlugins) + foreach (EditorPlugin loadedPlugin in this.LoadedPlugins) + { + XElement pluginSetting = childs.FirstOrDefault(x => x.GetAttributeValue("id") == loadedPlugin.Id); + if (pluginSetting == null) { - if (plugin.Id != id) continue; + XElement defaultSettings = loadedPlugin.GetDefaultUserData(); + + if (defaultSettings == null) continue; + if (defaultSettings.Name != "Plugin") throw new InvalidOperationException("Expected a Plugin element as root"); - plugin.LoadUserData(child); - break; + defaultSettings.SetAttributeValue("id", loadedPlugin.Id); + pluginSetting = defaultSettings; } + loadedPlugin.LoadUserData(pluginSetting); } } /// diff --git a/Source/Editor/DualityEditor/EmbeddedResources/dockpanel.xml b/Source/Editor/DualityEditor/EmbeddedResources/dockpanel.xml new file mode 100644 index 000000000..63ea61a67 --- /dev/null +++ b/Source/Editor/DualityEditor/EmbeddedResources/dockpanel.xml @@ -0,0 +1,94 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Source/Editor/DualityEditor/EmbeddedResources/editoruserdata.xml b/Source/Editor/DualityEditor/EmbeddedResources/editoruserdata.xml deleted file mode 100644 index c882c0c02..000000000 --- a/Source/Editor/DualityEditor/EmbeddedResources/editoruserdata.xml +++ /dev/null @@ -1,166 +0,0 @@ - - - - true - ThirtyMinutes - true - - - - - Parallax - 500 - - 64 - 64 - 64 - 0 - - - 0 - 0 - 0 - - Duality.Editor.Plugins.CamView.CamViewStates.SceneEditorCamViewState - - - - Duality.Editor.Plugins.CamView.CamViewLayers.RigidBodyJointCamViewLayer - Duality.Editor.Plugins.CamView.CamViewLayers.RigidBodyShapeCamViewLayer - Duality.Editor.Plugins.CamView.CamViewLayers.GridCamViewLayer - Duality.Editor.Plugins.CamView.CamViewLayers.BackPlateCamViewLayer - - - Duality.Components.Physics.RigidBody - - - - - Duality.Editor.Plugins.CamView.CamViewLayers.GridCamViewLayer - - - - - - - - true - true - true - true - true - true - true - true - - - - - true - false - Object Inspector - false - - - - - true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Source/Editor/DualityEditor/Forms/MainForm.cs b/Source/Editor/DualityEditor/Forms/MainForm.cs index b1eefce62..52908ec8d 100644 --- a/Source/Editor/DualityEditor/Forms/MainForm.cs +++ b/Source/Editor/DualityEditor/Forms/MainForm.cs @@ -5,7 +5,8 @@ using System.Windows.Forms; using System.IO; using System.Reflection; - +using System.Text; +using System.Xml.Linq; using Duality; using Duality.IO; using Duality.Serialization; @@ -471,7 +472,9 @@ protected override void OnFormClosing(FormClosingEventArgs e) } // Save UserData before quitting - DualityEditorApp.SaveUserData(); + this.SaveDockPanelData(DualityEditorApp.DualityEditorUserData.Instance); + DualityEditorApp.PluginManager.SaveUserData(DualityEditorApp.DualityEditorUserData.Instance.PluginSettings); + DualityEditorApp.DualityEditorUserData.Save(); DualityApp.AppData.Save(); bool isClosedByUser = @@ -501,6 +504,36 @@ private void actionRunApp_Click(object sender, EventArgs e) AppRunningDialog runningDialog = new AppRunningDialog(appProc); runningDialog.ShowDialog(this); } + public void SaveDockPanelData(DualityEditorUserData dualityEditorUserData) + { + using (var str = new MemoryStream()) + { + this.MainDockPanel.SaveAsXml(str, Encoding.Default); + string xmlString = Encoding.Default.GetString(str.ToArray()); + + dualityEditorUserData.DockPanelState = XElement.Parse(xmlString); + } + } + public void LoadDockPanelData(XElement dockPanelState) + { + Logs.Editor.Write("Loading DockPanel data..."); + Logs.Editor.PushIndent(); + MemoryStream dockPanelDataStream = new MemoryStream(Encoding.Default.GetBytes(dockPanelState.ToString())); + try + { + this.MainDockPanel.LoadFromXml(dockPanelDataStream, DeserializeDockContent); + } + catch (Exception e) + { + Logs.Editor.WriteError("Cannot load DockPanel data due to malformed or non-existent Xml: {0}", LogFormat.Exception(e)); + } + Logs.Editor.PopIndent(); + } + private static IDockContent DeserializeDockContent(string persistName) + { + Logs.Editor.Write("Deserializing layout: '" + persistName + "'"); + return DualityEditorApp.PluginManager.DeserializeDockContent(persistName); + } private void actionDebugApp_Click(object sender, EventArgs e) { DualityEditorApp.SaveAllProjectData(); diff --git a/Source/Editor/DualityEditor/Forms/PublishGameDialog.cs b/Source/Editor/DualityEditor/Forms/PublishGameDialog.cs index 5e324ac87..66355d32b 100644 --- a/Source/Editor/DualityEditor/Forms/PublishGameDialog.cs +++ b/Source/Editor/DualityEditor/Forms/PublishGameDialog.cs @@ -41,8 +41,7 @@ public partial class PublishGameDialog : Form @".\DualityPrimitives.xml", @".\DualityPhysics.xml", @".\DDoc.chm", - @".\" + DualityEditorApp.UserDataFile, - @".\" + DualityEditorApp.DesignTimeDataFile, + @".\" + DualityEditorApp.DualityEditorUserData.Path, @".\AdamsLair.WinForms.*", @".\Aga.Controls.*", @".\VistaBridgeLibrary.*", diff --git a/Source/Editor/DualityEditor/Properties/GeneralRes.Designer.cs b/Source/Editor/DualityEditor/Properties/GeneralRes.Designer.cs index 047f8588c..287fc22e5 100644 --- a/Source/Editor/DualityEditor/Properties/GeneralRes.Designer.cs +++ b/Source/Editor/DualityEditor/Properties/GeneralRes.Designer.cs @@ -1,1478 +1,1464 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace Duality.Editor.Properties { - using System; - - - /// - /// A strongly-typed resource class, for looking up localized strings, etc. - /// - // This class was auto-generated by the StronglyTypedResourceBuilder - // class via a tool like ResGen or Visual Studio. - // To add or remove a member, edit your .ResX file then rerun ResGen - // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - public class GeneralRes { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal GeneralRes() { - } - - /// - /// Returns the cached ResourceManager instance used by this class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - public static global::System.Resources.ResourceManager ResourceManager { - get { - if (object.ReferenceEquals(resourceMan, null)) { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Duality.Editor.Properties.GeneralRes", typeof(GeneralRes).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// Overrides the current thread's CurrentUICulture property for all - /// resource lookups using this strongly typed resource class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - public static global::System.Globalization.CultureInfo Culture { - get { - return resourceCulture; - } - set { - resourceCulture = value; - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap arrow_redo { - get { - object obj = ResourceManager.GetObject("arrow_redo", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap arrow_undo { - get { - object obj = ResourceManager.GetObject("arrow_undo", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized string similar to Advanced. - /// - public static string Category_Advanced { - get { - return ResourceManager.GetString("Category_Advanced", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Diagnostics. - /// - public static string Category_Diagnostics { - get { - return ResourceManager.GetString("Category_Diagnostics", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to General. - /// - public static string Category_General { - get { - return ResourceManager.GetString("Category_General", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Graphics. - /// - public static string Category_Graphics { - get { - return ResourceManager.GetString("Category_Graphics", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Physics. - /// - public static string Category_Physics { - get { - return ResourceManager.GetString("Category_Physics", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Sound. - /// - public static string Category_Sound { - get { - return ResourceManager.GetString("Category_Sound", resourceCulture); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap ColorPick { - get { - object obj = ResourceManager.GetObject("ColorPick", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap ColorWheel { - get { - object obj = ResourceManager.GetObject("ColorWheel", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap CursorArrow { - get { - object obj = ResourceManager.GetObject("CursorArrow", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap CursorArrowAction { - get { - object obj = ResourceManager.GetObject("CursorArrowAction", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap CursorArrowActionMove { - get { - object obj = ResourceManager.GetObject("CursorArrowActionMove", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap CursorArrowActionRotate { - get { - object obj = ResourceManager.GetObject("CursorArrowActionRotate", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap CursorArrowActionScale { - get { - object obj = ResourceManager.GetObject("CursorArrowActionScale", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap CursorHandGrab { - get { - object obj = ResourceManager.GetObject("CursorHandGrab", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap CursorHandGrabbing { - get { - object obj = ResourceManager.GetObject("CursorHandGrabbing", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized string similar to <?xml version="1.0" encoding="utf-8"?> - ///<UserData> - /// <EditorApp> - /// <Backups>true</Backups> - /// <Autosaves>ThirtyMinutes</Autosaves> - /// <FirstSession>true</FirstSession> - /// </EditorApp> - /// <Plugins> - /// <Plugin id="CamView"> - /// <CamView id="0"> - /// <Perspective>Parallax</Perspective> - /// <FocusDist>500</FocusDist> - /// <BackgroundColor> - /// <R>64</R> - /// <G>64</G> - /// <B>64</B> - /// <A>0</A> - /// </BackgroundColor> - /// <SnapToGridSize> - /// [rest of string was truncated]";. - /// - public static string DefaultEditorUserData { - get { - return ResourceManager.GetString("DefaultEditorUserData", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Dualitor. - /// - public static string EditorApplicationTitle { - get { - return ResourceManager.GetString("EditorApplicationTitle", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to No information available.. - /// - public static string HelpInfo_NotAvailable_Desc { - get { - return ResourceManager.GetString("HelpInfo_NotAvailable_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap IconClass { - get { - object obj = ResourceManager.GetObject("IconClass", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). - /// - public static System.Drawing.Icon IconCog { - get { - object obj = ResourceManager.GetObject("IconCog", resourceCulture); - return ((System.Drawing.Icon)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap IconNamespace { - get { - object obj = ResourceManager.GetObject("IconNamespace", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). - /// - public static System.Drawing.Icon IconWorkingFolder { - get { - object obj = ResourceManager.GetObject("IconWorkingFolder", resourceCulture); - return ((System.Drawing.Icon)(obj)); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap ImageAppCreate { - get { - object obj = ResourceManager.GetObject("ImageAppCreate", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized string similar to English. - /// - public static string Language { - get { - return ResourceManager.GetString("Language", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to This is the first time you are starting Duality. By using it, you are agreeing to its license terms, as linked below.. - /// - public static string LicenseAcceptDialog_FirstStartGeneric { - get { - return ResourceManager.GetString("LicenseAcceptDialog_FirstStartGeneric", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Installing package {0} requires a license agreement.. - /// - public static string LicenseAcceptDialog_PackageDesc { - get { - return ResourceManager.GetString("LicenseAcceptDialog_PackageDesc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to License text transcript unavailable. Check the License Url link below for the original license text source.. - /// - public static string LicenseAcceptDialog_TranscriptUnavailable { - get { - return ResourceManager.GetString("LicenseAcceptDialog_TranscriptUnavailable", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select which launcher application should be used for external game tests. By default, the Duality Launcher is used.. - /// - public static string MenuItemInfo_ConfigureLauncher { - get { - return ResourceManager.GetString("MenuItemInfo_ConfigureLauncher", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to If you're using a professional version of Visual Studio, this action will run the Duality launcher and trigger a debug event that allows you to attach the debugger to your game before anything happens. You can achieve the same by clicking the "Run" button of your Core Plugin in Visual Studio itself.. - /// - public static string MenuItemInfo_DebugGame { - get { - return ResourceManager.GetString("MenuItemInfo_DebugGame", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The project source code is where your game logic happens. To help you get started, Duality will create and open a suitable Visual Studio solution for you.. - /// - public static string MenuItemInfo_OpenProjectSource { - get { - return ResourceManager.GetString("MenuItemInfo_OpenProjectSource", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Runs the game in profiling mode without VSync or any other frame rate limiting mechanism.. - /// - public static string MenuItemInfo_ProfileGame { - get { - return ResourceManager.GetString("MenuItemInfo_ProfileGame", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Creates a version of the game ready to distribute to others, with all necessary files. - /// - public static string MenuItemInfo_PublishGame { - get { - return ResourceManager.GetString("MenuItemInfo_PublishGame", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Want to see how your game looks like in its release version? This will save all project data and run the external Duality launcher.. - /// - public static string MenuItemInfo_RunGame { - get { - return ResourceManager.GetString("MenuItemInfo_RunGame", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Increases the Sandboxes game speed. This will not cause it to update more often, but simulate a higher timestep in each update.. - /// - public static string MenuItemInfo_SandboxFaster { - get { - return ResourceManager.GetString("MenuItemInfo_SandboxFaster", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Pausing the Sandbox will suspend any game updates. Until being unpaused, the Sandbox will behave as if it wasn't there.. - /// - public static string MenuItemInfo_SandboxPause { - get { - return ResourceManager.GetString("MenuItemInfo_SandboxPause", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Unlike "Run Game", entering the Sandbox mode doesn't rely on the Duality Launcher and will instead run the game directly inside the editor. This allows you to test and debug your game in real time while at the same time providing full editing functionality. Note that you'll have to focus a Cam View in "Game View" mode in order to pass on keyboard and mouse input to the game.. - /// - public static string MenuItemInfo_SandboxPlay { - get { - return ResourceManager.GetString("MenuItemInfo_SandboxPlay", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Decreases the Sandboxes game speed. This will not cause it to update less often, but simulate a lower timestep in each update.. - /// - public static string MenuItemInfo_SandboxSlower { - get { - return ResourceManager.GetString("MenuItemInfo_SandboxSlower", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to A Sandbox step will cause the game to advance exactly one standard frame.. - /// - public static string MenuItemInfo_SandboxStep { - get { - return ResourceManager.GetString("MenuItemInfo_SandboxStep", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to When leaving the Sandbox mode, the current Scene will be reset to its original state.. - /// - public static string MenuItemInfo_SandboxStop { - get { - return ResourceManager.GetString("MenuItemInfo_SandboxStop", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to This will save all project data, i.e. all existing Resources. If you take a look at the Project View, you might notice that some Resources are written in italics - these are the ones that have been changed without being saved yet.. - /// - public static string MenuItemInfo_SaveAll { - get { - return ResourceManager.GetString("MenuItemInfo_SaveAll", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to This operation will load and re-save all existing Resources. Due to the serialization progress, all Resources will be guaranteed to use the same file format and to be up-to-date according to core plugin class definitions.. - /// - public static string MenuItemInfo_SerializerUpdateAll { - get { - return ResourceManager.GetString("MenuItemInfo_SerializerUpdateAll", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to If active, Duality will backup each file before saving it.. - /// - public static string MenuItemInfo_ToggleBackups { - get { - return ResourceManager.GetString("MenuItemInfo_ToggleBackups", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to About. - /// - public static string MenuItemName_About { - get { - return ResourceManager.GetString("MenuItemName_About", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select Launcher.... - /// - public static string MenuItemName_ConfigureLauncher { - get { - return ResourceManager.GetString("MenuItemName_ConfigureLauncher", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Profile Game. - /// - public static string MenuItemName_ProfileGame { - get { - return ResourceManager.GetString("MenuItemName_ProfileGame", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Publish Game. - /// - public static string MenuItemName_PublishGame { - get { - return ResourceManager.GetString("MenuItemName_PublishGame", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Quit. - /// - public static string MenuItemName_Quit { - get { - return ResourceManager.GetString("MenuItemName_Quit", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Redo: {0}. - /// - public static string MenuItemName_Redo { - get { - return ResourceManager.GetString("MenuItemName_Redo", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Redo. - /// - public static string MenuItemName_RedoEmpty { - get { - return ResourceManager.GetString("MenuItemName_RedoEmpty", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Increase Speed. - /// - public static string MenuItemName_SandboxFaster { - get { - return ResourceManager.GetString("MenuItemName_SandboxFaster", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Decrease Speed. - /// - public static string MenuItemName_SandboxSlower { - get { - return ResourceManager.GetString("MenuItemName_SandboxSlower", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Update All. - /// - public static string MenuItemName_SerializerUpdateAll { - get { - return ResourceManager.GetString("MenuItemName_SerializerUpdateAll", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Undo: {0}. - /// - public static string MenuItemName_Undo { - get { - return ResourceManager.GetString("MenuItemName_Undo", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Undo. - /// - public static string MenuItemName_UndoEmpty { - get { - return ResourceManager.GetString("MenuItemName_UndoEmpty", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Getting Started. - /// - public static string MenuItemName_WelcomeDialog { - get { - return ResourceManager.GetString("MenuItemName_WelcomeDialog", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Edit. - /// - public static string MenuName_Edit { - get { - return ResourceManager.GetString("MenuName_Edit", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to File. - /// - public static string MenuName_File { - get { - return ResourceManager.GetString("MenuName_File", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Help. - /// - public static string MenuName_Help { - get { - return ResourceManager.GetString("MenuName_Help", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Run. - /// - public static string MenuName_Run { - get { - return ResourceManager.GetString("MenuName_Run", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Settings. - /// - public static string MenuName_Settings { - get { - return ResourceManager.GetString("MenuName_Settings", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Tools. - /// - public static string MenuName_Tools { - get { - return ResourceManager.GetString("MenuName_Tools", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to View. - /// - public static string MenuName_View { - get { - return ResourceManager.GetString("MenuName_View", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Can't export Resource. - /// - public static string Msg_CantExport_Caption { - get { - return ResourceManager.GetString("Msg_CantExport_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Can't export Resource '{0}'. None of the available importers is able to handle this Resource type.. - /// - public static string Msg_CantExport_Text { - get { - return ResourceManager.GetString("Msg_CantExport_Text", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Can't import file. - /// - public static string Msg_CantImport_Caption { - get { - return ResourceManager.GetString("Msg_CantImport_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Can't import file '{0}'. None of the available importers is able to handle the files format.. - /// - public static string Msg_CantImport_Text { - get { - return ResourceManager.GetString("Msg_CantImport_Text", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Break Prefab Link?. - /// - public static string Msg_ConfirmBreakPrefabLink_Caption { - get { - return ResourceManager.GetString("Msg_ConfirmBreakPrefabLink_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to This action will break the objects Prefab Link. Proceed?. - /// - public static string Msg_ConfirmBreakPrefabLink_Desc { - get { - return ResourceManager.GetString("Msg_ConfirmBreakPrefabLink_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Delete selected objects?. - /// - public static string Msg_ConfirmDeleteSelectedObjects_Caption { - get { - return ResourceManager.GetString("Msg_ConfirmDeleteSelectedObjects_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Do you really want to delete the selected objects?. - /// - public static string Msg_ConfirmDeleteSelectedObjects_Text { - get { - return ResourceManager.GetString("Msg_ConfirmDeleteSelectedObjects_Text", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Really quit?. - /// - public static string Msg_ConfirmQuit_Caption { - get { - return ResourceManager.GetString("Msg_ConfirmQuit_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Do you really want to quit?. - /// - public static string Msg_ConfirmQuit_Desc { - get { - return ResourceManager.GetString("Msg_ConfirmQuit_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Really quit?. - /// - public static string Msg_ConfirmQuitUnsaved_Caption { - get { - return ResourceManager.GetString("Msg_ConfirmQuitUnsaved_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The following Resources have been modified without saving:{0}Do you want to save them before exiting?. - /// - public static string Msg_ConfirmQuitUnsaved_Desc { - get { - return ResourceManager.GetString("Msg_ConfirmQuitUnsaved_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to [ and {0} more ]. - /// - public static string Msg_ConfirmQuitUnsaved_Desc_More { - get { - return ResourceManager.GetString("Msg_ConfirmQuitUnsaved_Desc_More", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Reload Resource?. - /// - public static string Msg_ConfirmReloadResource_Caption { - get { - return ResourceManager.GetString("Msg_ConfirmReloadResource_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The currently active Resource '{0}' has been modified externally. Do you want to reload it from file? Any unsaved changes might be lost.. - /// - public static string Msg_ConfirmReloadResource_Text { - get { - return ResourceManager.GetString("Msg_ConfirmReloadResource_Text", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Invalid Target Directory. - /// - public static string Msg_CreateProjectErrorNestedFolder_Caption { - get { - return ResourceManager.GetString("Msg_CreateProjectErrorNestedFolder_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The specified target folder is located within the current working directory. Please select one that is located elsewhere.. - /// - public static string Msg_CreateProjectErrorNestedFolder_Desc { - get { - return ResourceManager.GetString("Msg_CreateProjectErrorNestedFolder_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Invalid Target Directory. - /// - public static string Msg_CreateProjectErrorTargetExists_Caption { - get { - return ResourceManager.GetString("Msg_CreateProjectErrorTargetExists_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The specified target folder already exists and is not empty. Please select a different one.. - /// - public static string Msg_CreateProjectErrorTargetExists_Desc { - get { - return ResourceManager.GetString("Msg_CreateProjectErrorTargetExists_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The specified target folder is conflicting with an existing file. Please select a different one.. - /// - public static string Msg_CreateProjectErrorTargetIsFilePath_Desc { - get { - return ResourceManager.GetString("Msg_CreateProjectErrorTargetIsFilePath_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Save current Scene?. - /// - public static string Msg_EnterSandboxUnsavedScene_Caption { - get { - return ResourceManager.GetString("Msg_EnterSandboxUnsavedScene_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to You are about to enter Sandbox mode although the current Scene is temporary, so it won't be restored when leaving Sandbox mode. Do you want to make it restorable by saving it before?. - /// - public static string Msg_EnterSandboxUnsavedScene_Desc { - get { - return ResourceManager.GetString("Msg_EnterSandboxUnsavedScene_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Error Creating Project. - /// - public static string Msg_ErrorCantCreateProject_Caption { - get { - return ResourceManager.GetString("Msg_ErrorCantCreateProject_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Can't create a new project, because a error occurred : {1}{0}. - /// - public static string Msg_ErrorCantCreateProject_Desc { - get { - return ResourceManager.GetString("Msg_ErrorCantCreateProject_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to First Duality Install. - /// - public static string Msg_ErrorFirstDualityInstall_Caption { - get { - return ResourceManager.GetString("Msg_ErrorFirstDualityInstall_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The first time you run the editor, Duality will self-install into this folder by downloading the latest packages from the central repository. - /// - ///Unfortunately though, a connection doesn't seem to be possible right now. Please check your firewall and network status!. - /// - public static string Msg_ErrorFirstDualityInstall_Desc { - get { - return ResourceManager.GetString("Msg_ErrorFirstDualityInstall_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Failed to perform task. - /// - public static string Msg_ErrorPerformBigTask_Caption { - get { - return ResourceManager.GetString("Msg_ErrorPerformBigTask_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to An error occurred while performing task '{0}': {1}{2}. - /// - public static string Msg_ErrorPerformBigTask_Desc { - get { - return ResourceManager.GetString("Msg_ErrorPerformBigTask_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Can't reload core plugin. - /// - public static string Msg_ErrorReloadCorePlugin_Caption { - get { - return ResourceManager.GetString("Msg_ErrorReloadCorePlugin_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to An error occurred reloading Duality core plugins: {0}{1}. - /// - public static string Msg_ErrorReloadCorePlugin_Desc { - get { - return ResourceManager.GetString("Msg_ErrorReloadCorePlugin_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Overwrite file?. - /// - public static string Msg_ImportConfirmOverwrite_Caption { - get { - return ResourceManager.GetString("Msg_ImportConfirmOverwrite_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to This import operation would overwrite already imported Resources or already present source / media files. Do you want to continue?. - /// - public static string Msg_ImportConfirmOverwrite_Text { - get { - return ResourceManager.GetString("Msg_ImportConfirmOverwrite_Text", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Install new Template?. - /// - public static string Msg_InstallNewTemplate_Caption { - get { - return ResourceManager.GetString("Msg_InstallNewTemplate_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The Template you selected is not located inside your global Template directory. Do you wish to send it there for future usage?. - /// - public static string Msg_InstallNewTemplate_Desc { - get { - return ResourceManager.GetString("Msg_InstallNewTemplate_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Confirm Delete. - /// - public static string Msg_PublishConfirmDeleteTargetDir_Caption { - get { - return ResourceManager.GetString("Msg_PublishConfirmDeleteTargetDir_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The specified directory already contains a non-empty folder named '{0}'. Delete folder in order to proceed?. - /// - public static string Msg_PublishConfirmDeleteTargetDir_Desc { - get { - return ResourceManager.GetString("Msg_PublishConfirmDeleteTargetDir_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Invalid Target Directory. - /// - public static string Msg_PublishProjectErrorNestedFolder_Caption { - get { - return ResourceManager.GetString("Msg_PublishProjectErrorNestedFolder_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The specified target folder is located within the current working directory. Please select one that is located elsewhere.. - /// - public static string Msg_PublishProjectErrorNestedFolder_Desc { - get { - return ResourceManager.GetString("Msg_PublishProjectErrorNestedFolder_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Package Install Canceled. - /// - public static string MsgLicenseNotAgreedAbort_Caption { - get { - return ResourceManager.GetString("MsgLicenseNotAgreedAbort_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The install operation was canceled. You can only install this package when agreeing to its license terms.. - /// - public static string MsgLicenseNotAgreedAbort_Desc { - get { - return ResourceManager.GetString("MsgLicenseNotAgreedAbort_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Project Templates (*.zip)|*.zip. - /// - public static string OpenTemplateDialog_Filters { - get { - return ResourceManager.GetString("OpenTemplateDialog_Filters", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select Project Template... - /// - public static string OpenTemplateDialog_Title { - get { - return ResourceManager.GetString("OpenTemplateDialog_Title", resourceCulture); - } - } - - /// - /// Looks up a localized resource of type System.Drawing.Bitmap. - /// - public static System.Drawing.Bitmap page_white { - get { - object obj = ResourceManager.GetObject("page_white", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// Looks up a localized string similar to {0} objects. - /// - public static string PropertyGrid_N_Objects { - get { - return ResourceManager.GetString("PropertyGrid_N_Objects", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Reloading core plugins.... - /// - public static string TaskBarOverlay_ReloadCorePlugin_Desc { - get { - return ResourceManager.GetString("TaskBarOverlay_ReloadCorePlugin_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Changing project data format.... - /// - public static string TaskChangeDataFormat_Caption { - get { - return ResourceManager.GetString("TaskChangeDataFormat_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The project data format has been changed to {0}. Existing Resource files will be converted shortly.. - /// - public static string TaskChangeDataFormat_Desc { - get { - return ResourceManager.GetString("TaskChangeDataFormat_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Updating all Resources.... - /// - public static string TaskFormatUpdateAll_Caption { - get { - return ResourceManager.GetString("TaskFormatUpdateAll_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to All existing Resource files are being updated according to the current file format specifications.. - /// - public static string TaskFormatUpdateAll_Desc { - get { - return ResourceManager.GetString("TaskFormatUpdateAll_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Installing Packages.... - /// - public static string TaskInstallPackages_Caption { - get { - return ResourceManager.GetString("TaskInstallPackages_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Duality is installing some required packages. This may include downloading them from the central package repository.. - /// - public static string TaskInstallPackages_Desc { - get { - return ResourceManager.GetString("TaskInstallPackages_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Preparing operation.... - /// - public static string TaskPrepareInfo { - get { - return ResourceManager.GetString("TaskPrepareInfo", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Relocating ContentRefs.... - /// - public static string TaskRenameContentRefs_Caption { - get { - return ResourceManager.GetString("TaskRenameContentRefs_Caption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to One or more Resources have been moved or renamed. Duality is searching for references to these Resources in order to update them.. - /// - public static string TaskRenameContentRefs_Desc { - get { - return ResourceManager.GetString("TaskRenameContentRefs_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Creates a new project by cloning the current one.. - /// - public static string Template_Current_Desc { - get { - return ResourceManager.GetString("Template_Current_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Current Project. - /// - public static string Template_Current_Name { - get { - return ResourceManager.GetString("Template_Current_Name", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to A project without any content.. - /// - public static string Template_Empty_Desc { - get { - return ResourceManager.GetString("Template_Empty_Desc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Empty Project. - /// - public static string Template_Empty_Name { - get { - return ResourceManager.GetString("Template_Empty_Name", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Add {0} to IDictionaries. - /// - public static string UndoRedo_AddToDictionary { - get { - return ResourceManager.GetString("UndoRedo_AddToDictionary", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Apply {0}. - /// - public static string UndoRedo_ApplyToPrefab { - get { - return ResourceManager.GetString("UndoRedo_ApplyToPrefab", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Apply {0} GameObjects. - /// - public static string UndoRedo_ApplyToPrefabMulti { - get { - return ResourceManager.GetString("UndoRedo_ApplyToPrefabMulti", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Unlink {0}. - /// - public static string UndoRedo_BreakPrefabLink { - get { - return ResourceManager.GetString("UndoRedo_BreakPrefabLink", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Unlink {0} GameObjects. - /// - public static string UndoRedo_BreakPrefabLinkMulti { - get { - return ResourceManager.GetString("UndoRedo_BreakPrefabLinkMulti", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Clone {0}. - /// - public static string UndoRedo_CloneGameObject { - get { - return ResourceManager.GetString("UndoRedo_CloneGameObject", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Clone {0} GameObjects. - /// - public static string UndoRedo_CloneGameObjectMulti { - get { - return ResourceManager.GetString("UndoRedo_CloneGameObjectMulti", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Create {0}. - /// - public static string UndoRedo_CreateComponent { - get { - return ResourceManager.GetString("UndoRedo_CreateComponent", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Create {0} Components. - /// - public static string UndoRedo_CreateComponentMulti { - get { - return ResourceManager.GetString("UndoRedo_CreateComponentMulti", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Create {0}. - /// - public static string UndoRedo_CreateGameObject { - get { - return ResourceManager.GetString("UndoRedo_CreateGameObject", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Create {0} GameObjects. - /// - public static string UndoRedo_CreateGameObjectMulti { - get { - return ResourceManager.GetString("UndoRedo_CreateGameObjectMulti", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Delete {0}. - /// - public static string UndoRedo_DeleteComponent { - get { - return ResourceManager.GetString("UndoRedo_DeleteComponent", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Delete {0} Components. - /// - public static string UndoRedo_DeleteComponentMulti { - get { - return ResourceManager.GetString("UndoRedo_DeleteComponentMulti", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Delete {0}. - /// - public static string UndoRedo_DeleteGameObject { - get { - return ResourceManager.GetString("UndoRedo_DeleteGameObject", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Delete {0} GameObjects. - /// - public static string UndoRedo_DeleteGameObjectMulti { - get { - return ResourceManager.GetString("UndoRedo_DeleteGameObjectMulti", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Edit {0}. - /// - public static string UndoRedo_EditProperty { - get { - return ResourceManager.GetString("UndoRedo_EditProperty", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Macro: {0} Actions. - /// - public static string UndoRedo_Macro { - get { - return ResourceManager.GetString("UndoRedo_Macro", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Paste {0}. - /// - public static string UndoRedo_PasteGameObject { - get { - return ResourceManager.GetString("UndoRedo_PasteGameObject", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Paste {0} GameObjects. - /// - public static string UndoRedo_PasteGameObjectMulti { - get { - return ResourceManager.GetString("UndoRedo_PasteGameObjectMulti", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Remove {0} from IDictionaries. - /// - public static string UndoRedo_RemoveFromDictionary { - get { - return ResourceManager.GetString("UndoRedo_RemoveFromDictionary", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Reset {0}. - /// - public static string UndoRedo_ResetComponent { - get { - return ResourceManager.GetString("UndoRedo_ResetComponent", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Reset {0} Components. - /// - public static string UndoRedo_ResetComponentMulti { - get { - return ResourceManager.GetString("UndoRedo_ResetComponentMulti", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Revert {0}. - /// - public static string UndoRedo_ResetGameObject { - get { - return ResourceManager.GetString("UndoRedo_ResetGameObject", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Revert {0} GameObjects. - /// - public static string UndoRedo_ResetGameObjectMulti { - get { - return ResourceManager.GetString("UndoRedo_ResetGameObjectMulti", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Resize ILists to {0} elements. - /// - public static string UndoRedo_ResizeILists { - get { - return ResourceManager.GetString("UndoRedo_ResizeILists", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Re-Parent {0}. - /// - public static string UndoRedo_SetComponentParent { - get { - return ResourceManager.GetString("UndoRedo_SetComponentParent", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Re-Parent {0} Components. - /// - public static string UndoRedo_SetComponentParentMulti { - get { - return ResourceManager.GetString("UndoRedo_SetComponentParentMulti", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Rename {0}. - /// - public static string UndoRedo_SetGameObjectName { - get { - return ResourceManager.GetString("UndoRedo_SetGameObjectName", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Rename {0} GameObjects. - /// - public static string UndoRedo_SetGameObjectNameMulti { - get { - return ResourceManager.GetString("UndoRedo_SetGameObjectNameMulti", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Re-Parent {0}. - /// - public static string UndoRedo_SetGameObjectParent { - get { - return ResourceManager.GetString("UndoRedo_SetGameObjectParent", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Re-Parent {0} GameObjects. - /// - public static string UndoRedo_SetGameObjectParentMulti { - get { - return ResourceManager.GetString("UndoRedo_SetGameObjectParentMulti", resourceCulture); - } - } - } -} +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace Duality.Editor.Properties { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + public class GeneralRes { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal GeneralRes() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + public static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Duality.Editor.Properties.GeneralRes", typeof(GeneralRes).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + public static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap arrow_redo { + get { + object obj = ResourceManager.GetObject("arrow_redo", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap arrow_undo { + get { + object obj = ResourceManager.GetObject("arrow_undo", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized string similar to Advanced. + /// + public static string Category_Advanced { + get { + return ResourceManager.GetString("Category_Advanced", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Diagnostics. + /// + public static string Category_Diagnostics { + get { + return ResourceManager.GetString("Category_Diagnostics", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to General. + /// + public static string Category_General { + get { + return ResourceManager.GetString("Category_General", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Graphics. + /// + public static string Category_Graphics { + get { + return ResourceManager.GetString("Category_Graphics", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Physics. + /// + public static string Category_Physics { + get { + return ResourceManager.GetString("Category_Physics", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Sound. + /// + public static string Category_Sound { + get { + return ResourceManager.GetString("Category_Sound", resourceCulture); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap ColorPick { + get { + object obj = ResourceManager.GetObject("ColorPick", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap ColorWheel { + get { + object obj = ResourceManager.GetObject("ColorWheel", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap CursorArrow { + get { + object obj = ResourceManager.GetObject("CursorArrow", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap CursorArrowAction { + get { + object obj = ResourceManager.GetObject("CursorArrowAction", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap CursorArrowActionMove { + get { + object obj = ResourceManager.GetObject("CursorArrowActionMove", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap CursorArrowActionRotate { + get { + object obj = ResourceManager.GetObject("CursorArrowActionRotate", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap CursorArrowActionScale { + get { + object obj = ResourceManager.GetObject("CursorArrowActionScale", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap CursorHandGrab { + get { + object obj = ResourceManager.GetObject("CursorHandGrab", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap CursorHandGrabbing { + get { + object obj = ResourceManager.GetObject("CursorHandGrabbing", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized string similar to <?xml version="1.0" encoding="utf-8"?> + ///<!--DockPanel configuration file. Author: Weifen Luo, all rights reserved.--> + ///<!--!!! AUTOMATICALLY GENERATED FILE. DO NOT MODIFY !!!--> + ///<DockPanel FormatVersion="1.0" DockLeftPortion="0.25" DockRightPortion="0.440885416666667" DockTopPortion="0.25" DockBottomPortion="0.25" ActiveDocumentPane="7" ActivePane="7"> + /// <Contents Count="6"> + /// <Content ID="0" PersistString="Duality.Editor.Plugins.CamView.CamView" AutoHidePortion="0.25" IsHidden="False" IsFloat="False" /> /// [rest of string was truncated]";. + /// + public static string DefaultDockPanelData { + get { + return ResourceManager.GetString("DefaultDockPanelData", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Dualitor. + /// + public static string EditorApplicationTitle { + get { + return ResourceManager.GetString("EditorApplicationTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to No information available.. + /// + public static string HelpInfo_NotAvailable_Desc { + get { + return ResourceManager.GetString("HelpInfo_NotAvailable_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap IconClass { + get { + object obj = ResourceManager.GetObject("IconClass", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + /// + public static System.Drawing.Icon IconCog { + get { + object obj = ResourceManager.GetObject("IconCog", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap IconNamespace { + get { + object obj = ResourceManager.GetObject("IconNamespace", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + /// + public static System.Drawing.Icon IconWorkingFolder { + get { + object obj = ResourceManager.GetObject("IconWorkingFolder", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap ImageAppCreate { + get { + object obj = ResourceManager.GetObject("ImageAppCreate", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized string similar to English. + /// + public static string Language { + get { + return ResourceManager.GetString("Language", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to This is the first time you are starting Duality. By using it, you are agreeing to its license terms, as linked below.. + /// + public static string LicenseAcceptDialog_FirstStartGeneric { + get { + return ResourceManager.GetString("LicenseAcceptDialog_FirstStartGeneric", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Installing package {0} requires a license agreement.. + /// + public static string LicenseAcceptDialog_PackageDesc { + get { + return ResourceManager.GetString("LicenseAcceptDialog_PackageDesc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to License text transcript unavailable. Check the License Url link below for the original license text source.. + /// + public static string LicenseAcceptDialog_TranscriptUnavailable { + get { + return ResourceManager.GetString("LicenseAcceptDialog_TranscriptUnavailable", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select which launcher application should be used for external game tests. By default, the Duality Launcher is used.. + /// + public static string MenuItemInfo_ConfigureLauncher { + get { + return ResourceManager.GetString("MenuItemInfo_ConfigureLauncher", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to If you're using a professional version of Visual Studio, this action will run the Duality launcher and trigger a debug event that allows you to attach the debugger to your game before anything happens. You can achieve the same by clicking the "Run" button of your Core Plugin in Visual Studio itself.. + /// + public static string MenuItemInfo_DebugGame { + get { + return ResourceManager.GetString("MenuItemInfo_DebugGame", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The project source code is where your game logic happens. To help you get started, Duality will create and open a suitable Visual Studio solution for you.. + /// + public static string MenuItemInfo_OpenProjectSource { + get { + return ResourceManager.GetString("MenuItemInfo_OpenProjectSource", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Runs the game in profiling mode without VSync or any other frame rate limiting mechanism.. + /// + public static string MenuItemInfo_ProfileGame { + get { + return ResourceManager.GetString("MenuItemInfo_ProfileGame", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Creates a version of the game ready to distribute to others, with all necessary files. + /// + public static string MenuItemInfo_PublishGame { + get { + return ResourceManager.GetString("MenuItemInfo_PublishGame", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Want to see how your game looks like in its release version? This will save all project data and run the external Duality launcher.. + /// + public static string MenuItemInfo_RunGame { + get { + return ResourceManager.GetString("MenuItemInfo_RunGame", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Increases the Sandboxes game speed. This will not cause it to update more often, but simulate a higher timestep in each update.. + /// + public static string MenuItemInfo_SandboxFaster { + get { + return ResourceManager.GetString("MenuItemInfo_SandboxFaster", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Pausing the Sandbox will suspend any game updates. Until being unpaused, the Sandbox will behave as if it wasn't there.. + /// + public static string MenuItemInfo_SandboxPause { + get { + return ResourceManager.GetString("MenuItemInfo_SandboxPause", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Unlike "Run Game", entering the Sandbox mode doesn't rely on the Duality Launcher and will instead run the game directly inside the editor. This allows you to test and debug your game in real time while at the same time providing full editing functionality. Note that you'll have to focus a Cam View in "Game View" mode in order to pass on keyboard and mouse input to the game.. + /// + public static string MenuItemInfo_SandboxPlay { + get { + return ResourceManager.GetString("MenuItemInfo_SandboxPlay", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Decreases the Sandboxes game speed. This will not cause it to update less often, but simulate a lower timestep in each update.. + /// + public static string MenuItemInfo_SandboxSlower { + get { + return ResourceManager.GetString("MenuItemInfo_SandboxSlower", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to A Sandbox step will cause the game to advance exactly one standard frame.. + /// + public static string MenuItemInfo_SandboxStep { + get { + return ResourceManager.GetString("MenuItemInfo_SandboxStep", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to When leaving the Sandbox mode, the current Scene will be reset to its original state.. + /// + public static string MenuItemInfo_SandboxStop { + get { + return ResourceManager.GetString("MenuItemInfo_SandboxStop", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to This will save all project data, i.e. all existing Resources. If you take a look at the Project View, you might notice that some Resources are written in italics - these are the ones that have been changed without being saved yet.. + /// + public static string MenuItemInfo_SaveAll { + get { + return ResourceManager.GetString("MenuItemInfo_SaveAll", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to This operation will load and re-save all existing Resources. Due to the serialization progress, all Resources will be guaranteed to use the same file format and to be up-to-date according to core plugin class definitions.. + /// + public static string MenuItemInfo_SerializerUpdateAll { + get { + return ResourceManager.GetString("MenuItemInfo_SerializerUpdateAll", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to If active, Duality will backup each file before saving it.. + /// + public static string MenuItemInfo_ToggleBackups { + get { + return ResourceManager.GetString("MenuItemInfo_ToggleBackups", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to About. + /// + public static string MenuItemName_About { + get { + return ResourceManager.GetString("MenuItemName_About", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select Launcher.... + /// + public static string MenuItemName_ConfigureLauncher { + get { + return ResourceManager.GetString("MenuItemName_ConfigureLauncher", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Profile Game. + /// + public static string MenuItemName_ProfileGame { + get { + return ResourceManager.GetString("MenuItemName_ProfileGame", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Publish Game. + /// + public static string MenuItemName_PublishGame { + get { + return ResourceManager.GetString("MenuItemName_PublishGame", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Quit. + /// + public static string MenuItemName_Quit { + get { + return ResourceManager.GetString("MenuItemName_Quit", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Redo: {0}. + /// + public static string MenuItemName_Redo { + get { + return ResourceManager.GetString("MenuItemName_Redo", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Redo. + /// + public static string MenuItemName_RedoEmpty { + get { + return ResourceManager.GetString("MenuItemName_RedoEmpty", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Increase Speed. + /// + public static string MenuItemName_SandboxFaster { + get { + return ResourceManager.GetString("MenuItemName_SandboxFaster", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Decrease Speed. + /// + public static string MenuItemName_SandboxSlower { + get { + return ResourceManager.GetString("MenuItemName_SandboxSlower", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Update All. + /// + public static string MenuItemName_SerializerUpdateAll { + get { + return ResourceManager.GetString("MenuItemName_SerializerUpdateAll", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Undo: {0}. + /// + public static string MenuItemName_Undo { + get { + return ResourceManager.GetString("MenuItemName_Undo", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Undo. + /// + public static string MenuItemName_UndoEmpty { + get { + return ResourceManager.GetString("MenuItemName_UndoEmpty", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Getting Started. + /// + public static string MenuItemName_WelcomeDialog { + get { + return ResourceManager.GetString("MenuItemName_WelcomeDialog", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Edit. + /// + public static string MenuName_Edit { + get { + return ResourceManager.GetString("MenuName_Edit", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to File. + /// + public static string MenuName_File { + get { + return ResourceManager.GetString("MenuName_File", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Help. + /// + public static string MenuName_Help { + get { + return ResourceManager.GetString("MenuName_Help", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Run. + /// + public static string MenuName_Run { + get { + return ResourceManager.GetString("MenuName_Run", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Settings. + /// + public static string MenuName_Settings { + get { + return ResourceManager.GetString("MenuName_Settings", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Tools. + /// + public static string MenuName_Tools { + get { + return ResourceManager.GetString("MenuName_Tools", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to View. + /// + public static string MenuName_View { + get { + return ResourceManager.GetString("MenuName_View", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Can't export Resource. + /// + public static string Msg_CantExport_Caption { + get { + return ResourceManager.GetString("Msg_CantExport_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Can't export Resource '{0}'. None of the available importers is able to handle this Resource type.. + /// + public static string Msg_CantExport_Text { + get { + return ResourceManager.GetString("Msg_CantExport_Text", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Can't import file. + /// + public static string Msg_CantImport_Caption { + get { + return ResourceManager.GetString("Msg_CantImport_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Can't import file '{0}'. None of the available importers is able to handle the files format.. + /// + public static string Msg_CantImport_Text { + get { + return ResourceManager.GetString("Msg_CantImport_Text", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Break Prefab Link?. + /// + public static string Msg_ConfirmBreakPrefabLink_Caption { + get { + return ResourceManager.GetString("Msg_ConfirmBreakPrefabLink_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to This action will break the objects Prefab Link. Proceed?. + /// + public static string Msg_ConfirmBreakPrefabLink_Desc { + get { + return ResourceManager.GetString("Msg_ConfirmBreakPrefabLink_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Delete selected objects?. + /// + public static string Msg_ConfirmDeleteSelectedObjects_Caption { + get { + return ResourceManager.GetString("Msg_ConfirmDeleteSelectedObjects_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Do you really want to delete the selected objects?. + /// + public static string Msg_ConfirmDeleteSelectedObjects_Text { + get { + return ResourceManager.GetString("Msg_ConfirmDeleteSelectedObjects_Text", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Really quit?. + /// + public static string Msg_ConfirmQuit_Caption { + get { + return ResourceManager.GetString("Msg_ConfirmQuit_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Do you really want to quit?. + /// + public static string Msg_ConfirmQuit_Desc { + get { + return ResourceManager.GetString("Msg_ConfirmQuit_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Really quit?. + /// + public static string Msg_ConfirmQuitUnsaved_Caption { + get { + return ResourceManager.GetString("Msg_ConfirmQuitUnsaved_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The following Resources have been modified without saving:{0}Do you want to save them before exiting?. + /// + public static string Msg_ConfirmQuitUnsaved_Desc { + get { + return ResourceManager.GetString("Msg_ConfirmQuitUnsaved_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to [ and {0} more ]. + /// + public static string Msg_ConfirmQuitUnsaved_Desc_More { + get { + return ResourceManager.GetString("Msg_ConfirmQuitUnsaved_Desc_More", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reload Resource?. + /// + public static string Msg_ConfirmReloadResource_Caption { + get { + return ResourceManager.GetString("Msg_ConfirmReloadResource_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The currently active Resource '{0}' has been modified externally. Do you want to reload it from file? Any unsaved changes might be lost.. + /// + public static string Msg_ConfirmReloadResource_Text { + get { + return ResourceManager.GetString("Msg_ConfirmReloadResource_Text", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Invalid Target Directory. + /// + public static string Msg_CreateProjectErrorNestedFolder_Caption { + get { + return ResourceManager.GetString("Msg_CreateProjectErrorNestedFolder_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The specified target folder is located within the current working directory. Please select one that is located elsewhere.. + /// + public static string Msg_CreateProjectErrorNestedFolder_Desc { + get { + return ResourceManager.GetString("Msg_CreateProjectErrorNestedFolder_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Invalid Target Directory. + /// + public static string Msg_CreateProjectErrorTargetExists_Caption { + get { + return ResourceManager.GetString("Msg_CreateProjectErrorTargetExists_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The specified target folder already exists and is not empty. Please select a different one.. + /// + public static string Msg_CreateProjectErrorTargetExists_Desc { + get { + return ResourceManager.GetString("Msg_CreateProjectErrorTargetExists_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The specified target folder is conflicting with an existing file. Please select a different one.. + /// + public static string Msg_CreateProjectErrorTargetIsFilePath_Desc { + get { + return ResourceManager.GetString("Msg_CreateProjectErrorTargetIsFilePath_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Save current Scene?. + /// + public static string Msg_EnterSandboxUnsavedScene_Caption { + get { + return ResourceManager.GetString("Msg_EnterSandboxUnsavedScene_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to You are about to enter Sandbox mode although the current Scene is temporary, so it won't be restored when leaving Sandbox mode. Do you want to make it restorable by saving it before?. + /// + public static string Msg_EnterSandboxUnsavedScene_Desc { + get { + return ResourceManager.GetString("Msg_EnterSandboxUnsavedScene_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Error Creating Project. + /// + public static string Msg_ErrorCantCreateProject_Caption { + get { + return ResourceManager.GetString("Msg_ErrorCantCreateProject_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Can't create a new project, because a error occurred : {1}{0}. + /// + public static string Msg_ErrorCantCreateProject_Desc { + get { + return ResourceManager.GetString("Msg_ErrorCantCreateProject_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to First Duality Install. + /// + public static string Msg_ErrorFirstDualityInstall_Caption { + get { + return ResourceManager.GetString("Msg_ErrorFirstDualityInstall_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The first time you run the editor, Duality will self-install into this folder by downloading the latest packages from the central repository. + /// + ///Unfortunately though, a connection doesn't seem to be possible right now. Please check your firewall and network status!. + /// + public static string Msg_ErrorFirstDualityInstall_Desc { + get { + return ResourceManager.GetString("Msg_ErrorFirstDualityInstall_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Failed to perform task. + /// + public static string Msg_ErrorPerformBigTask_Caption { + get { + return ResourceManager.GetString("Msg_ErrorPerformBigTask_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to An error occurred while performing task '{0}': {1}{2}. + /// + public static string Msg_ErrorPerformBigTask_Desc { + get { + return ResourceManager.GetString("Msg_ErrorPerformBigTask_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Can't reload core plugin. + /// + public static string Msg_ErrorReloadCorePlugin_Caption { + get { + return ResourceManager.GetString("Msg_ErrorReloadCorePlugin_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to An error occurred reloading Duality core plugins: {0}{1}. + /// + public static string Msg_ErrorReloadCorePlugin_Desc { + get { + return ResourceManager.GetString("Msg_ErrorReloadCorePlugin_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Overwrite file?. + /// + public static string Msg_ImportConfirmOverwrite_Caption { + get { + return ResourceManager.GetString("Msg_ImportConfirmOverwrite_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to This import operation would overwrite already imported Resources or already present source / media files. Do you want to continue?. + /// + public static string Msg_ImportConfirmOverwrite_Text { + get { + return ResourceManager.GetString("Msg_ImportConfirmOverwrite_Text", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Install new Template?. + /// + public static string Msg_InstallNewTemplate_Caption { + get { + return ResourceManager.GetString("Msg_InstallNewTemplate_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The Template you selected is not located inside your global Template directory. Do you wish to send it there for future usage?. + /// + public static string Msg_InstallNewTemplate_Desc { + get { + return ResourceManager.GetString("Msg_InstallNewTemplate_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Confirm Delete. + /// + public static string Msg_PublishConfirmDeleteTargetDir_Caption { + get { + return ResourceManager.GetString("Msg_PublishConfirmDeleteTargetDir_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The specified directory already contains a non-empty folder named '{0}'. Delete folder in order to proceed?. + /// + public static string Msg_PublishConfirmDeleteTargetDir_Desc { + get { + return ResourceManager.GetString("Msg_PublishConfirmDeleteTargetDir_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Invalid Target Directory. + /// + public static string Msg_PublishProjectErrorNestedFolder_Caption { + get { + return ResourceManager.GetString("Msg_PublishProjectErrorNestedFolder_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The specified target folder is located within the current working directory. Please select one that is located elsewhere.. + /// + public static string Msg_PublishProjectErrorNestedFolder_Desc { + get { + return ResourceManager.GetString("Msg_PublishProjectErrorNestedFolder_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Package Install Canceled. + /// + public static string MsgLicenseNotAgreedAbort_Caption { + get { + return ResourceManager.GetString("MsgLicenseNotAgreedAbort_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The install operation was canceled. You can only install this package when agreeing to its license terms.. + /// + public static string MsgLicenseNotAgreedAbort_Desc { + get { + return ResourceManager.GetString("MsgLicenseNotAgreedAbort_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Project Templates (*.zip)|*.zip. + /// + public static string OpenTemplateDialog_Filters { + get { + return ResourceManager.GetString("OpenTemplateDialog_Filters", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select Project Template... + /// + public static string OpenTemplateDialog_Title { + get { + return ResourceManager.GetString("OpenTemplateDialog_Title", resourceCulture); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + public static System.Drawing.Bitmap page_white { + get { + object obj = ResourceManager.GetObject("page_white", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized string similar to {0} objects. + /// + public static string PropertyGrid_N_Objects { + get { + return ResourceManager.GetString("PropertyGrid_N_Objects", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reloading core plugins.... + /// + public static string TaskBarOverlay_ReloadCorePlugin_Desc { + get { + return ResourceManager.GetString("TaskBarOverlay_ReloadCorePlugin_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Changing project data format.... + /// + public static string TaskChangeDataFormat_Caption { + get { + return ResourceManager.GetString("TaskChangeDataFormat_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The project data format has been changed to {0}. Existing Resource files will be converted shortly.. + /// + public static string TaskChangeDataFormat_Desc { + get { + return ResourceManager.GetString("TaskChangeDataFormat_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Updating all Resources.... + /// + public static string TaskFormatUpdateAll_Caption { + get { + return ResourceManager.GetString("TaskFormatUpdateAll_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to All existing Resource files are being updated according to the current file format specifications.. + /// + public static string TaskFormatUpdateAll_Desc { + get { + return ResourceManager.GetString("TaskFormatUpdateAll_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Installing Packages.... + /// + public static string TaskInstallPackages_Caption { + get { + return ResourceManager.GetString("TaskInstallPackages_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Duality is installing some required packages. This may include downloading them from the central package repository.. + /// + public static string TaskInstallPackages_Desc { + get { + return ResourceManager.GetString("TaskInstallPackages_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Preparing operation.... + /// + public static string TaskPrepareInfo { + get { + return ResourceManager.GetString("TaskPrepareInfo", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Relocating ContentRefs.... + /// + public static string TaskRenameContentRefs_Caption { + get { + return ResourceManager.GetString("TaskRenameContentRefs_Caption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to One or more Resources have been moved or renamed. Duality is searching for references to these Resources in order to update them.. + /// + public static string TaskRenameContentRefs_Desc { + get { + return ResourceManager.GetString("TaskRenameContentRefs_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Creates a new project by cloning the current one.. + /// + public static string Template_Current_Desc { + get { + return ResourceManager.GetString("Template_Current_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Current Project. + /// + public static string Template_Current_Name { + get { + return ResourceManager.GetString("Template_Current_Name", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to A project without any content.. + /// + public static string Template_Empty_Desc { + get { + return ResourceManager.GetString("Template_Empty_Desc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Empty Project. + /// + public static string Template_Empty_Name { + get { + return ResourceManager.GetString("Template_Empty_Name", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Add {0} to IDictionaries. + /// + public static string UndoRedo_AddToDictionary { + get { + return ResourceManager.GetString("UndoRedo_AddToDictionary", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Apply {0}. + /// + public static string UndoRedo_ApplyToPrefab { + get { + return ResourceManager.GetString("UndoRedo_ApplyToPrefab", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Apply {0} GameObjects. + /// + public static string UndoRedo_ApplyToPrefabMulti { + get { + return ResourceManager.GetString("UndoRedo_ApplyToPrefabMulti", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Unlink {0}. + /// + public static string UndoRedo_BreakPrefabLink { + get { + return ResourceManager.GetString("UndoRedo_BreakPrefabLink", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Unlink {0} GameObjects. + /// + public static string UndoRedo_BreakPrefabLinkMulti { + get { + return ResourceManager.GetString("UndoRedo_BreakPrefabLinkMulti", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Clone {0}. + /// + public static string UndoRedo_CloneGameObject { + get { + return ResourceManager.GetString("UndoRedo_CloneGameObject", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Clone {0} GameObjects. + /// + public static string UndoRedo_CloneGameObjectMulti { + get { + return ResourceManager.GetString("UndoRedo_CloneGameObjectMulti", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Create {0}. + /// + public static string UndoRedo_CreateComponent { + get { + return ResourceManager.GetString("UndoRedo_CreateComponent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Create {0} Components. + /// + public static string UndoRedo_CreateComponentMulti { + get { + return ResourceManager.GetString("UndoRedo_CreateComponentMulti", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Create {0}. + /// + public static string UndoRedo_CreateGameObject { + get { + return ResourceManager.GetString("UndoRedo_CreateGameObject", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Create {0} GameObjects. + /// + public static string UndoRedo_CreateGameObjectMulti { + get { + return ResourceManager.GetString("UndoRedo_CreateGameObjectMulti", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Delete {0}. + /// + public static string UndoRedo_DeleteComponent { + get { + return ResourceManager.GetString("UndoRedo_DeleteComponent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Delete {0} Components. + /// + public static string UndoRedo_DeleteComponentMulti { + get { + return ResourceManager.GetString("UndoRedo_DeleteComponentMulti", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Delete {0}. + /// + public static string UndoRedo_DeleteGameObject { + get { + return ResourceManager.GetString("UndoRedo_DeleteGameObject", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Delete {0} GameObjects. + /// + public static string UndoRedo_DeleteGameObjectMulti { + get { + return ResourceManager.GetString("UndoRedo_DeleteGameObjectMulti", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Edit {0}. + /// + public static string UndoRedo_EditProperty { + get { + return ResourceManager.GetString("UndoRedo_EditProperty", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Macro: {0} Actions. + /// + public static string UndoRedo_Macro { + get { + return ResourceManager.GetString("UndoRedo_Macro", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Paste {0}. + /// + public static string UndoRedo_PasteGameObject { + get { + return ResourceManager.GetString("UndoRedo_PasteGameObject", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Paste {0} GameObjects. + /// + public static string UndoRedo_PasteGameObjectMulti { + get { + return ResourceManager.GetString("UndoRedo_PasteGameObjectMulti", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Remove {0} from IDictionaries. + /// + public static string UndoRedo_RemoveFromDictionary { + get { + return ResourceManager.GetString("UndoRedo_RemoveFromDictionary", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reset {0}. + /// + public static string UndoRedo_ResetComponent { + get { + return ResourceManager.GetString("UndoRedo_ResetComponent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reset {0} Components. + /// + public static string UndoRedo_ResetComponentMulti { + get { + return ResourceManager.GetString("UndoRedo_ResetComponentMulti", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Revert {0}. + /// + public static string UndoRedo_ResetGameObject { + get { + return ResourceManager.GetString("UndoRedo_ResetGameObject", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Revert {0} GameObjects. + /// + public static string UndoRedo_ResetGameObjectMulti { + get { + return ResourceManager.GetString("UndoRedo_ResetGameObjectMulti", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Resize ILists to {0} elements. + /// + public static string UndoRedo_ResizeILists { + get { + return ResourceManager.GetString("UndoRedo_ResizeILists", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Re-Parent {0}. + /// + public static string UndoRedo_SetComponentParent { + get { + return ResourceManager.GetString("UndoRedo_SetComponentParent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Re-Parent {0} Components. + /// + public static string UndoRedo_SetComponentParentMulti { + get { + return ResourceManager.GetString("UndoRedo_SetComponentParentMulti", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Rename {0}. + /// + public static string UndoRedo_SetGameObjectName { + get { + return ResourceManager.GetString("UndoRedo_SetGameObjectName", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Rename {0} GameObjects. + /// + public static string UndoRedo_SetGameObjectNameMulti { + get { + return ResourceManager.GetString("UndoRedo_SetGameObjectNameMulti", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Re-Parent {0}. + /// + public static string UndoRedo_SetGameObjectParent { + get { + return ResourceManager.GetString("UndoRedo_SetGameObjectParent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Re-Parent {0} GameObjects. + /// + public static string UndoRedo_SetGameObjectParentMulti { + get { + return ResourceManager.GetString("UndoRedo_SetGameObjectParentMulti", resourceCulture); + } + } + } +} diff --git a/Source/Editor/DualityEditor/Properties/GeneralRes.resx b/Source/Editor/DualityEditor/Properties/GeneralRes.resx index 02552be38..8123617d0 100644 --- a/Source/Editor/DualityEditor/Properties/GeneralRes.resx +++ b/Source/Editor/DualityEditor/Properties/GeneralRes.resx @@ -457,8 +457,8 @@ All existing Resource files are being updated according to the current file format specifications. - - ..\EmbeddedResources\editoruserdata.xml;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252 + + ..\EmbeddedResources\dockpanel.xml;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252 Diagnostics diff --git a/Source/Editor/DualityEditor/Utility/DualityEditorUserData.cs b/Source/Editor/DualityEditor/Utility/DualityEditorUserData.cs new file mode 100644 index 000000000..acfd3ca6d --- /dev/null +++ b/Source/Editor/DualityEditor/Utility/DualityEditorUserData.cs @@ -0,0 +1,107 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Xml.Linq; +using Duality.Resources; + +namespace Duality.Editor +{ + public class DualityEditorUserData + { + private DesignTimeObjectDataManager designTimeObjectDataManager = new DesignTimeObjectDataManager(); + public DesignTimeObjectDataManager DesignTimeObjectDataManager + { + get { return this.designTimeObjectDataManager; } + set { this.designTimeObjectDataManager = value; } + } + + private XElement dockPanelState = XElement.Parse(Properties.GeneralRes.DefaultDockPanelData); + public XElement DockPanelState + { + get { return this.dockPanelState; } + set { this.dockPanelState = value; } + } + + private bool backups = false; + public bool Backups + { + get { return this.backups; } + set { this.backups = value; } + } + + private AutosaveFrequency autoSaves = AutosaveFrequency.ThirtyMinutes; + public AutosaveFrequency AutoSaves + { + get { return this.autoSaves; } + set { this.autoSaves = value; } + } + + private bool firstSession = false; + public bool FirstSession + { + get { return this.firstSession; } + set { this.firstSession = value; } + } + + private int activeDocumentIndex = 0; + public int ActiveDocumentIndex + { + get { return this.activeDocumentIndex; } + set { this.activeDocumentIndex = value; } + } + + private bool startWithLastScene = false; + public bool StartWithLastScene + { + get { return this.startWithLastScene; } + set { this.startWithLastScene = value; } + } + + private ContentRef lastOpenScene = null; + public ContentRef LastOpenScene + { + get { return this.lastOpenScene; } + set { this.lastOpenScene = value; } + } + + private PluginSettings pluginSettings = new PluginSettings(); + public PluginSettings PluginSettings + { + get { return this.pluginSettings; } + set { this.pluginSettings = value; } + } + } + + public class PluginSettings + { + private XElement oldStyleSettings = XElement.Parse(""); + + [Obsolete("Use the model based api")] + public XElement OldStyleSettings + { + get { return this.oldStyleSettings; } + set { this.oldStyleSettings = value; } + } + + private List plugins = new List(); + + internal void Clear() + { + this.plugins.Clear(); + this.oldStyleSettings = XElement.Parse(""); + } + + public T GetSettings() + where T : class, new() + { + T setting = this.plugins.OfType().FirstOrDefault(); + if (setting == null) + { + setting = new T(); + this.plugins.Add(setting); + } + + return setting; + } + } +} diff --git a/Source/Plugins/EditorBase/EditorBasePlugin.cs b/Source/Plugins/EditorBase/EditorBasePlugin.cs index d8b2a5db3..f8bbf0b5a 100644 --- a/Source/Plugins/EditorBase/EditorBasePlugin.cs +++ b/Source/Plugins/EditorBase/EditorBasePlugin.cs @@ -27,7 +27,7 @@ public class EditorBasePlugin : EditorPlugin private static readonly string ElementNamePixmapSlicer = "PixmapSlicer"; private PixmapSlicerForm slicingForm = null; - private XElement pixmapSlicerSettings = null; + private EditorBaseSettings editorBaseSettings = null; private bool isLoading = false; @@ -45,8 +45,8 @@ public PixmapSlicerForm RequestPixmapSlicerForm() this.slicingForm.FormClosed += this.slicingForm_FormClosed; // If there are cached settings available, apply them to the new editor - if (this.pixmapSlicerSettings != null) - this.slicingForm.LoadUserData(this.pixmapSlicerSettings); + if (this.editorBaseSettings != null) + this.slicingForm.LoadUserData(this.editorBaseSettings); if (!this.isLoading) { @@ -92,32 +92,24 @@ protected override void InitPlugin(MainForm main) DualityEditorApp.ObjectPropertyChanged += this.DualityEditorApp_ObjectPropertyChanged; } - protected override void SaveUserData(XElement node) + protected override void SaveUserData(PluginSettings pluginSettings) { if (this.slicingForm != null) { - this.pixmapSlicerSettings = new XElement(ElementNamePixmapSlicer); - this.slicingForm.SaveUserData(this.pixmapSlicerSettings); + this.editorBaseSettings = pluginSettings.GetSettings(); + this.slicingForm.SaveUserData(this.editorBaseSettings); } - - if (this.slicingForm != null && !this.pixmapSlicerSettings.IsEmpty) - node.Add(this.pixmapSlicerSettings); } - protected override void LoadUserData(XElement node) + protected override void LoadUserData(PluginSettings pluginSettings) { this.isLoading = true; - foreach (XElement pixmapSlicerElem in node.Elements(ElementNamePixmapSlicer)) - { - int i = pixmapSlicerElem.GetAttributeValue("id", 0); - if (i < 0 || i >= 1) continue; - this.pixmapSlicerSettings = new XElement(pixmapSlicerElem); - break; + if (this.slicingForm != null) + { + this.editorBaseSettings = pluginSettings.GetSettings(); + this.slicingForm.LoadUserData(this.editorBaseSettings); } - - if (this.slicingForm != null && this.pixmapSlicerSettings != null) - this.slicingForm.LoadUserData(this.pixmapSlicerSettings); - + this.isLoading = false; } protected override IDockContent DeserializeDockContent(Type dockContentType) @@ -133,8 +125,7 @@ protected override IDockContent DeserializeDockContent(Type dockContentType) } private void slicingForm_FormClosed(object sender, FormClosedEventArgs e) { - this.pixmapSlicerSettings = new XElement(ElementNamePixmapSlicer); - this.slicingForm.SaveUserData(this.pixmapSlicerSettings); + this.slicingForm.SaveUserData(this.editorBaseSettings); this.slicingForm.FormClosed -= this.slicingForm_FormClosed; this.slicingForm.Dispose(); diff --git a/Source/Plugins/EditorBase/EditorBaseSettings.cs b/Source/Plugins/EditorBase/EditorBaseSettings.cs new file mode 100644 index 000000000..d98aefacb --- /dev/null +++ b/Source/Plugins/EditorBase/EditorBaseSettings.cs @@ -0,0 +1,10 @@ +using Duality.Editor.Plugins.Base.Forms.PixmapSlicer.States; + +namespace Duality.Editor.Plugins.Base +{ + public class EditorBaseSettings + { + public bool DarkBackground { get; set; } + public PixmapNumberingStyle DisplayIndices { get; set; } + } +} diff --git a/Source/Plugins/EditorBase/Forms/PixmapSlicer/PixmapSlicerForm.cs b/Source/Plugins/EditorBase/Forms/PixmapSlicer/PixmapSlicerForm.cs index ed165867f..4a3a050dd 100644 --- a/Source/Plugins/EditorBase/Forms/PixmapSlicer/PixmapSlicerForm.cs +++ b/Source/Plugins/EditorBase/Forms/PixmapSlicer/PixmapSlicerForm.cs @@ -1,11 +1,8 @@ using System; using System.Drawing; -using System.Drawing.Drawing2D; using System.Windows.Forms; -using System.Xml.Linq; -using Duality.Drawing; + using Duality.Editor.Controls.ToolStrip; -using Duality.Editor.Plugins.Base.Forms.PixmapSlicer; using Duality.Editor.Plugins.Base.Forms.PixmapSlicer.States; using Duality.Editor.Plugins.Base.Properties; using Duality.Resources; @@ -60,20 +57,15 @@ public PixmapSlicerForm() DualityEditorApp.SelectionChanged += this.DualityEditorApp_SelectionChanged; } - internal void SaveUserData(XElement node) + internal void SaveUserData(EditorBaseSettings editorBaseSettings) { - node.SetElementValue("DarkBackground", this.buttonBrightness.Checked); - node.SetElementValue("DisplayIndices", this.pixmapView.NumberingStyle); + editorBaseSettings.DarkBackground = this.buttonBrightness.Checked; + editorBaseSettings.DisplayIndices = this.pixmapView.NumberingStyle; } - internal void LoadUserData(XElement node) + internal void LoadUserData(EditorBaseSettings editorBaseSettings) { - bool tryParseBool; - PixmapNumberingStyle tryParseNumeringStyle; - - if (node.GetElementValue("DarkBackground", out tryParseBool)) - this.buttonBrightness.Checked = tryParseBool; - if (node.GetElementValue("DisplayIndices", out tryParseNumeringStyle)) - this.pixmapView.NumberingStyle = tryParseNumeringStyle; + this.buttonBrightness.Checked = editorBaseSettings.DarkBackground; + this.pixmapView.NumberingStyle = editorBaseSettings.DisplayIndices; this.UpdateIndicesButton(); } diff --git a/Source/Plugins/EditorModules/CamView/CamViewPlugin.cs b/Source/Plugins/EditorModules/CamView/CamViewPlugin.cs index 4690bf529..8520e21b5 100644 --- a/Source/Plugins/EditorModules/CamView/CamViewPlugin.cs +++ b/Source/Plugins/EditorModules/CamView/CamViewPlugin.cs @@ -53,6 +53,12 @@ protected override void SaveUserData(XElement node) this.camViews[i].SaveUserData(camViewElem); } } + + protected override XElement GetDefaultUserData() + { + return XElement.Parse(Properties.Resources.DefaultSettings); + } + protected override void LoadUserData(XElement node) { this.isLoading = true; diff --git a/Source/Plugins/EditorModules/CamView/DefaultSettings.xml b/Source/Plugins/EditorModules/CamView/DefaultSettings.xml new file mode 100644 index 000000000..c3c4371a8 --- /dev/null +++ b/Source/Plugins/EditorModules/CamView/DefaultSettings.xml @@ -0,0 +1,36 @@ + + + Parallax + 500 + + 64 + 64 + 64 + 0 + + + 0 + 0 + 0 + + Duality.Editor.Plugins.CamView.CamViewStates.SceneEditorCamViewState + + + + Duality.Editor.Plugins.CamView.CamViewLayers.RigidBodyJointCamViewLayer + Duality.Editor.Plugins.CamView.CamViewLayers.RigidBodyShapeCamViewLayer + Duality.Editor.Plugins.CamView.CamViewLayers.GridCamViewLayer + Duality.Editor.Plugins.CamView.CamViewLayers.BackPlateCamViewLayer + + + Duality.Components.Physics.RigidBody + + + + + Duality.Editor.Plugins.CamView.CamViewLayers.GridCamViewLayer + + + + + \ No newline at end of file diff --git a/Source/Plugins/EditorModules/CamView/Properties/Resources.Designer.cs b/Source/Plugins/EditorModules/CamView/Properties/Resources.Designer.cs index 5f2fbab53..06ed70b0e 100644 --- a/Source/Plugins/EditorModules/CamView/Properties/Resources.Designer.cs +++ b/Source/Plugins/EditorModules/CamView/Properties/Resources.Designer.cs @@ -60,6 +60,33 @@ internal Resources() { } } + /// + /// Looks up a localized string similar to <CamView id="0"> + /// <Perspective>Parallax</Perspective> + /// <FocusDist>500</FocusDist> + /// <BackgroundColor> + /// <R>64</R> + /// <G>64</G> + /// <B>64</B> + /// <A>0</A> + /// </BackgroundColor> + /// <SnapToGridSize> + /// <X>0</X> + /// <Y>0</Y> + /// <Z>0</Z> + /// </SnapToGridSize> + /// <ActiveState>Duality.Editor.Plugins.CamView.CamViewStates.SceneEditorCamViewState</ActiveState> + /// <States> + /// <State type="Duality.Editor.Plugins.CamView.CamViewStates.RigidBodyEditorCamViewState"> + /// <ActiveLayers> + /// <Item>Duality.Editor.Plugins.CamView. [rest of string was truncated]";. + /// + internal static string DefaultSettings { + get { + return ResourceManager.GetString("DefaultSettings", resourceCulture); + } + } + /// /// Looks up a localized resource of type System.Drawing.Bitmap. /// diff --git a/Source/Plugins/EditorModules/CamView/Properties/Resources.resx b/Source/Plugins/EditorModules/CamView/Properties/Resources.resx index e1de43026..0b14e07b1 100644 --- a/Source/Plugins/EditorModules/CamView/Properties/Resources.resx +++ b/Source/Plugins/EditorModules/CamView/Properties/Resources.resx @@ -139,4 +139,7 @@ ..\EmbeddedResources\RenderSetup.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\DefaultSettings.xml;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 + \ No newline at end of file diff --git a/Source/Plugins/EditorModules/LogView/LogViewPlugin.cs b/Source/Plugins/EditorModules/LogView/LogViewPlugin.cs index f674cfe8d..b2348e397 100644 --- a/Source/Plugins/EditorModules/LogView/LogViewPlugin.cs +++ b/Source/Plugins/EditorModules/LogView/LogViewPlugin.cs @@ -1,12 +1,6 @@ using System; -using System.Collections.Generic; -using System.Linq; using System.Windows.Forms; -using System.IO; -using System.Xml.Linq; -using Duality; -using Duality.Editor; using Duality.Editor.Forms; using Duality.Editor.Properties; using Duality.Editor.Plugins.LogView.Properties; @@ -41,28 +35,22 @@ protected override IDockContent DeserializeDockContent(Type dockContentType) this.isLoading = false; return result; } - protected override void SaveUserData(XElement node) + protected override void SaveUserData(PluginSettings pluginSettings) { if (this.logView != null) { - XElement logViewElem = new XElement("LogView"); - this.logView.SaveUserData(logViewElem); - if (!logViewElem.IsEmpty) - node.Add(logViewElem); + var logViewSettings = pluginSettings.GetSettings(); + this.logView.SaveUserData(logViewSettings); } } - protected override void LoadUserData(XElement node) + + protected override void LoadUserData(PluginSettings pluginSettings) { this.isLoading = true; if (this.logView != null) { - foreach (XElement logViewElem in node.Elements("LogView")) - { - int i = logViewElem.GetAttributeValue("id", 0); - if (i < 0 || i >= 1) continue; - - this.logView.LoadUserData(logViewElem); - } + var logViewSettings = pluginSettings.GetSettings(); + this.logView.LoadUserData(logViewSettings); } this.isLoading = false; } diff --git a/Source/Plugins/EditorModules/LogView/LogViewSettings.cs b/Source/Plugins/EditorModules/LogView/LogViewSettings.cs new file mode 100644 index 000000000..9899e1ed0 --- /dev/null +++ b/Source/Plugins/EditorModules/LogView/LogViewSettings.cs @@ -0,0 +1,61 @@ +namespace Duality.Editor.Plugins.LogView +{ + public class LogViewSettings + { + private bool showMessages = true; + public bool ShowMessages + { + get { return this.showMessages; } + set { this.showMessages = value; } + } + + private bool showWarnings = true; + public bool ShowWarnings + { + get { return this.showWarnings; } + set { this.showWarnings = value; } + } + + private bool showErrors = true; + public bool ShowErrors + { + get { return this.showErrors; } + set { this.showErrors = value; } + } + + private bool showCore = true; + public bool ShowCore + { + get { return this.showCore; } + set { this.showCore = value; } + } + + private bool showEditor = true; + public bool ShowEditor + { + get { return this.showEditor; } + set { this.showEditor = value; } + } + + private bool showGame = true; + public bool ShowGame + { + get { return this.showGame; } + set { this.showGame = value; } + } + + private bool autoClear = true; + public bool AutoClear + { + get { return this.autoClear; } + set { this.autoClear = value; } + } + + private bool pauseOnError = true; + public bool PauseOnError + { + get { return this.pauseOnError; } + set { this.pauseOnError = value; } + } + } +} diff --git a/Source/Plugins/EditorModules/LogView/Modules/LogView.cs b/Source/Plugins/EditorModules/LogView/Modules/LogView.cs index 77e1748e9..d68c48cf8 100644 --- a/Source/Plugins/EditorModules/LogView/Modules/LogView.cs +++ b/Source/Plugins/EditorModules/LogView/Modules/LogView.cs @@ -1,17 +1,10 @@ using System; using System.Drawing; using System.Collections.Generic; -using System.Globalization; -using System.Linq; -using System.Text; -using System.Xml.Linq; using System.Windows.Forms; using WeifenLuo.WinFormsUI.Docking; -using Duality; -using Duality.Editor; - namespace Duality.Editor.Plugins.LogView { public partial class LogView : DockContent @@ -90,29 +83,27 @@ private void DockPanel_ActiveContentChanged(object sender, EventArgs e) } } - internal void SaveUserData(XElement node) + internal void SaveUserData(LogViewSettings logViewSettings) { - node.SetElementValue("ShowMessages", this.buttonMessages.Checked); - node.SetElementValue("ShowWarnings", this.buttonWarnings.Checked); - node.SetElementValue("ShowErrors", this.buttonErrors.Checked); - node.SetElementValue("ShowCore", this.buttonCore.Checked); - node.SetElementValue("ShowEditor", this.buttonEditor.Checked); - node.SetElementValue("ShowGame", this.buttonGame.Checked); - node.SetElementValue("AutoClear", this.checkAutoClear.Checked); - node.SetElementValue("PauseOnError", this.buttonPauseOnError.Checked); + logViewSettings.ShowMessages = this.buttonMessages.Checked; + logViewSettings.ShowWarnings = this.buttonWarnings.Checked; + logViewSettings.ShowErrors = this.buttonErrors.Checked; + logViewSettings.ShowCore = this.buttonCore.Checked; + logViewSettings.ShowEditor = this.buttonEditor.Checked; + logViewSettings.ShowGame = this.buttonGame.Checked; + logViewSettings.AutoClear = this.checkAutoClear.Checked; + logViewSettings.PauseOnError = this.buttonPauseOnError.Checked; } - internal void LoadUserData(XElement node) + internal void LoadUserData(LogViewSettings logViewSettings) { - bool tryParseBool; - - if (node.GetElementValue("ShowMessages", out tryParseBool)) this.buttonMessages.Checked = tryParseBool; - if (node.GetElementValue("ShowWarnings", out tryParseBool)) this.buttonWarnings.Checked = tryParseBool; - if (node.GetElementValue("ShowErrors", out tryParseBool)) this.buttonErrors.Checked = tryParseBool; - if (node.GetElementValue("ShowCore", out tryParseBool)) this.buttonCore.Checked = tryParseBool; - if (node.GetElementValue("ShowEditor", out tryParseBool)) this.buttonEditor.Checked = tryParseBool; - if (node.GetElementValue("ShowGame", out tryParseBool)) this.buttonGame.Checked = tryParseBool; - if (node.GetElementValue("AutoClear", out tryParseBool)) this.checkAutoClear.Checked = tryParseBool; - if (node.GetElementValue("PauseOnError", out tryParseBool)) this.buttonPauseOnError.Checked = tryParseBool; + this.buttonMessages.Checked = logViewSettings.ShowMessages; + this.buttonWarnings.Checked = logViewSettings.ShowWarnings; + this.buttonErrors.Checked = logViewSettings.ShowErrors; + this.buttonCore.Checked = logViewSettings.ShowCore; + this.buttonEditor.Checked = logViewSettings.ShowEditor; + this.buttonGame.Checked = logViewSettings.ShowGame; + this.checkAutoClear.Checked = logViewSettings.AutoClear; + this.buttonPauseOnError.Checked = logViewSettings.PauseOnError; this.logEntryList.SetSourceFilter(Logs.Core.Id, !this.buttonCore.Checked); this.logEntryList.SetSourceFilter(Logs.Editor.Id, !this.buttonEditor.Checked); diff --git a/Source/Plugins/EditorModules/ObjectInspector/Modules/ObjectInspector.cs b/Source/Plugins/EditorModules/ObjectInspector/Modules/ObjectInspector.cs index 7f8deca00..e6314a695 100644 --- a/Source/Plugins/EditorModules/ObjectInspector/Modules/ObjectInspector.cs +++ b/Source/Plugins/EditorModules/ObjectInspector/Modules/ObjectInspector.cs @@ -1,18 +1,13 @@ using System; using System.Drawing; -using System.Globalization; using System.Linq; using System.Xml.Linq; using System.Windows.Forms; -using System.Collections.Generic; using WeifenLuo.WinFormsUI.Docking; using AdamsLair.WinForms.PropertyEditing; -using Duality; -using Duality.IO; using Duality.Resources; -using Duality.Editor; using Duality.Editor.AssetManagement; namespace Duality.Editor.Plugins.ObjectInspector @@ -108,13 +103,13 @@ protected override void OnGotFocus(EventArgs e) this.propertyGrid.Focus(); } - internal void SaveUserData(XElement node) + internal void SaveUserData(ObjectInspectorState inspectorState) { - node.SetElementValue("AutoRefresh", this.buttonAutoRefresh.Checked); - node.SetElementValue("Locked", this.buttonLock.Checked); - node.SetElementValue("TitleText", this.Text); - node.SetElementValue("DebugMode", this.buttonDebug.Checked); - node.SetElementValue("SortByName", this.buttonSortByName.Checked); + inspectorState.AutoRefresh = this.buttonAutoRefresh.Checked; + inspectorState.Locked = this.buttonLock.Checked; + inspectorState.TitleText = this.Text; + inspectorState.DebugMode = this.buttonDebug.Checked; + inspectorState.SortByName = this.buttonSortByName.Checked; // gridExpandState is normally only updated when the current selection changes. // Make sure we have the latest information when saving UserData. @@ -122,23 +117,20 @@ internal void SaveUserData(XElement node) XElement expandStateNode = new XElement("ExpandState"); this.gridExpandState.SaveToXml(expandStateNode); - node.Add(expandStateNode); + inspectorState.ExpandState = expandStateNode; } - internal void LoadUserData(XElement node) + internal void LoadUserData(ObjectInspectorState inspectorState) { - bool tryParseBool; + this.buttonAutoRefresh.Checked = inspectorState.AutoRefresh; + this.buttonLock.Checked = inspectorState.Locked; + this.buttonDebug.Checked = inspectorState.DebugMode; + this.buttonSortByName.Checked = inspectorState.SortByName; + this.Text = inspectorState.TitleText; - if (node.GetElementValue("AutoRefresh", out tryParseBool)) this.buttonAutoRefresh.Checked = tryParseBool; - if (node.GetElementValue("Locked", out tryParseBool)) this.buttonLock.Checked = tryParseBool; - if (node.GetElementValue("DebugMode", out tryParseBool)) this.buttonDebug.Checked = tryParseBool; - if (node.GetElementValue("SortByName", out tryParseBool)) this.buttonSortByName.Checked = tryParseBool; - this.Text = node.GetElementValue("TitleText", this.Text); - - XElement expandStateNode = node.Element("ExpandState", true); - if (expandStateNode != null) + if (inspectorState.ExpandState != null) { - this.gridExpandState.LoadFromXml(expandStateNode); - } + this.gridExpandState.LoadFromXml(inspectorState.ExpandState); + } } private void UpdateButtons() diff --git a/Source/Plugins/EditorModules/ObjectInspector/ObjectInspectorPlugin.cs b/Source/Plugins/EditorModules/ObjectInspector/ObjectInspectorPlugin.cs index c399bc0af..0ee5f7e27 100644 --- a/Source/Plugins/EditorModules/ObjectInspector/ObjectInspectorPlugin.cs +++ b/Source/Plugins/EditorModules/ObjectInspector/ObjectInspectorPlugin.cs @@ -1,15 +1,9 @@ using System; using System.Collections.Generic; -using System.Linq; using System.Windows.Forms; -using System.IO; -using System.Xml.Linq; -using Duality; -using Duality.Editor; using Duality.Editor.Forms; using Duality.Editor.Properties; -using Duality.Editor.UndoRedoActions; using Duality.Editor.Plugins.ObjectInspector.Properties; using WeifenLuo.WinFormsUI.Docking; @@ -57,25 +51,31 @@ protected override IDockContent DeserializeDockContent(Type dockContentType) this.isLoading = false; return result; } - protected override void SaveUserData(XElement node) + protected override void SaveUserData(PluginSettings pluginSettings) { + ObjectInspectorSettings objectInspectorSettings = pluginSettings.GetSettings(); + objectInspectorSettings.ObjectInspectors = new List(); for (int i = 0; i < this.objViews.Count; i++) { - XElement elem = new XElement("ObjectInspector"); - elem.SetAttributeValue("id", i); - node.Add(elem); - this.objViews[i].SaveUserData(elem); + var inspectorState = new ObjectInspectorState + { + Id = i + }; + this.objViews[i].SaveUserData(inspectorState); + + objectInspectorSettings.ObjectInspectors.Add(inspectorState); } } - protected override void LoadUserData(XElement node) + + protected override void LoadUserData(PluginSettings pluginSettings) { this.isLoading = true; - foreach (XElement elem in node.Elements("ObjectInspector")) + ObjectInspectorSettings objectInspectorSettings = pluginSettings.GetSettings(); + foreach (ObjectInspectorState inspectorState in objectInspectorSettings.ObjectInspectors) { - int i = elem.GetAttributeValue("id", 0); - if (i < 0 || i >= this.objViews.Count) continue; + if (inspectorState.Id < 0 || inspectorState.Id >= this.objViews.Count) continue; - this.objViews[i].LoadUserData(elem); + this.objViews[inspectorState.Id].LoadUserData(inspectorState); } this.isLoading = false; } diff --git a/Source/Plugins/EditorModules/ObjectInspector/ObjectInspectorSettings.cs b/Source/Plugins/EditorModules/ObjectInspector/ObjectInspectorSettings.cs new file mode 100644 index 000000000..c08ffe3a7 --- /dev/null +++ b/Source/Plugins/EditorModules/ObjectInspector/ObjectInspectorSettings.cs @@ -0,0 +1,62 @@ +using System.Collections.Generic; +using System.Xml.Linq; + +namespace Duality.Editor.Plugins.ObjectInspector +{ + public class ObjectInspectorSettings + { + public List ObjectInspectors { get; set; } = new List(); + } + + public class ObjectInspectorState + { + private int id; + public int Id + { + get { return this.id; } + set { this.id = value; } + } + + private bool autoRefresh = true; + public bool AutoRefresh + { + get { return this.autoRefresh; } + set { this.autoRefresh = value; } + } + + private bool locked; + public bool Locked + { + get { return this.locked; } + set { this.locked = value; } + } + + private string titleText = "Object Inspector"; + public string TitleText + { + get { return this.titleText; } + set { this.titleText = value; } + } + + private bool debugMode; + public bool DebugMode + { + get { return this.debugMode; } + set { this.debugMode = value; } + } + + private bool sortByName; + public bool SortByName + { + get { return this.sortByName; } + set { this.sortByName = value; } + } + + private XElement expandState; + public XElement ExpandState + { + get { return this.expandState; } + set { this.expandState = value; } + } + } +} diff --git a/Source/Plugins/EditorModules/ProjectView/Modules/ProjectFolderView.cs b/Source/Plugins/EditorModules/ProjectView/Modules/ProjectFolderView.cs index 45159d9f9..a91b11092 100644 --- a/Source/Plugins/EditorModules/ProjectView/Modules/ProjectFolderView.cs +++ b/Source/Plugins/EditorModules/ProjectView/Modules/ProjectFolderView.cs @@ -1,6 +1,5 @@ using System; using System.Collections.Generic; -using System.Collections.Specialized; using System.ComponentModel; using System.Reflection; using System.Drawing; @@ -10,17 +9,15 @@ using WeifenLuo.WinFormsUI.Docking; using Aga.Controls.Tree; + using AdamsLair.WinForms.ItemModels; using AdamsLair.WinForms.ItemViews; -using Duality; using Duality.IO; using Duality.Resources; -using Duality.Editor; using Duality.Editor.AssetManagement; using Duality.Editor.UndoRedoActions; using Duality.Editor.Plugins.ProjectView.TreeModels; -using System.Xml.Linq; namespace Duality.Editor.Plugins.ProjectView { @@ -121,13 +118,13 @@ protected override void OnClosed(EventArgs e) Resource.ResourceSaved -= this.Resource_ResourceSaved; } - internal void SaveUserData(XElement node) + internal void SaveUserData(ProjectViewSettings settings) { - node.SetElementValue("ImportSourcePath", this.importSourcePath); + settings.ImportSourcePath = this.importSourcePath; } - internal void LoadUserData(XElement node) + internal void LoadUserData(ProjectViewSettings settings) { - this.importSourcePath = node.GetElementValue("ImportSourcePath", this.importSourcePath); + this.importSourcePath = settings.ImportSourcePath; } public void FlashNode(NodeBase node) diff --git a/Source/Plugins/EditorModules/ProjectView/ProjectViewPlugin.cs b/Source/Plugins/EditorModules/ProjectView/ProjectViewPlugin.cs index 73b3e39b4..2acef256d 100644 --- a/Source/Plugins/EditorModules/ProjectView/ProjectViewPlugin.cs +++ b/Source/Plugins/EditorModules/ProjectView/ProjectViewPlugin.cs @@ -54,13 +54,15 @@ protected override void InitPlugin(MainForm main) ActionHandler = this.menuItemProjectView_Click }); } - protected override void LoadUserData(XElement node) + protected override void LoadUserData(PluginSettings settings) { - this.projectView.LoadUserData(node); + ProjectViewSettings projectViewSettings = settings.GetSettings(); + this.projectView.LoadUserData(projectViewSettings); } - protected override void SaveUserData(XElement node) + protected override void SaveUserData(PluginSettings settings) { - this.projectView.SaveUserData(node); + ProjectViewSettings projectViewSettings = settings.GetSettings(); + this.projectView.SaveUserData(projectViewSettings); } public ProjectFolderView RequestProjectView() { diff --git a/Source/Plugins/EditorModules/ProjectView/ProjectViewSettings.cs b/Source/Plugins/EditorModules/ProjectView/ProjectViewSettings.cs new file mode 100644 index 000000000..5893eb001 --- /dev/null +++ b/Source/Plugins/EditorModules/ProjectView/ProjectViewSettings.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Duality.Editor.Plugins.ProjectView +{ + public class ProjectViewSettings + { + private string importSourcePath; + + public string ImportSourcePath + { + get { return this.importSourcePath; } + set { this.importSourcePath = value; } + } + } +} diff --git a/Source/Plugins/EditorModules/SceneView/Modules/SceneView.cs b/Source/Plugins/EditorModules/SceneView/Modules/SceneView.cs index 56bbb0f21..74f64eeb1 100644 --- a/Source/Plugins/EditorModules/SceneView/Modules/SceneView.cs +++ b/Source/Plugins/EditorModules/SceneView/Modules/SceneView.cs @@ -4,7 +4,6 @@ using System.Linq; using System.Windows.Forms; using System.Reflection; -using System.Xml.Linq; using CancelEventHandler = System.ComponentModel.CancelEventHandler; using CancelEventArgs = System.ComponentModel.CancelEventArgs; @@ -13,11 +12,9 @@ using AdamsLair.WinForms.ItemModels; using AdamsLair.WinForms.ItemViews; -using Duality; using Duality.Cloning; using Duality.Resources; using Duality.IO; -using Duality.Editor; using Duality.Editor.Forms; using Duality.Editor.UndoRedoActions; @@ -172,16 +169,13 @@ protected override void OnClosed(EventArgs e) Scene.ComponentRemoving -= this.Scene_ComponentRemoving; } - internal void SaveUserData(XElement node) + internal void SaveUserData(SceneViewSettings sceneViewSettings) { - node.SetElementValue("ShowComponents", this.buttonShowComponents.Checked); + sceneViewSettings.ShowComponents = this.buttonShowComponents.Checked; } - internal void LoadUserData(XElement node) + internal void LoadUserData(SceneViewSettings sceneViewSettings) { - bool tryParseBool; - - if (node.GetElementValue("ShowComponents", out tryParseBool)) - this.buttonShowComponents.Checked = tryParseBool; + this.buttonShowComponents.Checked = sceneViewSettings.ShowComponents; } public void FlashNode(NodeBase node) diff --git a/Source/Plugins/EditorModules/SceneView/SceneViewPlugin.cs b/Source/Plugins/EditorModules/SceneView/SceneViewPlugin.cs index 366504d48..2a3e4ea9e 100644 --- a/Source/Plugins/EditorModules/SceneView/SceneViewPlugin.cs +++ b/Source/Plugins/EditorModules/SceneView/SceneViewPlugin.cs @@ -1,15 +1,9 @@ using System; -using System.Collections.Generic; using System.Linq; using System.Windows.Forms; -using System.IO; -using System.Xml.Linq; -using Duality; -using Duality.Editor; using Duality.Editor.Forms; using Duality.Editor.Properties; -using Duality.Editor.UndoRedoActions; using Duality.Editor.Plugins.SceneView.Properties; using WeifenLuo.WinFormsUI.Docking; @@ -42,28 +36,21 @@ protected override IDockContent DeserializeDockContent(Type dockContentType) this.isLoading = false; return result; } - protected override void SaveUserData(XElement node) + protected override void SaveUserData(PluginSettings settings) { + SceneViewSettings sceneViewSettings = settings.GetSettings(); if (this.sceneView != null) { - XElement sceneViewElem = new XElement("SceneView"); - this.sceneView.SaveUserData(sceneViewElem); - if (!sceneViewElem.IsEmpty) - node.Add(sceneViewElem); + this.sceneView.SaveUserData(sceneViewSettings); } } - protected override void LoadUserData(XElement node) + protected override void LoadUserData(PluginSettings settings) { + SceneViewSettings sceneViewSettings = settings.GetSettings(); this.isLoading = true; if (this.sceneView != null) { - foreach (XElement sceneViewElem in node.Elements("SceneView")) - { - int i = sceneViewElem.GetAttributeValue("id", 0); - if (i < 0 || i >= 1) continue; - - this.sceneView.LoadUserData(sceneViewElem); - } + this.sceneView.LoadUserData(sceneViewSettings); } this.isLoading = false; } diff --git a/Source/Plugins/EditorModules/SceneView/SceneViewSettings.cs b/Source/Plugins/EditorModules/SceneView/SceneViewSettings.cs new file mode 100644 index 000000000..f3987669f --- /dev/null +++ b/Source/Plugins/EditorModules/SceneView/SceneViewSettings.cs @@ -0,0 +1,13 @@ +namespace Duality.Editor.Plugins.SceneView +{ + public class SceneViewSettings + { + private bool showComponents = true; + + public bool ShowComponents + { + get { return this.showComponents; } + set { this.showComponents = value; } + } + } +} \ No newline at end of file diff --git a/Source/Plugins/Tilemaps/Editor/EditorPlugin.cs b/Source/Plugins/Tilemaps/Editor/EditorPlugin.cs index 6c6e4d5ff..6ff4b1eb8 100644 --- a/Source/Plugins/Tilemaps/Editor/EditorPlugin.cs +++ b/Source/Plugins/Tilemaps/Editor/EditorPlugin.cs @@ -1,20 +1,15 @@ using System; using System.Collections.Generic; -using System.Linq; using System.Windows.Forms; -using System.Xml; using System.Xml.Linq; using WeifenLuo.WinFormsUI.Docking; using AdamsLair.WinForms.ItemModels; -using Duality; -using Duality.IO; using Duality.Resources; using Duality.Plugins.Tilemaps; -using Duality.Editor; using Duality.Editor.Forms; using Duality.Editor.Properties; using Duality.Editor.Plugins.Tilemaps.Properties; @@ -39,8 +34,8 @@ public static TilemapsEditorPlugin Instance private TilesetEditor tilesetEditor = null; private TilemapToolSourcePalette tilePalette = null; private int pendingLocalTilePalettes = 0; - private XElement tilePaletteSettings = null; - private XElement tilesetEditorSettings = null; + private TilemapToolSourcePaletteSettings tilePaletteSettings = null; + private TilesetEditorSettings tilesetEditorSettings = null; private ITileDrawSource tileDrawingSource = EmptyTileDrawingSource; private HashSet> recompileOnChange = new HashSet>(); @@ -111,52 +106,33 @@ protected override void InitPlugin(MainForm main) FileEventManager.BeginGlobalRename += this.FileEventManager_BeginGlobalRename; DualityEditorApp.ObjectPropertyChanged += this.DualityEditorApp_ObjectPropertyChanged; } - protected override void SaveUserData(XElement node) + protected override void SaveUserData(PluginSettings pluginSettings) { + var tilemapsSettings = pluginSettings.GetSettings(); // Save editor settings to local cache node if (this.tilePalette != null) { - this.tilePaletteSettings = new XElement(ElementNameTilePalette); + this.tilePaletteSettings = tilemapsSettings.TilemapToolSourcePaletteSettings; this.tilePalette.SaveUserData(this.tilePaletteSettings); } if (this.tilesetEditor != null) { - this.tilesetEditorSettings = new XElement(ElementNameTilesetEditor); + this.tilesetEditorSettings = tilemapsSettings.TilesetEditorSettings; this.tilesetEditor.SaveUserData(this.tilesetEditorSettings); } - - // Save settings from the local cache node persistently. - if (this.tilePaletteSettings != null && !this.tilePaletteSettings.IsEmpty) - node.Add(new XElement(this.tilePaletteSettings)); - if (this.tilesetEditorSettings != null && !this.tilesetEditorSettings.IsEmpty) - node.Add(new XElement(this.tilesetEditorSettings)); } - protected override void LoadUserData(XElement node) + protected override void LoadUserData(PluginSettings pluginSettings) { this.isLoading = true; - + var tilemapsSettings = pluginSettings.GetSettings(); // Retrieve settings from persistent editor data and put them into the local cache node - foreach (XElement tilePaletteElem in node.Elements(ElementNameTilePalette)) - { - int i = tilePaletteElem.GetAttributeValue("id", 0); - if (i < 0 || i >= 1) continue; - - this.tilePaletteSettings = new XElement(tilePaletteElem); - break; - } - foreach (XElement tilesetEditorElem in node.Elements(ElementNameTilesetEditor)) - { - int i = tilesetEditorElem.GetAttributeValue("id", 0); - if (i < 0 || i >= 1) continue; - - this.tilesetEditorSettings = new XElement(tilesetEditorElem); - break; - } + this.tilePaletteSettings = tilemapsSettings.TilemapToolSourcePaletteSettings; + this.tilesetEditorSettings = tilemapsSettings.TilesetEditorSettings; // If we have an active matching editors, apply the settings directly - if (this.tilePalette != null && this.tilePaletteSettings != null) + if (this.tilePalette != null) this.tilePalette.LoadUserData(this.tilePaletteSettings); - if (this.tilesetEditor != null && this.tilesetEditorSettings != null) + if (this.tilesetEditor != null) this.tilesetEditor.LoadUserData(this.tilesetEditorSettings); this.isLoading = false; @@ -198,7 +174,7 @@ public TilesetEditor RequestTilesetEditor() // If there are cached settings available, apply them to the new editor if (this.tilePaletteSettings != null) - this.tilesetEditor.LoadUserData(this.tilePaletteSettings); + this.tilesetEditor.LoadUserData(this.tilesetEditorSettings); } // If we're not creating it as part of the loading procedure, add it to the main docking layout directly @@ -271,7 +247,6 @@ private List GetRecompileTilesets(ContentRef pixmapRef) private void tilesetEditor_FormClosed(object sender, FormClosedEventArgs e) { - this.tilesetEditorSettings = new XElement(ElementNameTilesetEditor); this.tilesetEditor.SaveUserData(this.tilesetEditorSettings); this.tilesetEditor.FormClosed -= this.tilesetEditor_FormClosed; diff --git a/Source/Plugins/Tilemaps/Editor/Modules/TilemapToolSourcePalette.cs b/Source/Plugins/Tilemaps/Editor/Modules/TilemapToolSourcePalette.cs index b882d7bbd..9d7dd413b 100644 --- a/Source/Plugins/Tilemaps/Editor/Modules/TilemapToolSourcePalette.cs +++ b/Source/Plugins/Tilemaps/Editor/Modules/TilemapToolSourcePalette.cs @@ -1,11 +1,7 @@ using System; using System.Collections.Generic; -using System.ComponentModel; using System.Drawing; using System.Linq; -using System.Windows.Forms; -using System.Xml; -using System.Xml.Linq; using WeifenLuo.WinFormsUI.Docking; @@ -44,18 +40,15 @@ public TilemapToolSourcePalette() this.ApplyTileIndexDrawMode(); } - internal void SaveUserData(XElement node) + internal void SaveUserData(TilemapToolSourcePaletteSettings settings) { - node.SetElementValue("DarkBackground", this.buttonBrightness.Checked); - node.SetElementValue("DisplayTileIndices", this.tileIndexDrawMode); + settings.DarkBackground = this.buttonBrightness.Checked; + settings.DisplayTileIndices = this.tileIndexDrawMode; } - internal void LoadUserData(XElement node) + internal void LoadUserData(TilemapToolSourcePaletteSettings settings) { - bool tryParseBool; - TilesetView.TileIndexDrawMode tryParseTileIndices; - - if (node.GetElementValue("DarkBackground", out tryParseBool)) this.buttonBrightness.Checked = tryParseBool; - if (node.GetElementValue("DisplayTileIndices", out tryParseTileIndices)) this.tileIndexDrawMode = tryParseTileIndices; + this.buttonBrightness.Checked = settings.DarkBackground; + this.tileIndexDrawMode = settings.DisplayTileIndices; this.ApplyBrightness(); this.ApplyTileIndexDrawMode(); diff --git a/Source/Plugins/Tilemaps/Editor/Modules/TilesetEditor.cs b/Source/Plugins/Tilemaps/Editor/Modules/TilesetEditor.cs index 9649517f1..7bff4415f 100644 --- a/Source/Plugins/Tilemaps/Editor/Modules/TilesetEditor.cs +++ b/Source/Plugins/Tilemaps/Editor/Modules/TilesetEditor.cs @@ -3,8 +3,6 @@ using System.ComponentModel; using System.Drawing; using System.Linq; -using System.Xml; -using System.Xml.Linq; using System.Windows.Forms; using Duality.Plugins.Tilemaps; @@ -16,7 +14,6 @@ using WeifenLuo.WinFormsUI.Docking; using Aga.Controls.Tree; -using Aga.Controls.Tree.NodeControls; namespace Duality.Editor.Plugins.Tilemaps { @@ -87,18 +84,15 @@ public TilesetEditor() this.UpdateZoomButtons(); } - internal void SaveUserData(XElement node) + internal void SaveUserData(TilesetEditorSettings settings) { - node.SetElementValue("DarkBackground", this.buttonBrightness.Checked); - node.SetElementValue("DisplayTileIndices", this.tileIndexDrawMode); + settings.DarkBackground = this.buttonBrightness.Checked; + settings.DisplayTileIndices = this.tileIndexDrawMode; } - internal void LoadUserData(XElement node) + internal void LoadUserData(TilesetEditorSettings settings) { - bool tryParseBool; - TilesetView.TileIndexDrawMode tryParseTileIndices; - - if (node.GetElementValue("DarkBackground", out tryParseBool)) this.buttonBrightness.Checked = tryParseBool; - if (node.GetElementValue("DisplayTileIndices", out tryParseTileIndices)) this.tileIndexDrawMode = tryParseTileIndices; + this.buttonBrightness.Checked = settings.DarkBackground; + this.tileIndexDrawMode = settings.DisplayTileIndices; this.ApplyBrightness(); this.ApplyTileIndexDrawMode(); diff --git a/Source/Plugins/Tilemaps/Editor/TilemapsSettings.cs b/Source/Plugins/Tilemaps/Editor/TilemapsSettings.cs new file mode 100644 index 000000000..f66a61df0 --- /dev/null +++ b/Source/Plugins/Tilemaps/Editor/TilemapsSettings.cs @@ -0,0 +1,42 @@ +namespace Duality.Editor.Plugins.Tilemaps +{ + public class TilemapsSettings + { + public TilemapToolSourcePaletteSettings TilemapToolSourcePaletteSettings { get; set; } = new TilemapToolSourcePaletteSettings(); + public TilesetEditorSettings TilesetEditorSettings { get; set; } = new TilesetEditorSettings(); + } + + public class TilemapToolSourcePaletteSettings + { + private bool darkBackground; + public bool DarkBackground + { + get { return this.darkBackground; } + set { this.darkBackground = value; } + } + + private TilesetView.TileIndexDrawMode displayTileIndices; + public TilesetView.TileIndexDrawMode DisplayTileIndices + { + get { return this.displayTileIndices; } + set { this.displayTileIndices = value; } + } + } + + public class TilesetEditorSettings + { + private bool darkBackground; + public bool DarkBackground + { + get { return this.darkBackground; } + set { this.darkBackground = value; } + } + + private TilesetView.TileIndexDrawMode displayTileIndices; + public TilesetView.TileIndexDrawMode DisplayTileIndices + { + get { return this.displayTileIndices; } + set { this.displayTileIndices = value; } + } + } +}