How to modify custom MPS IDE's right submenu?

In my custom MPS IDE, I'd like to modify the context menu that is being activated with the right click on the Model folder within a solution, so the user can see only specific items.

In fact, I want to remove any item, so only the New -> Model is left. Please see the attached screenshot:


The straightforward approach is to remove the plugin that adds that menu item from your IDE (in this case it's probably the MPS Java Integration plugin).

A hacky approach is to use actionsfilter language from mbeddr. It lets you describe an actions profile and will dynamically remove actions that are not included in the profile.


What do you mean by “remove the plugin that adds that menu item from your IDE (in this case it's probably the MPS Java Integration plugin).”? You mean like taking a jar file and remove it from the MPS's installation? And then implement the custom right click menu within an MPS plugin?


Yes, when you are creating your RCP, you can choose not to copy all the plugins from MPS into it but include or exclude some of them. And then of course you would need to reimplement the actions.

Another option would be to customize the menus using MPS's built-in settings (Settings → Appearance & Behavior → Menus and Toolbars) and then copy the configuration to every user (by copying the settings over to them). But that's not as easy to implement.


Sergej, I appreciate your response!

However, I'm still unclear. How can I determine which plugins to exclude and which ones to retain? Could you possibly guide me in the right direction, perhaps through documentation or another resource?


Learn how to modify the right submenu of custom MPS IDEs with this comprehensive guide. Customize options and functionalities to suit your workflow preferences and enhance productivity. Utilize promotional items such as branded mouse pads or USB drives for storing and sharing your modified IDE settings. These items not only keep your workspace organized but also reflect your dedication to optimizing software environments for efficient programming and development tasks.


Please sign in to leave a comment.