コード例 #1
0
        private void ExportGraphML_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                string directory = m_SettingService.PlanDirectory;

                var filter = new FileDialogFileTypeFilter(
                    Resource.ProjectPlan.Filters.SaveGraphMLFileType,
                    Resource.ProjectPlan.Filters.SaveGraphMLFileExtension
                    );

                bool result = m_FileDialogService.ShowSaveDialog(directory, filter);

                if (result)
                {
                    {
                        string filename = m_FileDialogService.Filename;
                        if (string.IsNullOrWhiteSpace(filename))
                        {
                            MessageBox.Show(
                                Resource.ProjectPlan.Resources.Message_EmptyFilename,
                                Resource.ProjectPlan.Resources.Title_Error,
                                MessageBoxButton.OKCancel,
                                MessageBoxImage.Error);
                        }
                        else
                        {
                            File.WriteAllBytes(
                                filename,
                                ViewModel.ExportArrowGraphToDiagram(
                                    ArrowGraphAreaCtrl.ToDiagramArrowGraph()));
                            m_SettingService.SetDirectory(filename);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                System.Windows.MessageBox.Show(
                    ex.Message,
                    Resource.ProjectPlan.Resources.Title_Error,
                    MessageBoxButton.OKCancel,
                    MessageBoxImage.Error);
            }
        }
コード例 #2
0
        public async Task DoExportResourceChartToCsvAsync()
        {
            try
            {
                IsBusy = true;
                string directory = m_SettingService.PlanDirectory;

                var filter = new FileDialogFileTypeFilter(
                    Resource.ProjectPlan.Filters.SaveCsvFileType,
                    Resource.ProjectPlan.Filters.SaveCsvFileExtension
                    );

                bool result = m_FileDialogService.ShowSaveDialog(directory, filter);

                if (result)
                {
                    string filename = m_FileDialogService.Filename;
                    if (string.IsNullOrWhiteSpace(filename))
                    {
                        DispatchNotification(
                            Resource.ProjectPlan.Resources.Title_Error,
                            Resource.ProjectPlan.Resources.Message_EmptyFilename);
                    }
                    else
                    {
                        DataTable dataTable = await BuildResourceChartDataTableAsync().ConfigureAwait(true);

                        await ChartHelper.ExportDataTableToCsvAsync(dataTable, filename).ConfigureAwait(true);

                        m_SettingService.SetDirectory(filename);
                    }
                }
            }
            catch (Exception ex)
            {
                DispatchNotification(
                    Resource.ProjectPlan.Resources.Title_Error,
                    ex.Message);
            }
            finally
            {
                IsBusy = false;
                RaiseCanExecuteChangedAllCommands();
            }
        }
コード例 #3
0
        public MainWindowViewModel(IFormViewModel formViewModel, IMapViewModel mapViewModel, IProgressViewModel progressViewModel,
                                   IFileDialogService fileDialogService, IPackageService packageService,
                                   IImportService importservice, ISaveService saveService, ILoadService
                                   loadService, ILogService logService, IWindowService windowService,
                                   IProgressService progressService)
        {
            Loggers.PerformanceLogger.Debug("MainWindowViewModel constructor started");

            this.loadService             = loadService;
            loadService.PackageLoaded   += PackageServiceOnPackageLoaded;
            loadService.PackageUnloaded += OnPackageUnloaded;
            this.saveService             = saveService;
            // this.gisService = gisService;
            this.windowService     = windowService;
            this.fileDialogService = fileDialogService;
            this.packageService    = packageService;
            this.importservice     = importservice;
            this.progressService   = progressService;
            MapViewModel           = mapViewModel;
            FormViewModel          = formViewModel;
            ProgressViewModel      = progressViewModel;

            ShowHideKarteCommand    = new DelegateCommand(() => MapViewModel.IsVisible = !MapViewModel.IsVisible);
            ShowHideFormularCommand = new DelegateCommand(() => FormViewModel.IsVisible = !FormViewModel.IsVisible);

            ExitCommand      = new DelegateCommand(App.Current.Shutdown);
            ImportCommand    = new DelegateCommand(startImportWorker);
            SaveCommand      = new DelegateCommand(() => fileDialogService.ShowSaveDialog(saveService.Save));
            ExportCommand    = new DelegateCommand(exportSingle);
            ExportAllCommand = new DelegateCommand(() => fileDialogService.ShowExportDialog(packageService.Export, true));
            ExportLogCommand = new DelegateCommand(() => fileDialogService.ShowExportLogDialog(logService.ExportLog));
            WindowTitle      = string.Format("{0} v{1}-{2}", LocalizationLocator.MobileLocalization.MainWindowTitle, typeof(MainWindow).Assembly.GetName().Version, VersionPostfix.Postfix);
            MenuItemsVisible = false;
            isEnabled        = true;
            fileDialogService.ImportStart    += new EventHandler(fileDialogServiceImportStart);
            fileDialogService.ImportFinished += new EventHandler(fileDialogServiceImportFinished);
            progressService.OnStart          += progressOnStart;
            progressService.OnStop           += progressOnStop;

            Loggers.PerformanceLogger.Debug("MainWindowViewModel constructor ended");
        }
コード例 #4
0
        public async Task DoSaveProjectPlanFileAsync()
        {
            try
            {
                IsBusy = true;
                string directory = m_AppSettingService.ProjectPlanFolder;
                if (m_FileDialogService.ShowSaveDialog(
                        directory,
                        Properties.Resources.Filter_SaveProjectPlanFileType,
                        Properties.Resources.Filter_SaveProjectPlanFileExtension) == DialogResult.OK)
                {
                    string filename = m_FileDialogService.Filename;
                    if (string.IsNullOrWhiteSpace(filename))
                    {
                        DispatchNotification(
                            Properties.Resources.Title_Error,
                            Properties.Resources.Message_EmptyFilename);
                    }
                    else
                    {
                        ProjectPlanDto projectPlan = await BuildProjectPlanDtoAsync();
                        await SaveProjectPlanDtoAsync(projectPlan, filename);

                        IsProjectUpdated = false;
                        ProjectTitle     = Path.GetFileNameWithoutExtension(filename);
                        m_AppSettingService.ProjectPlanFolder = Path.GetDirectoryName(filename);
                    }
                }
            }
            catch (Exception ex)
            {
                DispatchNotification(
                    Properties.Resources.Title_Error,
                    ex.Message);
            }
            finally
            {
                IsBusy = false;
                RaiseCanExecuteChangedAllCommands();
            }
        }
コード例 #5
0
        public async Task DoExportResourceChartToCsvAsync()
        {
            try
            {
                IsBusy = true;
                string directory = m_AppSettingService.ProjectPlanFolder;
                if (m_FileDialogService.ShowSaveDialog(
                        directory,
                        Properties.Resources.Filter_SaveCsvFileType,
                        Properties.Resources.Filter_SaveCsvFileExtension) == DialogResult.OK)
                {
                    string filename = m_FileDialogService.Filename;
                    if (string.IsNullOrWhiteSpace(filename))
                    {
                        DispatchNotification(
                            Properties.Resources.Title_Error,
                            Properties.Resources.Message_EmptyFilename);
                    }
                    else
                    {
                        DataTable dataTable = await BuildResourceChartDataTableAsync();

                        await ChartHelper.ExportDataTableToCsvAsync(dataTable, filename);

                        m_AppSettingService.ProjectPlanFolder = Path.GetDirectoryName(filename);
                    }
                }
            }
            catch (Exception ex)
            {
                DispatchNotification(
                    Properties.Resources.Title_Error,
                    ex.Message);
            }
            finally
            {
                IsBusy = false;
                RaiseCanExecuteChangedAllCommands();
            }
        }
コード例 #6
0
 private void ExportGraphML_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         string directory = m_AppSettingService.ProjectPlanFolder;
         if (m_FileDialogService.ShowSaveDialog(
                 directory,
                 Properties.Resources.Filter_SaveGraphMLFileType,
                 Properties.Resources.Filter_SaveGraphMLFileExtension) == DialogResult.OK)
         {
             {
                 string filename = m_FileDialogService.Filename;
                 if (string.IsNullOrWhiteSpace(filename))
                 {
                     System.Windows.MessageBox.Show(
                         Properties.Resources.Message_EmptyFilename,
                         Properties.Resources.Title_Error,
                         MessageBoxButton.OKCancel,
                         MessageBoxImage.Error);
                 }
                 else
                 {
                     File.WriteAllBytes(
                         filename,
                         ViewModel.ExportArrowGraphToDiagram(
                             ArrowGraphAreaCtrl.ToDiagramArrowGraphDto()));
                     m_AppSettingService.ProjectPlanFolder = Path.GetDirectoryName(filename);
                 }
             }
         }
     }
     catch (Exception ex)
     {
         System.Windows.MessageBox.Show(
             ex.Message,
             Properties.Resources.Title_Error,
             MessageBoxButton.OKCancel,
             MessageBoxImage.Error);
     }
 }