Project

General

Profile

Download (2.49 KB) Statistics
| Branch: | Tag: | Revision:
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

    
10
package eu.etaxonomy.taxeditor.preference.menu;
11

    
12
import org.eclipse.jface.viewers.ITableLabelProvider;
13
import org.eclipse.jface.viewers.LabelProvider;
14
import org.eclipse.jface.viewers.ViewerComparator;
15
import org.eclipse.swt.graphics.Image;
16
import org.eclipse.swt.widgets.Composite;
17
import org.eclipse.swt.widgets.Control;
18

    
19
import eu.etaxonomy.cdm.model.common.Language;
20

    
21
/**
22
 * <p>LanguageMenuPreferences class.</p>
23
 *
24
 * @author p.ciardelli
25
 * @created 24.08.2009
26
 * @version 1.0
27
 */
28
public class LanguageMenuPreferences extends AbstractMenuPreferences<Language> {
29
	
30
	/** Constant <code>ID="eu.etaxonomy.taxeditor.preferences.lang"{trunked}</code> */
31
	public final static String ID = "eu.etaxonomy.taxeditor.preferences.languages";
32
	
33
	/**
34
	 * <p>Constructor for LanguageMenuPreferences.</p>
35
	 */
36
	public LanguageMenuPreferences() {
37
		super("Language Preferences", 
38
				"Configure language preferences.",
39
				false);
40
	}
41
	
42
	/* (non-Javadoc)
43
	 * @see eu.etaxonomy.taxeditor.preference.AbstractMenuPreferences#createContents(org.eclipse.swt.widgets.Composite)
44
	 */
45
	/** {@inheritDoc} */
46
	@Override
47
	public Control createContents(Composite parent) {
48
		Control control = super.createContents(parent);
49
		
50
		tableViewer.setLabelProvider(new LanguagePreferenceLabelProvider());
51
		tableViewer.setComparator(new ViewerComparator());
52
		
53
		return control;
54
	}
55
		
56
	class LanguagePreferenceLabelProvider extends LabelProvider implements ITableLabelProvider{
57

    
58
		/* (non-Javadoc)
59
		 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, int)
60
		 */
61
		public Image getColumnImage(Object element, int columnIndex) {
62
			return null;
63
		}
64

    
65
		/* (non-Javadoc)
66
		 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, int)
67
		 */
68
		public String getColumnText(Object element, int columnIndex) {
69
			String description = ((Language)element).getDescription();
70
			if (description == null) {
71
				description = ((Language)element).getLabel() + " - Warning: no description - not shown in menus";
72
			}
73
			return description;
74
		}
75
		
76
		}
77

    
78
	/* (non-Javadoc)
79
	 * @see eu.etaxonomy.taxeditor.preference.menu.AbstractMenuPreferences#getTermClass()
80
	 */
81
	/** {@inheritDoc} */
82
	@Override
83
	protected Class<Language> getTermClass() {
84
		return Language.class;
85
	}
86
}
(7-7/20)