Table of Contents Previous Chapter 2 Editing SDL Diagrams
The main operations provided by the SDL Editor on symbols, and their associated lines and text are:
In addition, text editing functions are provided for the text associated with the symbols.
Since diagram reference symbols also affect the SDL structure that is managed by the Organizer, a section discusses what operations are permissible on these symbols and how they may be performed. See "Managing Diagram Reference Symbols" on page 96.
Since instantiation symbols and dashed also are managed by the Organizer, a section discusses what operations are permissible on these symbols and how they may be performed. See "Managing Diagram Instantiation Symbols" on page 101 and "Managing Dashed Symbols" on page 102.
With the SDL Editor, you often perform actions that apply on a selection. This section discusses topics related to selection of symbols.
To select a symbol:
- Simply click the desired symbol.
The symbol will be "hit" if the mouse pointer is located within the imaginary rectangle enclosing the symbol. Having selected that symbol, you may note that connected lines are selected as well, and that the text window is updated to contain the text associated with the selected symbol.
When you select a symbol, it is marked with a selection square on each corner of the imaginary rectangle containing that symbol. A filled selection square indicates that the symbol may be resized by dragging the selection square. A dimmed selection square indicates that dragging that selection square will not result in any action.
A selected symbol looks like this (see Figure 30).
Figure 30 : The Appearance of a Selected Symbol.
-----
(fig)
-----
You can select one symbol or multiple symbols in a single operation.
You can select multiple symbols in one operation as shown in Figure 31. To do this, follow these steps:
- Point outside the group of symbols that you want to select. Press the left mouse button and drag the mouse to form a selection border around the symbols.
- Release the mouse button.
When you select multiple symbols, the text window is empty.
Alternatively, you can extend the selection using the <SHIFT> key. See "Extending the Selection" on page 74 for how to do this.
Figure 31 : Selecting Multiple Symbols.
-----
(fig)
-----
You often want to select a flow of subsequent symbols in a flow page, including all branches - the tail of the flow. The SDL Editor can do this for you.
To select a flow of symbols:
- Click on the symbol where the flow starts.
- Select the Select Tail command from the Edit menu. The tail of the flow is selected. See Figure 32, where the left picture shows only one selected object and its associated connections, whereas the right picture shows the selected symbol and its connections plus the selected rest of the flow diagram - the Selected Tail.
Figure 32 : Selecting the Tail of a Subtree.
-----
(fig)
-----
You should consider the following when selecting a symbol which has lines or text associated with it:
- When you select a symbol, you implicitly select the associated objects as well. The text window will be updated to contain the text associated with the symbol.
- If you point to a line associated with a symbol, you will select the line, not the symbol. The process of selecting lines is described in "Selecting Lines" on page 109.
- If you point to the text associated with a symbol, the resulting selection depends upon the type of the symbol.
Selected symbol attributes are displayed as follows:
You can extend the scope of a selection to include more objects, as follows:
- Press <Shift>
- Click an object that is not currently selected. The object will be included in the current selection.
Whenever you select multiple objects, it is possible to deselect a subset of them without cancelling the entire selection.
You can do this as follows:
- Press <Shift>
- Click a currently selected object. The object will be deselected.
On a page, objects may overlap each other. A layer order is defined so that it is possible to determine how overlapping objects are stacked. The text symbol is handled separately because it may overlap all other SDL symbols.
---------------------------------------------------------
Note:
An object that is selected is always on top of the stack.
---------------------------------------------------------
The following layer order applies to interaction pages, where number 1 represents the top object:
- Arrow
- Handle
- Signal list
- Line name
- Line
- Name of reference symbol
- Symbol
- Text symbol and kernel heading symbol.
The following layer order applies to flow pages, where number 1 represents the top object:
- Handle
- Text associated to a line
- Line
- Symbol and additional heading symbol
- Text symbol and kernel heading symbol.
In order to cancel a selection:
- Simply click any part of the drawing area where no object is located.
You may place symbols into the drawing area in either manual mode or in automatic mode.
This section describes how to do this in the manual mode. The automatic mode is described in "Appending Symbols in Automatic Mode" on page 79.
To select a symbol in the symbol menu, perform these steps:
- Point to the appropriate symbol in the symbol menu. The symbol must be valid. (An invalid symbol is dimmed, and cannot be selected.)
- Click on the symbol. The symbol is highlighted indicating that it is selected.
You can cancel the selection of a symbol either by clicking any part of the symbol menu that contains no symbol, or by pressing <Esc>.
To place the symbol:
- Move the mouse pointer to the location where you want to place the symbol. As soon as the pointer leaves the symbol menu, the symbol appears in the drawing area, and follows the motion of the pointer.
- Click at the desired location. The symbol is drawn and adjusted to the symbol grid. You must click a location where the symbol will not overlap any existing symbols in the drawing area
-------------------------------------------------------------------
Note:
Moving the mouse to the edge of the drawing area will activate the
automatic scroll function, described in "Automatic Scrolling" on
page 147.
-------------------------------------------------------------------
- You may now enter the text attributes related to the symbol.
Once a symbol has been appended, you can enter the text into the symbol's text attributes. The symbol remains selected.
To enter symbol text attributes:
- Make sure the symbol is selected.
- Enter the text required into the text window. The text is shown in the boxes.
Once the symbol is at the desired location it can be connected to another symbol as required.
To connect two symbols:
- Append the source symbol, i.e. the symbol from where to draw the line (see "Placing the Selected Symbol into the Drawing Area" on page 76).
- Point the mouse onto the handle of the source symbol, and start dragging the handle. As soon as mouse motion has begun, you can release the mouse button. Point to the target symbol and click the mouse button. The line is drawn to the symbol and required text attributes are added to the connecting line.
---------------------------------------------------------------
Note:
The line will be drawn only when SDL syntax rules allow the sym
bols to be interconnected.
---------------------------------------------------------------
Figure 37 : Having Connected Two Symbols.Figure legend: The box without
bracketsis reserved for the name of the channel, while the box with brackets [ ] is
forthe signal list.
-----
(fig)
-----
- You may now fill in the text attributes.
Conversely, once a symbol had been placed in the drawing area, the same procedure could be followed from a symbol resident in the drawing area to the new symbol.
To connect a symbol to the environment:
- Holding the mouse pointer on the handle of the symbol, drag it to the frame (environment) and release the mouse button.
- The channel or signal route and connection point boxes are shown for text to be entered. You may now fill in these text attributes.
Figure 38 : Having Connected the Symbol to The Environment.
-----
(fig)
-----
The automatic mode is particularly useful when you want to append symbols sequentially or in parallel in a symbol flow. Both situations are described below.
To append symbols sequentially within a flow page, proceed as follows:
- Select exactly one symbol in the drawing area, the source symbol.
- Double-click the desired symbol, the target symbol, in the symbol menu.
- The target symbol is appended to the source symbol, and a flow line is drawn between the two symbols if the syntax rules allow it. You may now fill in the text in the target symbol.
The target symbol is positioned directly beneath the source symbol if possible. Otherwise, the appended symbol is placed in the first available location to the right.
After this operation, the target symbol is automatically selected and the source symbol is de-selected.
Figure 39 : Appending in Sequence.
-----
(fig)
-----
To append symbols in parallel in a flow page:
- Select exactly one symbol in the drawing area, the source symbol.
- Press <Shift> and double-click the new symbol, the target symbol, in the symbol menu.
- The target symbol is appended to the selected symbol. The source symbol remains selected.
You can repeat this procedure in order to append additional symbols to the selected symbol. The target is positioned immediately below the source symbol, if possible. Otherwise, the target symbol is placed in the first available location to the right.
Figure 40 : Appending in Parallel.Figure legend: The picture shows how
multipleinput symbols can be inserted this way.
-----
(fig)
-----
You can also take advantage of the auto-placement by double-clicking a symbol without having to connect it to other symbols.
If you do not select exactly one symbol in a flow page (that is, if you select no symbols, or if you select more than one symbol), the appended symbol will not be connected to any existing symbol.
In this case, the appended symbol is placed in the first available location closest to the upper left corner of the visible drawing area. This location is determined by using a diagonal "zigzag" search algorithm. The direction of search is initially straight down, then repeatedly up to the right, followed by down to the left. This is illustrated in Figure 41.
After the new symbol is appended, it is automatically selected, and the viewport is scrolled so that the appended symbol is visible.
Figure 41 : Automatic Placement of a Symbol - Default Placement.
-----
(fig)
-----
Within interaction pages, the default position of an appended symbol is determined using the same diagonal search algorithm used within flow pages.
When you insert a symbol using the double-click facility, there may not be any space left to perform the operation, The SDL Editor informs you of this with the following message:
Figure 42 : The SDL Editor Failed in Double-Clicking the Symbol.
-----
(fig)
-----
You have the following options:
- To Increase the Page. You will get transferred to a Drawing Size dialog, where you can specify the new size of the SDL Page.
----------------------------------------------------------------------
Note:
If you select this method, the SDL page may not fit any longer into
the paper that you have set up with the Print preferences; the result
may be an SDL page that requires multiple sheets of paper when
printing it (unless you rescale it).
----------------------------------------------------------------------
- To Cancel the operation. You would typically try to find a more suitable location for the new symbol and use manual placement (see "Appending Symbols in Manual Mode" on page 76).
The gate symbol differs slightly from other symbols when you append it.
To append a gate symbol:
- Select the gate symbol.
- Move the pointer into the drawing area. The gate is immediately displayed and connected in a 90-degree angle to the frame symbol and the environment.
- Move the mouse to a suitable location. The gate symbol follows the mouse motion and is automatically reconnected.
- Click the mouse.
- Enter the name of the gate and the signals it conveys.
-----------------------------------------------------------------
Note: Coalesced gates and connection points
See "Connecting a Gate Symbol with a Channel or Signal Route" on
page 88 if you get a message with the text "A Gate has coalesced
with a connection point...".
-----------------------------------------------------------------
A gate may be appended and connected to a channel or signal route with a double-click. The channel or signal route must not be already connected to a gate or connection point.
To append a gate in automatic mode:
- Make sure the channel or signal route that the gate is selected.
- Double-click the gate symbol in the symbol menu.
- If required, Redirect or Bidirect the gate so that it matches the direction of the channel or signal route.
- Enter the name of the gate and the signals it conveys.
The SDL Editor allows you to insert symbols into a flow branch. When inserting symbols, the SDL Editor will rearrange the page in order to prepare the required space for inserting the symbol. This can be done in several different ways:
- By pushing the tail of the branch downwards. This is the preferred method.
- By increasing the size of the SDL page.
- By tidying up the SDL page or the diagram in order to rearrange the layout.
To insert a symbol in a flow branch:
- Select the symbol in the symbol menu.
- Point to the line interconnecting the symbols where the new symbol is to be inserted.
- Click the mouse.
Figure 43 : Inserting a Symbol into a Flow Branch.
-----
(fig)
-----
To insert a symbol into a flow branch by double-clicking it:
- Select the line that interconnects the two symbols.
- In the symbol menu, double-click the symbol to be inserted.
Figure 44 : Inserting a Symbol with Double-Click.
-----
(fig)
-----
The clipboard of the SDL Editor allows you to cut or copy a selection of symbols. The selection may then be pasted:
- To the same page
- To pages of the same diagram, provided the page types match
- To other diagrams, provided the diagram types match.
To cut a symbol or a set of symbols:
- Select the symbol(s).
- Select the Cut option from the Edit menu and the selected symbols together with their interconnecting lines and textual attributes are removed from the drawing area and copied to the clipboard awaiting further instruction (typically Paste).
- Alternatively, you can use the right mouse button for obtaining quick access to the Cut menu choice in a pop-up menu.
To copy a symbol or a set of symbols:
- Select the symbol(s).
- Select the Copy option from the Edit menu and the selected symbols together with their interconnecting lines and textual attributes are copied to the clipboard awaiting further instruction (typically Paste).
- Alternatively, you can use the right mouse button for obtaining quick access to the Copy menu choice in a pop-up menu.
Symbols in the clipboard buffer can be pasted into diagrams and pages if they meet the SDL syntax checks regarding the pasting of objects.
To paste a selection of symbols:
- Select the symbol(s), then copy or cut them.
- If required, go to the page where to paste the selection.
- Select the Paste option from the Edit menu.
- Alternatively, you can use the right mouse button for obtaining quick access to the Paste menu choice in a pop-up menu.
- The selection appears in the drawing area, and follows the mouse motion. Move the mouse until you have found a suitable location (remember, symbols are not allowed to overlap each other).
- Terminate the operation by clicking the mouse.
Pasting is not always possible. Note the following cases, and refer to the section"Relationship between Diagrams and Pages" on page 1161 in chapter 23, The SDL Editor.
- The selection cannot be pasted if the page is too small. In this case, you need to enlarge the page. See "Resizing a Page" on page 64.
- You are not allowed to paste symbols so that they overlap existing symbols in the drawing area. If you attempt to do this, the Paste operation is cancelled. Try another suitable location.
- You are not allowed to paste flow symbols into an interaction page and vice versa. In this situation, the Paste menu choice is dimmed.
On a flow page, symbols are pasted along with the flow lines that interconnect them.
-------------------------------------------------------------------
Note: Effect of syntax check when pasting
Some symbols may not be pasted if the syntax check is on. The clip
board buffer content must comply with the SDL syntax rules. Any
symbols which do not comply will be omitted. (The clipboard
buffer content may have been copied from a page edited with syntax
checking turned off.)
-------------------------------------------------------------------
On an interaction page, symbols are pasted along with the lines that interconnect them. Any lines that connect the pasted symbols to the environment will also be drawn.
Syntax checking may reduce the number of symbols that are pasted into the drawing area. See the note above in "Pasting on Flow Pages" on page 87.
You may move one or more symbols in a single operation. The lines and text objects that are related to the symbol will be moved accordingly in order to preserve as much as much of the original appearance. When you move a symbol, its position is automatically adjusted to fit exactly into the symbol grid.
Symbols are not allowed to be moved to positions where they would overlap other symbols.
To move a single symbol:
- Point to the symbol.
- Drag the symbol to the desired position. The symbol follows the mouse motion.
- Release the mouse button when satisfied with the new position. The symbol is redrawn, aligned to the grid.
When you move a gate symbol in order to reconnect it to a line (channel or signal route that is connected to a connection point), the following takes place (actually, it does not matter whether you move the line or the gate, the behavior is identical).
- If the connection point is not assigned any name, the SDL Editor connects the gate symbol and the line.
- If the connection point is assigned a name, a conflict occurs, since the line cannot be connected to the connection point and the gate simultaneously! The following dialog is issued:
Figure 45 : Prompting to Solve Connection Conflict.
-----
(fig)
-----
You have the following options (select the appropriate action by turning the corresponding radio button on):
- To keep the connection point Conn and to connect the line to it. The gate G1 is removed.
- To keep the gate G1 and to connect the line to it. The connection point Conn is removed.
- Click OK to reconnect the line and symbol accordingly.
- Click Cancel to cancel the operation.
-----------------------------------------------------------------
Note:
The situation above also occurs if you add a new gate symbol and
place it on a connection point.
-----------------------------------------------------------------
When moving a symbol which has a line that is connected to the frame symbol, you have the possibility to specify whether the line should be moved accordingly or whether the point where the line is connected to the frame should be fixed (see Figure 46 below).
To specify whether to move the connection point or not:
- Select the Diagram Options menu choice from the View menu. A dialog is issued.
- Turn the Endpoints fixed at frame toggle button on or off, depending on your preference.
Figure 46 : The Effect of Fixing Endpoints at Frame.
-----
(fig)
-----
In order to move several symbols in one operation, you first must select those symbols. (See "Selecting Symbols" on page 69.)
To move several symbols:
- Select the symbols.
- Point to any of the selected symbols.
- Drag the group of symbols to the desired position. The symbols follow the mouse motion.
- Release the mouse button when the new position is reached. The symbols are redrawn, aligned to the grid.
Text attributes related to symbols are indicated by rectangles surrounding the text when the symbol is selected.
To move a text attribute:
- Point to the text attribute.
- Drag it to the desired position.
- Release the mouse button.
------------------------------------------------
Note:
Text contained in flow symbols cannot be moved.
------------------------------------------------
The procedure for resizing a symbol differs slightly depending on whether the symbol is a flow page symbol or an interaction page symbol. When you resize a symbol, its size is automatically adjusted to fit exactly into the symbol grid. Any lines connected to the symbol are similarly adjusted to preserve as much as possible of the original appearance.
The text, the additional heading, the package reference, comment and text extension symbols are handled differently. Their size is determined by the SDL Editor to fit the text they contain.
The default sizes for symbols are defined in The Preference Manager:
- For interaction pages, the predefined size of a symbol is by default 30 * 20 mm.
- For flow pages, the predefined size of a symbol is by default 20 * 10 mm. The width / size relationship is always 2:1.
To resize a symbol in an interaction page:
- Point to a corner of the rectangle that delimits the symbol. From this point on, the corner that you are pointing to is movable, while the opposite corner is fixed.
- Drag the corner until the symbol has the desired size. An interaction symbol cannot be adjusted to a size less than 15*10 mm.
- Release the mouse button. The symbol is redrawn with its size adjusted to fit exactly into the symbol grid. The lines connected to a resized interaction symbol are automatically adjusted to preserve a nice appearance.
To resize a symbol in a flow page:
- Point to a corner of the rectangle that delimits the symbol. From this point on, if you pointed to any of the lower corners, then the top of the symbol is fixed (and in a similar way, if you were pointing to any of the upper corners, the bottom of the symbol is fixed).
- Drag the corner until the symbol has the desired size. The symbol shrinks or swells both horizontally and vertically, the proportions remaining 2:1. A flow page symbol cannot be adjusted to a size less than 20*10 mm.
- Release the mouse button. The symbol is redrawn.
------------------------------------------------------------------------
Note: Clipped or Folded Corner on Symbol
The text, additional heading and package reference symbol look like
a piece of paper. When all of the text within a text symbol is in view,
the upper right corner is "folded" down. When any portion of the
text within a text symbol cannot be seen (because the text symbol is
too small), the upper right corner is clipped or diagonally cut off.
See Figure 48 on page 93.
Clipped text symbols are printed in their whole on a separate sheet
of paper.
------------------------------------------------------------------------
These three symbols react in the same way for resizing. There are two ways available to resize these symbols:
- Place the mouse pointer on the bottom right corner of the symbol (the filled selection square, the grayed selection squares denote fixed points which cannot be used for resizing).
- Holding the left mouse button down make the symbol smaller by pushing to the left or larger by pulling the corner to the right. The symbol cannot be made larger than the size which is required to fit the text it contains.
Figure 47 : Resizing a Text Symbol.
-----
(fig)
-----
A nice feature allows to rapidly toggle between a text symbol's maximum and minimum size:
The input, priority input, output, comment and text extension symbols are drawn by default as displayed in the symbol menu. In some cases, the layout of the connecting lines would be nicer if the symbols were drawn flipped L/R. The SDL Editor allows you to flip symbols:
To flip a symbol:
- Select the symbol.
- Choose the Flip command from the Edit menu. The symbol is flipper L/R.
The drawing area of the SDL Editor provides two grids for easier positioning of objects. These are the symbol grid and the line grid, which are invisible.
After you move or resize symbols, the position of the upper left corner of each symbol is positioned on the closest intersection in the symbol grid. In addition, resizing a symbol will adjust the size so that it matches the resolution of the grid, horizontally as well as vertically. The resolution of the symbol grid is variable and can be set with The Preference Manager. The default is 5 * 5 mm for interaction pages, and 25 * 15mm for flow pages.
You can temporarily disable the grid by toggling the Use Grid to off in the Diagrams Options dialog.
Since symbols adhere to the symbol grid, mixing symbols of different size may imply that symbols cannot be aligned symmetrically, and that enlarging symbols becomes impossible due to overlap of symbols already laid out.
You can align symbols of different sizes in a nice fashion by disabling the symbol grid.
To remove symbols:
- Select the symbol(s) to be removed.
- Select the Clear menu choice from the Edit menu. The symbol(s) are removed, as well as the lines that were connected to these symbols.
- Alternatively, you can take advantage of the pop-up menu or hit the <Delete> key.
A selection of symbols can be printed. This allows for instance to print only the portion of a diagram which is of interest.
To print a number of symbols:
- Select the symbols to be printed.
- Select the Print command from the File menu.
- In the Print Dialog, click the setup button. Click on the Print only selected symbols button to turn it on.
Figure 50 : Printing Only Selected Symbols.
-----
(fig)
-----
- Adjust, if necessary, other Print options and terminate by clicking the OK and Print buttons. See "Printing a Diagram" on page 50 for more information.
When you perform certain modifications to the diagram reference symbols listed in the left margin (system type, block, block type, substructure, service, service type, process, process type, and procedure reference symbols), the SDL Editor checks with the SDT Organizer to verify that the modifications are valid. This occurs in the following situations:
To add a diagram reference symbol:
- Select the symbol to be added in the symbol menu and append it to the diagram.
- Type in the name of the symbol.
- Deselect the symbol. The SDL Editor checks that the name and type are unique within the SDL diagram being edited. If you had entered a duplicate name, you will be informed of that with the following message:
Figure 51 : Name of Reference Symbol is not Unique.
-----
(fig)
-----
- If the new reference symbol is accepted, it is inserted into the SDT Organizer diagram structure, located beneath the referring diagram.
In a data type construct it can be stated that an operator diagram is referenced elsewhere. This means that the operator will not be described in the current place, but in an operator diagram.
The SDL Editor does not know that the operator is referenced in a data type. So, a symbol, the operator reference symbol, is available for this situation. It is a convenience that has been added to the SDT tool set to facilitate navigating within an SDL system. Its presence in an SDL diagram does not modify the meaning of the diagram.
Adding an operator reference symbol is performed in a similar manner as when adding any other reference symbol. See"Adding a Diagram Reference Symbol", above.
When renaming diagrams in a top-down fashion, you start by changing the name of a reference symbol. After the reference symbol is renamed, you should also update the referenced diagram's kernel heading accordingly to maintain consistency in the diagram structure.
To rename a diagram reference symbol and the referred diagrams:
- Select the symbol to be renamed.
- Change the name of the reference symbol.
- Deselect the symbol. The SDL Editor checks that the name and type are still unique within the diagram. If a name conflict occurs, you will be informed of that (see Figure 51, above).
- If the new name of the reference symbol is accepted, the SDT Organizer diagram structure is updated to reflect the nature of the change.
- To ensure that the change also applies to the referred diagram, you should use the Organizer command Update Headings (see page 1096). This command verifies and possibly changes the name in the diagram kernel heading symbols against the expected name (which is the one that now is shown in the reference symbol). The mismatch between the name of the diagram is reported in a dialog:
Figure 52 : The Mismatch in Headings is Reported.
-----
(fig)
-----
- Correct the mismatch by clicking Update.
- If you select not to update the kernel heading, you simply postpone the problem.
This is the top-down method. There is also a bottom-up method for renaming diagrams in a structure, see "Changing the Name of a Diagram" on page 103.
To remove a diagram reference symbol:
- Select the symbol to be removed.
- Remove the reference symbol using the Clear menu choice from the Edit menu.
When you double-click a diagram reference symbol, an SDL Editor window will be opened, alternatively restored. This editor window will contain the underlying structure for the reference symbol.
This feature allows easy navigation down an SDL hierarchy.
When you copy and paste a diagram reference symbol (using the Copy and Paste commands), the new symbol is assigned a new name that consists of the original name, preceded with the prefix CopyOf; the prefix is repeated as many times as necessary in order to build a name / type combination that is unique within the SDL diagram being edited.
- You may assign the new symbol its appropriate name before connecting the diagram with a file.
The implication of an instantiation symbol is that the description of the type diagram is actually instantiated, i.e. a physical copy is created. This copy may then be given additional properties using SDL's inheritance and specialization mechanisms.
When a diagram type is to be instantiated, do as follows:
- Make sure the type diagram is visible according to the SDL scope rules.
- Insert a diagram reference symbol. When specifying the name of the symbol, use the syntax <instance_name>:<type_name>.
- When the symbol is deselected, the Organizer Diagram Structure is immediately updated to show the instantiation (this is only true if the Instance Diagram option is on in the Organizer's View Options).
You may use instantiation symbols to navigate in the diagram structure. The following takes place:
- When you double-click on an instantiation symbol, the SDL Editor first issues the following dialog:
Figure 54 : The Show Reference Dialog.
-----
(fig)
-----
- If you click Yes, the inheritance and redefinition tree for the current type diagram will be displayed within a few seconds in a Type Viewer window.
- If you click No, the operation is cancelled.
- You may now use the Type Viewer to open the type diagram of your choice. (Since a type diagram may be inherited and specialized; the SDL Editor cannot guess what diagram you want to open!)
Dashed reference symbols are used to refer to an object that is defined elsewhere in one of the supertypes of the current subtype.
To dash an instantiation symbol:
- Select the instantiation symbol.
- Use the command Dash from the Edit menu (see page 1199).
- The symbol is dashed and the change is immediately reflected in the Organizer Diagram Structure (this is only true is the Dashed Diagram option is on in the Organizer's View Options).
- You may at any time undash a dashed symbol. Simply select the symbol and select the Undash command from the Edit menu (see page 1199).
When you double-click a dashed symbol, a scenario similar to the action of double-clicking an instantiation symbol takes place. See "Double-Clicking an Instantiation Symbol" on page 101.
It is possible to rename, retype and re-qualify a diagram with the SDL Editor, by modifying the diagram's kernel heading.
Figure 55 : The Kernel Heading Symbol.
-----
(fig)
-----
When altering a diagram's kernel heading, you can perform the following:
SDT accepts a number of syntaxes for kernel headings, 13 in all. See "The Kernel Heading Symbol" on page 1166 in chapter 23, The SDL Editor.
-------------------------------------------------------------------------
Note:
Changing the kernel heading of a diagram may have a large impact
on the diagram's meaning. Also, the SDL diagram structure where
the diagram is included may be affected to a large extent. You may,
however, want to change the kernel heading in order to create a new
diagram that you will use in a different context than the SDL struc
ture it originally is tied to, or in order to perform a simple rename of
diagrams.
-------------------------------------------------------------------------
This is the bottom-up method you would use when renaming diagrams in an SDL structure.
To change the name of a diagram:
- Select the kernel heading symbol.
- In the text window, edit the kernel heading text to apply a new name.
- When deselecting the kernel heading symbol, the SDL Editor checks that the name is still valid according to SDL rules. Any syntax error will cause the following dialog to be issued:
Figure 56 : A Syntax Error has been Detected when Editing the
Kernel Heading.
-----
(fig)
-----
- Clicking OK, you are returned to the text window where you should correct the error.
- Clicking Revert, the kernel heading is reverted to its original contents.
- Clicking Ignore, the erroneous kernel heading is accepted. The error will probably lead to other kind of error reports, typically when verifying the diagram with the Analyzer tool.
- The Organizer detects that the name of the diagram no longer matches the name that is expected in the diagram structure, and marks the diagram icon as Mismatch. (A warning is also appended to the Organizer Log window.)
- To correct the mismatch, you have to update the name of the reference symbol accordingly. Use the command Edit Reference Page to bring the page with the reference symbol into view. Locate the reference symbol and rename it accordingly.
There is also a method for renaming diagrams in a top-down fashion. See "Renaming a Diagram Reference Symbol" on page 97 for how to do this.
It is possible to re-type a diagram, provided the old and the new types are "compatible" from the SDL Editor's point of view. The basic compatibility criteria is that the old and new type of diagram must both be interaction diagrams or both be flow diagrams. Also checks are made on the pages that are contained in a diagram (some diagram types are allowed to have different types of pages in the same diagram, see "Relationship between Diagrams and Pages" on page 1161 in chapter 23, The SDL Editor. The table below summarizes the type changes that are allowed.
---------------------------------------------------------
case A diagram of type... ...can be changed to any of:
---------------------------------------------------------
1. SYSTEM SYSTEM TYPE
BLOCK
SUBSTRUCTURE
BLOCK TYPE
PACKAGE
2. BLOCK BLOCK TYPE
SYSTEM
SUBSTRUCTURE
SYSTEM TYPE
PACKAGE
3. PROCESS PROCESS TYPE
SERVICE
PROCEDURE
SERVICE TYPE
MACRODEFINITION
OPERATOR
4. SERVICE SERVICE TYPE
PROCESS
PROCEDURE
PROCESS TYPE
MACRODEFINITION
OPERATOR
5. PROCEDURE PROCESS
SERVICE
PROCESS TYPE
SERVICE TYPE
MACRODEFINITION
OPERATOR
6. SUBSTRUCTURE SYSTEM
BLOCK
SYSTEM TYPE
BLOCK TYPE
PACKAGE
7. MACRODEFINITION PROCESS
SERVICE
PROCEDURE
PROCESS TYPE
SERVICE TYPE
OPERATOR
8. SYSTEM TYPE SYSTEM
BLOCK
SUBSTRUCTURE
BLOCK TYPE
PACKAGE
9. BLOCK TYPE SYSTEM
BLOCK
SUBSTRUCTURE
SYSTEM TYPE
PACKAGE
10. PROCESS TYPE PROCESS
SERVICE
PROCEDURE
SERVICE TYPE
MACRODEFINITION
OPERATOR
11. SERVICE TYPE SERVICE
PROCESS
PROCEDURE
SERVICE TYPE
MACRODEFINITION
12. OPERATOR PROCESS
SERVICE
PROCEDURE
PROCESS TYPE
SERVICE TYPE
MACRODEFINITION
13. PACKAGE SYSTEM
BLOCK
SUBSTRUCTURE
SYSTEM TYPE
BLOCK TYPE
---------------------------------------------------------
To change the type of a diagram:
- Select the kernel heading symbol.
- In the text window, edit the kernel heading text to apply a new type. See the table above for what transformations are allowed.
- When deselecting the kernel heading symbol, the SDL Editor checks that the type is still valid according to the table above. Any violation of these rules will cause the following dialog to be issued:
Figure 57 : Illegal Type Change when Editing the Kernel Heading.
-----
(fig)
-----
- Clicking OK, you are returned to the text window where you should correct the error.
- Clicking Revert, the kernel heading is reverted to its original contents.
- Clicking Ignore, the erroneous kernel heading is accepted. The error will probably lead to other kind of error reports, typically when verifying the diagram with the SDT Analyzer.
By changing the qualifier that appears in the kernel heading, you can change the context of the diagram.
SDT accepts the two Z.100 notations for a qualifier, namely with and without the surrounding "<< >>".
Example 2 : An SDL Qualifier
PROCESS TYPE <<SYSTEM MYSYS/BLOCK MYBLOCK>> Myproc
Alternatively:
PROCESS TYPE SYSTEM MYSYS/BLOCK MYBLOCK Myproc
To change the qualifier:
- Select the kernel heading symbol.
- In the text window, edit the kernel heading text to apply the new qualifier.
- When deselecting the kernel heading symbol, the SDL Editor checks that the new qualifier is syntactically correct. Any syntax error will cause the following dialog illustrated in Figure 56 on page 104 to be issued.
- Clicking OK, you are returned to the text window where you should correct the error.
- Clicking Revert, the kernel heading is reverted to its original contents.
- Clicking Ignore, the erroneous kernel heading is accepted. The error will probably lead to other kind of error reports, typically when verifying the diagram with the SDT Analyzer.
The main operations provided by the SDL Editor on lines, and their associated text attributes are:
In addition, text editing functions are provided for the text associated with the lines.
Operations on lines are performed slightly differently depending if you are editing
- flow pages
- interaction pages
The main difference between the two is that flow pages may only allow vertical and horizontal lines.
Some restrictions also apply when connecting symbols in flow pages, depending upon whether or not the syntax checking is enabled
With the SDL Editor, you often perform actions that apply on a selection. This section discusses topics related to selection of lines.
To select a line:
- Simply click it. The line will be "hit" if the mouse pointer is close to the line.
Selection squares on a flow line mark the line's starting point, ending point, and each of the line's breakpoints or the middle of each line segment.
You should consider the following when selecting a line which has text associated with it:
- When you select a line, you implicitly select the associated attributes as well. The text window will be updated to contain the text associated with the line.
- If you point to a line associated with a symbol, you will select the line, not the symbol. The process of selecting symbols is described in "Selecting Symbols" on page 69.
- If you point to the text associated with a line, you will select the text object, not the line.
Selected line attributes are displayed as follows:
- Each text attribute is displayed inside a text selection rectangle.
- The following attributes are displayed with a filled selection square:
- Each arrow (on interaction pages only)
- Each line breakpoint (on interaction pages only)
- The middle of each line segment on (flow pages only)
You can extend the scope of a selection to include more lines, as follows:
- Press <Shift>
- Click a line that is not currently selected. That line will be selected.
Whenever you have selected multiple lines, it is possible to deselect a subset of them without cancelling the entire selection.
You can do this as follows:
- Press <Shift>
- Click a currently selected line. That line will be deselected.
On a page, objects may overlap each other. A layer order is defined so that it is possible to determine how overlapping objects are stacked. This topic is discussed in "Selecting Overlapping Objects" on page 75.
In order to cancel a selection, simply click any part of the drawing area where no object is located.
This section describes how to interconnect symbols with lines. Two modes are supported in the SDL Editor:
The way that you draw a line differs somewhat depending upon whether you are working on an interaction page or a flow page. The differences will be pointed out later in this section.
----------------------------------------------------------------------
Note: Concerning interconnecting lines with syntax
check on
When syntax checking is enabled, you are only allowed to draw
lines that are correct according to the SDL rules. For example, when
you add an extra out-going line to a symbol which is only allowed
to have a single out-going line, the old line is removed. When syntax
checking is disabled, the rules are less strict. For example, a line
may connect an interaction symbol to itself, and symbols may have
several outgoing lines.
----------------------------------------------------------------------
In order to designate where a line starts, follow these steps:
- Select the symbol from which the line will originate.
- Point to the handle and drag it to begin forming the line. The line that is formed ends where the mouse pointer is located. Note that the mouse button can be released as soon as you have moved the mouse pointer.
To designate the end point:
- Designate the start point. See previous section.
- There are two ways that you can route the line and specify where it will end:
To route the line automatically:
- Click any valid target symbol to specify where the line should end.
A symbol is valid if the syntax rules enforced by the SDL Editor at edit-time allows the drawing of a line from the first symbol to the second symbol.
----------------------------------------------------------------------
Note: Hints for improved line drawing
When drawing lines between symbols, keeping the <Control> key
pressed, the start point for the next line to draw is automatically
transferred to the target symbol.
This feature provides the easiest way to draw multiple lines in rapid
succession.
----------------------------------------------------------------------
As long as you do not point to a valid destination symbol, the line will be routed from the selected symbol to the current mouse position. The automatic line drawing facility will determine the layout of the line until you have inserted the first breakpoint.
To route the line manually, indicating where line breakpoints are to be inserted, follow the steps below.
- To enter manual mode, click any location in the drawing area other than a valid destination symbol.
- Click each location where you want to insert a line breakpoint.
- Click on a valid destination symbol.
Figure 58 : Drawing a Line in Manual Mode.
-----
(fig)
-----
The way that you draw a line differs somewhat depending upon whether you are working on an interaction page or a flow page:
- On an interaction page, you can draw lines in all possible directions.
- On a flow page, you can only draw lines horizontally or vertically. The last line breakpoint, even if determined manually, will be adjusted so that the destination symbol is connected correctly, normally in the middle of the upper edge of the symbol. Exceptions are made for comment and text extension symbols, which are connected to the center of the right or left edge of the symbol.
You can cancel a line drawing operation in either of the following ways:
- Press <ESC>.
- Double-click any part of the drawing area that is not a valid destination symbol.
The process of drawing a line is the same regardless of whether or not syntax checking is enabled. Please see "Drawing a Line with Syntax Checking Disabled" on page 113. To enable and disable syntax checking, see "Turning Syntax Checking on and off" on page 30.
When drawing lines with syntax checking disabled, you may interconnect symbols in any way you want.
Reshaping a line refers to changing the path that the line follows. This operation does not affect the endpoints of the line. The flow lines only move in either a horizontal or vertical way.
Re-routing a line denotes changing the ending point of the line from one symbol to another symbol.
To reshape a line:
- Point to one of the segment constituting the line.
- Press the mouse and, holding down the mouse button drag the segment to the required position.
- Release the mouse button.
It is possible to move the ending point of a flow line, and reconnect it to any valid destination symbol. The line will be redrawn, either manually or automatically, depending upon how you perform the operation.
To move a line's ending point:
- Point at the ending point that you want to reconnect.
- Press the mouse. Start dragging the ending point. As soon as you move the mouse, the line's last segment follows the mouse motion and you can release the mouse button.
- You can click additional line breakpoints where you like.
- Click the destination symbol to complete the operation. If it is a valid symbol, the line will be re-routed automatically.
It is possible to move any starting or endpoint to and from a symbol and the environment.
To re-route an interaction line:
- Point to the starting or ending point of the line.
- Press the mouse and, holding the mouse down, drag it to the desired symbol.
- If required, click to add line breakpoints at desired positions.
- Terminate by clicking on the new symbol. The line is redrawn accordingly.
To move a line breakpoint in an interaction page:
- Point to the breakpoint that you want to move.
- Press the mouse and drag the breakpoint to the desired location.
- Release the mouse button to redraw the line.
Figure 59 : Moving an Interaction Line Breakpoint.
-----
(fig)
-----
Line breakpoints can be inserted anywhere along an interaction line.
To insert breakpoints on an interaction line:
- Press <CTRL>
- Point in a line segment where you want to insert a new breakpoint.
- Press the mouse and drag it to shape the breakpoint.
- Release the <CTRL> key.
You can move a line segment in an interaction page as long as it is not a starting segment or ending segment.
To move an interaction line segment:
- Point to the line segment to be moved.
- Press the mouse and drag the line segment to the desired location.
- Release the mouse button. The line segment and the adjacent line segments are redrawn accordingly.
Arrows on channels, gates and signal routes denote the orientation of flow on that line. They are assigned default locations when creating the line.
Arrows on channels can be moved along the line manually.
To move an arrow:
- Point to the arrow.
- Press the mouse. Still holding the mouse down, drag it until the arrow reaches the place of your choice.
- Release the mouse. The arrow and the signal list are redrawn accordingly.
A channel or a signal route may be connected to a connection point (usually located close to the line, immediately outside the frame symbol, see Figure 60).
Figure 60 : A Signal Route Connected to a Connection Point.Figure legend: The
connectionpoint (named Conn) is selected, which is shown by enclosing it by a selection
rectangle.
-----
(fig)
-----
In order to move the line and the connection point, you should proceed as follows:
- Point to the ending point on the line. The ending point is "hit" only if you click very close to it.
- Make sure the connection point is selected (i.e. the selection rectangle appears). If not, repeat step 1.
- Moving the line's ending point with the connection point unselected will move the line only and create a new connection point. The old connection point is removed.
- Now, you can drag the line's ending point to the new location. The connection point follows the mouse motion as well.
A line text attribute is a textual element that is related to a line. The following lines have associated text attributes:
- Gates
- Channels
- Signal routes
- Flow lines after decision and transition option symbols.
When drawing a line, the SDL Editor positions the text attribute close to the source symbol and originating line, so that it is easy to identify what line the text attribute is related to. You are however free to move the text attribute to any location in the drawing area within the frame symbol.
To move a line text attribute:
- Point to the text attribute.
- Press the mouse, and, still holding the mouse down, drag the text attribute to its new location.
- Release the mouse button.
-----------------------------------------------------------------
Note:
Moving text attributes to illogical locations may lead to SDL dia
grams that are misleading and difficult to understand!
-----------------------------------------------------------------
When you add a channel or signal route to an interaction diagram, the line is initially drawn in a single-directional manner, originating from the source symbol and pointing to the target symbol.
-------------------------------------------------------------------
Note: Lines from the environment
The only way to draw a line from the environment to a symbol is to
first draw it from the symbol and then redirect it.
-------------------------------------------------------------------
The SDL Editor allows you to perform the following operations:
To redirect a line:
- Select the line
- Choose the Redirect command from the Edit menu. The line is redirected.
To bi-direct a line:
- Select the line
- Choose the Bidirect command from the Edit menu. The line is bidirected.
- The command is also available on the pop-up menu.
- Fill in the second signal list (the empty selection rectangle that appears after the SDL Editor has bi-directed the line).
Figure 63 : Bi-directing a Line
-----
(fig)
-----
Once you have bi-directed a line, you may want to restore it to a single-directed one.
To single-direct a bidirected line:
- Select the arrow denoting the signal list you want to remove (the corresponding signal list is displayed with a selection box).
- Remove the arrow using the Clear command from the Edit menu.
- Alternatively, use the Clear command on the pop-up menu
When you move or reshape interaction lines, the line breakpoints are adjusted to the line grid, which cannot be disabled and has a fixed resolution of 2.5 mm.
Flow line segments and line text attributes are always placed so that they match the resolution of the line grid.
This page intentionally left blank
Table of Contents Next Chapter