Revision bfbad836
Added by Katja Luther about 6 years ago
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/ChecklistLabelProvider.java | ||
---|---|---|
11 | 11 |
|
12 | 12 |
import java.util.ArrayList; |
13 | 13 |
import java.util.Arrays; |
14 |
import java.util.HashMap; |
|
14 | 15 |
import java.util.HashSet; |
15 | 16 |
import java.util.List; |
16 | 17 |
import java.util.Set; |
... | ... | |
31 | 32 |
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper; |
32 | 33 |
import eu.etaxonomy.cdm.model.common.DefinedTermBase; |
33 | 34 |
import eu.etaxonomy.cdm.model.common.Language; |
35 |
import eu.etaxonomy.cdm.model.common.OrderedTermComparator; |
|
34 | 36 |
import eu.etaxonomy.cdm.model.common.TermIdInVocabularyComparator; |
35 | 37 |
import eu.etaxonomy.cdm.model.common.TermLanguageComparator; |
38 |
import eu.etaxonomy.cdm.model.common.TermVocabulary; |
|
36 | 39 |
import eu.etaxonomy.cdm.model.description.DescriptionElementBase; |
37 | 40 |
import eu.etaxonomy.cdm.model.description.Distribution; |
38 | 41 |
import eu.etaxonomy.cdm.model.description.TaxonDescription; |
... | ... | |
136 | 139 |
}else{ |
137 | 140 |
area = distribution.getArea().getTitleCache(); |
138 | 141 |
} |
139 |
|
|
142 |
|
|
140 | 143 |
}else{ |
141 | 144 |
continue; |
142 | 145 |
} |
... | ... | |
166 | 169 |
|
167 | 170 |
private SortedSet<DefinedTermBase> loadNamedAreas() { |
168 | 171 |
IPreferenceStore preferenceStore = PreferencesUtil.getPreferenceStore(); |
172 |
|
|
169 | 173 |
String values = preferenceStore.getString(PreferencesUtil.DISTRIBUTION_AREA_OCCURENCE_STATUS); |
170 | 174 |
|
171 | 175 |
if (values != null && values != "") { //$NON-NLS-1$ |
... | ... | |
181 | 185 |
} |
182 | 186 |
ITermService service = CdmStore.getService(ITermService.class); |
183 | 187 |
termlist = service.find(uuidList); |
184 |
if (PreferencesUtil.isShowIdInVocabularyInChecklistEditor()){ |
|
188 |
if (PreferencesUtil.isSortNamedAreaByOrderInVocabulary()){ |
|
189 |
return getTermsOrderedByVocabularyOrder(termlist); |
|
190 |
} else if (PreferencesUtil.isShowIdInVocabularyInChecklistEditor()){ |
|
185 | 191 |
return getTermsOrderedByIdInVocabulary(termlist); |
186 |
} else {
|
|
192 |
}else{
|
|
187 | 193 |
return getTermsOrderedByLabels(termlist, CdmStore.getDefaultLanguage()); |
188 | 194 |
} |
189 | 195 |
} |
... | ... | |
200 | 206 |
return result; |
201 | 207 |
} |
202 | 208 |
|
209 |
public SortedSet<DefinedTermBase> getTermsOrderedByVocabularyOrder(List<DefinedTermBase> listAreas){ |
|
210 |
HashMap<TermVocabulary<DefinedTermBase>, List<DefinedTermBase>> vocs = new HashMap<>(); |
|
211 |
OrderedTermComparator<?> comp = new OrderedTermComparator<>(); |
|
212 |
|
|
213 |
SortedSet<DefinedTermBase> result = new TreeSet(comp.reversed()); |
|
214 |
result.addAll(listAreas); |
|
215 |
|
|
216 |
return result; |
|
217 |
} |
|
218 |
|
|
203 | 219 |
/** |
204 | 220 |
* @return the namedAreas |
205 | 221 |
*/ |
Also available in: Unified diff
ref #7234: add possibility to sort named areas by vocabulary order in distribution editor