Revision 08a36bdf
Added by Katja Luther almost 4 years ago
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/descriptiveDataSet/handler/DescriptiveDataSetRemoveTaxonHandler.java | ||
---|---|---|
1 | 1 |
|
2 | 2 |
package eu.etaxonomy.taxeditor.editor.descriptiveDataSet.handler; |
3 | 3 |
|
4 |
import java.util.Collection; |
|
5 |
|
|
4 | 6 |
import javax.inject.Named; |
5 | 7 |
|
6 | 8 |
import org.eclipse.e4.core.di.annotations.CanExecute; |
... | ... | |
12 | 14 |
import org.eclipse.jface.viewers.TreeSelection; |
13 | 15 |
import org.eclipse.jface.viewers.TreeViewer; |
14 | 16 |
|
15 |
import eu.etaxonomy.cdm.model.taxon.TaxonNode;
|
|
17 |
import eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto;
|
|
16 | 18 |
import eu.etaxonomy.taxeditor.editor.descriptiveDataSet.DescriptiveDataSetEditor; |
17 | 19 |
|
18 | 20 |
public class DescriptiveDataSetRemoveTaxonHandler { |
... | ... | |
29 | 31 |
MMenuItem menuItem) { |
30 | 32 |
boolean canExecute = false; |
31 | 33 |
TreeSelection sel= ((TreeViewer)((DescriptiveDataSetEditor)activePart.getObject()).getTaxonTreeViewer()).getSelection() instanceof TreeSelection ?(TreeSelection)((TreeViewer)((DescriptiveDataSetEditor)activePart.getObject()).getTaxonTreeViewer()).getSelection(): null; |
32 |
canExecute = !selection.isEmpty() && activePart.getObject() instanceof DescriptiveDataSetEditor && sel != null && (sel.getFirstElement() instanceof TaxonNode ); |
|
33 |
menuItem.setVisible(canExecute); |
|
34 |
canExecute = !selection.isEmpty() && activePart.getObject() instanceof DescriptiveDataSetEditor && sel != null && sel.getFirstElement() instanceof TaxonNodeDto ; |
|
35 |
TreeViewer viewer = ((TreeViewer)((DescriptiveDataSetEditor)activePart.getObject()).getTaxonTreeViewer()); |
|
36 |
Collection<TaxonNodeDto> input = (Collection<TaxonNodeDto>)viewer.getInput(); |
|
37 |
|
|
38 |
canExecute &= input.contains(sel.getFirstElement()); |
|
39 |
|
|
40 |
menuItem.setVisible(canExecute); |
|
34 | 41 |
return canExecute; |
35 | 42 |
} |
36 | 43 |
|
Also available in: Unified diff
ref #8754: adapt deleteHandling to configuration