RFC Name : ... |
Editor(s): ... |
<<TableOfContents: execution failed [Argument "maxdepth" must be an integer value, not "[2]"] (see also the log)>>
About this document
This is an official Request for Comment (RFC) for Fixing the loading and saving of the vizmap.props file.
For details on RFCs in general, check out the Wikipedia Entry: Request for Comments (RFCs)
Status
Open for public comment
How to Comment
To view/add comments, click on any of 'Comment' links below. By adding your ideas to the Wiki directly, we can more easily organize everyone's ideas, and keep clear records. Be sure to include today's date and your name for each comment. Here is an example to get things started: /Comment.
Try to keep your comments as concrete and constructive as possible. For example, if you find a part of the RFC makes no sense, please say so, but don't stop there. Take the extra step and propose alternatives.
Introduction
The vizmap.props file is currently loaded from at least 2 different default locations. One is the cytoscape installation directory and the other is the users .cytoscape directory in their home directory. Figuring out these locations, learning when files get saved to certain locations, and when files get loaded from certain locations is difficult for users.
This document is an attempt to develop a new scheme for loading and saving vizmap.props files.
Biological Questions / Use Cases
- Users want to save a set of visual properties they have spent many hours developing.
- Users want to load the visual properties they spent yesterday creating.
- Users want the same visual properties to be applied to the same network.
Proposal
Loading
The current scheme for loading vizmap.props at startup is as follows. This is also the order of precedence, so the most recently loaded vizmap.props file will be the current one.
- read the vizmap.props in cytoscape.jar - this file must exist.
- read $HOME/.cytoscape/vizmaps.props - if it exists.
- read the vizmap.props file specified on the command line - if it exists.
Either of the following actions will overwrite (in memory) the current vizmap.props:
- read the vizmap.props file saved in the cytoscape session file - if a session file is loaded.
- read the vizmap.props file specified in the import dialog - if so requested.
Saving
- When a session is closed, the vizmap.props file is saved with the session file.
- If the user clicks the "Make Current Visual Style Default" button in the Preference Dialog, the current vizmap.props will be written to $HOME/.cytoscape/vizmaps.props.
The vizmap.props file will be saved at NO other time!!!
No Longer Under Consideration or On Hold
Do away with all of the existing default handling and placement of vizmap.props files. This means no saving in $HOME, no saving in the cytoscape install directory, and no loading from places that a user doesn't explicitly request.
We're allowing for the default vizmap.props to change if the user desires. This adds a complication and the potential for confusion if the user expects $HOME/.cytoscape to contain their most recent vizmap.props and it doesn't. However, we feel that because the vizmap.props is always saved in the session file, this is less of a concern. No one should lose their visual styles assuming they save their session.
Generalize the loading of vizmap.props to loading parameters and preferences. See generic_preferences_system for details.
- Currently on hold.
Requirements
- Support loading of vizmap.props from webstart bundles.
Backward Compatibility
In the proposal above, backwards compatibility is achieved by the user importing his or her favorite vizmap.props file.