1 package eu
.etaxonomy
.taxeditor
.editor
.view
.derivate
;
3 import org
.eclipse
.jface
.action
.MenuManager
;
4 import org
.eclipse
.jface
.viewers
.ISelection
;
5 import org
.eclipse
.jface
.viewers
.IStructuredSelection
;
6 import org
.eclipse
.jface
.viewers
.TreeViewer
;
7 import org
.eclipse
.jface
.viewers
.Viewer
;
8 import org
.eclipse
.swt
.SWT
;
9 import org
.eclipse
.swt
.widgets
.Composite
;
10 import org
.eclipse
.swt
.widgets
.Control
;
11 import org
.eclipse
.swt
.widgets
.Menu
;
12 import org
.eclipse
.swt
.widgets
.Tree
;
13 import org
.eclipse
.ui
.IWorkbenchPart
;
15 import eu
.etaxonomy
.cdm
.model
.common
.CdmBase
;
16 import eu
.etaxonomy
.taxeditor
.bulkeditor
.BulkEditor
;
17 import eu
.etaxonomy
.taxeditor
.model
.AbstractUtility
;
18 import eu
.etaxonomy
.taxeditor
.model
.IPartContentHasDetails
;
19 import eu
.etaxonomy
.taxeditor
.model
.IPartContentHasSupplementalData
;
20 import eu
.etaxonomy
.taxeditor
.view
.AbstractCdmEditorViewPart
;
23 * Displays the derivate hierarchy of all derivates belonging to a taxon.
26 public class DerivateView
extends AbstractCdmEditorViewPart
implements IPartContentHasDetails
, IPartContentHasSupplementalData
{
28 /** Constant <code>ID="eu.etaxonomy.taxeditor.editor.view.desc"{trunked}</code> */
29 public static final String ID
= "eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView";
31 protected TreeViewer viewer
;
34 public void createViewer(Composite parent
) {
35 viewer
= new TreeViewer(new Tree(parent
, SWT
.MULTI
| SWT
.H_SCROLL
| SWT
.V_SCROLL
| SWT
.FULL_SELECTION
));
36 viewer
.setContentProvider(new DerivateContentProvider());
37 viewer
.setLabelProvider(new DerivateLabelProvider());
38 viewer
.setAutoExpandLevel(2);
39 // Propagate selection from viewer
40 getSite().setSelectionProvider(viewer
);
43 MenuManager menuManager
= new MenuManager();
45 getSite().registerContextMenu(menuManager
, viewer
);
47 Control control
= viewer
.getControl();
48 Menu menu
= menuManager
.createContextMenu(control
);
50 control
.setMenu(menu
);
54 public void selectionChanged(IWorkbenchPart part
, ISelection selection
) {
55 if(AbstractUtility
.getActiveEditor()==null || !(AbstractUtility
.getActiveEditor() instanceof BulkEditor
)){
59 else if(part
instanceof BulkEditor
&& selection
instanceof IStructuredSelection
){
60 showViewer(part
, (IStructuredSelection
)selection
);
66 public boolean onComplete() {
67 // TODO Auto-generated method stub
72 public Viewer
getViewer() {
78 public boolean postOperation(CdmBase objectAffectedByOperation
) {
79 return super.postOperation(objectAffectedByOperation
);