DRAFT -- STILL BEING WRITTEN -- EXPECT COMPLETION BY 15th DECEMBER 2005
Cytoscape version 2.2 has a set of editors that enable the user to build and modify networks interactively by dragging and dropping nodes and edges from a palette onto the main network view window. The palette contains a set of shapes (for nodes) and arrows (for edges). The shapes on the palette are defined by the current Visual Style, with Node Shape and Node Color mapping into the shape and color of a node, and Edge Target Arrow mapping into the target arrow of an edge.
In Cytoscape version 2.3, the set of classes for the CytoscapeEditor is will be extensible by both developers and end users. End users will be able to extend the editor by defining a new visual style in which Node Shape, Node Color, and Edge Target Arrow are associated with a controlling attribute, defaulting to NODE_TYPE and EDGE_TYPE, respectively. Developers will be able to extend the editor framework by plugging in semantic callback methods that are invoked when editor operations, such as adding and deleting Nodes and Edges, are performed. Such semantic methods might include * restricting the kinds of Nodes that can be connected by a particular type of edge * prompting the user, when adding a Node, to select an entity from a database
Developers may also provide new editors, palette shapes, and event handlers by extending the classes in the editor framework.
The packages, interfaces and classes that exist in the CytoscapeEditor in Cytoscape version 2.2. are:
Package |
Class or Interface |
Description |
cytoscape.editor |
|
top-level classes and interfaces |
|
CytoscapeEditor |
interface for common methods that all editors must implement, such as adding/deleting nodes and edges, handling palette controls |
|
CytoscapeEditorFactory |
Interface used for building new instances of editors. Before an editor can be built, it first needs to be registered with the CytoscapeEditorManager |
|
CytoscapeEditorManager |
Static routines for managing editors, views, event handlers, global variables |
|
CytoscapeEditorPlugin |
encapsulating plugin class that builds the initial set of editor (may be separated out into a separate jar) |
|
GraphicalEntity |
Interface for defining draggable/droppable visual components. Graphical entities are associated with semantic objects, i.e. nodes and edges, that are created when the graphical entities are dropped onto the canvas. |
|
InvalidEditorException |
Creates a new exception when there is no registered editor corresponding to the editor type suppied to the CytoscapeEditorFactory.getEditor() method |
cytoscape.editor.editors |
|
classes for editors provided with Cytoscape 2.2 |
|
BasicCytoscapeEditor |
provides base-level functionality present in all editors, such as adding and deleting nodes and edges, building palettes |
|
DefaultCytoscapeEditor |
An example editor that extends the Basic'CytoscapeEditor and contains one default node and one default edge on its palette. This editor definesthe nodes and shapes on its palette using the current Visual Style |
|
SimpleBioMoleculeEditor |
an example editor that defines the nodes and shapes on its palette using the SimpleBioMolecule Visual Style, which contains a simple set of colored shapes that represent biological entities |
More to follow...