Project

General

Profile

« Previous | Next » 

Revision bfbad836

Added by Katja Luther about 6 years ago

ref #7234: add possibility to sort named areas by vocabulary order in distribution editor

View differences:

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