Beispiel #1
0
        protected override void CompleteDialogExtention()
        {
            LoadingViewModel.IsLoading = false;
            IsProcessing = true;

            var progressControlViewModel = new ProgressControlViewModel(ApplicationController);

            Controller.LoadToUi(progressControlViewModel);
            var progressControlViewModelLevel2 = new ProgressControlViewModel(ApplicationController);

            Controller.LoadToUi(progressControlViewModelLevel2);
            LogController = new LogController(progressControlViewModel);
            LogController.AddLevel2Ui(progressControlViewModelLevel2);
            var serviceRequestController = new ServiceRequestController(LogController, (o) => AddObjectToUi(o), RemoveObjectFromUi);

            Response = Service.Execute(Request, serviceRequestController);

            CompletionItem = Response;

            if (Response.Success)
            {
                ProcessCompletionExtention();
            }

            Controller.RemoveFromUi(progressControlViewModel);
            Controller.RemoveFromUi(progressControlViewModelLevel2);

            IsProcessing = false;

            if (!Response.Success)
            {
                ProcessError(Response.Exception);
            }
        }
Beispiel #2
0
 public CondaEnvironmentPreview()
 {
     Packages = new ObservableCollection <CondaPackageView>();
     Progress = new ProgressControlViewModel();
     Progress.ProgressMessage     = Strings.AddCondaEnvironmentPreviewInProgress;
     Progress.IsProgressDisplayed = false;
 }
        protected override void CompleteDialogExtention()
        {
            LoadingViewModel.IsLoading = false;
            IsProcessing = true;

            var progressControlViewModel = new ProgressControlViewModel(ApplicationController);

            Response = new TResponse();
            Response.HideResponseItems = true;
            if (DisplayResponseDuringServiceRequestExecution)
            {
                progressControlViewModel.SetDetailObject(Response);
            }


            Controller.LoadToUi(progressControlViewModel);
            LogController = progressControlViewModel.CreateLogControllerFor();
            var serviceRequestController = new ServiceRequestController(LogController, (o) => progressControlViewModel.SetDetailObject(o), (o) => progressControlViewModel.ClearDetailObject());

            Response = Service.Execute(Request, serviceRequestController, response: Response);

            CompletionItem = Response;

            if (Response.Success)
            {
                ProcessCompletionExtention();
            }

            Controller.RemoveFromUi(progressControlViewModel);
            Response.HideResponseItems = false;

            IsProcessing = false;
        }
 public void DownloadCsv(string folder)
 {
     ApplicationController.DoOnAsyncThread(() =>
     {
         CsvForExtraction      = false;
         CsvExtracting         = true;
         CsvExtractingProgress = new ProgressControlViewModel(ApplicationController);
         CsvExtractingProgress.UpdateProgress(0, 1, "Extracting To CSV");
         try
         {
             var fileName = string.Format("{0} CSV Download - {1}.csv", ApplicationController.ApplicationName,
                                          DateTime.Now.ToFileTime());
             CsvUtility.CreateCsv(folder, fileName
                                  , Items, new LogController(CsvExtractingProgress));
             CsvExtracting = false;
             CsvExtracted  = true;
             OpenCsvButton = new XrmButtonViewModel("Open CSV", () => OpenFile(folder, fileName),
                                                    ApplicationController);
             OpenCsvFolderButton = new XrmButtonViewModel("Open CSV Folder", () => OpenFolder(folder),
                                                          ApplicationController);
         }
         catch (Exception ex)
         {
             CsvExtracting    = false;
             CsvForExtraction = true;
             ApplicationController.UserMessage("Error Downloading CSV: " + ex.DisplayString());
         }
     });
 }
 protected DialogViewModel(IDialogController controller)
     : base(controller.ApplicationController)
 {
     Controller               = controller;
     Controller.MainDialog    = this;
     ProgressControlViewModel = new ProgressControlViewModel(ApplicationController);
     OnCancel = Controller.Close;
 }
 protected DialogViewModel(DialogViewModel parentDialog)
     : base(parentDialog.ApplicationController)
 {
     LoadingViewModel         = parentDialog.LoadingViewModel;
     ParentDialog             = parentDialog;
     Controller               = parentDialog.Controller;
     ProgressControlViewModel = new ProgressControlViewModel(ApplicationController);
     OnCancel = Controller.Close;
 }
Beispiel #7
0
        protected override void LoadDialogExtention()
        {
            LoadingViewModel.IsLoading = false;
            IsProcessing = true;

            var progressControlViewModel = new ProgressControlViewModel(ApplicationController);

            Controller.LoadToUi(progressControlViewModel);

            var logController = new LogController(progressControlViewModel);
            var entities      = ImportRequest.GetOrLoadEntitiesForImport(logController);

            Controller.RemoveFromUi(progressControlViewModel);
            IsProcessing = false;

            var indexThem = new SortedDictionary <string, SortedDictionary <Guid, List <KeyValuePair <string, Entity> > > >();

            foreach (var fileEntity in entities)
            {
                if (!indexThem.ContainsKey(fileEntity.Value.LogicalName))
                {
                    indexThem.Add(fileEntity.Value.LogicalName, new SortedDictionary <Guid, List <KeyValuePair <string, Entity> > >());
                }
                if (!indexThem[fileEntity.Value.LogicalName].ContainsKey(fileEntity.Value.Id))
                {
                    indexThem[fileEntity.Value.LogicalName].Add(fileEntity.Value.Id, new List <KeyValuePair <string, Entity> >());
                }
                indexThem[fileEntity.Value.LogicalName][fileEntity.Value.Id].Add(fileEntity);
            }
            var duplicates = new DuplicateImportXmlRecords();

            foreach (var type in indexThem.Keys)
            {
                var thisTypeDictionary = indexThem[type];
                foreach (var id in thisTypeDictionary.Keys)
                {
                    if (thisTypeDictionary[id].Count > 1)
                    {
                        duplicates.AddDuplicates(thisTypeDictionary[id]);
                    }
                }
            }
            if (duplicates.Duplicates.Any())
            {
                ImportRequest.ClearLoadedEntities();
                AddObjectToUi(duplicates, cancelAction: Controller.Close);
            }
            else
            {
                StartNextAction();
            }
        }
Beispiel #8
0
        public AddVirtualEnvironmentView(
            IServiceProvider serviceProvider,
            ProjectView[] projects,
            ProjectView selectedProject
            ) : base(serviceProvider, projects, selectedProject)
        {
            PageName                     = Strings.AddVirtualEnvironmentTabHeader;
            SetAsCurrent                 = SelectedProject != null;
            SetAsDefault                 = false;
            ViewInEnvironmentWindow      = false;
            Progress                     = new ProgressControlViewModel();
            Progress.ProgressMessage     = Strings.AddVirtualEnvironmentPreviewInProgress;
            Progress.IsProgressDisplayed = false;

            ResetProjectDependentProperties();
        }
Beispiel #9
0
        protected override void CompleteDialogExtention()
        {
            LoadingViewModel.IsLoading = false;
            IsProcessing = true;

            var progressControlViewModel = new ProgressControlViewModel(ApplicationController);

            Controller.LoadToUi(progressControlViewModel);
            var progressControlViewModelLevel2 = new ProgressControlViewModel(ApplicationController);

            Controller.LoadToUi(progressControlViewModelLevel2);
            LogController = new LogController(progressControlViewModel);
            LogController.AddLevel2Ui(progressControlViewModelLevel2);

            Response = Service.Execute(Request, LogController);

            CompletionItem = Response;

            if (Response.Success)
            {
                ProcessCompletionExtention();
            }

            Controller.RemoveFromUi(progressControlViewModel);
            Controller.RemoveFromUi(progressControlViewModelLevel2);

            IsProcessing = false;

            if (!Response.Success)
            {
                ProcessError(Response.Exception);
            }
            else if (CompletionMessage.IsNullOrWhiteSpace())
            {
                CompletionMessage = "Process Finished";
            }
        }