Moved store to new logging framework entirely
[taxeditor.git] / taxeditor-store / src / main / java / eu / etaxonomy / taxeditor / preference / menu / NameRelationshipTypeMenuPreferences.java
1 // $Id$
2 /**
3 * Copyright (C) 2007 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
6 *
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
9 */
10
11 package eu.etaxonomy.taxeditor.preference.menu;
12
13 import org.eclipse.swt.graphics.Image;
14 import org.eclipse.swt.widgets.Composite;
15 import org.eclipse.swt.widgets.Control;
16
17 import eu.etaxonomy.cdm.model.name.NameRelationshipType;
18 import eu.etaxonomy.taxeditor.labels.ILabelImageStrategy;
19 import eu.etaxonomy.taxeditor.labels.LabelImageProvider;
20 import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
21 import eu.etaxonomy.taxeditor.store.TermStore;
22
23 /**
24 * @author n.hoffmann
25 * @created 25.06.2009
26 * @version 1.0
27 */
28 public class NameRelationshipTypeMenuPreferences extends
29 AbstractMenuPreferences<NameRelationshipType> {
30
31
32 public NameRelationshipTypeMenuPreferences() {
33 super(TermStore.getNameRelationshipTypes(),
34 "Name relationship types",
35 "Configure name relationship types",
36 false);
37 }
38
39 /* (non-Javadoc)
40 * @see eu.etaxonomy.taxeditor.preference.AbstractMenuPreferences#createContents(org.eclipse.swt.widgets.Composite)
41 */
42 @Override
43 public Control createContents(Composite parent) {
44 Control container = super.createContents(parent);
45 getTableViewer().setLabelProvider(new NameRelationLabelProvider());
46 return container;
47 }
48
49 public class NameRelationLabelProvider extends DefinedTermBaseLabelProvider {
50
51 private LabelImageProvider labelProvider;
52
53 public NameRelationLabelProvider() {
54 super();
55
56 ILabelImageStrategy strategy = LabelImageProvider.getLabelStrategy(
57 PreferencesUtil.getPreferredNomenclaturalCode().getNewTaxonNameInstance(null));
58 this.labelProvider = new LabelImageProvider(strategy);
59 }
60
61 /* (non-Javadoc)
62 * @see eu.etaxonomy.taxeditor.preference.AbstractMenuPreferences.MenuPreferenceLabelProvider#getColumnImage(java.lang.Object, int)
63 */
64 @Override
65 public Image getColumnImage(Object element, int columnIndex) {
66 // The preference page looked lame with images
67 // if (element instanceof NameRelationshipType) {
68 // return labelProvider.getNameRelationImage((NameRelationshipType) element);
69 // }
70 return super.getColumnImage(element, columnIndex);
71 }
72
73 /* (non-Javadoc)
74 * @see eu.etaxonomy.taxeditor.preference.AbstractMenuPreferences.MenuPreferenceLabelProvider#getColumnText(java.lang.Object, int)
75 */
76 @Override
77 public String getColumnText(Object element, int columnIndex) {
78 if (element instanceof NameRelationshipType) {
79 return labelProvider.getNameRelationTypeLabel((NameRelationshipType) element);
80 }
81 return super.getColumnText(element, columnIndex);
82 }
83 }
84 }