12.6.  Selection Action Buttons

When the user selects a model element in a UML diagram, several handles are drawn on it to indicate that it is selected and to provide user interface affordances to resize the node. ArgoUML also displays some “selection-action buttons” around the selected model element. See the figure below for some examples of the handles and “selection-action buttons”. The two figures for a class differ because for creating the second one, the shift key has been depressed.

Figure 12.6.  Some examples of “Selection Action Buttons”.

Some examples of Selection Action Buttons.
Some examples of Selection Action Buttons.
Some examples of Selection Action Buttons.
Some examples of Selection Action Buttons.
Some examples of Selection Action Buttons.
Some examples of Selection Action Buttons.

Selection-action buttons offer common operations on the selected object. For example, a class node has a button at 12-o'clock for adding a superclass, one at 6-o'clock for adding a subclass, and buttons at 3-o'clock and 9-o'clock for adding associations. These buttons support a "click or drag" interaction: a single click creates a new related class at a default position relative to the original class and creates a generalization or association; a drag from the button to an existing class creates only the generalization or association; and, a drag to an empty space in the diagram creates a new class at the mouse position and the generalization or association. ArgoUML provides some automated layout support so that clicking the subclass button will position the new classes so that they do not overlap.

Selection-action buttons are transparent. They have a visibly recognizable rectangular shape and size and they contain an icon that is the same as the icon used for the corresponding type of design element on the standard toolbar. However, these icons are unfilled line drawings with many transparent pixels. This allows selection-action buttons to be overlaid onto the drawing area without overly obscuring the diagram itself. Also, the buttons are only drawn when the mouse is over the selected model element; if any part of the diagram is obscured, the mouse can simply be moved away to get a clearer view of the diagram.