Issues with Connection and Recent Files
Connect and Disconnect
We want to support a simpler, quicker connect/disconnect design, in conjunction with a recent files list that encodes server information. Working with recent files, servers, and connect/disconnect should be as simple as browsing for files on a local machine. The only difference should be that the user will need to be prompted for passwords in some cases, but this will depend entirely upon the setup of the customer's network.
Requirements
- ParaView shall be configurable so that a list of possible server connections is available at startup. This configuration is to be obtained through one of the following methods:
- URI
- Default configuration file, located in a known place in the installation.
- User-specified configuration file, located in a place designated by an environment variable.
Use Cases
- Start client on a machine which cannot save client data.
- Start client on a machine which cannot save client data, start making movie, then disconnect once ParaView has started to create the movie. The movie should continue to be made on the server. Server exits after movie is created.
Assumptions
- State is saved as follows:
- ParaView Server state is saved on the server
- User's settings for the server are saved on the server. These settings apply for this user on this server only.
- Client-side settings that are not needed on the server are saved on the client. These include:
- Recent files list.
- Window sizes, etc.
Recent Files List
The recent files list is a hierarchical list of recent files kept on the client (only) by the client. The recent files are grouped by server name in the UI (see Figure 1)
Grouping the recent files by server changes the order of the recent files. The last file the user opened might not be at the top of the list. If we put the server name at the front of the file name (like a drive letter), the recent files can still be displayed in the order they were opened. This will allow the user to use paraview the same way he/she uses any other application. The image below illustrates putting the server name in the file name. It also shows the recent file list in a different place in the file menu. Most applications put recent files in the file menu this way.
The file names are shortened to fit in the menu better. The tooltip shows the whole file name, which can also be displayed on the status bar.
Actions
- Selecting a recent file:
- Asks the user if he wants to close the current file.
- Closes the current file.
- Connects to the requested server, if that server is not the one that is currently connected.
- Locates the requested file.
- If it exists, opens it.
- If it does not exist, reports that to the user. The connection is kept alive, in case the user wants to try to open a different file.
File Browser
When the file browser is brought up (in response to a File->Open action), it has current information for the server to which the user is currently connected. In the case of the Local server, this would be the local file system. On the left side of the file browser, in the 'Look in ...' area - is a list of the possible servers, obtained from the configuration (see above). This list will exactly match the headings in the 'Recent files' menu. Clicking on a server to which the user is not currently connected displays the recent files list for that server. This list, and its icons, exactly match the one availalble in the 'Recent Files' menu.
Connect/Disconnect Actions
A user can disconnect from a server at any time, using 'Connect/Disconnect' menu items or buttons. Disconnecting from a server requires that the current session be terminated. The user is offered the option of saving the session before it is terminated.