IntelliJ, visualisation, yFiles and the openapi.graph package ...

Hi all,

I'm keen on writing a plugin for Ultimate edition of IntelliJ IDEA 9.0.2 that will include visualisation, but I'm looking for some help to get me started.  I'm trying to get my head around what changes the split of IDEA into the community and ultimate editions has had on the api exposed to plugin developers, in particular around visualisation/graphing.

I notice there is an openapi 'graph' package (com.intellij.openapi.graph), but this is not included in the source available for the community edition?  I therefore assume the features of this API are only available in the ultimate edition?  If that's the case is this 'graph' API documented?

The Ultimate edition of IDEA utilises yFiles for visualisation (Spring bean dependency diagrams etc.).  I realise yFiles is a commercial product, so am I correct in thinking that yFiles visualisation library is *not* available for use by IDEA| plugin developers, even those developing OS plugins for the Ultimate edition?  If that's the case is there a strong preference in the community for an OS visualisation framework/API?

Also, where is the openapi javadoc for plugin developers (for both those versions exposed by the utlimate and community editions of the IDE)?  I can only find broken links to openapi javadoc for earlier versions of IDEA?


regards,
Chris

5 comments
Comment actions Permalink

Hello Chris,

IDEA's visualization support uses yFiles which is a commercial product, and
therefore it's not available in the Community Edition. In the Ultimate edition,
you can use yFiles in your plugins by means of IDEA's wrapper classes (the
com.intellij.openapi.graph package). There's no documentation for it, but
it essentially mirrors the yFiles API.

We're no longer publishing javadocs as a separate download: you can simply
refer to the Community Edition source for any necessary information.

I'm keen on writing a plugin for Ultimate edition of IntelliJ IDEA
9.0.2 that will include visualisation, but I'm looking for some help
to get me started.  I'm trying to get my head around what changes the
split of IDEA into the community and ultimate editions has had on the
api exposed to plugin developers, in particular around
visualisation/graphing.

I notice there is an openapi 'graph' package
(com.intellij.openapi.graph), but this is not included in the source
available for the community edition?  I therefore assume the features
of this API are only available in the ultimate edition?  If that's the
case is this 'graph' API documented?

The Ultimate edition of IDEA utilises yFiles for visualisation (Spring
bean dependency diagrams etc.).  I realise yFiles is a commercial
product, so am I correct in thinking that yFiles visualisation library
is not available for use by IDEA| plugin developers, even those
developing OS plugins for the Ultimate edition?  If that's the case is
there a strong preference in the community for an OS visualisation
framework/API?

Also, where is the openapi javadoc for plugin developers (for both
those versions exposed by the utlimate and community editions of the
IDE)?  I can only find broken links to openapi javadoc for earlier
versions of IDEA?

regards,
Chris
---
Original message URL:
http://www.jetbrains.net/devnet/message/5264800#5264800

--
Dmitry Jemerov
Development Lead
JetBrains, Inc.
http://www.jetbrains.com/
"Develop with Pleasure!"


0
Comment actions Permalink

Hi Dmitry,

Apologies for the delay in getting back to you, I've been out of action for a while after an accident on my mountain bike!  Thanks for taking the time to reply.

I understand this may not actually exist as the source for the Ultimate edition is not available and yFiles is not packaged with the community edition.  But, as it is not documented, is there a good example of use of the com.intellij.openapi.graph you could point me in the direction of?


regards,
Chris

0
Comment actions Permalink

e.g. Maven and Struts2 plugin, both available in source via www.jetbrains.org

0
Comment actions Permalink

Is the graph package still available. could not find anything usfull. can please provide a link
to class which uses the graph api.

how can i declare the graph api optional.I want that my plugin still works in CE version but without the graph feature.

thank you

0
Comment actions Permalink

Yes, the package is still available. You can find examples of using the diagram API in the source code of the Struts 2 plugin:
http://git.jetbrains.org/?p=idea/contrib.git;a=tree;f=struts2/plugin/src/com/intellij/struts2/graph;h=e1325a94d77de421e9d27f79855f09ac0e896bb9;hb=HEAD

To make your plugin compatible with the Community Edition, you can declare an optional plugin dependency on the UML plugin.

0

Please sign in to leave a comment.