Project

General

Profile

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

    
3
import javax.inject.Named;
4

    
5
import org.eclipse.e4.core.di.annotations.CanExecute;
6
import org.eclipse.e4.core.di.annotations.Execute;
7
import org.eclipse.e4.ui.model.application.ui.basic.MPart;
8
import org.eclipse.e4.ui.model.application.ui.menu.MHandledMenuItem;
9
import org.eclipse.e4.ui.services.IServiceConstants;
10
import org.eclipse.jface.util.LocalSelectionTransfer;
11
import org.eclipse.jface.viewers.StructuredSelection;
12
import org.eclipse.jface.viewers.TreeNode;
13

    
14
import eu.etaxonomy.cdm.model.molecular.SingleRead;
15
import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView;
16

    
17
public class SingleReadCopyToClipboardHandler {
18

    
19
    @Execute
20
    public void execute(@Named(IServiceConstants.ACTIVE_PART) MPart part, @Named(IServiceConstants.ACTIVE_SELECTION) TreeNode selectedTreeNode){
21
        DerivateView derivateView = (DerivateView)part.getObject();
22
        LocalSelectionTransfer.getTransfer().setSelection(new StructuredSelection(selectedTreeNode));
23
        derivateView.updateLabelCache();
24
        derivateView.refreshTree();
25
    }
26

    
27
    @CanExecute
28
    public boolean canExecute(@Named(IServiceConstants.ACTIVE_SELECTION) TreeNode selectedTreeNode, MHandledMenuItem menuItem) {
29
        boolean canExecute = false;
30
        Object object = selectedTreeNode.getValue();
31
        canExecute = (object instanceof SingleRead);
32
        menuItem.setVisible(canExecute);
33
        return canExecute;
34
    }
35
}
(15-15/18)