I have a problem with hiding "Toggle Mark Occurrences" button in my coolbar on a
standalone RCP application based upon Xtext. When I run the Plug-in Menu Spy it identifies
the button as follows:
The active contribution item identifier:
ui.editor.markOccurrences
The active contribution item class:
AbstractToggleActionContributor$InternalToggleAction
The contributing plug-in:
org.eclipse.xtext.ui (2.10.0.v201605250459)
I tried to use two methods to hide the button, but each of them failed.
1) I defined a hiding activity and added there
<activityPatternBinding
activityId="net.afyre.haha.demo.rcp.hidejunk"
pattern=".*/.*markOccurrences">
</activityPatternBinding>
with several experiments that consisted in changing the pattern to
pattern=".*markOccurrences"
pattern="ui.editor.markOccurrences"
2) I tried to disable the action from within ApplicationWorkbenchWindowAdvisor
class in my plugin, using a code similar to
IMenuManager mm = getWindowConfigurer ().getActionBarConfigurer ().getMenuManager ();
IContributionItem[] mItems = mm.getItems ();
for (String menu : menusToRemove) {
for (IContributionItem iContributionItem : mItems) {
if (iContributionItem.getId().equals(menu)) {
mm.remove(menu); //IContributionItem does not work here
}
}
}
or
ICoolBarManager mm = getWindowConfigurer ().getActionBarConfigurer ().getCoolBarManager ();
IContributionItem[] mItems = mm.getItems ();
for (String menu : menusToRemove) {
for (IContributionItem iContributionItem : mItems) {
if (iContributionItem.getId().equals(menu)) {
mm.remove(menu); //IContributionItem does not work here
}
}
}
Any ideas?