need access to com.intellij.ide.util.MemberChooser from plugin

Hi, I want to develop a dialog to allow the user to choose some javadoc annotations in methods in a structured way, so I have realized that the class

com.intellij.ide.util.MemberChooser

Provides this functionality for structured views...
Well, I have followed instructions at:

http://www.jetbrains.org/display/IJOS/Writing+Plug-ins

But in my plugin code I haven´t access to that class, could someone guide me the right way to be able to reuse this code? I heard something about a closed API here: http://devnet.jetbrains.net/message/5179502#5179502

If that´s true, does it mean I can´t reuse that classes?

4 comments

hablutzel1 wrote:

Hi, I want to develop a dialog to allow the user to choose some javadoc annotations in methods in a structured way, so I have realized that the class

com.intellij.ide.util.MemberChooser

Provides this functionality for structured views...
Well, I have followed instructions at:

http://www.jetbrains.org/display/IJOS/Writing+Plug-ins

But in my plugin code I haven´t access to that class, could someone guide me the right way to be able to reuse this code?...

If you couldn't access your chooser in plugin code - than it declared not in your plugin code...Am I right? If so, try to put your class into plugin code.
If you couldn't access to com.intellij.ide.util.MemberChooser add idea.jar(in lib directory of your sdk) to sdk classpath. I don't know why, but automatically it not added.

... I heard something about a closed API here: http://devnet.jetbrains.net/message/5179502#5179502

If that´s true, does it mean I can´t reuse that classes?

I don't think so, that thread was in 2007 - IDEA was not opensourced.

0

If you couldn't access to com.intellij.ide.util.MemberChooser add idea.jar(in lib directory of your sdk) to sdk classpath. I don't know why, but automatically it not added.

... I heard something about a closed API here: http://devnet.jetbrains.net/message/5179502#5179502

If that´s true, does it mean I can´t reuse that classes?

I don't think so, that thread was in 2007 - IDEA was not opensourced.

idea.jar added and now I can use that class, thank you... But I wonder why creating an idea sdk doesn't add that jar by default? maybe because of some kind of licensing issue? I don't know anything about this topic, but I thought that maybe accessing that API could tie my plugin development to Intellij IDEA commercial version, actually I don't care about it, because my plugin's target audience have the commercial version... but some clarification about it would be welcome.

Thank you again Vladimir.

0

idea.jar added and now I can use that class, thank you... But I wonder why creating an idea sdk doesn't add that jar by default?


Theory: everything in idea.jar is a part of IDEA internal api and subject to change without warning. You should only use the open API (the idea SDK) that guarantees some stability across idea versions.

Practice: the open API is lacking in functionality, so most of the time access to IDEA internal api is mandatory resulting in adding idea.jar to the SDK classpath.

0

So that seems to be the problem, well, I managed to add idea.jar to the sdk classpath, and now everything is working quite good.
Thank you for your help.

0

Please sign in to leave a comment.