4 package eu
.etaxonomy
.taxeditor
.ui
.section
.description
;
6 import java
.util
.ArrayList
;
7 import java
.util
.Collection
;
8 import java
.util
.Collections
;
11 import eu
.etaxonomy
.cdm
.api
.conversation
.ConversationHolder
;
12 import eu
.etaxonomy
.cdm
.model
.common
.OriginalSourceType
;
13 import eu
.etaxonomy
.cdm
.model
.description
.DescriptionElementBase
;
14 import eu
.etaxonomy
.cdm
.model
.description
.DescriptionElementSource
;
15 import eu
.etaxonomy
.taxeditor
.ui
.element
.CdmFormFactory
;
16 import eu
.etaxonomy
.taxeditor
.ui
.element
.ICdmFormElement
;
17 import eu
.etaxonomy
.taxeditor
.ui
.section
.AbstractEntityCollectionSection
;
21 * DescriptionElementSourceSection class.
25 * @created Nov 17, 2009
28 public class DescriptionElementSourceSection
extends
29 AbstractEntityCollectionSection
<DescriptionElementBase
, DescriptionElementSource
> {
33 * Constructor for DescriptionElementSourceSection.
36 * @param parentElement
37 * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
41 * @param cdmFormFactory
42 * a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory}
45 * a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder}
48 public DescriptionElementSourceSection(CdmFormFactory cdmFormFactory
, ConversationHolder conversation
,
49 ICdmFormElement parentElement
, int style
) {
50 super(cdmFormFactory
, conversation
, parentElement
, "References", style
);
55 public DescriptionElementSource
createNewElement() {
56 return DescriptionElementSource
.NewInstance(OriginalSourceType
.PrimaryTaxonomicSource
);
61 public Collection
<DescriptionElementSource
> getCollection(DescriptionElementBase entity
) {
62 List
<DescriptionElementSource
> sources
= new ArrayList
<DescriptionElementSource
>(entity
.getSources());
63 Collections
.sort(sources
, new SourceComparator());
69 public String
getEmptyString() {
70 return "No references yet.";
75 protected String
getTooltipString() {
76 return "Create a new reference";
81 public void addElement(DescriptionElementSource element
) {
82 getEntity().addSource(element
);
87 public void removeElement(DescriptionElementSource element
) {
88 getEntity().removeSource(element
);
95 public DescriptionElementSource
addExisting() {
103 public boolean allowAddExisting() {