menueclipse-plugineclipse-rcpe4

Eclipse Plugin development showing and hiding menuContribution when opening and closing perspective


I am developing my Eclipse Plugin using E4 2020-09 version. I created a Perspective and a menuContribution using Model Fragments. I have searched several tutorials but I have not seen any that showing how to make a menuContribution appear/disappear when opening/closing a Perspective in E4 during development. What I found was these examples: https://github.com/vogellacompany/codeexamples-eclipse but this function is implemented for E3 and I want to implement it in E4. Can you give me some hints/advices about this technique and how it is called or where to start with it?

Thanks and best regards.


Solution

  • You can do this in the 'Visible-When Expression' for the menu items.

    Set the expression to be 'ImperativeExpression'. And create a class to handle the expression. This class just has a single method annotated with @Evaluate which is called each time the menu item might be displayed:

    @Evaluate
    public boolean evaluate(EModelService modelService, .... other parameters)
    {
      // TODO determine if menu item should be visible
    }
    

    This class can then use the getActivePerspective method of EModelService to check if the menu item should be visible.