1 |
|
/**
|
2 |
|
* Copyright (C) 2007 EDIT
|
3 |
|
* European Distributed Institute of Taxonomy
|
4 |
|
* http://www.e-taxonomy.eu
|
5 |
|
*
|
6 |
|
* The contents of this file are subject to the Mozilla Public License Version 1.1
|
7 |
|
* See LICENSE.TXT at the top of this package for the full license terms.
|
8 |
|
*/
|
9 |
|
package eu.etaxonomy.taxeditor.featuretree;
|
10 |
|
|
11 |
|
import java.util.ArrayList;
|
12 |
|
|
13 |
|
import eu.etaxonomy.cdm.model.common.Language;
|
14 |
|
import eu.etaxonomy.cdm.model.term.DefinedTermBase;
|
15 |
|
import eu.etaxonomy.cdm.model.term.Representation;
|
16 |
|
import eu.etaxonomy.cdm.model.term.TermNode;
|
17 |
|
import eu.etaxonomy.cdm.model.term.TermTree;
|
18 |
|
import eu.etaxonomy.cdm.persistence.dto.TermDto;
|
19 |
|
import eu.etaxonomy.cdm.persistence.dto.TermNodeDto;
|
20 |
|
import eu.etaxonomy.cdm.persistence.dto.TermTreeDto;
|
21 |
|
import eu.etaxonomy.taxeditor.editor.definedterm.TermDtoLabelProvider;
|
22 |
|
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
|
23 |
|
|
24 |
|
/**
|
25 |
|
* @author n.hoffmann
|
26 |
|
* @created Aug 5, 2010
|
27 |
|
*/
|
28 |
|
public class TermTreeLabelProvider extends TermDtoLabelProvider {
|
29 |
|
|
30 |
|
@Override
|
31 |
|
public String getText(Object element) {
|
32 |
|
if(element instanceof TermTreeDto){
|
33 |
|
return ((TermTreeDto) element).getRepresentation_L10n() != null? ((TermTreeDto) element).getRepresentation_L10n() :((TermTreeDto) element).getTitleCache() ;
|
34 |
|
}else if(element instanceof TermNodeDto){
|
35 |
|
TermDto term = ((TermNodeDto) element).getTerm();
|
36 |
|
if(term!=null){
|
37 |
|
// boolean showIdInVoc = PreferencesUtil.getBooleanValue(IPreferenceKeys.SHOW_VOCABULARY_ID_FOR_TERM_LABELS_IN_TREE_EDITOR, true);
|
38 |
|
return super.getText(term);
|
39 |
|
}
|
40 |
|
|
41 |
|
}else if(element instanceof TermNode){
|
42 |
|
DefinedTermBase<?> term = ((TermNode<?>) element).getTerm();
|
43 |
|
if(term!=null){
|
44 |
|
Representation rep = term.getRepresentation(PreferencesUtil.getGlobalLanguage());
|
45 |
|
if (rep == null){
|
46 |
|
rep = term.getPreferredRepresentation(new ArrayList<Language>());
|
47 |
|
}
|
48 |
|
return rep != null? rep.getLabel() : term.getTitleCache();
|
49 |
|
}
|
50 |
|
|
51 |
|
}else if(element instanceof TermTree){
|
52 |
|
return ((TermTree<?>) element).getTitleCache();
|
53 |
|
|
54 |
|
}
|
55 |
|
return "No label provided";
|
56 |
|
}
|
|
1 |
/**
|
|
2 |
* Copyright (C) 2007 EDIT
|
|
3 |
* European Distributed Institute of Taxonomy
|
|
4 |
* http://www.e-taxonomy.eu
|
|
5 |
*
|
|
6 |
* The contents of this file are subject to the Mozilla Public License Version 1.1
|
|
7 |
* See LICENSE.TXT at the top of this package for the full license terms.
|
|
8 |
*/
|
|
9 |
package eu.etaxonomy.taxeditor.featuretree;
|
|
10 |
|
|
11 |
import java.util.ArrayList;
|
|
12 |
|
|
13 |
import eu.etaxonomy.cdm.model.common.Language;
|
|
14 |
import eu.etaxonomy.cdm.model.term.DefinedTermBase;
|
|
15 |
import eu.etaxonomy.cdm.model.term.Representation;
|
|
16 |
import eu.etaxonomy.cdm.model.term.TermNode;
|
|
17 |
import eu.etaxonomy.cdm.model.term.TermTree;
|
|
18 |
import eu.etaxonomy.cdm.persistence.dto.TermDto;
|
|
19 |
import eu.etaxonomy.cdm.persistence.dto.TermNodeDto;
|
|
20 |
import eu.etaxonomy.cdm.persistence.dto.TermTreeDto;
|
|
21 |
import eu.etaxonomy.taxeditor.editor.definedterm.TermDtoLabelProvider;
|
|
22 |
import eu.etaxonomy.taxeditor.preference.IPreferenceKeys;
|
|
23 |
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
|
|
24 |
|
|
25 |
/**
|
|
26 |
* @author n.hoffmann
|
|
27 |
* @created Aug 5, 2010
|
|
28 |
*/
|
|
29 |
public class TermTreeLabelProvider extends TermDtoLabelProvider {
|
|
30 |
|
|
31 |
public TermTreeLabelProvider() {
|
|
32 |
showIdInVoc = PreferencesUtil.getBooleanValue(IPreferenceKeys.SHOW_VOCABULARY_ID_FOR_TERM_LABELS_IN_TREE_EDITOR, true);
|
|
33 |
}
|
|
34 |
|
|
35 |
|
|
36 |
@Override
|
|
37 |
public String getText(Object element) {
|
|
38 |
if(element instanceof TermTreeDto){
|
|
39 |
return ((TermTreeDto) element).getRepresentation_L10n() != null? ((TermTreeDto) element).getRepresentation_L10n() :((TermTreeDto) element).getTitleCache() ;
|
|
40 |
}else if(element instanceof TermNodeDto){
|
|
41 |
TermDto term = ((TermNodeDto) element).getTerm();
|
|
42 |
if(term!=null){
|
|
43 |
// boolean showIdInVoc = PreferencesUtil.getBooleanValue(IPreferenceKeys.SHOW_VOCABULARY_ID_FOR_TERM_LABELS_IN_TREE_EDITOR, true);
|
|
44 |
return super.getText(term);
|
|
45 |
}
|
|
46 |
|
|
47 |
}else if(element instanceof TermNode){
|
|
48 |
DefinedTermBase<?> term = ((TermNode<?>) element).getTerm();
|
|
49 |
if(term!=null){
|
|
50 |
Representation rep = term.getRepresentation(PreferencesUtil.getGlobalLanguage());
|
|
51 |
if (rep == null){
|
|
52 |
rep = term.getPreferredRepresentation(new ArrayList<Language>());
|
|
53 |
}
|
|
54 |
return rep != null? rep.getLabel() : term.getTitleCache();
|
|
55 |
}
|
|
56 |
|
|
57 |
}else if(element instanceof TermTree){
|
|
58 |
return ((TermTree<?>) element).getTitleCache();
|
|
59 |
|
|
60 |
}
|
|
61 |
return "No label provided";
|
|
62 |
}
|
57 |
63 |
}
|
ref #9491: do the ordering on editor side - code cleaning