import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Listener;
-import eu.etaxonomy.cdm.model.common.DefinedTerm;
import eu.etaxonomy.cdm.model.common.DefinedTermBase;
import eu.etaxonomy.cdm.model.common.TermType;
import eu.etaxonomy.cdm.model.common.TermVocabulary;
private Comparator<T> termComparator;
+ private final TermType termType;
+ private final TermVocabulary termVocabulary;
private final Class<T> termClass;
private List<T> customPreferredTerms;
int style) {
super(formFactory, parentElement);
- if(termClass!=null){
- this.termClass = termClass;
- }
- else{
- this.termClass = (Class<T>) DefinedTerm.class;
- }
+ this.termType = termType;
+ this.termVocabulary = termVocabulary;
+ this.termClass = termClass;
this.addEmptyElement = addEmptyElement;
if (labelString != null) {
* @return a {@link java.util.List} object.
*/
protected List<T> getPreferredTerms(){
+ List<T> preferredTerms = new ArrayList<T>();
if (customPreferredTerms != null){
return customPreferredTerms;
}
- return getTermManager().getPreferredTerms(termClass);
+ else if(termType!=null){
+ preferredTerms = getTermManager().getPreferredTerms(termType);
+ }
+ else if(termVocabulary!=null){
+ preferredTerms = getTermManager().getPreferredTerms(termVocabulary);
+ }
+ if(termClass!=null){
+ preferredTerms = getTermManager().getPreferredTerms(termClass);
+ }
+ return preferredTerms;
}
/**
private NumberWithLabelElement numberStartNumber;
private TaxonomicScopeSection sectionTaxonomicScope;
private GeoScopePolyKeyDetailSection sectionGeoScopes;
+ private ScopeRestrictionSection sectionScopeRestriction;
public PolytomousKeyDetailElement(CdmFormFactory formFactory,
ICdmFormElement formElement) {
sectionGeoScopes = formFactory.createGeoScopePolyKeyDetailSection(getConversationHolder(), formElement, SWT.NULL);
sectionGeoScopes.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
sectionGeoScopes.setEntity(entity);
+
+ sectionScopeRestriction = formFactory.createScopeRestrictionSection(getConversationHolder(), formElement, SWT.NULL);
+ sectionScopeRestriction.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
+ sectionScopeRestriction.setEntity(entity);
}
public String getText() {