Revision 0619074d
Added by Patrick Plitzner over 6 years ago
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/e4/handler/DeleteHandler.java | ||
---|---|---|
15 | 15 |
import javax.inject.Named; |
16 | 16 |
|
17 | 17 |
import org.eclipse.core.commands.operations.IUndoContext; |
18 |
import org.eclipse.e4.core.di.annotations.CanExecute; |
|
18 | 19 |
import org.eclipse.e4.core.di.annotations.Execute; |
19 | 20 |
import org.eclipse.e4.core.di.annotations.Optional; |
20 | 21 |
import org.eclipse.e4.ui.model.application.ui.basic.MPart; |
22 |
import org.eclipse.e4.ui.model.application.ui.menu.MHandledMenuItem; |
|
21 | 23 |
import org.eclipse.e4.ui.model.application.ui.menu.MMenuItem; |
22 | 24 |
import org.eclipse.e4.ui.services.IServiceConstants; |
25 |
import org.eclipse.jface.viewers.ISelection; |
|
23 | 26 |
import org.eclipse.jface.viewers.TreePath; |
24 | 27 |
import org.eclipse.jface.viewers.TreeSelection; |
25 | 28 |
import org.eclipse.swt.widgets.Shell; |
... | ... | |
141 | 144 |
AbstractUtility.executeOperation(operation); |
142 | 145 |
} |
143 | 146 |
} |
147 |
|
|
148 |
@CanExecute |
|
149 |
public boolean canExecute(@Optional @Named(IServiceConstants.ACTIVE_PART) MPart activePart, |
|
150 |
MHandledMenuItem menuItem){ |
|
151 |
FactualDataPartE4 factualDataPart = (FactualDataPartE4) activePart.getObject(); |
|
152 |
ISelection selection = factualDataPart.getViewer().getSelection(); |
|
153 |
boolean canExecute = selection !=null && !selection.isEmpty(); |
|
154 |
menuItem.setVisible(canExecute); |
|
155 |
return canExecute; |
|
156 |
} |
|
144 | 157 |
} |
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/e4/handler/MoveDescriptionElementsHandler.java | ||
---|---|---|
15 | 15 |
|
16 | 16 |
import javax.inject.Named; |
17 | 17 |
|
18 |
import org.eclipse.e4.core.di.annotations.CanExecute; |
|
18 | 19 |
import org.eclipse.e4.core.di.annotations.Execute; |
19 | 20 |
import org.eclipse.e4.core.di.annotations.Optional; |
20 | 21 |
import org.eclipse.e4.ui.model.application.ui.basic.MPart; |
22 |
import org.eclipse.e4.ui.model.application.ui.menu.MHandledMenuItem; |
|
21 | 23 |
import org.eclipse.e4.ui.model.application.ui.menu.MMenuItem; |
22 | 24 |
import org.eclipse.e4.ui.services.IServiceConstants; |
25 |
import org.eclipse.jface.viewers.ISelection; |
|
26 |
import org.eclipse.jface.viewers.IStructuredSelection; |
|
23 | 27 |
import org.eclipse.swt.widgets.Display; |
24 | 28 |
import org.eclipse.swt.widgets.Shell; |
25 | 29 |
import org.eclipse.ui.PartInitException; |
... | ... | |
170 | 174 |
return false; |
171 | 175 |
} |
172 | 176 |
|
177 |
@CanExecute |
|
178 |
public boolean canExecute(@Optional @Named(IServiceConstants.ACTIVE_PART) MPart activePart, |
|
179 |
MHandledMenuItem menuItem){ |
|
180 |
boolean canExecute = false; |
|
181 |
FactualDataPartE4 factualDataPart = (FactualDataPartE4) activePart.getObject(); |
|
182 |
ISelection selection = factualDataPart.getViewer().getSelection(); |
|
183 |
if(selection instanceof IStructuredSelection){ |
|
184 |
Object firstElement = ((IStructuredSelection) selection).getFirstElement(); |
|
185 |
canExecute = firstElement instanceof FeatureNodeContainer |
|
186 |
|| firstElement instanceof DescriptionElementBase; |
|
187 |
menuItem.setVisible(canExecute); |
|
188 |
} |
|
189 |
return canExecute; |
|
190 |
} |
|
191 |
|
|
192 |
|
|
173 | 193 |
} |
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/e4/handler/MoveDescriptionToOtherTaxonHandler.java | ||
---|---|---|
9 | 9 |
|
10 | 10 |
import javax.inject.Named; |
11 | 11 |
|
12 |
import org.eclipse.e4.core.di.annotations.CanExecute; |
|
12 | 13 |
import org.eclipse.e4.core.di.annotations.Execute; |
13 | 14 |
import org.eclipse.e4.core.di.annotations.Optional; |
14 | 15 |
import org.eclipse.e4.ui.model.application.ui.basic.MPart; |
16 |
import org.eclipse.e4.ui.model.application.ui.menu.MHandledMenuItem; |
|
15 | 17 |
import org.eclipse.e4.ui.model.application.ui.menu.MMenuItem; |
16 | 18 |
import org.eclipse.e4.ui.services.IServiceConstants; |
17 | 19 |
import org.eclipse.jface.dialogs.MessageDialog; |
20 |
import org.eclipse.jface.viewers.ISelection; |
|
21 |
import org.eclipse.jface.viewers.IStructuredSelection; |
|
18 | 22 |
import org.eclipse.swt.widgets.Display; |
19 | 23 |
import org.eclipse.swt.widgets.Shell; |
20 | 24 |
import org.eclipse.ui.PartInitException; |
21 | 25 |
|
22 | 26 |
import eu.etaxonomy.cdm.model.common.CdmBase; |
27 |
import eu.etaxonomy.cdm.model.description.DescriptionBase; |
|
28 |
import eu.etaxonomy.cdm.model.description.DescriptionElementBase; |
|
23 | 29 |
import eu.etaxonomy.cdm.model.description.TaxonDescription; |
24 | 30 |
import eu.etaxonomy.cdm.model.taxon.Classification; |
25 | 31 |
import eu.etaxonomy.cdm.model.taxon.TaxonNode; |
... | ... | |
30 | 36 |
import eu.etaxonomy.taxeditor.editor.view.descriptive.e4.FactualDataPartE4; |
31 | 37 |
import eu.etaxonomy.taxeditor.editor.view.descriptive.operation.MoveDescriptionToOtherTaxonOperation; |
32 | 38 |
import eu.etaxonomy.taxeditor.model.AbstractUtility; |
39 |
import eu.etaxonomy.taxeditor.model.FeatureNodeContainer; |
|
33 | 40 |
import eu.etaxonomy.taxeditor.model.MessagingUtils; |
34 | 41 |
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled; |
35 | 42 |
import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled; |
... | ... | |
146 | 153 |
public boolean onComplete() { |
147 | 154 |
return false; |
148 | 155 |
} |
156 |
|
|
157 |
@CanExecute |
|
158 |
public boolean canExecute(@Optional @Named(IServiceConstants.ACTIVE_PART) MPart activePart, |
|
159 |
MHandledMenuItem menuItem){ |
|
160 |
boolean canExecute = false; |
|
161 |
FactualDataPartE4 factualDataPart = (FactualDataPartE4) activePart.getObject(); |
|
162 |
ISelection selection = factualDataPart.getViewer().getSelection(); |
|
163 |
if(selection instanceof IStructuredSelection){ |
|
164 |
Object firstElement = ((IStructuredSelection) selection).getFirstElement(); |
|
165 |
canExecute = firstElement instanceof FeatureNodeContainer |
|
166 |
|| firstElement instanceof DescriptionElementBase |
|
167 |
|| firstElement instanceof DescriptionBase; |
|
168 |
menuItem.setVisible(canExecute); |
|
169 |
} |
|
170 |
return canExecute; |
|
171 |
} |
|
149 | 172 |
} |
Also available in: Unified diff
ref #6907 Filter menu item visibility