Viewing

Double-clicking on the file NET in metrox.tmp will bring up a display of the elaborated netlist described by that file. The initial appearance of the graphical display depends on the layout preference settings.

Before describing the preferences, a note about auto-layout is in order: Automatic layout is provided as a helpful starting point for laying out a diagram. It may not provide a suitable finished layout, but can help provide an initial layout that is understandable and easily modifiable by hand. The preferences can be helpful in getting the most out of auto-layout.

Layout preferences

The layout preferences are accessed from the main Eclipse menus:
Window -> Preferences -> Metropolis -> Layout

Image of the layout preferences page.
Layout preferences.

The Display

The display shows the structure of a netlist. The name of the netlist whose structure is being displayed appears in the tab at the top of the Structure Viewer.

Components

The components of the netlist appear as colored rectangles. A rectangle's color corresponds to the type of component it represents. The color key is on the layout preferences page (see above), where the colors are customizable. The name of the component in the netlist is displayed in the middle of its rectangle. Hovering over a component displays its name, the fully-qualified name of its class, and its type in a tooltip.

Ports

Connections between the netlist components are displayed as lines connecting them, attached at their ports. A gray circle on a component rectangle represents an input port (or interface). The name of the interface is displayed in a tooltip when the mouse hovers over it.

A white circle on a component rectangle represents an output port. The name of the port is displayed in a tooltip when the mouse hovers over it.

Shadow Ports

A gray or white circle that is not on a component rectangle is a "shadow port". Its connection ends at a port that is not in the currently displayed netlist. Shadow ports are so called because they can be thought of as the point where a connection casts a shadow on the netlist boundary on its way to an endpoint in some other netlist.

A shadow port can appear either as a free-floating symbol, when it represents a connection endpoint outside of the current netlist, or as a port symbol on a netlist object, when it represents a connection endpoint inside that netlist. The following figure illustrates:

Illustration of Shadow Ports.

Layout

If the preferences have been set to do automatic layout, and the GraphViz programs are correctly installed, the netlist components will be automatically layed out in some manner the first time a netlist is displayed. Automatic layout will also happen on subsequent displays of the same netlist, as long as the layout has not been saved.

The rectangular component symbols and the free-floating shadow port symbols can be dragged into any position. They can also be resized by selecting them and dragging their handles. Multiple symbols can be selected at once by dragging a selection box around them, or by doing Shift-Click to add them to the current selection.

Saving (and a caveat)

Currently, saving means saving the layout, and it is done in any of three ways described below.

An important caveat: If multiple views of the model are open when one is saved -- i.e., views of multiple netlists in a hierarchical structure -- it is important to realize that the layout for all views will be saved. That is, the layout for the entire model is saved in one place and saving any view saves the layout for all views.

Actions

Open a sub-netlist
Double-clicking on a netlist symbol will open another viewer displaying the structure of that netlist.
Edit source code
Double-clicking on a non-netlist component figure will open a text editor on the source code for that component, if that source code file resides in the local Metropolis project under Eclipse.
Reposition and resize objects
Objects can be repositioned by dragging them, and resized by selecting them and dragging their handles.
Undo and redo
Layout changes can be undone and re-done in three ways:
Save
The graph layout can be saved in three ways:
Export Image
The view image can be saved to a file by right-clicking on the background and selecting "Export Image..." from the popup menu. This will bring up a dialog to use to specify the file type, file name, and location of the exported image file.

JPEG and BMP formats have been tested to work on Windows and Redhat Linux platforms. The underlying Java API theoretically also supports PNG and GIF, but success with those is yet to be seen.