private void OpenProject_Execute(object sender, ExecutedRoutedEventArgs e) { if (e.Parameter is RecentItem item) { var openedProject = Model.Projects .FirstOrDefault(p => p.FileName.AnyEquals(item.FileName)); // Open if (openedProject == null) { DXProject project = item.OpenDXProject(); // 파일을 찾을 수 없음 if (project == null) { UpdateRecentMenu(); return; } OpenProject(project); return; } // Select Tab SelectProject(openedProject); } else { OpenProject(); } }
public void OpenStoryboardPage(DXProject project) { // DeXign Project var page = new StoryboardPage(); var tabItem = new ClosableTabItem() { Header = project.Manifest.ProjectName, IsSelected = true, Content = new Frame() { Content = page }, Tag = page.Model }; tabItem.Closed += TabItem_Closed; // Add project on managed collection Model.Projects.SafeAdd(project); // Set Storyboard Project page.Model.Project = project; // Add TabPage tabControl.Items.Add(tabItem); // Update Recent UpdateRecentMenu(); }
private void OpenProject_Execute(object sender, ExecutedRoutedEventArgs e) { DXProject project; if (e.Parameter is RecentItem item) { // 프로젝트 열기 project = item.OpenDXProject(); // 파일을 찾을 수 없음 if (project == null) { recentList.Items.Remove(item); return; } // 프로젝트 열기 실패 if (!project.CanOpen) { return; } } else { project = DXProject.OpenDialog(); } if (project == null) { return; } ShowEditorWindow(new EditorWindow(project)); }
private async void NewProject_Execute(object sender, ExecutedRoutedEventArgs e) { this.Hide(); var projDialog = new ProjectDialog(); if (!projDialog.ShowDialog()) { this.Show(); return; } var project = await DXProject.Create( projDialog.FileName, new DXProjectManifest() { ProjectName = projDialog.AppName, PackageName = projDialog.PackageName, Guid = Guid.NewGuid(), OwnerUID = GlobalModel.Instance.User.UID }); if (project == null) { return; } ShowEditorWindow(new EditorWindow(project)); }
private void OpenProject(DXProject project) { if (project == null) { return; } OpenStoryboardPage(project); }
private void OpenProject_Execute(object sender, ExecutedRoutedEventArgs e) { if (e.Parameter is RecentItem item) { // 파일 체크 if (!File.Exists(item.FileName)) { MessageBoxResult result = MessageBox.Show( $"'{item.FileName}' 파일을 열 수 없습니다. 이 파일에 대한 참조를 최근에 사용한 파일 목록에서 제거하시겠습니까?", "DeXign", MessageBoxButton.YesNo, MessageBoxImage.Information); if (result == MessageBoxResult.Yes) { recentList.Items.Remove(item); RecentDB.RemoveFile(item.FileName); } return; } // 프로젝트 열기 this.Project = DXProject.Open(item.FileName); // 프로젝트 파일 열기 실패 if (!this.Project.CanOpen) { // 메박 커스텀하고 내용 바꿀.. MessageBox.Show("어디 나사하나 빠진 파일 같습니다."); return; } } else { this.Project = DXProject.OpenDialog(); } if (this.Project == null) { return; } this.CloseDialog(true); }
public void CreateNewProject() { var projDialog = new ProjectDialog(); if (projDialog.ShowDialog()) { var project = DXProject.Create( projDialog.FileName, new DXProjectManifest() { ProjectName = projDialog.AppName, PackageName = projDialog.PackageName }); OpenStoryboardPage(project); } }
protected override void OnClosed(EventArgs e) { this.Project = mainPage.Project; if (this.Project == null) { string fileName = Path.Combine(projectPage2.SelectedDirectory, $"{projectPage1.AppName}.dx"); this.Project = DXProject.Create( fileName, new DXProjectManifest() { ProjectName = projectPage1.AppName, PackageName = projectPage1.PackageName }); } base.OnClosed(e); }
public DXProject OpenDXProject() { if (!File.Exists(this.FileName)) { MessageBoxResult result = MessageBox.Show( $"'{this.FileName}' 파일을 열 수 없습니다. 이 파일에 대한 참조를 최근에 사용한 파일 목록에서 제거하시겠습니까?", "DeXign", MessageBoxButton.YesNo, MessageBoxImage.Information); if (result == MessageBoxResult.Yes) { RecentDB.RemoveFile(this.FileName); return(null); } } return(DXProject.Open(this.FileName)); }
private void NewProject_Execute(object sender, ExecutedRoutedEventArgs e) { this.Hide(); var projDialog = new ProjectDialog(); if (!projDialog.ShowDialog()) { this.Show(); return; } var project = DXProject.Create( projDialog.FileName, new DXProjectManifest() { ProjectName = projDialog.AppName, PackageName = projDialog.PackageName }); ShowEditorWindow(new EditorWindow(project)); }
public async void CreateNewProject() { var projDialog = new ProjectDialog(); if (projDialog.ShowDialog()) { var project = await DXProject.Create( projDialog.FileName, new DXProjectManifest() { ProjectName = projDialog.AppName, PackageName = projDialog.PackageName, Guid = Guid.NewGuid(), OwnerUID = GlobalModel.Instance.User.UID }); if (project == null) { return; } OpenStoryboardPage(project); } }
public EditorWindow(DXProject project) : this() { // Load OpenStoryboardPage(project); }
private bool SelectProject(DXProject project) { return(SelectProject(project.FileName)); }
private void OpenProject() { OpenProject(DXProject.OpenDialog()); }
public static string GetDataName(DXProject project) { return($"프로젝트 '{project.Manifest.ProjectName}'"); }
public static string GetAbsoluteDataPath(DXProject project) { return($"/users/{User.UID}/projects/{project.Manifest.Guid.ToString()}/data"); }