1 package org
.argeo
.demo
.i18n
.views
;
3 import org
.apache
.commons
.logging
.Log
;
4 import org
.apache
.commons
.logging
.LogFactory
;
5 import org
.argeo
.demo
.i18n
.I18nDemoPlugin
;
6 import org
.argeo
.demo
.i18n
.providers
.SimpleContentProvider
;
7 import org
.argeo
.demo
.i18n
.providers
.SimpleLabelProvider
;
8 import org
.argeo
.demo
.i18n
.utils
.GenericDoubleClickListener
;
9 import org
.eclipse
.jface
.action
.MenuManager
;
10 import org
.eclipse
.jface
.viewers
.ISelectionChangedListener
;
11 import org
.eclipse
.jface
.viewers
.ITreeContentProvider
;
12 import org
.eclipse
.jface
.viewers
.SelectionChangedEvent
;
13 import org
.eclipse
.jface
.viewers
.TreeViewer
;
14 import org
.eclipse
.swt
.SWT
;
15 import org
.eclipse
.swt
.layout
.FillLayout
;
16 import org
.eclipse
.swt
.layout
.GridData
;
17 import org
.eclipse
.swt
.layout
.GridLayout
;
18 import org
.eclipse
.swt
.widgets
.Composite
;
19 import org
.eclipse
.swt
.widgets
.Menu
;
20 import org
.eclipse
.ui
.part
.ViewPart
;
23 * Basic View to display a tree with internationalized labels
26 public class SimpleTreeView
extends ViewPart
{
27 private final static Log log
= LogFactory
.getLog(SimpleTreeView
.class);
29 public final static String ID
= I18nDemoPlugin
.ID
+ ".simpleTreeView";
32 private TreeViewer treeViewer
;
33 private SimpleContentProvider treeContentProvider
;
36 public void createPartControl(Composite parent
) {
37 parent
.setLayout(new FillLayout());
40 Composite composite
= new Composite(parent
, SWT
.NONE
);
41 GridLayout gl
= new GridLayout(1, false);
42 composite
.setLayout(gl
);
45 treeContentProvider
= new SimpleContentProvider();
46 treeViewer
= createTreeViewer(composite
, treeContentProvider
);
48 // context menu : it is completely defined in the plugin.xml file.
49 MenuManager menuManager
= new MenuManager();
50 Menu menu
= menuManager
.createContextMenu(treeViewer
.getTree());
51 treeViewer
.getTree().setMenu(menu
);
52 getSite().registerContextMenu(menuManager
, treeViewer
);
54 getSite().setSelectionProvider(treeViewer
);
56 treeViewer
.setInput(getViewSite());
59 protected TreeViewer
createTreeViewer(Composite parent
,
60 final ITreeContentProvider treeContentProvider
) {
62 final TreeViewer tmpTreeViewer
= new TreeViewer(parent
, SWT
.MULTI
);
64 tmpTreeViewer
.getTree().setLayoutData(
65 new GridData(SWT
.FILL
, SWT
.FILL
, true, true));
67 tmpTreeViewer
.setContentProvider(treeContentProvider
);
68 tmpTreeViewer
.setLabelProvider(new SimpleLabelProvider());
70 .addSelectionChangedListener(new ISelectionChangedListener() {
71 public void selectionChanged(SelectionChangedEvent event
) {
72 // something can be done here
76 tmpTreeViewer
.addDoubleClickListener(new GenericDoubleClickListener(
82 public void setFocus() {
83 // Do nothing for the time being.