public ITranslationProvider[] Browse(IWin32Window owner, LanguagePair[] languagePairs, ITranslationProviderCredentialStore credentialStore) { try { var options = new SdlMTCloudTranslationOptions(); var credentials = SplitCredentials(credentialStore, options); var window = new OptionsWindow(); var languages = new Languages.Provider.Languages(); var model = new OptionsWindowModel(window, options, credentials, languagePairs, languages); window.DataContext = model; window.ShowDialog(); if (window.DialogResult.HasValue && window.DialogResult.Value) { var clientId = model.Options.ClientId; var clientSecret = model.Options.ClientSecret; var resendDraft = model.Options.ResendDrafts; var provider = new SdlMTCloudTranslationProvider(options) { Options = model.Options }; SetCredentials(credentialStore, clientId, clientSecret, resendDraft, true); return(new ITranslationProvider[] { provider }); } } catch (Exception e) { Log.Logger.Error($"{Constants.Browse} {e.Message}\n {e.StackTrace}"); } return(null); }
public OptionsWindowModel(OptionsWindow window, SdlMTCloudTranslationOptions options, TranslationProviderCredential credentialStore, LanguagePair[] languagePairs, Languages.Provider.Languages languages) { _languages = languages; Options = options; LanguageMappingsViewModel = new LanguageMappingsViewModel(options, this, languagePairs, _languages); LoginViewModel = new LoginViewModel(options, languagePairs, LanguageMappingsViewModel, this); _window = window; if (credentialStore == null) { return; } if (options.AuthenticationMethod.Equals("ClientLogin")) { _window.LoginTab.ClientIdBox.Password = options.ClientId; _window.LoginTab.ClientSecretBox.Password = options.ClientSecret; LoginViewModel.SelectedOption = LoginViewModel.AuthenticationOptions[0]; } else { LoginViewModel.Email = options.ClientId; _window.LoginTab.UserPasswordBox.Password = options.ClientSecret; LoginViewModel.SelectedOption = LoginViewModel.AuthenticationOptions[1]; } var projectController = AppInitializer.GetProjectController(); projectController.ProjectsChanged += ProjectController_ProjectsChanged; }
public MTCodesWindowModel(Languages.Provider.Languages languages) { _languages = languages; MTCodes = new ObservableCollection <MTCloudLanguage>(GetAllLanguages()); _printService = new PrintService(); }
public MTCodesViewModel(Window owner, Languages.Provider.Languages languages) { Owner = owner; _languages = languages; MTCodes = new List <MTCloudLanguage>(GetAllLanguages(false)); _printService = new PrintService(); }
public SdlMTCloudTranslationProvider(Uri uri, ITranslationService translationService, string translationProviderState, EditorController editorController) { Uri = uri; LanguagesProvider = new Languages.Provider.Languages(); TranslationService = translationService; LoadState(translationProviderState); _editorController = editorController; SubscriptionInfo = Task.Run(async() => await TranslationService.GetLanguagePairs(translationService.ConnectionService.Credential.AccountId)).Result; }
protected override void Execute() { try { var mtCodesWindow = new MTCodesWindow(); var languages = new Languages.Provider.Languages(); var mtCodesViewModel = new MTCodesWindowModel(languages); mtCodesWindow.DataContext = mtCodesViewModel; mtCodesWindow.ShowDialog(); } catch (Exception ex) { Log.Logger.Error($"{Constants.ExcelExecuteAction} {ex.Message}\n {ex.StackTrace}"); throw; } }
public LanguageMappingsViewModel(SdlMTCloudTranslationOptions options, OptionsWindowModel beGlobalWindowViewModel, LanguagePair[] languagePairs, Languages.Provider.Languages languages) { _mtCloudDictionaries = new List <MTCloudDictionary>(); _languages = languages; _languagePairs = languagePairs; Options = options; _languageMappings = new ObservableCollection <LanguageMappingModel>(); _beGlobalWindowViewModel = beGlobalWindowViewModel; _languageMappingService = new LanguageMappingsService(); if (Options != null) { ReSendChecked = options.ResendDrafts; } BindingOperations.EnableCollectionSynchronization(LanguageMappings, _languageMappings); }
protected override void Execute() { try { var window = new MTCodesWindow(); var interopHelper = new WindowInteropHelper(window) { Owner = StudioInstance.GetActiveForm().Handle }; var languages = new Languages.Provider.Languages(); var viewModel = new MTCodesViewModel(window, languages); window.DataContext = viewModel; window.ShowDialog(); } catch (Exception ex) { Log.Logger.Error($"{Constants.ExcelExecuteAction} {ex.Message}\n {ex.StackTrace}"); throw; } }
public bool Edit(IWin32Window owner, ITranslationProvider translationProvider, LanguagePair[] languagePairs, ITranslationProviderCredentialStore credentialStore) { try { if (!(translationProvider is SdlMTCloudTranslationProvider editProvider)) { return(false); } //get saved key if there is one and put it into options var credentials = SplitCredentials(credentialStore, editProvider.Options); var window = new OptionsWindow(); var languages = new Languages.Provider.Languages(); var model = new OptionsWindowModel(window, editProvider.Options, credentials, languagePairs, languages); window.DataContext = model; window.ShowDialog(); if (window.DialogResult.HasValue && window.DialogResult.Value) { editProvider.Options = model.Options; var clientId = editProvider.Options.ClientId; var clientSecret = model.Options.ClientSecret; var resendDraft = model.Options.ResendDrafts; SetCredentials(credentialStore, clientId, clientSecret, resendDraft, true); return(true); } } catch (Exception e) { Log.Logger.Error($"{Constants.EditWindow} {e.Message}\n {e.StackTrace}"); } return(false); }