IlianaAvila - Here are my new ideas.
- Of all the methods to display/visualize groups in Cytoscape we have discussed so far, only ONE modifies the model of the graph. Yes, you guessed right. The collapsing/expanding of meta-nodes is the one. All the other ones are conceptually separate from the grouping problem. For example, laying out a set of nodes in a stack is a problem that belongs to the subnetwork layout category. The collapsing/expanding meta-node strategy is a lot more complex than the other ones.
- Therefore, I have decided to create a specific API for the collapsing/expanding of meta-nodes in Cytoscape.
- It seems like we are moving towards supporting meta-nodes at higher level than GINY. Therefore, the meta-node API needs to hide implementation details because it currently uses GINY methods for meta-nodes.
Luckily, most of the code is already implemented in my MetaNodeViewer plugin. All I have to do is create an API for it. And, I have! Here it is: http://db.systemsbiology.net/cytoscape/grouping/mdoc/. Please /CommentOnNewMetaNodesApi.
The most important class to look at (this is what I think of as the API) is MetaNodeUtils
- For 2.3, I can release this plugin (after everyone is happy with the API).
- For following releases, the thigs we have to do are:
- Decide what data-structure and object hierarchy will support the storage of metanode information (since we have talked about not supporting it at the GINY level).
Once the data-structure and the object hierarchy is decided on and implemented, either transfering my MetaNodeViewer plugin to use this new objects, or, starting a plugin from scratch that respects the MetaNodeUtils API. It is therefore very important that we are happy with this API.