da6c9c079a7f2c218e8ece014647d64a9f7e6fcc
[taxeditor.git] / eu.etaxonomy.taxeditor.editor / src / main / java / eu / etaxonomy / taxeditor / editor / view / derivate / DerivateView.java
1 package eu.etaxonomy.taxeditor.editor.view.derivate;
2
3 import org.eclipse.jface.viewers.ISelection;
4 import org.eclipse.jface.viewers.IStructuredSelection;
5 import org.eclipse.jface.viewers.TreeViewer;
6 import org.eclipse.jface.viewers.Viewer;
7 import org.eclipse.swt.SWT;
8 import org.eclipse.swt.widgets.Composite;
9 import org.eclipse.swt.widgets.Tree;
10 import org.eclipse.ui.IWorkbenchPart;
11
12 import eu.etaxonomy.cdm.model.common.CdmBase;
13 import eu.etaxonomy.taxeditor.bulkeditor.BulkEditor;
14 import eu.etaxonomy.taxeditor.model.IPartContentHasDetails;
15 import eu.etaxonomy.taxeditor.model.IPartContentHasSupplementalData;
16 import eu.etaxonomy.taxeditor.view.AbstractCdmEditorViewPart;
17
18 /**
19 * Displays the derivate hierarchy of all derivates belonging to a taxon.
20 *
21 */
22 public class DerivateView extends AbstractCdmEditorViewPart implements IPartContentHasDetails, IPartContentHasSupplementalData {
23
24 /** Constant <code>ID="eu.etaxonomy.taxeditor.editor.view.desc"{trunked}</code> */
25 public static final String ID = "eu.etaxonomy.taxeditor.editor.view.derivate.SpecimenView";
26
27 protected TreeViewer viewer;
28
29 @Override
30 public void createViewer(Composite parent) {
31 viewer = new TreeViewer(new Tree(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION));
32 viewer.setContentProvider(new DerivateContentProvider());
33 viewer.setLabelProvider(new DerivateLabelProvider());
34 viewer.setAutoExpandLevel(2);
35 // Propagate selection from viewer
36 getSite().setSelectionProvider(viewer);
37 }
38
39 @Override
40 public void selectionChanged(IWorkbenchPart part, ISelection selection) {
41 if(part instanceof BulkEditor && selection instanceof IStructuredSelection){
42 showViewer(part, (IStructuredSelection)selection);
43 return;
44 }
45 else {
46 showEmptyPage();
47 return;
48 }
49 }
50
51 @Override
52 public boolean onComplete() {
53 // TODO Auto-generated method stub
54 return false;
55 }
56
57 @Override
58 public Viewer getViewer() {
59 return viewer;
60 }
61
62
63 @Override
64 public boolean postOperation(CdmBase objectAffectedByOperation) {
65 return super.postOperation(objectAffectedByOperation);
66 }
67
68
69 }