Project

General

Profile

Download (2.63 KB) Statistics
| Branch: | Tag: | Revision:
1
package eu.etaxonomy.taxeditor.editor.view.derivate;
2

    
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;
14

    
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;
21

    
22
/**
23
 * Displays the derivate hierarchy of all derivates belonging to a taxon.
24
 *
25
 */
26
public class DerivateView extends AbstractCdmEditorViewPart implements IPartContentHasDetails, IPartContentHasSupplementalData {
27

    
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";
30

    
31
	protected TreeViewer viewer;
32

    
33
	@Override
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);
41

    
42
        //create context menu
43
        MenuManager menuManager = new MenuManager();
44

    
45
        getSite().registerContextMenu(menuManager, viewer);
46

    
47
        Control control = viewer.getControl();
48
        Menu menu = menuManager.createContextMenu(control);
49

    
50
        control.setMenu(menu);
51
	}
52

    
53
	@Override
54
	public void selectionChanged(IWorkbenchPart part, ISelection selection) {
55
	    if(AbstractUtility.getActiveEditor()==null || !(AbstractUtility.getActiveEditor() instanceof BulkEditor)){
56
	        showEmptyPage();
57
	        return;
58
	    }
59
	    else if(part instanceof BulkEditor && selection instanceof IStructuredSelection){
60
	        showViewer(part, (IStructuredSelection)selection);
61
	        return;
62
	    }
63
	}
64

    
65
	@Override
66
	public boolean onComplete() {
67
		// TODO Auto-generated method stub
68
		return false;
69
	}
70

    
71
	@Override
72
	public Viewer getViewer() {
73
		return viewer;
74
	}
75

    
76

    
77
	@Override
78
    public boolean postOperation(CdmBase objectAffectedByOperation) {
79
		return super.postOperation(objectAffectedByOperation);
80
	}
81

    
82

    
83
}
(4-4/4)