Size: 2727
Comment: converted to 1.6 markup
|
← Revision 6 as of 2011-02-24 15:32:58
Size: 3167
Comment: Start afresh with Cytoscape 3 documentation
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
## page was renamed from Cytoscape_3.0/EventHandling/PlannedCoreEventsIn3.0 | |
Line 21: | Line 22: |
Line 23: | Line 23: |
Line 26: | Line 25: |
Since instead of seperate NodeView, EdgeView, etc. classes, we use a single, generic View<T> class, the following events are generic as well, and apply for Node,Edge, and CyDataTable elements as well: |
Since instead of seperate NodeView, EdgeView, etc. classes, we use a single, generic View<T> class, the following events are generic as well, and apply for Node,Edge, and CyDataTable elements as well: |
Line 35: | Line 32: |
* VisualStyleChanged, Created, Destroyed, AboutToDestroy, Switched (e.g., swapping the entire visual style, versus editing a visual style) |
* VisualStyleChanged, Created, Destroyed, AboutToDestroy, Switched (e.g., swapping the entire visual style, versus editing a visual style) |
Line 39: | Line 35: |
NOTE: Many of these are not presentation events, ''per se''. They should be thought of as user actions. For some, the suggested way that the UI will allow the user to trigger the event is also mentioned. |
NOTE: Many of these are not presentation events, ''per se''. They should be thought of as user actions. For some, the suggested way that the UI will allow the user to trigger the event is also mentioned. |
Line 47: | Line 40: |
* ObjectSelected | * ObjectSelected |
Line 56: | Line 49: |
* Specific to Editor: * BeginEdge (control-left-click on a Node in Editor (or command-click on Mac platform) * EndEdge (left-click while in Edge construction 'mode'. Finishes edge if clicked on Node, Abort edge if clicked on empty space) * Other miscellaneous * AnchorPoint (control-left-click on an Edge to create an anchor for bending (or command-click on Mac) |
This is the list of events that we came up with during the second mini-retreat.
All events we plan to include as part of the 3.0 API for the layers mentioned should be included here.
(Note that events might be 'pluralized', but that decision has not been made, and minor changes might be made, but there is a general consensus that this is the list of events we will have)
The stand-alone desktop cytosape 3.0 app will, of course have many more types of events. These are just the ones that are part of the core API
Model Events
AboutToRemove{Node, Edge, Network, CyDataTable, CyRow, CyColumn?}
Created{Network, Subnetwork, CyDataTable} (NOTE: While the model package actually never fires CreatedNetwork, it should be defined in the model package for easier documentation.)
AboutToDelete{Network,Subnetwork, CyDataTable}
Deleted{Network,Subnetwork, CyDataTable}
View Model Events
(again, for both Networks and CyDataTables)
Since instead of seperate NodeView, EdgeView, etc. classes, we use a single, generic View<T> class, the following events are generic as well, and apply for Node,Edge, and CyDataTable elements as well:
ViewChanged (with detailed description about which property (properties) changed)
SubsetCreated, SubsetChanged, SubsetDestroyed (AboutToDestroy ?)
VizMap Events
VisualStyleChanged, Created, Destroyed, AboutToDestroy, Switched (e.g., swapping the entire visual style, versus editing a visual style)
Presentation Events
NOTE: Many of these are not presentation events, per se. They should be thought of as user actions. For some, the suggested way that the UI will allow the user to trigger the event is also mentioned.
This set is both for Network presentations and CyDataTable presentations:
PresentationCreated, Destroy, AboutToDestroy
ObjectOpened (double left-click)
ShowObjectOperations (right-click)
OpenRegion (double-click on empty space)
ViewportChanged (include zoom, pan, rotate)
SpinGesture - e.g., two-finger trackpad rotate (how would this work for selections?)
- These are specific to Table presentations:
RowSelected, Column, Cell
- Specific to Editor:
- Other miscellaneous
AnchorPoint (control-left-click on an Edge to create an anchor for bending (or command-click on Mac)
- We could subclass Presentation to support implementation-specific methods:
DragObject (create info), ObjectDropped (with info)
- MIME types, Visual Style copying, Columns of etc
Which of these are handled by the Application and Presentation?