5.3 Generator Editor
The Generator Editor is an interactive development environment
for creating, editing and managing generators. It allows you to view, edit and
run available generators, and to create new generators for your needs. An
example Generator Editor window is shown in
Figure 5–10.
Figure 5–10. Generator Editor.
At the top of the
Generator Editor window there is a menu bar and a toolbar. Below the toolbar are
three list boxes, an editing area and a list of errors at the bottom. The
Generator Box, the left list box, offers a list of
generators. By default the generators for the currently selected Graph type are
displayed, along with the hierarchy of subgenerators they call. You can also
choose to display other non-hierarchical lists of generators from the menu box
above the list. Other possible options are alphabetical order, ascending and
descending chronological order, generators with breakpoints, generators that
failed the syntax check and generators found by the last Advanced Find
command.
The center list box is the
Concept
Box, where you can select what to view in the right
list box: Graph, Object, Port, Role or Relationship types of the current
modeling language, or templates for the MERL generator definition language. The
templates contain the syntax elements and commands of the language, and have
been categorized to make them more accessible. The category
‘Templates’ contains all templates, while sub-categories
‘General’, ‘Control’, ‘External I/O’,
‘Strings & Numbers’ and ‘Representations’ contain
only templates for commands of that type.
The right list box, called the
Choice
Box, provides a list based on the choice in the
Concept Box: either a tree of types and their properties, or a list of the
templates in the category that has been selected in the Concept Box.
Double-click any of the listed items to paste it into the Editing
Area
.
Under the list boxes is the main Editing Area,
which shows the currently selected generator definition. The editing area
supports the normal editing operations (cut, copy, paste, select, find, replace)
and font formatting.
Below the editing area, there is the
List of Errors
at the bottom of the window. Any errors found in the current generator are
reported here when you save the generator or check its
syntax.