Port to R#9: Menu Items (actions) not showing up

We are in the process of porting our plugin to R#9. We have defined an action that should be added at the bottom of the ReSharper menu. The plugin is loaded correctly and we can see that it is running correctly (it generates output to disk and our debugger hits breakpoints). The problem is that we cannot see our menu entry.

The action is defined in the Actions.xml file. (does it matter whether we use action + action-ref tags, or action tags only?

<actions>
  <action id="My.Plugin.DoSomething" text="My Action Text"></action>
  <insert group-id="ReSharper" position="last">
      <separator/>
      <action-ref id="My.Plugin.DoSomething"></action-ref>
  </insert>
</actions>

The ActionHandler class is as follows (it used to have the [ActionHandler] attribute, we moved it to [Action]:

namespace My.Plugin {


     [Action("My.Plugin.DoSomething")]
     public class DoSomethingActionHandler : IExecutableAction
     {
           public bool Update(IDataContext context, ActionPresentation presentation, DelegateUpdate nextUpdate)
           {
                return true; // Always visible
           }


           public void Execute(IDataContext context, DelegateExecute nextExecute)
           {
               // Doing something
           }
     }


}

Our plugin contains a ZoneMarker, but cannot find out whether we need to require another zone to enable menu entries.

Can you give us any hints on what might be wrong?

1 comment
Comment actions Permalink

Hi Ingmar. The actions system has changed for this release, and I'm afraid the docs haven't yet caught up. There's a thread on the Google Group that should help. The upshot is that actions.xml isn't used any more, and everything's controlled with attributes. Make sure you read to the end of the thread - there's a gotcha. Every time you change anything to do with actions, you need to reinstall the extension.

0

Please sign in to leave a comment.