8. FILE OPERATIONS

Contents Previous Next Index
This section describes the procedures for opening and saving diagram documents, and printing and exporting. These functions are accessed from the File menu.

Starting a New Document

Choose New from the File menu to start a new document. If the current document has been modified, Robochart will ask if you want to save it first.

Opening a Document

To Open an existing diagram document file for viewing and editing, choose Open (or Load) Diagram... from the File menu to display the Open window.

This window shows the current directory path, filename, and a scrolling list of files/directories (the list can be disabled with the "loadlist" configuration file option). If you select a filename in another window before displaying the Open window, it will be filled in for you.


Motif File Window

To change directories, double-click on an entry in the Directories list, or enter the directory name in the Selection field and press Return (or click on Open). To show only files that match a pattern (e.g. *.cht), enter the pattern in the Filter field and press return (or click on Filter). You can configure a default filter pattern using resources.

To open a file, double-click on its name in the Files list, or enter the filename in the Selection field and press Return (or click on Open). You can also click once on the name, and once on the Open button.

If you've configured your favorite file manager for Robochart diagrams as described in Section 2, the file manager will use a special icon for your diagram documents, and you can double-click on a document to start Robochart with that file loaded.


OPEN LOOK File Window

To limit the displayed list to filenames matching a pattern, enter the desired pattern (e.g. *.cht) and press Return or click on the Filter button. You can configure a default filename pattern using the LoadPat application resource.

Click on a name in the scrolling list to copy it to the File field. To load the chosen name (or change directories if the File field is a directory name, or ".." for the parent directory), click on the Load button, or press Return in the File field. You can also double-click on a name in the scrolling list.

An easier way to load a diagram file is to drag the file's icon from the OpenWindows or CDE File manager onto the Robochart drawing area. You can also drag a file onto the icon of a closed Robochart window, which opens the window as well as loading the file. (If you've added a binder, CDE application entry, or MIME type for Robochart diagrams as described in Section 2, the file manager will use a special icon for your diagram documents, and you can double-click on a document to start Robochart with that file loaded.)


Open Template works like Open Diagram, except that no current filename is set, so that you will need to use SaveAs to specify a new filename before saving the document. Use this choice to create a new diagram using an old diagram as a starting point, or just to make it harder to accidentally overwrite a diagram file that you don't want to modify. (There is no special command to create a "template" document - create it just like any other Robochart document.)

If the program reports an error reading the file, it's probably not a file created by Robochart, or else the file has become corrupted. Also, check that you have read permission on the file and directory.

When a diagram document is opened, all the objects, flows, and labels for all levels and all pages of the document are loaded. The clipboard contents are not changed. The drawing window is restored to the size defined when the file was saved, as are the following configuration options:

If you want to keep your current configuration settings when opening a new file, save the configuration (using the Options menu Save Config choice), open the file, and then restore the configuration (Options menu Reload Config).

File Locking

In order to prevent interference between multiple users editing the same diagram at the same time, Robochart uses a lock file to indicate that you're working on a document. The lock file has the same name as the diagram file, with an added .lck extension. When you open a document file, or save a diagram to a new file, the program checks that no-one already has a lock on that file. If an existing lock is found, a warning message is displayed, giving you the option of canceling the request or overriding the lock.

WARNING

You should only override a lock after making sure that no-one is actively working on the file. Otherwise, changes one person makes will be lost when another person saves the same file.

Initial Diagram Directory/File

You can specify an initial diagram pathname on the command line when starting Robochart. This initializes the current directory and filename, and loads the diagram file. Or, you can specify a directory name to set the current directory but not load any files. To automatically start in a specific directory every time you start Robochart (without a pathname on the command line), set the RCHT_HOME environment variable (perhaps in your ~/.login file) to the desired path.

Diagram Document File Format

The Robochart diagram document format is defined in filefmt.txt.

Saving a Document

To save the current diagram to a new document file, choose the Save As... item from the File menu; this displays the Save window.

This window has fields to enter the directory and filename for the save file. The Directory field defaults to the last directory entered, or the current directory. If you select a filename in another window before displaying the Save window, it will be filled in to the File field.

The home directory abbreviations ~/ and ~user/ can be used to prefix pathnames.

Click on the Save button, or press Return in the File field, to save the diagram document. Robochart will warn you if the destination file already exists. In any case, it will first rename any existing file of the same name with an extension .BAK as a backup version (any previous backup file with that name is replaced).

To save the diagram to the current file (as shown in the main window header), choose the Save item from the File menu, or press Meta/S. (This item is inactive if no current filename is defined.) The Save function does not warn you that the file already exists, although it does retain a backup file. Note that the filename in the window header is shown in parentheses if the diagram has been changed and a save is needed.

The saved document file contains all the objects, flows, and labels for all levels and all pages of the document. It doesn't include the clipboard contents; it does include the current autolink and numbering settings, custom commands, custom shape definitions (including images), and color choices.

Checkpoint File

Robochart can automatically save your diagram periodically, to limit the amount of work lost in case of power failure, system crash, etc. The CheckpointFrequency resource (Section 10) sets the number of edit operations between checkpoints. If non-zero, the diagram is periodically saved to rchart.cpt in the current directory. To recover from a failure, move this file to a different name and load it into Robochart.

Printing and Exporting

To print or export your diagram, choose the Print/Export... item from the File menu to display the Print/Export window.

This window contains settings to indicate how much of the diagram document to print, what output format to use, how to scale the output, and the name of the printer device or export file. The default values for these choices are stored in your configuration file. The Reset button restores window settings to the current defaults.

Choose This Level to print only the current level of the current page, This Page to print all levels of the current page, or Pages ___ thru ___ to print all levels of the specified pages (initialized to the entire document).

Formats

The output format choices are: PostScript page description language, Encapsulated PostScript File, HPGL plotter graphics language, ASCII text data, MIF FrameMaker publisher Interchange Format, and image formats with optional HTML web pages.

Options

The Shadows setting applies only to PostScript, EPSF, and MIF formats, and determines whether 3D drop shadows are provided. You can disable shadows or select them for opaque objects only (those with fill type other than "None"), all objects, or all objects and flows.

For PostScript and EPSF formats, the Color setting enables output of color commands in the output, matching the current color choices. If Color printing is disabled, gray levels are substituted for colors. For MIF format, the Color setting enables output of color separation commands in the MIF file. You can change the MIF header file (see below) to change the color mapping. For HPGL format, the Color setting enables output of pen selection commands corresponding to color codes in the diagram; if Color printing is disabled, pen 1 is always selected for drawing. For image formats, color or monochrome output is selected based on your current display mode.

Scaling

Robochart can scale output in three ways. The first method ("Fit to page") lets you specify the dimensions of the output area, then automatically sizes the diagram to fill this area. This is the normal method for hardcopy output. Turn off "Auto size", choose the desired paper size, the direction the diagram should be oriented, and the margins to leave blank on each output sheet, and choose "Fit to page" scaling.

The second method ("Fixed scaling") lets you specify both the output dimensions and the diagram scaling, then centers the image at that scaling; if the diagram doesn't fit on a single sheet at the specified fixed scaling, it is split across multiple sheets (except for MIF format). This may be preferred for multi-page documents to keep object sizes consistent. Turn off "Auto size", choose the desired paper size, the direction the diagram should be oriented, and the margins to leave blank on each output sheet, and choose "Fixed" scaling. A fixed scale factor of 100% converts 75 screen pixels to one inch, matching typical screen resolution.

The last method ("Auto size") lets you specify the diagram scaling, and adjusts the output size as needed to encompass the diagram. This is useful for exporting to other programs. Turn on "Auto size", and set the margins and fixed scale factor.

For image file export, scaling always matches screen scaling, and image size is set to encompass the diagram plus specified margins.

"Best fit" orientation means the program will select either landscape or portrait page orientation, depending on the dimensions of each diagram level. Auto size output is always oriented in portrait mode, or right side up. To specify a standard paper size, press the right mouse button with the pointer on the Paper size button, and choose the desired size from the pop-up menu.

Output

Choose either the To printer or To file setting, enter the desired printer device or file name, and click on the Print button to print or export the diagram.

Printer output is piped to the named device using the command defined in environment variable RCHT_PRINT (normally lpr or lp). Alternately, you can enter a command string starting with the pipe symbol "|" instead of a printer name to pipe output to that command. If HPGL, EPSF, MIF, or image format is chosen, each output sheet is piped to the printer separately or exported to a separate file. These files are named with a 3-digit sequence number in between the given filename and the extension; for example diagram.001.mif. The main window message area shows the full name of each output file.

EPSF files generated by Robochart contain PostScript code and a fixed, generic bitmap image.

When printing, the special label symbols described in Section 6 are expanded, and phantom object outlines are ignored.

To import a MIF-format diagram to FrameMaker, use the Import... option of Frame's File menu. All diagram elements are placed in a group to simplify positioning and resizing. Start with nothing selected to place the diagram in a floating frame at the center of a page, or start with a text insertion point active to create an anchored frame for the diagram, or start with an existing graphics frame selected to place the diagram in that frame. (If Frame doesn't scale the diagram the way you expect, try a different importing method.)

See the file plotter.txt for help with HPGL plotter setup.

Image Formats

When you select image or image + HTML output, the image file format is determined by your export filename extension. The default extension is .gif, unless you set a different default with the RCHT_IMAGE environment variable. Robochart's native output file format is PPM (portable pixmap). For any other format, a converter program is automatically run to convert the PPM output to the desired file format. Converter programs must be named ppmtoformat. For example, ppmtogif is used to generate GIF image files. ppmtogif is included with Robochart. Converters for many other formats are available in the free netpbm software package, available at wuarchive.wustl.edu in directory /graphics/graphics/packages/NetPBM.

HTML Generation

Along with image files, Robochart can generate Hypertext Markup Language (HTML) documents for World Wide Web browsers. These documents reference the corresponding image files, and contain HTML maps with active regions under Robochart objects in the image, which can link to other pages.

Manual HTML output creates HTML files with links that you manually specify in the diagram using phantom objects. To associate a URL with an object, connect it (using a flow of any type) to a phantom object, and enter .HREF. followed by the URL as the phantom's label.

Auto HTML output creates an HTML file for each level of your hierarchical diagram, linking them together in the same way that your diagram objects are connected. For example, clicking on a top-level object in your web browser would take you to the corresponding sublevel diagram. Clicking outside objects takes you up one level in the hierarchy. Manual links using phantom objects as described above can also be used in Auto HTML output. A symbolic link name.home.html is created for the home or root level generated HTML file.

For both auto and manual HTML output, Robochart can create the HTML file from scratch, or use a template that you provide in one of three ways:

For any type of HTML template, include a section with the HTML tags <RCHART> and </RCHART> as a placeholder. Robochart will put the image file reference and the map commands between these markers. You can specify a default URL link for the image map within the opening tag - for example,
	<RCHART DEFAULT="http://www.digins.com">
	(anything here will be replaced by generated HTML)
	</RCHART>

Header File Customization

PostScript, EPSF, HPGL, and MIF outputs use header files (named in environment variables RC_PS_HDR, RC_EPS_HDR, RC_HPGL_HDR, and RC_MIF_HDR) containing prologue code. The default header files are rchart.ps, rchart.eps, rchart.plt, and rchart.mif. Experienced PostScript/HPGL/MIF programmers may wish to modify copies of these header files to alter the appearance of printed diagrams. Set the appropriate environment variables to the pathnames of these copies before starting Robochart to override the default headers.

The PostScript header files include normally empty "hooks" objects and flows, which are invoked before each group of objects or flows are output. This can simplify certain customizations. As an example, the file overlap.ps in the distribution archive shows how to make overlapping flow lines to show more clearly, by "erasing" a region around the lines.

ASCII Export Format

The ASCII format creates a text file listing the objects and flows in your diagram. This data can be used with user-written software for various post-processing capabilities, such as maintaining a design database. The format of ASCII export data is:

Page page-number
Level level-number
Object ID object-type line-type object-colors level-number
object-label-text
more objects at this level
Flow source-type line-type dest-type source-ID dest-ID flow-colors form
flow-label-text
more flows at this level
more levels for this page
more pages

where


page-number is a 2-digit page number
level-number is Top or a diagram level number
ID is an integer identifying an object
object-type is a 3-digit number (0-255)
line-type is one of S (solid), D (dashed), s (thick solid), d (thick dashed), or N (no border)
object-colors are 3 characters indicating border, text, and fill colors as 0-7, or N for none
label-text is the object or flow label text, with each line preceded by one space
source-type is a 2-digit number for the source end type
dest-type is a 2-digit number for the destination end type
flow-colors are 2 characters indicating the line and text colors as 0-7
form is one of S (straight) or C (curved).

Note that the special label symbols described in Section 6 are not expanded during ASCII exporting, and no font information is provided.


Contents Next Index