Merge branch 'LibrAlign' of https://dev.e-taxonomy.eu/git/taxeditor into LibrAlign
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / translation / TranslationWizardPage.java
index 49a46a7dc39034f251cf9b6799d91f6fa29ed627..7036537c14f2380c7cbd12916efbb54034a0730c 100644 (file)
@@ -29,6 +29,7 @@ import eu.etaxonomy.cdm.model.common.LanguageString;
 import eu.etaxonomy.cdm.model.common.MultilanguageTextHelper;
 import eu.etaxonomy.cdm.model.common.TermType;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
@@ -98,10 +99,10 @@ public class TranslationWizardPage extends WizardPage{
                rightContainer.setLayout(LayoutConstants.LAYOUT(1, false));
 //             rightContainer.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_RED));
                RootElement rightRoot = new RootElement(formFactory, rightContainer);
-
+               
                createLeftControls(leftRoot);
                createRightControls(rightRoot);
-
+               
                // initialize with default language
                setSource(CdmStore.getDefaultLanguage());
 
@@ -132,7 +133,7 @@ public class TranslationWizardPage extends WizardPage{
        private void createLeftControls(ICdmFormElement element){
 
                combo_sourceLanguage = formFactory.createDefinedTermComboElement(TermType.Language, element, null, null, SWT.NULL);
-
+               
                combo_sourceLanguage.setTerms(getLanguages());
 
                combo_sourceLanguage.addSelectionListener(new SelectionAdapter() {
@@ -146,11 +147,13 @@ public class TranslationWizardPage extends WizardPage{
                });
 
                LanguageString preferredLanguageString = MultilanguageTextHelper.getPreferredLanguageString(multilanguageText, getLanguages());
-
-               text_source = formFactory.createLanguageStringWithLabelElement(element, null, preferredLanguageString, TEXT_HEIGHT, SWT.NULL);
+               if (preferredLanguageString == null){
+                       preferredLanguageString = LanguageString.NewInstance("", PreferencesUtil.getGlobalLanguage());
+               }
+               text_source = formFactory.createLanguageStringWithLabelElement(element, null, preferredLanguageString, TEXT_HEIGHT, false, SWT.NULL);
 
 //             text_source.setEnabled(false);
-
+               
                text_source.setText(preferredLanguageString.getText());
        }
 
@@ -170,6 +173,7 @@ public class TranslationWizardPage extends WizardPage{
                                Language language = combo_targetLanguage.getSelection();
 
                                if (language == null){
+                                       setPageComplete(false);
                                        return;
                                }
 
@@ -186,7 +190,7 @@ public class TranslationWizardPage extends WizardPage{
                        }
                });
 
-               text_target = formFactory.createLanguageStringWithLabelElement(element, null, null, TEXT_HEIGHT, SWT.NULL);
+               text_target = formFactory.createLanguageStringWithLabelElement(element, null, null, TEXT_HEIGHT, false, SWT.NULL);
 
                //
                // The automated translation did rely on the Google Translate API. Unfortunately this service is not free anymore.