/// <summary>
        ///   Constructor.
        /// </summary>
        public EditorContext()
        {
            this.blueprintManagerSerializer = new XmlSerializer(typeof(BlueprintManager));
            this.projectSettingsSerializer = new XmlSerializer(typeof(ProjectSettings));
            this.editorSettingsSerializer = new XmlSerializer(typeof(EditorSettings));

            this.localizationContext = new LocalizationContext(this);
            this.AvailableLanguages = new ObservableCollection<string>();
            this.editorSettings = new EditorSettings();

            this.SetAvailableLanguages(new List<string>());

            this.LoadEditorSettings();
        }
        private void LoadEditorSettings()
        {
            var fileInfo = new FileInfo(EditorSettingsSerializationPath);

            if (fileInfo.Exists)
            {
                using (var fileStream = fileInfo.OpenRead())
                {
                    this.editorSettings = (EditorSettings)this.editorSettingsSerializer.Deserialize(fileStream);
                }
            }
            else
            {
                this.editorSettings = new EditorSettings();
                this.SaveEditorSettings();
            }
        }