/// <summary> /// Creates a new project and saves it to disk /// </summary> private bool CreateNewProject() { SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.Filter = "OtterUI Project files (*.ggp)|*.ggp|All files (*.*)|*.*"; saveFileDialog.InitialDirectory = System.IO.Directory.GetCurrentDirectory(); saveFileDialog.RestoreDirectory = true; if (saveFileDialog.ShowDialog() != DialogResult.OK) return false; CloseWelcomeForm(); IDockContent[] docArray = mDockPanel.Documents.ToArray(); foreach (DockContent doc in docArray) doc.Close(); GUIProject.CurrentProject = new GUIProject(); GUIProject.CurrentProject.Name = System.IO.Path.GetFileNameWithoutExtension(saveFileDialog.FileName); GUIProject.CurrentProject.ProjectDirectory = System.IO.Path.GetDirectoryName(saveFileDialog.FileName); // Create a default platform Platform platform = new Platform("PC"); platform.OutputDirectory = "Output"; GUIProject.CurrentProject.Platforms.Add(platform); // Create a default resolution Resolution resolution = new Resolution(1024, 768); GUIProject.CurrentProject.Resolutions.Add(resolution); Globals.ProjectView.Project = GUIProject.CurrentProject; mProjectToolStripMenuItem.Enabled = (GUIProject.CurrentProject != null); // Create a default font SaveResource("Otter.Editor.res.LiberationSans.ttf", GUIProject.CurrentProject.ProjectDirectory + "/Fonts/LiberationSans.ttf"); GUIFont font = new GUIFont(); font.Name = ("Default Font"); font.ID = 1; font.FontSize = 32; font.Project = GUIProject.CurrentProject; font.AddASCII(); font.Filename = "Fonts/LiberationSans.ttf"; GUIProject.CurrentProject.Fonts.Add(font); // Create a new scene GUIProjectScene sceneEntry = Globals.ProjectView.AddScene(); if (sceneEntry != null) { Globals.ProjectView.OpenEntry(sceneEntry); } SaveProject(saveFileDialog.FileName); SaveProjectToRecents(saveFileDialog.FileName); return true; }