import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
+import eu.etaxonomy.taxeditor.ui.element.ISelectableElement;
+import eu.etaxonomy.taxeditor.ui.element.SelectionArbitrator;
import eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement;
import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
* @version 1.0
*/
public abstract class AbstractReferencedEntityElement<T extends ReferencedEntityBase>
- extends AbstractEntityCollectionElement<T> {
+ extends AbstractEntityCollectionElement<T> implements ISelectableElement {
+ private SelectionArbitrator selectionArbitrator;
+
protected EntitySelectionElement<Reference> selection_reference;
protected TextWithLabelElement text_referenceDetail;
AbstractFormSection section, T entity,
SelectionListener removeListener, int style) {
super(formFactory, section, entity, removeListener, null, style);
+ // make this element selectable
+ if(formFactory.getSelectionProvider() != null){
+ selectionArbitrator = formFactory.createSelectionArbitrator(this);
+ }
}
/** {@inheritDoc} */
selection_reference.setEntity(entity.getCitation());
text_referenceDetail.setText(entity.getCitationMicroReference());
}
+
+ @Override
+ public SelectionArbitrator getSelectionArbitrator() {
+ return selectionArbitrator;
+ }
}