Beispiel #1
0
        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));
        }
Beispiel #2
0
        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);
        }
Beispiel #3
0
 private void OpenProject()
 {
     OpenProject(DXProject.OpenDialog());
 }