public StageDocument AddStage(string name, string tilesetPath) { string stageDir = Path.Combine(BaseDir, "stages"); if (!Directory.Exists(stageDir)) { Directory.CreateDirectory(stageDir); } string stagePath = Path.Combine(stageDir, name); if (!Directory.Exists(stagePath)) { Directory.CreateDirectory(stagePath); } var stage = new StageDocument(this) { Path = FilePath.FromAbsolute(stagePath, this.BaseDir), Name = name }; stage.ChangeTileset(tilesetPath); stage.Save(); openStages.Add(name, stage); var info = new StageLinkInfo { Name = name, StagePath = FilePath.FromAbsolute(stagePath, BaseDir) }; Project.AddStage(info); Save(); // need to save the reference to the new stage if (StageAdded != null) { StageAdded(stage); } return(stage); }
public StageDocument AddStage(string name, string tilesetPath) { string stageDir = Path.Combine(BaseDir, "stages"); if (!Directory.Exists(stageDir)) { Directory.CreateDirectory(stageDir); } string stagePath = Path.Combine(stageDir, name); if (!Directory.Exists(stagePath)) { Directory.CreateDirectory(stagePath); } var stage = new StageDocument(this) { Path = FilePath.FromAbsolute(stagePath, this.BaseDir), Name = name }; stage.ChangeTileset(tilesetPath); stage.Save(); openStages.Add(name, stage); var info = new StageInfo {Name = name, StagePath = FilePath.FromAbsolute(stagePath, BaseDir)}; Project.AddStage(info); Save(); // need to save the reference to the new stage if (StageAdded != null) StageAdded(stage); return stage; }