How to extend existing plugin

I am trying to extend the CVS plugin that is builtin to IntelliJ. Some things I am not sure about are:

1. How do I place my actions on the existing CVS plugin menus?
2. How do I structure my plugin? Looking at the plugin.xml for the CVS plugin shows a bunch of extensions, no app or project components. Does that mean I should do extensions too? I would assume I would want the same type/scope plugin as the one I am trying to extend?
3. I will need to execute some CVS commands for my extensions actions. What class do I use to execute those CVS actions like the existing CVS plugin?
4. How do I make sure that my actions only appear for CVS VCS projects?


Comment actions Permalink

2 ) use the depends tag ( TheIdOfTheOtherPlugin]]> )
1 ) my guess would be : check out the source of the CVS plugin, which comes with the plugin DevKit
3 ) same here
4 ) probably: If you're actions are in the cvs menu, then that menu probably is only visible for cvs projects: fixed.

Comment actions Permalink

I was able to figure out some of these myself:

1. I opened the plugin.xml of the existing plugin to see where I could hang my actions within its action groups
2. Still not sure on this, but a project component seems to be workikng fine for now.
3. I was able to discover the entire Vcs openAPI, like ProjectLevelVcsManager, to access what I need.
4. I think the previous replier is probably correct

Comment actions Permalink

Hello Ruben,

1 ) my guess would be : check out the source of the CVS plugin, which
comes with the plugin DevKit

The CVS plugin is actually the only VCS plugin which is not open-source.

Dmitry Jemerov
Development Lead
JetBrains, Inc.
"Develop with Pleasure!"

Comment actions Permalink

:) ..... ok, sorry. I guess this was a combination of late-night and being used to al lot of available source...


Please sign in to leave a comment.