![]() |
New Project
This command is equivalent to File:New.
|
![]() |
Open
This command is equivalent to File:Open.
|
![]() |
Save
This command is equivalent to File:Save.
|
![]() |
Save Image
This command is equivalent to File:Save Image.
|
![]() |
Save Template
This command is equivalent to File:Save Template.
|
![]() |
Browse Repository
This command is equivalent to File:Repository:Browse.
|
![]() |
Check In Project
This command is equivalent to File:Repository:Check In.
|
![]() |
Undo
This command is equivalent to Edit:Undo.
|
![]() |
Redo
This command is equivalent to Edit:Redo.
|
![]() |
Copy
This command is equivalent to Edit:Copy.
|
![]() |
Paste
This command is equivalent to Edit:Paste.
|
![]() |
Print
This command is equivalent to File:Print.
|
![]() |
About UMLStudio
This command is equivalent to Help:About UMLStudio.
|
![]() |
Help Contents
This command is equivalent to Help:Contents.
|
![]() |
Zoom Out
This command is equivalent to View:Zoom Out.
|
![]() |
Zoom In
This command is equivalent to View:Zoom In.
|
![]() |
Zoom Combo
The zoom combo can be used to either directly type-in a zoom level, or choose one from a list of predefined zoom levels. The entered value should be in the range 20-400%. Choose Fit To Page if you want the zoom level to be calculated automatically so that as much as the diagram as possible can be displayed in the drawing pane.
|
![]() |
New Model
This command is equivalent to Model:New Model.
|
![]() |
New Tool Model
This command is equivalent to Model:New Tool Model.
|
![]() |
New Stereotype Model
This command is equivalent to Model:New Stereotype Model.
|
![]() |
Implode
This command is equivalent to Model:Implode.
|
![]() |
Explode
This command is equivalent to Model:Explode.
|
![]() |
Generate Code
This command is equivalent to Tools:Generate Code.
|
![]() |
Generate Documentation
This command is equivalent to Tools:Generate Documentation.
|
![]() |
Reverse Engineer
This command is equivalent to Tools:Reverse Engineer.
|
![]() |
Pointer Tool
The pointer tool is used for pointing at drawables in the drawing pane. Using this tool, you can select drawables, drag them, resize them, etc. After creating a drawable, this tool is automatically selected, unless you also hold down the shift key while creating the drawable, in which case the currently selected tool remains selected. The cursor changes depending on where it is positioned.
|
||
![]() |
Tag Tool
This tool is used for creating and attaching a tag to a place drawable. A tag is a sort of comment and is used to highlight information about a place. To create a tag, select this tool, position the cursor inside the desired place and drag out. Then click inside the created tag and type your text. You can cancel this operation using the Edit:Undo command.
|
||
![]() |
Message Tool
This tool is used for creating and attaching a message to a link drawable. Messages are primarily used in collaboration diagrams. To create a message, select this tool, position the cursor over the desired link and click the mouse button. You can cancel this operation using the Edit:Undo command.
|
||
![]() |
Junction Tool
This tool is used for creating and attaching a junction to a place drawable. To create a junction, select a junction from the menu of this tool, position the cursor over the border of a place and click the mouse button. You can cancel this operation using the Edit:Undo command.
|
||
![]() |
Swimlane Tool
This tool is used for creating a swimlane. Swimlanes allow the drawables in a model to be divided into a number of vertical groups, where each vertical group represents a swimlane. To create a swimlane, select this tool, position the cursor roughly where you want the swimlane to appear and click the mouse button. The first swimlane in a model will contain all the drawables to the left of the click point. Subsequent swimlanes can appear to the left, right, or in between existing swimlanes. You can cancel this operation using the Edit:Undo command.
|
||
![]() |
Text Tool
This tool is used for creating text primitives. A text primitive is a rectangular area which can be used for entering and editing arbitrary text. The text can be specified to be editable or static via its property sheet. Text primitives are typically used in tool models to provide a place-holder for a place/link name. They can also be used freely in custom models for providing visible comments. To create a text primitive, select this tool, hold down the mouse button in the drawing pane, drag to define the text boundary, and release the mouse button. To enter text into the primitive, click inside it and type your text. You can cancel this operation using the Edit:Undo command. You can edit the properties of a text primitive by double-clicking it, or selecting the primitive and choosing Edit:Properties.
|
||
![]() |
Line Tool
This tool is used for creating line primitives. A line primitive is a straight line as defined by its two end-points. To create a line primitive, select this tool, hold down the mouse button in the drawing pane where you want the line to begin, drag to where you want the line to end, and release the mouse button. You can cancel this operation using the Edit:Undo command.
|
||
![]() |
Rectangle Tool
This tool is used for creating rectangle primitives. To create a rectangle primitive, select this tool, hold down the mouse button in the drawing pane, drag to define the rectangle boundary, and release the mouse button. You can cancel this operation using the Edit:Undo command.
|
||
![]() |
Rounded Rectangle Tool
This tool is used for creating rounded rectangle primitives and behaves like the rectangle tool.
|
||
![]() |
Ellipse Tool
This tool is used for creating ellipse primitives and behaves like the rectangle tool.
|
||
![]() |
Polyline Tool
This tool is used for creating polyline (i.e., open polygon) primitives. A polyline primitive is a sequence of 3 or more points, connected by straight lines. To create a polyline primitive, select this tool, click to define the first point, drag and click to define the next point, and repeat the last step until you have defined all the desired points. To complete the polyline, click the last point twice (without dragging). You can cancel this operation using the Edit:Undo command.
|
||
![]() |
Polygon Tool
This tool is used for creating closed polygon primitives. A polygon primitive must have at least 3 points (called vertices) and is created in the same way as a polyline primitive.
|
||
|
Icon Tool
This tool is used for creating icon primitives. Choose the desired icon from the menu of this tool and click where you want it to appear.
|
|||
![]() |
Group As Primitive
This command is equivalent to Arrange:Group As Primitive.
|
||
![]() |
Group As Place
This command is equivalent to Arrange:Group As Place.
|
||
![]() |
Ungroup
This command is equivalent to Arrange:Ungroup.
|
||
![]() |
Bring To Front
This command is equivalent to Arrange:Bring To Front.
|
||
![]() |
Send To Back
This command is equivalent to Arrange:Send To Back.
|
||
![]() |
Reposition
This command is equivalent to Arrange:Reposition.
|
||
![]() |
Renumber Messages
This command is equivalent to Arrange:Renumber Messages.
|
||
![]() |
Library Tool
This tool displays a menu that provides access to the user-defined library. The first two entries in the menu (Use As Primitive and Use As Place) are mutually exclusive and control the way a library symbol can be inserted into your project. A tick appears next to the current selection. If you choose Use As Primitive, then each time you choose a library symbol and insert it into your project, it will be created as a primitive group. Otherwise, it will be created as a place group. The next entry in the menu (Load Library) allows the user to load a different library. It displays the standard Windows open dialog for selecting a library file. Once selected, the new library replaces the current one. The new selection automatically becomes the default library. The rest of the menu contains two sets of submenus. The first set of submenus contains the symbols offered by the library. The second set contains the design patterns offered by the library. To insert a library symbol/pattern into your project, click on the Library button, move down to the desired category, and then select a symbol/pattern from the submenu of that category. If you click the cursor in the drawing pane, a symbol/pattern will be created and centered at the click position. As soon as you create the symbol/pattern, the cursor automatically switches to the standard pointer, unless you also hold down the shift key while clicking. After inserting a symbol into your project, you can cancel the insertion using the Edit:Undo command.
|
||
![]() |
Font Tool
This tool is used to define the font attributes of one or more drawables. To use it, select the drawables you want to affect, and click on the tool. A dialog is displayed for selecting the desired font attributes.
![]() Select the desired attributes and press the OK button to confirm your selection, or the Cancel button to cancel them. Confirming your changes will apply the font attributes to the selected drawables. You can cancel this operation using the Edit:Undo command. You can specify your default font attributes by choosing from this dialog when no drawables are selected. The default font attributes are: Font = ArialThey are used for text primitives when they are created. The default font attributes do not apply to link, place, and tag drawables.
|
||
![]() |
Fill Color Tool
This tool is used to define the fill color of one or more drawables. To use it, select the drawables you want to color, and click on the arrow to the right of the tool. A menu of colors appears.
![]() Select the desired color. The interior of the selected drawables will be filled with the selected color. There are a number of special options in this menu:
|
||
![]() |
Line Color Tool
This tool is used to define the line color of one or more drawables. To use it, select the drawables you want to color, and click on the arrow to the right of the tool. A menu of colors appears.
![]() Select the desired color. The boundary of the selected drawables will be drawn with the selected color. The structure of this menu is identical to the fill menu. You can cancel this operation using the Edit:Undo command. You can select a default line color by choosing a color from this menu when no drawables are selected. The default line color is initially black and defines the boundary color of primitives when they are created. The default line color does not apply to link, place, and tag drawables.
|
||
![]() |
Line Style Tool
This tool is used to define the line style of one or more drawables. To use it, select the drawables you want to affect, and click on the arrow to the right of the tool. A menu of line styles appears.
![]() Select the desired line style. The boundary of the selected drawables will be drawn with the selected line style. You can cancel this operation using the Edit:Undo command. You can select a default line style by choosing a line style from this menu when no drawables are selected. The default line style is initially a thin solid line (i.e., the fifth row in the menu) and defines the boundary line style of primitives when they are created. The default line style does not apply to link, place, and tag drawables.
|
||
![]() |
Normal Links
This command is equivalent to Looks:Normal Links.
|
||
![]() |
Step Links
This command is equivalent to Looks:Step Links.
|
||
![]() |
Curve Links
This command is equivalent to Looks:Curve Links.
|
||
![]() |
Annotation
This command is equivalent to Looks:Annotation.
|
|
Link Tools
A set of 10 primary link tools are provided by your template. Each of these appears as a button in the custom toolbar. If a link tool has stereotypes, these will appear in a popup menu when you position the cursor over the link’s button, so that you can select them. If you select a stereotype from one of these popups, the toolbar button will change to that of the stereotype, until you select the pointer tool again. A link is used to connect two places. Each link has a source (the place at which is starts) and a destination (the place at which it ends). To create a link, select the desired link tool, position the cursor inside the source place, hold the mouse button down, drag to the destination place, and release the mouse button. This creates a straight link. You can also create a polyline link (i.e., a link with intermediate points). You can do this in two ways:
You can edit the properties of a link by double-clicking it, or selecting the link and choosing Edit:Properties. You can cancel an operation that defines or affects a link using the Edit:Undo command.
|
|
![]() |
Extra Link Tools Menu
This button appears to the right of the link tools and provides a popup menu of extra link tools. Any additional link tools (over and above the 10 primary link tools and their stereotypes) defined by the template will appear in this menu. The extra link tools appear in the first row of the popup, and their stereotypes (if any) appear vertically below them. If you select a tool or stereotype from the extra menu, the menu’s button will change to that of the selected tool/stereotype, until you select the pointer tool again.
|
![]() |
Place Tools
A set of 14 primary place tools are provided by your template. Each of these appears as a button in the custom toolbar. If a place tool has stereotypes, these will appear in a popup menu when you position the cursor over the place’s button, so that you can select them. If you select a stereotype from one of these popups, the toolbar button will change to that of the stereotype, until you select the pointer tool again. A place is used to describe an entity (e.g., a class, an object, a state). Each place has an associated master which describes it. The same master may be shared by more than one place of the same kind. To create a place, select the desired place tool and click in the drawing pane. The place will be created and centered on the clicked point. You can now enter the place name by clicking on it and typing the name. The name automatically binds the place to its master. The master appears in the lister page of the info pane. You can edit the properties of a place by double-clicking it, or selecting the place and choosing Edit:Properties. You can cancel an operation that defines or affects a place using the Edit:Undo command.
|
![]() |
Extra Place Tools Menu
This button appears to the right of the place tools and provides a popup menu of extra place tools. Any additional place tools (over and above the 14 primary place tools and their stereotypes) defined by the template will appear in this menu. The extra place tools appear in the first row of the popup, and their stereotypes (if any) appear vertically below them. If you select a tool or stereotype from the extra menu, the menu’s button will change to that of the selected tool/stereotype, until you select the pointer tool again.
|
![]() |
Tool Design Edit
This command activates the tool design edit mode for editing the design of a custom tool. Each custom tool is defined in the template as a set of primitives. This is called the tool model and can be edited in the same way as a custom model. To edit a custom tool, select the tool by pressing its icon in the custom toolbar, then press this icon. If you do not select a tool before pressing this icon, the first link tool in the list will be assumed. When the tool design edit mode is activated, the tool model for the nominated tool is located and activated. This model is displayed in the drawing pane (in the same way as custom models) so that you can edit it. You can only use primitive drawables in a tool model. No tags, links, or places are allowed. For ease of editing, a tool model is a 400% enlarged version of the tool design. This enlargement is independent of the zoom facility. The actual (i.e., default) size for the drawable created by the tool is displayed in the locater page of the info pane. You can modify the default size by dragging the knob that appears at the bottom-right corner of the tool in the locater page. You can edit the tool properties (e.g., to rename the tool) by double-clicking the tool model’s icon in the explorer tree, or by choosing Edit:Properties. Please note that any tool design modifications you make will not be saved to the notation template until you do File:Save Template.
|
|
Tool Icon Edit
This command activates the tool icon edit mode for editing the icon of a custom tool. Each tool icon is defined as a color bitmap. To edit a tool icon, select the tool by pressing its icon in the custom toolbar, then press this icon. If you do not select a tool before pressing this icon, the first link tool in the list will be assumed. When the tool icon edit mode is activated, the tool icon is displayed in the drawing pane so that you can edit it. For ease of editing, a tool icon bitmap is displayed as a 10-times enlarged version of the actual icon bitmap. The actual size of the icon is displayed in the locater page of the info pane. You can only use the following primitive drawables to edit a tool icon bitmap:
Tip: Pixels that are painted with the penultimate color in the color menus (i.e., the one drawn like a pixel grid) will become transparent. You should paint all the background pixels in a tool icon using this color so that they match the rest of the toolbar. Tip: If you hold down the control key while drawing using any of the primitive tools, all the affected pixels will become transparent, regardless of the pen and fill color option currently selected. Your changes to a tool icon are reflected in the toolbar as soon as you switch to another custom tool, or to another mode. You can undo your changes as usual using the Edit:Undo command. Please note that any tool icon modifications you make will not be saved to the notation template until you do File:Save Template.
|
|
![]() |
Model Edit
This command activates the normal model edit mode (this is the default mode). It automatically reactivates the last active custom model prior to changing the edit mode.
|
![]() |
This is the default cursor. It appears when the pointer tool is selected and the mouse pointer is positioned on no drawable. |
![]() |
This cursor appears when a place tool is selected from the custom toolbar and the mouse pointer is positioned in the drawing pane. |
![]() |
This cursor appears when a library symbol/pattern is selected from the library menu and the mouse pointer is positioned in the drawing pane. |
![]() |
This cursor appears when a master is dragged from the lister pane to be dropped into the drawing pane. |
![]() |
This cursor appears when an object is being dragged for dropping elsewhere, but the target pane cannot receive it. |
![]() |
This cursor appears when a link tool is selected from the custom toolbar and the mouse pointer is positioned in the drawing pane. |
![]() |
This cursor appears when a link tool is selected and the mouse pointer is positioned over a source place. It indicates that if you click and drag, the link will originate from this place. |
![]() |
This cursor appears when a link is partially created and the mouse pointer is positioned over a target place. It indicates that if you release the mouse button (or click) the link will be completed and connected to the target place. |
![]() |
This cursor appears when the message tool is selected and the mouse pointer is positioned in the drawing pane. |
![]() |
This cursor appears when the message tool is selected and the mouse pointer is positioned over a link. It indicates that clicking the mouse button will create a message and attach it to the link. |
![]() |
This cursor appears when the junction tool is selected and the mouse pointer is positioned in the drawing pane. |
![]() |
This cursor appears when the junction tool is selected and the mouse pointer is positioned on the border of a place. It indicates that clicking the mouse button will create a junction and attach it to the place. |
![]() |
This cursor appears when the Arrange:Renumber Messages command is activated and the control or the shift key is held down. It indicates that clicking the mouse button on a message will set the renumbering sequence to the message’s current number. |
![]() |
This cursor appears when the Arrange:Renumber Messages command is activated. It indicates that clicking the mouse button on a message will renumber the message according to the renumbering sequence. |
![]() |
This cursor appears when the mouse pointer is positioned over a drawable. It indicates that if you hold down the mouse button and drag, the selected drawables will be repositioned accordingly. |
![]() |
This cursor appears when the mouse pointer is positioned over a member of a group drawable. It indicates that if you hold down the mouse button and drag, the selected members will be repositioned accordingly. |
![]() |
This cursor appears when the mouse pointer is positioned over a junction of a place or on a call-box in a sequence diagram. It indicates that if you hold down the mouse button and drag, the junction or call-box will be repositioned accordingly. |
![]() |
This cursor appears when the mouse pointer is positioned on a selected drawable’s knob. It indicates that if you hold down the mouse button and drag, the drawable will be modified/resized accordingly. |
![]() |
This cursor appears when the mouse pointer is positioned on a vertical border of a swimlane. It indicates that if you hold down the mouse button and drag, the swimlane border will be adjusted accordingly. |
![]() |
This cursor appears when the mouse pointer is positioned on a horizontal border of a call-box in a sequence diagram. It indicates that if you hold down the mouse button and drag, the call-box border will be adjusted accordingly. |
![]() |
This cursor appears when the mouse pointer is positioned over an area of a drawable that may contain text. It indicates that if you click the mouse button, you can start editing the text. |
![]() |
This cursor appears when the mouse pointer is positioned on the refinement hyper link of a place (a small yellow box appearing at the bottom right corner of a place that has a submodel). It indicates that if you click the mouse button, the place submodel will be displayed instead (i.e., explodes the view). |
![]() |
This cursor appears when a submodel is the current model, the control key is pressed, and the mouse pointer is positioned on no drawable. It indicates that if you click the mouse button, the parent model will be displayed instead (i.e., implodes the view). |
![]() |
This cursor appears when the mouse pointer is positioned on a textual hyper link text within a place, link, or message. It indicates that if you click the mouse button, the hyper link will be activated. Depending on what the link is, an appropriate application is launched to show the link. For example, for a URL link, the default web browser is launched, and for a document, the application associated with that document is launched. |
![]() |
This cursor appears when the polyline tool is selected in the Icon Edit Mode and the mouse pointer is positioned in the drawing pane. It indicates that if you click and/or drag, the pixels under the mouse pointer will be painted with the current line color. |
![]() |
This cursor appears in three situations:
|
In addition to its commands, the File menu provides a list of most-recently saved projects. These appear at the bottom of the menu, before the Exit command. Selecting a project from this list causes it to be opened immediately in a separate window.

Every project requires a template. The template defines the notation that the project will use. The available templates are best kept in a separate folder. The name of this folder appears above the list in the dialog box. You can set the path to this folder using Tools:Options.
A special template (called <Internal>) always appears at the top of the list. This template is hard-coded into UMLStudio and is always available. All other templates are user-defined.
To nominate a template, click on it to select it and then press the OK button. Alternatively, double-click the template in the list. The dialog will disappear and a new project window will be displayed, based on the selected template.
Pressing the Cancel button will dismiss the dialog and cancel the New command.

To open a project, browse to its folder, click on the file to select it, and then press the OK button. Alternatively, double-click the file. The dialog will disappear and the selected project will be displayed in a separate window. UMLStudio will automatically locate and use the template upon which the project is based. If the template cannot be located the user will be prompted and asked to nominate a template manually.
Pressing the Cancel button will dismiss the dialog and cancel the Open command.
Use reference projects to make your centrally stored classes (e.g., your corporate object model) available to other projects. The names of all classes in the currently open reference project is added to the Type and Container boxes in various dialogs.

The window title includes the user who is connected to UMLServer and his/her access rights. The latter consists of four letters:
The browser window is divided into two panes. The left pane displays the hierarchy of projects and folders in the repository. The root of this hierarchy is always a folder named Root. Each folder may contain sub-folders or projects. When you select a node in this hierarchy, its contents is displayed in the right pane.
The right pane provides a tabular view of the contents of a folder or project. When a folder of projects is selected in the left pane, the right pane lists the attributes of the latest version of each project in the folder. When a project is selected in the left pane, the right pane lists the attributes of each version of the project. In both cases, the following attributes are listed from left to right:

When checking in a new project, you need to make sure that you have selected the desired target folder in the left pane. However, when checking in a new version of an existing project, you don’t need to have its target folder/project selected. The correct position is encoded in the project file and will be used by UMLServer.

To change the default target folder, press the Into Folder button and browse to the desired folder. If you tick the Check Out As Read Only check box, the checked out project will not be editable (i.e., good for viewing only). If you tick the Open Checked Out Project, the project is opened in UMLStudio as soon as it is checked.

To save the project into an existing project file, browse to its folder, click on the file to select it, and then press the Save button. Alternatively, double-click the file. To save the project under a new name, type the new name in the File name box and press the Save button.
The dialog will disappear and the project will be saved to the specified file. If the file already exists, the user will be prompted to confirm overwriting it. Saving a project will not save any changes to its template. A separate command (File:Save Template) is used for this purpose. Pressing the Cancel button will dismiss the dialog and cancel the Save As command.

Browse to the location where you want the file to be saved.
The File name field defaults to the model name. The Save as type combo provides you with three image file format options to choose from: bitmap, JPEG, and PNG.

To save the template into an existing template file, browse to its folder, click on the file to select it, and then press the Save button. Alternatively, double-click the file. To save the template under a new name, type the new name in the File name box and press the Save button.
The dialog will disappear and the template will be saved to the specified file. If the file already exists, the user will be prompted to confirm overwriting it. If the template is saved under a new name, the project will be based on the new template from now on.
Pressing the Cancel button will dismiss the dialog and cancel the Save Template command.

As soon as the template is switched, all the models in the project will be automatically updated to conform to the notation of the new template.
Use this command to instantly change the notation in which your project is expressed.

The top part of the dialog is the same as the standard Windows print dialog and is used for selecting the printer and setting its properties. The bottom part is specific to UMLStudio.
The Print What group is used for nominating what should be printed. Choose Models if you want to print model diagrams, Model Tree if you want to print a summary of the model tree hierarchy, or Notation Template if you want to print the full description of the notation template for the current project. The default choice is Models.
The Print Scope group is used for controlling the scope of printing. This group is only applicable to the Models group. Choose This Model if you want only information contained by the current model to be printed, This Model & Submodels if you want all the submodels of the current model to be also included, or All Models if you want information contained by all models to be printed. The default choice is This Model.
Copies controls the number of physical hard-copies produced. Select the Fit Model to Page option if you want each printed model diagram to be scaled to fit on a single page. Select the Print Footer option if you want each printed page to have a footer which names the project and the printed information and provides a serial page number.
After setting the desired options, press the OK button to commence printing, or Cancel to cancel it. Pressing OK will cause all changes to the dialog box to be stored in UMLStudio’s profile and remembered, independent of the current project.

The size of the page affects the drawing pane of the project window. The canvas within the drawing pane is organized as a matrix of pages specified by this dialog.
These commands typically apply to the currently selected objects in the drawing pane, the explorer pane, or the info pane.
Each project tracks the undoing of its own operations. Therefore, operations applied to one project will not affect the undoing of operations applied to other simultaneously open projects.
Cut applies to the selected objects in the currently active pane according to the following table.
| Active Pane | Effect of Cut |
| Drawing Pane | Moves to the clipboard the selected drawables in the current model. Cutting a place drawable
causes its master to be copied to the clipboard as well (including any submodel hierarchy it may have).
The master is not removed from the project, unless there are no remaining references to it (i.e., its reference
count becomes zero).
Cutting a place drawable causes all links and tags connected to it to be removed as well, even if they are not selected. These links and tags are not moved to the clipboard, unless they are also selected. If the drawing pane is in icon edit mode, cut moves the icon to the clipboard. This causes the icon to be cleared (i.e., all pixels set to the background color).
|
| Explorer Pane | Moves to the clipboard the selected custom model (including any submodel hierarchy it may have) in the tree.
Cut is dimmed when the currently selected tree node is not a custom model (e.g., a tool model, a folder, or a
text file). UMLStudio always asks the user to confirm that they wish to cut a model.
|
| Info Pane | Cut only applies to the lister tab. It moves to the clipboard the currently selected masters that have a
reference count of zero. Masters with a non-zero reference count are not removed from the project.
|
You can cancel the effect of Cut using the Edit:Undo command. This causes the cut objects to be restored in the project, but a copy of them will remain on the clipboard.
Cut, Copy, and Paste use a private clipboard within UMLStudio, so that the complex structure of the data can be readily understood. They also use the system clipboard so that drawings can be pasted to other Windows applications. For example, if you copy or cut a UMLStudio model (or the drawables in it), you can paste it to a Microsoft Word document using the Word paste command.
Paste attempts to intelligently transfer as much data as it can to the most appropriate location in the project. The data need not have originated from the same location. For example, if you copy a place drawable from the drawing pane of a project, you can paste it to the info pane of another project. In this case, if there is no active model, only the place master is pasted.
As of version 4.1, when you paste a model in the explorer pane, the model will appear as the child of the currently-selected model (if any); otherwise, it will appear as a top-level model.
You can paste the contents of the clipboard to as many projects and as many times as you wish.
You can cancel the effect of Paste using the Edit:Undo command. This causes the pasted objects to be removed from the project, but will not affect the clipboard.
Use this command to find out which of the place drawables have submodels.
Use this command when you want to perform an operation on all the drawables in a model (e.g., drag or delete them).

The Search Criteria tab is used for specifying the search parameters. Type the string you want to search for in the Find combo box, or simply select a string from the combo box’s list of previously entered search strings.
To restrict the search to object names, select the Search Name Only option. To require a case-sensitive search, select the Match Case option. To require the search string to match whole words, select the Match Whole Words Only option.
To find the next match in the project, press the Find Next button. To reverse the order of the search, press the Find Previous button. When a match is found, UMLStudio automatically browses to it. For example, if the matched object is a link in a model, the model is activated and the link is brought to view in the drawing pane.
To find all occurrences of the search string in the project, press the Find All button. This causes the Match List tab to be activated to display the list of matched objects.

Each line in the match list refers to an object. A string may match the same object more than once (e.g., against its name and its attributes). The number of matches against each object is also displayed in the list. To browse to a matched object, simply double-click its row in the match list.
Pressing the Close button dismisses the dialog box and saves any changes to the search criteria in UMLStudio’s profile.

Type the string you want to replace your search string in the Replace combo box, or simply select a string from the combo box’s list of previously entered replace strings. The replace string can be optionally empty.
Having found a match for the search string (e.g., by pressing the Find button), press the Replace button to replace this string with the one you have provided. As soon as performing the replace, UMLStudio implicitly searches for the next occurrence of the string and brings it to view for you to decide if you want to replace it as well, etc.
To replace every occurrence of the search string, press the Replace All button. This causes the Match List tab to be activated to display the list of all matched objects that have been replaced.

Each line in the match list refers to an object. To browse to a matched object, simply double-click its row in the match list.
Pressing the Close button dismisses the dialog box and saves any changes to the replace criteria in UMLStudio’s profile.
The contents of the property sheet depends on the type of the selected object, which may be one of the following:
After confirming the changes to an object’s properties, you can cancel these changes using the Edit:Undo command.The model property sheet consists of one property page (called General).

The name of the model appears in the Name combo box. To change it, type a new name or choose a name from the combo box’s list of previously entered names. The Kind combo box denotes the kind of the model (custom or tool). Since the kind of a model cannot be changed, this combo box is disabled. The Semantics combo box defines the semantics of a tool model. This combo only applies to tool models (not to custom models). The Comment box is used to enter a verbal description of the model.
The Access group is used for specifying the model access permissions. This defaults to Public.
Selecting the Gen Code option causes this model to be considered in the code generation process (see Tools:Generate Code). For a tool model, this option determines the default value of the same option for objects created using that tool.
For a tool model, an Auto Size option also appears. This option is of significance for link/place tools that contain an editable text box. Choosing this option causes the size of a place (or the text box of a link) to be automatically adjusted to tightly enclose the text within it when the text is edited. It also enforces the text to appear as a single line.
Pressing the OK button saves the changes to the property sheet and closes it. Pressing the Cancel button dismisses the property sheet and ignores all changes to it.
UMLStudio only allows one property sheet to be displayed at any time. If you request the property sheet of another object while one is already open, the existing property sheet will be used to display the properties of the next object. Any changes to the properties of the previous object will be implicitly saved beforehand.
The diagram type property sheet consists of two property pages (called General and Tools).

The Access group specifies the default access rights for a model of this type.
The Gen Code, Step Link, and Curve Link options determine the default values of the corresponding properties for a model of this type.
For example, given the diagram type State Diagram, if Access is set to Protected and Curve Link is ticked, then any new state diagram model will default to Protected and Curve Link.
The Supported Diagram option determines if this diagram type is to be supported by the current notation template. If you untick this option, then the notation template will not allow the user to create models of this diagram type.
The Tools property page lists the tools supported by the diagram type. It consists of two lists:

A list row that has an Lnn prefix means that the row represents a link tool (e.g., L02 represents the second link tool in the template). Similarly, a list row that has a Pnn prefix means that the row represents a place tool (e.g., P03 represents the third place tool in the template).
You can move tools between the two lists by selecting them and pressing the << and >> buttons. Pressing the <<All and All>> buttons cause entire lists to be moved.
For a master whose tool has semantics other than Class, the property sheet consists of one property page:

For a master whose tool has Class semantics, the property sheet consists of five property pages:

The OK and Cancel button appear in all pages and apply to the whole property sheet (not just the current page): pressing OK will save the changes to all pages, pressing Cancel will cancel the changes to all pages.
The General property page is similar to the general page of a model property sheet except for the following fields.

When the class is a parameterized class, this button is called Pars instead and displays a similar dialog for specifying the class's parameters.

Class parameters follow the rules of C++ for template class parameters. In most cases, you only need to specify a parameter's name.

The list of attributes currently defined for the master appears at the bottom of the Attributes page. Each row in this list provides a summary of an attribute in the format:
CheckBox Flags ClassName::AttributeName : AttributeType x CardinalityBoth the attributes for this class and all the base classes are displayed. However, the base class attributes are read-only and cannot be modified in this dialog. These rows are dimmed and will not be selected if you click on them. However, you can use the up/down arrow keys to switch focus to dimmed rows so that you can view their details in the rest of the dialog.
The last item in the list, <New>, is used for creating a new attribute.
To view the definition of an attribute, select its row in the list. This will cause the attribute definition to be loaded into the remaining fields of the page. You can now modify any of these fields and then press the Add button to save your changes.
The Name combo box contains the name of the attribute. Every attribute must be named. The Type combo box contains the type of the attribute. This is optional and if not provided, the int type will be assumed (if applicable to the code generation language). The box to the right of the Type combo specifies the cardinality of the attribute. This is also optional and if not provided, a cardinality of 1 will be assumed.
The Container combo box provides an optional container class for the attribute when its cardinality is greater than 1. The Value box specifies an optional initial value for the attribute. The Comment box provides a verbal description of the attribute.
The Access group is used to specify the access permissions for the attribute (it defaults to Private).
The Modes group consists of 7 options and is used to further qualify the attribute. Select the Constant option if the attribute is a constant (i.e., has an unchangeable value). Constant attributes require an initial value. Select the Static option if the attribute is static (i.e., shared by all instances of objects of this master). Select the Get/Set option if you want the code generation process to generate ‘Get’ and ‘Set’ methods for accessing this attribute. Select the Annotate option if you want the attribute to be displayed within the place. Select the Final option if the attribute is final (i.e., readonly). Select the Volatile option is the attribute is volatile (as in Java). Select the Transient option is the attribute is transient (as in Java).
Select the MACRO option if the attribute is a macro. A macro provides a convenient means of recording additional information about a class that is not inherent in the class (e.g., the database table to be used for persistence). A macro can only have a name, a value, and an annotate flag.
By default, only the Annotate option is selected. The check box to the left of each row is the same as the Annotate mode, and causes the attribute to be displayed within the place.
An attribute name in the list may be preceded by one of the following flags:
You can delete an existing attribute by first selecting it in the list and then pressing the Delete button. You can copy and paste attributes between objects via the attribute list popup menu.
You can change the position of an attribute in the list (i.e., reorder the list) by selecting the attribute and pressing the Move Up or Move Down button. This will move the attribute up or down one row at a time.

The list of methods currently defined for the master appears at the bottom of the Methods page. Each row in this list provides a summary of a method in the format:
CheckBox Flags ClassName::MethodName (ParameterList) : ReturnValue +Exception +ContextBoth the methods for this class and all the base classes are displayed. However, the base class methods are read-only and cannot be modified in this dialog.
The last item in the list <New> is used for creating a new method.
To view the definition of a method, select its row in the list. This will cause the method definition to be loaded into the remaining fields of the page. You can now modify any of these fields and then press the Add button to save your changes.
The Name combo box contains the name of the method. Every method must be named. The Returns combo box contains the return type of the method. The Comment box provides a verbal description of the method.
The Access group is used to specify the access permissions for the method (it defaults to Public).
The Modes group consists of 8 options and is used to further qualify the method. Select the Constant option if the method is a constant (i.e., does not modify objects of this master). Select the Static option if the method is static (i.e., can be invoked without having an object of this master). Select the Virtual option if the method is virtual. Select the Annotate option if you want the method to be displayed within the place. Select the Final option if the method is not to be further overridden by subclasses. Select the Abstract option if the method is abstract (i.e., only defined in a subclass). Select the Synchronized option if the method is synchronized (as in Java). Select the Native option if the method has native implementation (as in Java). By default, only the Annotate option is selected.
The check box to the left of each row is the same as the Annotate mode, and causes the method to be displayed within the place.
Like an attribute, a method in the list may be preceded by -, #, or + (meaning, respectively, private, protected, and public).
You can create a new method by selecting the
You can delete an existing method by first selecting it in the list and then pressing the Delete button.
You can copy and paste methods between objects via the method list popup menu.
You can change the position of a method in the list (i.e., reorder the list) by selecting the method and
pressing the Move Up or Move Down button. This will move the method up or down one row at a time.
A method may optionally have parameters. Each parameter is used to pass data to the method and/or to return
data from it. To edit a method’s parameters press the Pars button. This will display a separate dialog
box.
The behavior of this dialog is similar to the Methods property page. The list of currently defined parameters
for the nominated method appears at the bottom of the dialog. Each row in this list provides a summary of a
parameter in the format:
The Mode group is used to specify the mode of the parameter. Select In if the parameter is used to pass a
value to the method only, Out if the parameter is used to return a value only, or In/Out if it is used for
both purposes. The default mode is In.
To save your changes to the method parameters, press the OK button. To cancel the changes, press the Cancel
button. The dialog will be dismissed and you will return to the Methods property page.
A method may also have other properties (consisting of exceptions and contexts). To edit these press the
Others button. This will display a separate dialog box.
The list of currently defined exceptions/contexts for the nominated method appears at the bottom of the dialog.
Each row in this list provides a summary of a parameter in the format:
You can also specify/view code for a method. To do this, press the Code button. A separate window
will be opened to display the code. Any changes you make to a method's code will be remembered.
The list of types currently defined for the master appears at the bottom of the Types page. Each row in
this list provides a summary of a type in the format:
The last item in the list <New> is used for creating a new type.
To view the definition of a type, select its row in the list. This will cause the type definition to be
loaded into the remaining fields of the page. You can now modify any of these fields and then press the Add
button to save your changes.
The Name combo box contains the name of the type. Every type must be named. The Definition
field is enabled for Simple types, and may be used to enter the definition of a simple type (similar to
typedef in C/C++). The Comment box provides a verbal description of the type.
The Access group is used to specify the access permissions for the type (it defaults to Public).
The Kind group allows you to categorize a type as Simple, Enum (i.e., enumeration), or Structure.
The check box to the left of each row is the same as the Annotate mode, and causes the type to
be displayed within the place.
Like an attribute, a type in the list may be preceded
by -, #, or + (meaning, respectively, private, protected, and public).
You can create a new type by selecting the
You can delete an existing type by first selecting it in the list and then pressing the Delete button.
You can copy and paste types between objects via the type list popup menu.
You can change the position of a type in the list (i.e., reorder the list) by selecting the type and
pressing the Move Up or Move Down button. This will move the type up or down one row at a time.
Enum and Structure types may optionally have elements.
To edit a type’s elements press the Elements button. This will display a separate dialog
box.
The behavior of this dialog is similar to the Types property page. The list of currently defined elements
for the nominated type appears at the bottom of the dialog. Each row in this list provides a summary of an
element in the format:
To save your changes to the type parameters, press the OK button. To cancel the changes, press the Cancel
button. The dialog will be dismissed and you will return to the Types property page.
The list of exceptions currently defined for the master appears at the bottom of the Exceptions page. Each row
in this list provides a summary of an exception in the format:
The check box to the left of each row is not selectable, because unlike attributes and methods, exceptions
are never displayed within a place.
Both the exceptions for this class and all the base classes are displayed. However, the base class exceptions are
read-only and cannot be modified in this dialog.
The last item in the list <New> is used for creating a new exception.
To view the definition of an exception, select its row in the list. This will cause the exception definition
to be loaded into the remaining fields of the page. You can now modify any of these fields and then press the
Add button to save your changes.
The Name combo box contains the name of the exception. Every exception must be named. The Comment box
provides a verbal description of the exception.
An exception may optionally have members. Each member is a typed data that further defines the exception.
To edit an exception’s members, press the Members button. This will display a separate dialog box similar to
that displayed for the parameters of a method.
The list of currently defined members
for the nominated exception appears at the bottom of the dialog. Each row in this list provides a summary of a
parameter in the format:
To save your changes to the exception members, press the OK button. To cancel the changes, press the Cancel
button. The dialog will be dismissed and you will return to the Exceptions property page.
Two additional options will also be displayed:
This property page is
similar to the model property page, except for the following fields:
The Name box is used to modify the message name. The Reverse option should be selected if you want the message
arrow to appear in the reverse direction of the link to which it is attached. The Comment box is as per
other drawables. The Link To button, combo, and the URL checkbox are the same as in the
Link Properties dialog.
The Text box is used to modify the text.
The Kind combo offers three settings:
The list of the available diagram types
comes directly from the template (i.e., is the same as that appearing inside the Diagrams subfolder of the
template folder).
To create a model, select the desired model type from the list and press the OK button. Alternatively,
double-click the desired model in the list.
If you select the As a Child of Currently-Selected Model option, the new model will appear as a child of
the current model in the Models folder in the explorer pane. Otherwise, it will be appear as a top-level
model, directly inside the Models folder.
The new model is initially empty (i.e., contains no drawables), and is automatically selected.
The name of the model defaults to Untitled n (where n is a sequential number that starts at 1).
You can cancel the effect of New using the Edit:Undo command.
A new tool model is initially empty and named Untitled. You can
design the tool by adding
drawables to it. You can change the tool name by bringing up its
property sheet and typing a new name in the Name field.
A new stereotype model is initially empty and named Untitled. You can
design the tool by adding
drawables to it. You can change the tool name by bringing up its
property sheet and typing a new name in the Name field.
It displays the same dialog box as the Model:New command, but the model tree in the
dialog also includes the existing models within the project.
If you select a model from the Analysis folder in the dialog, then a new model is created and the exploded
master is linked to it.
However, if you select a model from from the Existing Models folder in the dialog, no model is created,
but the exploded master is linked to the selected existing model.
In the former case, the created submodel appears as a child of the model which contains the selected place in the explorer pane,
and is automatically activated. The submodel is initially empty (i.e., contains no drawables). Its name
defaults to the parent master name. For example, if a place named 'Service'
inside a model named 'Architecture' is exploded into a class model, then the explorer
tree will look like this:
As a shortcut to this command, you can double-click the place while holding the control key. If the place
master has a submodel, it is activated. Otherwise, the user is prompted to confirm the creation of the submodel.
You can cancel the effect of Explode using the Edit:Undo command.
The command is dimmed when the selected drawable is not a place, when more than one drawable is selected,
or when the master of the selected place has no submodel.
As a shortcut to this command, you can double-click the place while holding the control key, or click on
the place’s refinement hyper link.
The parent model is activated. Alternatively, you can browse to the parent model (or any other model)
manually by selecting it in the explorer pane. This command is dimmed for root-level models (i.e., models
that appear directly inside the Models folder).
You can cancel the effect of Bring To Front using the Edit:Undo command.
You can cancel the effect of Send To Back using the Edit:Undo command.
To access the members of a primitive group, you should hold down the control key as you click and/or
drag the group members. You cannot drag drawables into or out of a primitive group.
You can cancel the effect of Group As Primitive using the Edit:Undo command.
If a place group is not locked, you cannot drag drawables into or out of it.
You can cancel the effect of Group As Place using the Edit:Undo command.
You can cancel the effect of Ungroup using the Edit:Undo command.
You can cancel the effect of Flip Horizontal using the Edit:Undo command.
You can cancel the effect of Flip Vertical using the Edit:Undo command.
You can cancel the effect of Rotate Left using the Edit:Undo command.
You can cancel the effect of Rotate Right using the Edit:Undo command.
The Horizontal group is used for repositioning along the x-axis. The Vertical group is used for repositioning
along the y-axis. Both groups default to the None option (i.e., no repositioning). Choose one of the Align
options to align the sides or the centers of the selected drawables. Choose Space Evenly to force a uniform
gap between the drawables. Choose Same Width or Same Height to force the drawables to have the same size.
After making your selections, press the OK button for the repositioning to take place, or the Cancel button
to cancel the command.
You can cancel the effect of Reposition using the Edit:Undo command.
The command behaves as a toggle flag. When you select it, the number parts of all the messages in the
current model are highlighted. Each time you click on a message, that message is sequentially renumbered
(starting with 1). If you choose the command again, or click in a blank area or on a non-message, the
messages are de-highlighted.
If you want to only renumber a few of the messages in a model, you can start the renumbering sequence
at a number other than 1. To start the sequence at n, hold the shift or control key down,
click on a message that has the sequence number n, and then release the shift/control key.
Subsequent clicks will renumber messages to n+1, etc.
You can cancel the effect of Fill Color using the Edit:Undo command.
You can cancel the effect of Line Color using the Edit:Undo command.
You can cancel the effect of Line Style using the Edit:Undo command.
You can cancel the effect of Font using the Edit:Undo command.
You can cancel the effect of Normal Links using the Edit:Undo command.
You can cancel the effect of Step Links using the Edit:Undo command.
You can cancel the effect of Curve Links using the Edit:Undo command.
You can cancel the effect of Annotation using the Edit:Undo command.
You can cancel the effect of Apply Template using the Edit:Undo command.
The Scope group specifies the objects/models for which code should be generated. If you select Selected
Objects, code will be generated for the currently-selected objects in the current model only. Select
Current Model if you want to generate code for the current model only (excluding any submodels it may have).
Select All Models to generate code for the entire project. The default selection is Current Model.
The Script to Run combo box specifies the code generation script to be used. This combo box is populated
with the scripts located inside the Scripts\CodeGen subfolder in the explorer pane (see Tools:Options):
The box to the right of the Target Folder button specifies the target folder for code generation. All
generated code files will be placed in this folder. You can either type the folder name directly into the
box, or press the Target Folder button to browse to the desired folder. The latter will display the standard
Windows dialog for opening files to facilitate the browsing.
Similarly, the box to the right of the Target File button specifies the target file for code generation.
However, because code is usually generated in a number of files, most code generation scripts ignore this
field, and derive the file names from the master names.
The Generation Options box list the options exposed by the selected script. Each option has a tick
box next to it which can be used to select the option. An option may be of one of the following categories:
To start generating code, press the Run button. The dialog will disappear and code will be generated and
stored in appropriate files. A trace of code generation will be displayed in the log window . The log window
will be displayed automatically if the Show Log Window Automatically option has been selected in the
Tools:Options dialog.
The code generation parameters will be remembered for your project. However, if you dismiss the dialog by
pressing the Cancel button, your changes to the parameters will be ignored.
No import scripts are provided in this version.
No export scripts are provided in this version.
The Language combo box specifies the source programming language (defaults to C++).
It lists all the languages for which there is hard-code reverse engineering support, plus all
the languages for which reverese engineering scripts have been provided (in the Scripts/RevEng/ folder).
The Options group lists all the available options for the selected language. For script-based languages,
the options are specified by the script.
Selecting the Show All Attribute/Method Annotations option causes all the attributes/methods for the generated
places to be displayed within them.
If the Show Relationships Graphically option is not selected, then only inheritance and implementation
relationships are shown. Otherwise, composition and aggregation relationships are also displayed.
Selecting the Keep Method Code option causes the code for each parsed class method to be included
in the model. This code can then be viewed by pressing the Code button in the
Method Properties tab page.
If the Record File Names in Generated Classes opion is selected, then for each generated class,
its source file name is recorded in the class’s File Name property.
The Source Files list box is used for displaying the currently-selected program code files to be used for
reverse engineering.
To add more files to this list, press the Add Files button. This will display the standard Windows Open
dialog box for nominating one or more files. Select the files you want and press the Open button.
The Files of type combo in this dialog allow you to select the type of files you want displayed in the dialog.
If there is a file type not catered for, you can explicitly specify it in the File name field. For example,
if you want to view all .hh files, type *.hh in the File name field and press enter.
If you have a folder hierarchy of files that you want to reverse engineer, use the Recursive Add
button. This will display the standard Windows Open dialog box for nominating a folder. The files
in the nominated folder (and all its subfolders, etc.) that match the nominated language will be
added to the list.
If you press the Auto Select button, then the file name recorded against each class in the
current model is added to files list box. This provides a convenient means of repeating reverse engineering.
Before you reverse engineer, select the Record File Names in Generated Classes opion, and
next time, you only need to press this button to have the same files selected.
To drop files from the list, first select them and then press the Drop Files button.
To start the reverse engineering process, press the Reverse button. The dialog box will disappear and the
selected files will be parsed and converted to n class diagram, which is then displayed in the current model.
The log window will be displayed automatically if the Show Log Window Automatically option has been selected
in the Tools:Options dialog.
A convenient shortcut to this command is to simply double-click the file icon in the explorer pane.
The General tab page contains a list of simple options:
Pressing the OK button saves the changes to all pages of the dialog and closes the dialog. Pressing the
Cancel button dismisses the dialog and ignores all changes to it.
The Locations tab page displays a list of edit boxes for specifying the location of a number of
important files/folders used by UMLStudio.
The box to the right of the Notation Folder button specifies the folder in which UMLStudio will look for
notation templates. You can change this folder either by typing the new path directly into the box, or by
pressing the Notation Folder button to browse to the desired folder.
The box to the right of the Default Notation button specifies the default notation template (to be used for
creating a new project when UMLStudio is first launched). You can change the default notation by pressing
the Default Notation button to browse to the desired notation template file.
The box to the right of the Script Folder button specifies the folder in which UMLStudio will look for
scripts (in CodeGen, DocGen, and Other subfolders of the explorer pane).
You can change this folder either by typing the
new path directly into the box, or by pressing the Script Folder button to browse to the desired folder.
The box to the right of the Default Library button specifies the default library project (to be automatically
loaded when the application is launched). You can change the default library by pressing the Default Library
button to browse to the desired library file.
The box to the right of the Default Ref. Proj. button specifies the default reference project (to be automatically
loaded when the application is launched). You can change the default reference project by pressing the Default Ref. Proj.
button to browse to the desired project file.
The box to the right of the Repos. Cache button specifies the path for the repository cache file.
When you use UMLServer, this file stores temporary information about the repository.
If you run UMLStudio from a LAN server, then you might want to change the path of this file to avoid
write permission problems on the server.
The Viewers tab page is used for specifying applications for viewing files according to their types.
These viewers are used when you double-click a file in the explorer pane, or select it and choose
Tools:Open File Separately.
The list of currently-defined viewers is displayed at the bottom of the tab page. Each row in the list is
of the general format:
You can delete an existing viewer by first selecting it in the list and then pressing the Delete button.
You can change the position of a viewer in the list (i.e., reorder the list) by selecting the viewer and
pressing the Move Up or Move Down button. This will move the viewer up or down one row at a time.
The Extension field specifies a file extension.
The field to the right of the Viewer button specifies the full path of the viewer application. You can either
type the path name, or press the Viewer button and browse to the viewer application.
You can configure your license as a Stand-alone License or Floating License by choosing the
relevant radio button.
If you choose to configure as a stand-alone license, you can enter the license details into the top
part of the dialog and press OK.
If you choose to configure as a floating license, you must first install UMLServer and
enter the license details into the license dialog of UMLServer. Then you can enter
the floating license information into the above dialog:
You can run UMLServer and UMLStudio on the same PC.
In this case, you can press the Default Settings button for the fields to be automatically set.
Please note that under the floating license option, you need to make sure that exactly one instance
of UMLServer is running on the nominated host when you run UMLStudio.
As soon as it is launched, UMLStudio contacts UMLServer
to verify the license details. If UMLServer is not running at the time, or
if the verification fails, or if the maximum number of clients (as specified by license quantity) is
reached, UMLServer will run in freeware mode instead.
See the UMLServer documentation for further details.
The popup menu provides commands that are already available in the pull-down menus, and serves as a convenience.
Copyright © 1996-2009 PragSoft Corporation (www.pragsoft.com)

ParameterName : ParameterType
All parameters must be named. A parameter may optionally have a default value. This is provided in the Value
box.

Exception : ExceptionName
The Kind group is used to specify the kind of a property. Select Exception if the property denotes an
exception that the method can raise, or Context if the property specifies a context name for the method.
or
Context : ContextName
Master Types
The Types property page is used for defining or changing the types defined by the master.

CheckBox Flags ClassName::TypeName : Definition
Both the types for this class and all the base classes are displayed. However, the base class types are
read-only and cannot be modified in this dialog.

ElementName : ElementType
All elements must be named. An element may optionally have a default value. This is provided in the Value
box.
Master Exceptions
Finally, the Exceptions property page is used for defining or changing the master’s exceptions. An exception
denotes an error that may be raised by the methods defined in the master.

CheckBox ClassName::ExceptionName {MemberList}

MemberName : MemberType
All members must be named. A member may optionally have a default value. This is provided in the Value
box.
List Popup Menu
Each of the lists in the Attributes, Methods, and Exceptions tab pages has an associated popup menu that
can be activated by pressing the right mouse button. This menu provides four commands:
Drawable Properties
To display the properties of a drawable, select the drawable in the drawing pane and select Edit:Properties.
Alternatively, double-click the drawable. If the property sheet is already displayed then simply selecting
the drawable will be sufficient. In this way, you can quickly switch from the properties of one drawable to
another. You can view the properties of places, links, and text primitives. Other drawables have no properties.
Place Properties
If the selected drawable is a place then the master properties for that place will be
displayed instead.

Link Properties
If the selected drawable in a link then the link property sheet will be displayed.

Message Properties
If the selected drawable is a message primitive then the message property sheet will be displayed.

Text Properties
If the selected drawable is a text primitive then the text property sheet will be displayed.

The Editable option should be selected if you want the user to be
able to interactively modify the text in the drawable pane (it defaults to selected). This option is usually
used for a text primitive appearing in a tool model. Making the text editable means that the text will be
interactively editable in drawables created with that tool. Otherwise, the text will be static (i.e.,
unchangeable).
Edit : Clear Combo Histories
The combo boxes in the various dialog boxes are designed to remember the last few data items entered by
the user. This is called a combo history and provides a convenient means for the user to save time by
selecting frequently used data items from a combo’s list box. This command allows you to clear all
such histories.
The View Menu
The View menu provides commands for managing the presentation of the project information, especially in
the drawing pane. These commands do not affect the information stored in the project file.
View : Zoom In
This command is used to zoom into the drawing pane. It causes the drawing displayed inside the drawing pane
to be enlarged by 10%. You can zoom in up to 400% the actual size.
View : Normal Size
This command restores the zoom level for the drawing pane to 100% (i.e., the actual size).
View : Zoom Out
This command is used to zoom out of the drawing pane. It causes the drawing displayed inside the drawing pane
to be shrunk by 10%. You can zoom out down to 20% the actual size.
View : Pan to Selected
This command is used to bring one or more selected drawables in the drawing pane to view. It automatically
scrolls the drawing so that the selected drawables are centered in the drawing pane.
View : Show Page Breaks
This command toggles to show/hide the page breaks in the drawing pane. For a large drawing consisting of more
than one page, showing the page breaks enables you to see the page boundaries in the drawing. These boundaries
are displayed as grey lines. It defaults to show page breaks.
View : Show Namespaces
This command toggles to show/hide the namespace of masters in the drawing pane.
When ticked, it causes the namespace of each master to be prepended to its name (but separated with a dot).
It defaults to hide namespaces.
View : Show Roles/Cardinalities
This command toggles to show/hide the roles/cardinalities of the links in the drawing pane. If your drawing
is too complicated and cluttered, hiding the link roles/cardinalities will help make it clearer. It defaults
to show roles/cardinalities.
View : Show Hyper Links
This command toggles to show/hide hyper links.
View : Highlight Groups
This command toggles to highlight/de-highlight group drawables. If a group drawable has no visible boundary,
highlighting the groups will help make the group boundaries clear. It defaults to highlight groups.
View : Main Toolbar
This command toggles to show/hide UMLStudio’s main toolbar. Normally you would want to show the toolbar,
but you might want to temporarily hide it to provide more space for the drawing pane. It defaults to show
the toolbar.
View : Miscellaneous Toolbar
This command toggles to show/hide UMLStudio’s miscellaneous toolbar. Normally you would want to show the toolbar,
but you might want to temporarily hide it to provide more space for the drawing pane. It defaults to show
the toolbar.
View : Custom Toolbar
This command toggles to show/hide UMLStudio’s custom toolbar (containing the link and place tools).
Normally you would want to show the toolbar, but you might want to temporarily hide it to provide more space
for the drawing pane. It defaults to show the toolbar.
View : Status Bar
This command toggles to show/hide UMLStudio’s status bar, which displays information about your current
actions at the bottom of the application window. Normally you would want to show the status bar, but you
might want to temporarily hide it to provide more space for the drawing pane. It defaults to show the status
bar.
View : Log Window
This command toggles to show/hide the log window. The log window is used to report important information
(e.g., errors, warnings, traces) to the user during code generation
and reverse engineering. Normally
you would want to hide the log window, because it will appear on top of the project windows and obscure them.
It defaults to hide the log window.
View : Refresh
This command refreshes the entire project window. Should the project window be garbled for any reason,
this command will clean it up. It is very unlikely that you would ever need to use this command.
The Model Menu
The Model menu provides commands for creating new models and navigating up and down the model hierarchy.
Model : New Model
This command is used to create a new custom model (it is also available in the
context popup menu.) It will display
a dialog box that lists the available diagram types to choose from.


Model : New Tool Model
This command is used to create a new tool model.
It is enabled when a tool in the custom toolbar or the explorer pane is selected (or when the Links or Places folder
in the explorer pane is selected). If the currently-selected tool is a
link tool then a new link tool is created. Otherwise, a new place tool is created.
In both cases, the new tool is added to the template, and its model is displayed in the content pane.

Model : New Stereotype Model
This command is used to create a new stereotype model.
It is enabled when a tool in the custom toolbar or the explorer pane is selected.
The new stereotype is added to the template as a child of the selected tool,
and its model is displayed in the content pane.

Model : Explode
This command is used to create a submodel for the master of the currently-selected place in the drawing pane
(it is also available in the popup menu.)
If the master already has a submodel, then it instead activates that submodel. The command is dimmed when
the selected drawable is not a place or when more than one drawable is selected.


Model : Submodel
This command is used to navigate to the submodel of the master of the currently-selected place in the
drawing pane (it is also available in the popup menu.)
Model : Implode
This command is used to navigate from a submodel to the parent model, i.e., the model that contains the
place whose master owns the submodel (this command is also available in the popup menu.)
Model : Break Explode Link
If you select a place that has a submodel and then choose this
command, the connection between the place’s master and the submodel will be removed. This allows you to disconnect
a master from its submodel without having to delete one of them.
Model : Move Up
This command moves up the currently-selected custom model in the explorer pane by one position.
Model : Move Down
This command moves down the currently-selected custom model in the explorer pane by one position.
Model : Best Page Matrix
The matrix page in the info pane allows you to specify the size of the drawing for the current model.
If your drawing doesn’t use all the pages allocated, then you can get the optimal fit for the drawing by
applying this command. It changes the drawing page matrix so that it tightly encloses the drawables.
The Arrange Menu
The Arrange menu provides commands for managing the arrangement of drawables in the drawing pane. These command apply to the currently-selected drawables.
Arrange : Bring To Front
This command is used to change the stacking order of the currently selected drawables in the drawing pane so that
(where there is a physical overlap) they will appear on top of other drawables.
Arrange : Send To Back
This command is used to change the stacking order of the currently selected drawables in the drawing pane so that
(where there is a physical overlap) they will appear below other drawables.
Arrange : Group As Primitive
This command is used to group the currently selected primitives as a primitive. The result is a single
drawable that behaves like a primitive (called a primitive group). Therefore, a primitive group can itself
be grouped with other drawables to produce nested groups. After grouping, you can still individually manipulate
the drawables in the group (e.g., selecting, dragging, and deleting them).
Arrange : Group As Place
This command is used to group the currently selected drawables as a place. The result is a single drawable
that behaves like a place (called a place group). Therefore, a place group can itself be grouped with other
drawables to produce nested place groups. After grouping, you can still individually manipulate the drawables
in the group (e.g., selecting, dragging, and connecting links to places).
Arrange : Ungroup
This command is used to ungroup primitive groups and place groups. Select the groups you want to ungroup
and then choose this command. Ungrouping a group restores the group members as separate drawables. If you
ungroup a place group then any link connected to the group will be removed. However, links connected to
group members will remain intact.
Arrange : Flip Horizontal
This command is used to horizontally flip the currently selected primitives. It has no effect on other
drawables.
Arrange : Flip Vertical
This command is used to vertically flip the currently selected primitives. It has no effect on other
drawables.
Arrange : Rotate Left
This command is used to rotate the currently selected primitives by 90 degrees anti-clockwise. It has no
effect on other drawables.
Arrange : Rotate Right
This command is used to rotate the currently selected primitives by 90 degrees clockwise. It has no effect
on other drawables.
Arrange : Reposition
This command is used to reposition the currently selected drawables (except for links, which are ignored by
this command). A dialog box is displayed for specifying the repositioning criteria.

Arrange : Renumber Messages
This command is enabled for diagrams that can contain messages attached to links (i.e., collaboration and
default diagram types). It allows such messages to be renumbered in click sequence.
The Looks Menu
The Looks menu provides commands for controlling the cosmetic appearance of drawables in the drawing pane. These command apply to the currently-selected drawables.
Looks : Fill Color
This command displays a menu of colors to be used for filling the currently-selected drawables. This is
the same as the fill color menu in the main toolbar.
Looks : Line Color
This command displays a menu of colors to be used for drawing the border lines of the currently-selected
drawables. This is the same as the line color menu in the main toolbar.
Looks : Line Style
This command displays a menu of line styles to be used for drawing the border lines of the currently-selected
drawables. This is the same as the line style menu in the main toolbar.
Looks : Font
This command displays a dialog box for specifying the font attributes of the currently-selected drawables.
This is the same as the font dialog accessed from the main toolbar.
Looks : Normal Links
This command is used to switch all the links in the current model to the normal mode (i.e., not stepped
or curved).
Looks : Step Links
This command is used to switch all the links in the current model to the step mode, causing all link
segments to be drawn as horizontal or vertical lines.
Looks : Curve Links
This command is used to switch all the links in the current model to the curve mode, causing them to be
drawn as Bezier curves.
Looks : Annotation
This command displays a dialog for controlling the annotation of one or more classes.
It applies to all the selected classes in the current model, or to all classes in the current model (if
nothing is selected in the current model).

Looks : Apply Template
This command is used to enforce the looks attributes of the currently-selected drawables as specified by
the project template. It only affects links and places, and effectively cancels any changes made to the
appearance of the drawables using the commands in the Looks menu.
The Tools Menu
The Tools menu provides tools for code generation, document generation, reverse engineering, and specifying the preferred options
for UMLStudio.
Tools : Generate Code
This command is used to generate code for the current project. It displays a dialog box for nominating the
code generation script and specifying its parameters.

When a value option is selected, its value is displayed in the Value box so that you can edit the text.
When a choice option is selected, the Value box becomes a combo from which you can select an available
value. In both cases, pressing the Set Option button or selecting another option from the
Generation Options list causes the value to be set.
Tools : Generate Documentation
This command displays the same dialog box as displayed by
Tools:Generate Code. The only difference being that the
Script to Run combo is loaded with the document generation scripts located inside the Scripts\DocGen
subfolder of the explorer pane (see Tools:Options).

Tools : Run Other Script
This command displays the same dialog box as displayed by
Tools:Generate Code. The only difference being that
the Script to Run combo is loaded with the scripts located inside the Scripts\Other
subfolder of the explorer pane (see Tools:Options).

Tools : Import Project
This command displays a dialog box for running import scripts:

Tools : Export Project
This command displays a dialog box for running export scripts:

Tools : Reverse Engineer
This command is used to reverse engineer one or more program code files back into class models. It displays a
dialog box for selecting the files to be reverse engineered.


Tools : Redo Last Reverse Engineer
This command is the same as Tools:Reverse Engineer except that it preloads
the dialog with the files used for the last reverse engineer (i.e., the files that appear under
the Reversed node in the explorer pane).
Tools : Open File Separately
This command opens, in a separate window, the currently selected (generated or script) file in the explorer
pane. The file is opened using its nominated application, as specified in Tools:Options.
Tools : Options
This command displays a dialog box for setting the user-preferred options for UMLStudio. These options are
divided into three tab pages, and are stored in UMLStudio’s profile.

The Max Image Width and Max Image Height fields apply to images generated by the
File:Save Image command and the document generation scripts.
If a generated image is larger than the maximum size specified by these two fields, it will be
automatically shrunk.


Extension => ViewerApplication
You can create a new viewer by selecting the <New> row in the list, entering the viewer information into
relevant fields, and then pressing the Add button.
The Tasks Menu
The Tasks menu lists the tasks defined in the scripts/Task folder. Each task is defined as a
PragScript. By adding your own task definitions to this folder you can access them from the Tasks menu.
Duplicate Selected Places
This command runs a task script which duplicates the places selected in the current model.
The effect of this is not the same as copying and pasting the places.
When you copy and paste a place, the master to which the place refers is not duplicated. Instead, the copied place
refers to the original master (thus causing its reference count to be incremented).
By contrast, this task script duplicates the original master and gives it a new name. This is useful for situations
where you want to make a copy of a master and alter some of its attributes, methods, etc.
Project Hierarchy
This command runs a task script which displays in the log window a textual representation of the project hierarchy.
The hierarchy includes the name of each model and the places in that model.
Project Statistics
This command runs a task script which displays in the log window some useful statistics for the current project.
Run in Debug Mode
This command toggles the debug mode for running task scripts. When enabled, it shows each loaded
PragScript function in the log window.
Define New Task...
This command displays a dialog which describes how to define a new task.
The Window Menu
The Window menu is the standard Windows window menu for applications, consisting of a set of commands for
managing project windows and the list of currently open project windows.
The Help Menu
Help : Contents
This command displays the contents page of the online user manual. Use the contents page if you want to
look something up by subject.
Help : Index
This command displays the index page of the online user manual. Use the index page if you want to look
something up using keywords.
Help : PragSoft Web Site
This command takes you to PragSoft Corporation’s main web page.
Help : Buy Now
This command takes you to PragSoft Corporation’s secure online shopping page, where you can purchase
product licenses using a credit card.
Help : License Key
This command displays the license details dialog. When you purchase a license, use this dialog to enter
the registration details sent to you by PragSoft Corporation.

If UMLServer has been installed in your network by a Network Administrator then
you should ask them for the above details.
Help : About UMLStudio
This command displays UMLStudio’s splash screen that contains license information.
The Popup Menu
The context popup menu appears when you hold the right mouse button down in the explorer pane, the drawing pane,
or the lister page. The commands in the popup menu apply to the currently selected object(s) in the pane.
If you right-click the mouse in the drawing pane on an object, then that object is implicitly selected first.
Popup : Call
If you bring up the popup menu for a link
or for a message attached to a link then this command is enabled.
Selecting this command displays a submenu that lists the methods for the target place of the link. All methods,
including the base class methods are listed. Selecting a method from this menu causes it to appear as the
label for the link/message. The first entry in this submenu is called <None> and causes the label to be
removed.