Ajout d'un menu contextuel sous eclipse
Fayros
Messages postés
6
Statut
Membre
-
Fayros -
Fayros -
Bonjour. Je cherche à rajouter un menu contextuel dans une vue que j'ai créée.
Pour cela, je me suis servi de l'assistant qui m'a rajouté ceci :
et la classe NewAction
Mais je ne sais pas comment le faire apparaître dans ma vue (d'ailleurs, cela n'apparait nulle part).
Si quelqu'un sait comment faire, je l'en remercie :)
(Au passage : je suis sous Eclipse version 3.2.0)
Pour cela, je me suis servi de l'assistant qui m'a rajouté ceci :
<extension
point="org.eclipse.ui.popupMenus">
<objectContribution
objectClass="org.eclipse.core.resources.IFile"
id="popup.contribution1">
<menu
label="New Submenu"
path="additions"
id="popup.menu1">
<separator
name="group1">
</separator>
</menu>
<action
label="New Action"
class="popup.actions.NewAction"
menubarPath="popup.menu1/group1"
enablesFor="1"
id="popup.newAction">
</action>
</objectContribution>
</extension>
et la classe NewAction
package popup.actions;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IObjectActionDelegate;
import org.eclipse.ui.IWorkbenchPart;
public class NewAction implements IObjectActionDelegate {
/**
* Constructor for Action1.
*/
public NewAction() {
super();
}
/**
* @see IObjectActionDelegate#setActivePart(IAction, IWorkbenchPart)
*/
public void setActivePart(IAction action, IWorkbenchPart targetPart) {
}
/**
* @see IActionDelegate#run(IAction)
*/
public void run(IAction action) {
Shell shell = new Shell();
MessageDialog.openInformation(
shell,
"Test_popup Plug-in",
"New Action was executed.");
}
/**
* @see IActionDelegate#selectionChanged(IAction, ISelection)
*/
public void selectionChanged(IAction action, ISelection selection) {
}
}
Mais je ne sais pas comment le faire apparaître dans ma vue (d'ailleurs, cela n'apparait nulle part).
Si quelqu'un sait comment faire, je l'en remercie :)
(Au passage : je suis sous Eclipse version 3.2.0)
A voir également:
- Ajout d'un menu contextuel sous eclipse
- Windows 11 menu contextuel classique - Guide
- Eclipse java - Télécharger - Langages
- Menu déroulant excel - Guide
- Menu caché tv continental edison ✓ - Forum Téléviseurs
- Demande d'ajout snap qui disparait ✓ - Forum Snapchat
1 réponse
Pour ceux que ça intéresserait :
Faire fonctionner un menu contextuel dans une vue :
dans le plugin.xml, rajouter ceci :
Et dans la vue elle-même :
Faire fonctionner un menu contextuel dans une vue :
dans le plugin.xml, rajouter ceci :
<extension
point="org.eclipse.ui.popupMenus">
<viewerContribution
id="<id du popup>"
targetID="<id de la vue ciblée>">
<menu
label="New Submenu"
path="additions"
id="popup.menu1">
<separator
name="group1">
</separator>
</menu>
<action
label="New Action"
class="<Action à exécuter>"
menubarPath="popup.menu1/group1"
enablesFor="1"
id="popup.newAction">
</action>
</viewerContribution>
</extension>
Et dans la vue elle-même :
private void hookContextMenu() {
MenuManager menuMgr = new MenuManager("#PopupMenu");
menuMgr.setRemoveAllWhenShown(true);
Menu menu = menuMgr.createContextMenu(<Your Viewer>.getControl());
<Your Viewer>.getControl().setMenu(menu);
getSite().registerContextMenu(menuMgr, <Your Viewer>);
}