Revision 77360286
Added by Katja Luther over 2 years ago
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/AgentSelectionDialog.java | ||
---|---|---|
8 | 8 |
*/ |
9 | 9 |
package eu.etaxonomy.taxeditor.ui.dialog.selection; |
10 | 10 |
|
11 |
import java.util.List; |
|
11 | 12 |
import java.util.UUID; |
12 | 13 |
|
14 |
import org.eclipse.jface.viewers.ILabelProvider; |
|
13 | 15 |
import org.eclipse.jface.viewers.LabelProvider; |
14 | 16 |
import org.eclipse.swt.events.SelectionListener; |
15 | 17 |
import org.eclipse.swt.widgets.Shell; |
16 | 18 |
|
17 | 19 |
import eu.etaxonomy.cdm.api.service.IAgentService; |
20 |
import eu.etaxonomy.cdm.api.service.dto.EntityDTOBase; |
|
21 |
import eu.etaxonomy.cdm.api.service.dto.IdentifiedEntityDTO; |
|
18 | 22 |
import eu.etaxonomy.cdm.model.agent.AgentBase; |
19 | 23 |
import eu.etaxonomy.cdm.model.agent.INomenclaturalAuthor; |
20 | 24 |
import eu.etaxonomy.cdm.model.agent.Person; |
25 |
import eu.etaxonomy.cdm.model.metadata.PreferencePredicate; |
|
26 |
import eu.etaxonomy.cdm.persistence.dto.TeamOrPersonUuidAndTitleCache; |
|
21 | 27 |
import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache; |
22 | 28 |
import eu.etaxonomy.taxeditor.newWizard.AbstractNewEntityWizard; |
23 | 29 |
import eu.etaxonomy.taxeditor.newWizard.NewPersonWizard; |
24 | 30 |
import eu.etaxonomy.taxeditor.newWizard.NewTeamWizard; |
31 |
import eu.etaxonomy.taxeditor.preference.PreferencesUtil; |
|
25 | 32 |
import eu.etaxonomy.taxeditor.store.CdmStore; |
26 | 33 |
|
27 | 34 |
/** |
... | ... | |
127 | 134 |
clazz = (Class)Person.class; |
128 | 135 |
} |
129 | 136 |
|
130 |
model = CdmStore.getService(IAgentService.class).getUuidAndTitleCache(clazz, limitOfInitialElements, pattern); |
|
137 |
model = (List)CdmStore.getService(IAgentService.class).getTeamOrPersonUuidAndTitleCache(clazz, limitOfInitialElements, pattern); |
|
138 |
} |
|
139 |
@Override |
|
140 |
protected ILabelProvider createListLabelProvider() { |
|
141 |
return new CollectorLabelProvider(); |
|
142 |
} |
|
143 |
|
|
144 |
public class CollectorLabelProvider extends LabelProvider { |
|
145 |
@Override |
|
146 |
public String getText(Object element) { |
|
147 |
if (element == null) { |
|
148 |
return null; |
|
149 |
} |
|
150 |
UuidAndTitleCache uuidAndTitleCache = (UuidAndTitleCache) element; |
|
151 |
String titleCache = uuidAndTitleCache.getTitleCache(); |
|
152 |
String abbrevTitleCache = uuidAndTitleCache.getAbbrevTitleCache(); |
|
153 |
String collectorTitleCache = null; |
|
154 |
if (element instanceof TeamOrPersonUuidAndTitleCache){ |
|
155 |
collectorTitleCache = ((TeamOrPersonUuidAndTitleCache)element).getCollectorTitleCache(); |
|
156 |
} |
|
157 |
if (!titleCache.equals(abbrevTitleCache)){ |
|
158 |
titleCache += " - " + abbrevTitleCache; |
|
159 |
} |
|
160 |
if (collectorTitleCache != null && !uuidAndTitleCache.getTitleCache().equals(collectorTitleCache) && !abbrevTitleCache.equals(collectorTitleCache)){ |
|
161 |
titleCache += " - " + collectorTitleCache; |
|
162 |
} |
|
163 |
if(PreferencesUtil.getBooleanValue(PreferencePredicate.ShowIdInSelectionDialog.getKey())){ |
|
164 |
titleCache += " ["+uuidAndTitleCache.getId()+"]"; |
|
165 |
} |
|
166 |
if (element instanceof EntityDTOBase){ |
|
167 |
titleCache += "(" + ((IdentifiedEntityDTO)element).getIdentifier().getTypeLabel() +": " + ((IdentifiedEntityDTO)element).getIdentifier().getIdentifier() + ")"; |
|
168 |
} |
|
169 |
|
|
170 |
return titleCache; |
|
171 |
} |
|
172 |
|
|
173 |
|
|
131 | 174 |
} |
132 | 175 |
|
133 | 176 |
|
Also available in: Unified diff
ref #9680: adapt edtior to cdmlib changes in agent searches