* See LICENSE.TXT at the top of this package for the full license terms.
*/
-package eu.etaxonomy.taxeditor.ui.forms;
+package eu.etaxonomy.taxeditor.ui.element;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
import eu.etaxonomy.cdm.model.common.Language;
import eu.etaxonomy.cdm.model.common.LanguageString;
import eu.etaxonomy.cdm.model.common.MultilanguageTextHelper;
+import eu.etaxonomy.taxeditor.model.DefaultTermComparator;
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
import eu.etaxonomy.taxeditor.store.CdmStore;
-import eu.etaxonomy.taxeditor.ui.combo.EmptyComboElement;
+import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
import eu.etaxonomy.taxeditor.ui.translation.TranslationWizard;
/**
}
}
- private EmptyComboElement<Language> combo_language;
+ private TermComboElement<Language> combo_language;
protected LanguageStringWithLabelElement element_languageString;
* </p>
*
* @param formFactory
- * a {@link eu.etaxonomy.taxeditor.ui.forms.CdmFormFactory}
+ * a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory}
* object.
* @param formElement
- * a {@link eu.etaxonomy.taxeditor.ui.forms.ICdmFormElement}
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
* object.
* @param labelString
* a {@link java.lang.String} object.
formFactory.addPropertyChangeListener(this);
- element_languageString = formFactory
+ element_languageString = this.formFactory
.createLanguageStringWithLabelElement(formElement, labelString,
null, textHeight, style);
if (PreferencesUtil.isMultilanguageTextEditingCapability()) {
- combo_language = formFactory
- .createEmptyComboElement(Language.class, formElement,
- "", null, style);
- combo_language.addSelectionListener(this);
- addControl(formFactory.createLabel(getLayoutComposite(), ""));
- button = formFactory.createButton(getLayoutComposite(),
- "Open In Translation Editor", SWT.PUSH);
- addControl(button);
- button.setLayoutData(CdmFormFactory.RIGHT());
- button.addSelectionListener(new OpenTranslationWizard(
- multilanguageText));
+ createMultilanguageTextEditingElements(formElement,
+ multilanguageText, style);
}
setMultilanguageText(multilanguageText);
}
+ private void createMultilanguageTextEditingElements(
+ ICdmFormElement formElement,
+ Map<Language, LanguageString> multilanguageText, int style) {
+ combo_language = formFactory
+ .createTermComboElement(Language.class, formElement,
+ "", null, style);
+ combo_language.addSelectionListener(this);
+ addControl(formFactory.createLabel(getLayoutComposite(), ""));
+ button = formFactory.createButton(getLayoutComposite(),
+ "Open In Translation Editor", SWT.PUSH);
+ addControl(button);
+ button.setLayoutData(CdmFormFactory.RIGHT());
+ button.addSelectionListener(new OpenTranslationWizard(
+ multilanguageText));
+ }
+
private List<Language> getLanguages() {
ArrayList<Language> languageList = new ArrayList<Language>(
getMultilanguageText().keySet());
- // TODO sort
+ Collections.sort(languageList, new DefaultTermComparator<Language>());
return languageList;
}