private void RemoveSelectedTusToAnonymize()
 {
     foreach (var searchResult in SourceSearchResults.Where(s => s.TuSelected).ToList())
     {
         SourceSearchResults.Remove(searchResult);
     }
 }
Esempio n. 2
0
        public void ApplyChanges()
        {
            if (SourceSearchResults.Any(s => s.TuSelected))
            {
                var progressDialogSettings = new ProgressDialogSettings(_window, true, true, false);

                var result = ProgressDialog.Execute(StringResources.Applying_changes, () =>
                {
                    var selectedSearchResult = SourceSearchResults.Where(s => s.TuSelected).ToList();
                    List <AnonymizeTranslationMemory> anonymizeTranslationMemories;

                    //file base tms
                    var fileBasedSearchResult = selectedSearchResult.Where(t => !t.IsServer).ToList();
                    if (fileBasedSearchResult.Count > 0)
                    {
                        anonymizeTranslationMemories = GetTranslationUnitsToAnonymize(ProgressDialog.Current, fileBasedSearchResult);

                        if (ProgressDialog.Current != null && ProgressDialog.Current.CheckCancellationPending())
                        {
                            ProgressDialog.Current.ThrowIfCancellationPending();
                        }

                        _model.TmService.AnonymizeFileBasedTm(ProgressDialog.Current, anonymizeTranslationMemories);
                    }

                    //server based tms
                    var serverBasedSearchResult = selectedSearchResult.Where(t => t.IsServer).ToList();
                    if (serverBasedSearchResult.Count > 0)
                    {
                        anonymizeTranslationMemories = GetTranslationUnitsToAnonymize(ProgressDialog.Current, serverBasedSearchResult);

                        if (ProgressDialog.Current != null && ProgressDialog.Current.CheckCancellationPending())
                        {
                            ProgressDialog.Current.ThrowIfCancellationPending();
                        }

                        _model.TmService.AnonymizeServerBasedTm(ProgressDialog.Current, anonymizeTranslationMemories);
                    }
                }, progressDialogSettings);

                if (result.Cancelled)
                {
                    System.Windows.Forms.MessageBox.Show(StringResources.Process_cancelled_by_user, System.Windows.Forms.Application.ProductName);
                    _window.Close();
                }

                if (result.OperationFailed)
                {
                    System.Windows.Forms.MessageBox.Show(StringResources.Process_failed + Environment.NewLine + Environment.NewLine + result.Error.Message, System.Windows.Forms.Application.ProductName);
                }

                RemoveSelectedTusToAnonymize();

                _model.Refresh();
            }
            else
            {
                System.Windows.Forms.MessageBox.Show(StringResources.ApplyChanges_Please_select_at_least_one_translation_unit_to_apply_the_changes, System.Windows.Forms.Application.ProductName);
            }
        }
Esempio n. 3
0
        private void ApplyChanges()
        {
            var selectedSearchResult = SourceSearchResults.Where(s => s.TuSelected).ToList();
            var tusToAnonymize       = new List <AnonymizeTranslationMemory>();
            //file base tms
            var fileBasedSearchResult = selectedSearchResult.Where(t => !t.IsServer).ToList();

            if (fileBasedSearchResult.Count > 0)
            {
                BackupFileBasedTm();
                tusToAnonymize = GetTranslationUnitsToAnonymize(fileBasedSearchResult);
                Tm.AnonymizeFileBasedTu(tusToAnonymize);
            }
            //server based tms
            var serverBasedSearchResult = selectedSearchResult.Where(t => t.IsServer).ToList();

            if (serverBasedSearchResult.Count > 0)
            {
                tusToAnonymize = GetTranslationUnitsToAnonymize(serverBasedSearchResult);
                var uri = new Uri(_tmViewModel.Credentials.Url);
                var translationProvider = new TranslationProviderServer(uri, false, _tmViewModel.Credentials.UserName,
                                                                        _tmViewModel.Credentials.Password);

                BackupServerBasedTm(translationProvider, tusToAnonymize);
                Tm.AnonymizeServerBasedTu(translationProvider, tusToAnonymize);
            }
            RemoveSelectedTusToAnonymize();
        }
Esempio n. 4
0
 private void _tmsCollection_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
 {
     if (e.Action == NotifyCollectionChangedAction.Remove)
     {
         if (e.OldItems == null)
         {
             return;
         }
         foreach (TmFile removedTm in e.OldItems)
         {
             var tusForRemovedTm = SourceSearchResults.Where(t => t.TmFilePath.Equals(removedTm.Path)).ToList();
             foreach (var tu in tusForRemovedTm)
             {
                 SourceSearchResults.Remove(tu);
             }
         }
     }
 }
        private async void ApplyChanges()
        {
            if (SourceSearchResults.Any(s => s.TuSelected))
            {
                System.Windows.Application.Current.Dispatcher.Invoke(delegate
                {
                    _waitWindow = new WaitWindow();
                    _waitWindow.Show();
                });
                var selectedSearchResult = SourceSearchResults.Where(s => s.TuSelected).ToList();
                List <AnonymizeTranslationMemory> tusToAnonymize;
                //file base tms
                var fileBasedSearchResult = selectedSearchResult.Where(t => !t.IsServer).ToList();
                if (fileBasedSearchResult.Count > 0)
                {
                    BackupFileBasedTm();
                    tusToAnonymize = GetTranslationUnitsToAnonymize(fileBasedSearchResult);
                    Tm.AnonymizeFileBasedTu(tusToAnonymize);
                }
                //server based tms
                var serverBasedSearchResult = selectedSearchResult.Where(t => t.IsServer).ToList();
                if (serverBasedSearchResult.Count > 0)
                {
                    tusToAnonymize = GetTranslationUnitsToAnonymize(serverBasedSearchResult);
                    var uri = new Uri(_tmViewModel.Credentials.Url);
                    var translationProvider = new TranslationProviderServer(uri, false, _tmViewModel.Credentials.UserName,
                                                                            _tmViewModel.Credentials.Password);

                    BackupServerBasedTm(translationProvider, tusToAnonymize);
                    Tm.AnonymizeServerBasedTu(translationProvider, tusToAnonymize);
                }
                RemoveSelectedTusToAnonymize();
                _waitWindow?.Close();
            }
            else
            {
                await _dialogCoordinator.ShowMessageAsync(this, "", "Please select at least one translation unit to apply the changes");
            }
        }
Esempio n. 6
0
        private void _translationMemoryViewModel_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
        {
            if (e.PropertyName.Equals("TmsCollection"))
            {
                //removed from tm collection
                var unselectedTms = _tmsCollection.Where(t => !t.IsSelected).ToList();
                foreach (var tm in unselectedTms)
                {
                    var anonymizedTmToRemove = _anonymizeTranslationMemories.FirstOrDefault(t => t.TmPath.Equals(tm.Path));
                    if (anonymizedTmToRemove != null)
                    {
                        _anonymizeTranslationMemories.Remove(anonymizedTmToRemove);
                    }

                    //remove search results for that tm
                    var searchResultsForTm = SourceSearchResults.Where(r => r.TmFilePath.Equals(tm.Path)).ToList();
                    foreach (var result in searchResultsForTm)
                    {
                        SourceSearchResults.Remove(result);
                    }
                }
            }
        }