public MainWindowViewModel() { Properties.Settings.Default.Upgrade(); Properties.Settings.Default.StructureTemplates = Properties.Settings.Default.Properties["StructureTemplates"].DefaultValue.ToString(); if (Properties.Settings.Default.FirstStartup) { Properties.Settings.Default.StandardColorArray = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), "Appdata", "Local", "DominoPlanner", "colors" + Properties.Resources.ColorExtension); Properties.Settings.Default.StandardProjectPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), "Appdata", "Local", "DominoPlanner"); Properties.Settings.Default.OpenProjectList = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), "Appdata", "Local", "DominoPlanner", "OpenProjects.xml"); Directory.CreateDirectory(Path.GetDirectoryName(Properties.Settings.Default.StandardColorArray)); OpenProjectSerializer.Create(); Properties.Settings.Default.FirstStartup = false; } Properties.Settings.Default.Save(); while (!File.Exists(Properties.Settings.Default.StandardColorArray)) { Errorhandler.RaiseMessage("Please create a defaultcolortable.", "Missing Color Table", Errorhandler.MessageType.Info); new SetStandardV().ShowDialog(); } NewFieldStruct = new RelayCommand(o => { NewFieldStructure(); }); MenuSetStandard = new RelayCommand(o => { new SetStandardV().ShowDialog(); }); AddExistingProject = new RelayCommand(o => { AddProject_Exists(); }); AddExistingItem = new RelayCommand(o => { AddItem_Exists(); }); NewProject = new RelayCommand(o => { CreateNewProject(); }); SaveAll = new RelayCommand(o => { SaveAllOpen(); }); SaveCurrentOpen = new RelayCommand(o => { SaveCurrentOpenProject(); }); FileListClickCommand = new RelayCommand(o => { OpenItemFromPath(o); }); Tabs = new ObservableCollection <TabItem>(); Workspace.del = UpdateReference; loadProjectList(); }
internal async void AfterStartupChecks() { if (FirstStartup) { UserSettings.Instance.StandardColorArray = Path.Combine(UserSettings.AppDataPath, "colors.DColor"); UserSettings.Instance.StandardProjectPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), "DominoPlanner"); UserSettings.Instance.OpenProjectList = Path.Combine(UserSettings.AppDataPath, "OpenProjects.xml"); if (!File.Exists(UserSettings.Instance.OpenProjectList)) { File.Create(UserSettings.Instance.OpenProjectList).Close(); } UserSettings.Instance.StructureTemplates = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Resources", "Structures.xml"); Directory.CreateDirectory(UserSettings.Instance.StandardProjectPath); Directory.CreateDirectory(UserSettings.AppDataPath); OpenProjectSerializer.Create(); FirstStartup = false; } while (!File.Exists(UserSettings.Instance.StandardColorArray)) { await Errorhandler.RaiseMessage(_("Please create a default color table."), _("Missing Color Table"), Errorhandler.MessageType.Info); await new SetStandardV().ShowDialogWithParent <MainWindow>(); } LoadProjectList(); }
/// <summary> /// Projektliste laden /// </summary> private void loadProjectList() { Projects = new ObservableCollection <AssemblyNodeVM>(); List <OpenProject> OpenProjects = OpenProjectSerializer.GetOpenProjects(); if (OpenProjects != null) { foreach (OpenProject curOP in OpenProjects) { loadProject(curOP); } } else { Errorhandler.RaiseMessage("Error loading opened projects!", "Error", Errorhandler.MessageType.Error); OpenProjectSerializer.Create(); } }