Description

On this page you will find the main functionalities of the Modeling Framework.

Graphical Editor Configuration :


Graphical Editor Generation :


Models edition
Model and Diagram files storage The creation of a new diagram in Topcased result in the creation of two files. The first file has the *.model extension contains informations about the model, whereas the second file with the *.modeldi extension contains graphical information about diagrams (position, size, colors,...).
Activation of the "Topcased Modeling" Perspective Modeling with Topcased is easier by selecting the "Topcased Modeling" perspective : a perspective is a particular configuration of Eclipse environment that consists of customized views, shortcuts and popup menus. To activate the "Topcased Modeling perspective", select "Window -> Open Perspective -> Other .." openPerspective and select the "Topcased Modeling" perspective : selectPerspective
Creation of a Topcased Project << New in 1.0.0M2 >>

A new project creation wizard is available. This will create a simple Project with a dedicated nature : the generated project only contains a single "Models" folder that should be usually used to contains the model files related with the project. The project structure will evolve in the future depending on the user needs and feedbacks. createTopcasedProject

The Topcased Navigator << New in 1.0.0M2 >>

The Topcased Navigator may be used in place of the default Navigator in the Topcased Perspective. topcasedNavigator The view has been improved with a few filters on the Resources to show or hide in the navigator. By default, only the Topcased projects (with a Topcased nature) are visible : availableFilters Content filters are also available. They are used to show or hide the contents of a given Resource in the navigator. Thus you can explore the contents of a model file or show all the diagrams that are available for a given model. contentFilters Note that if you can directly open a Diagram in the graphical editor by double clicking on it. navigatorWithContents

Creation of a new Diagram Each graphical editor is associated with a wizard whose goal is to simplify user tasks. The creation is so achieved in a few steps. To start the wizard, select the project where you want to create your model, "Right Click > New > Other..." and then select the corresponding kind of diagram : "Topcased > Topcased Diagrams > XXXDiagram"

Remark : if you have successfully switched to the "Topcased modeling" perspective, there is a shortcut directly accessible from the popup menu.

newDiagramWizard Once you have selected the expected diagram, the wizard is opened : diagramWizard You will have to fill the following informations :
  • The radio button " Create a new Model " should be selected by default, otherwise select it.
    • The field "Directory" is the container folder for your diagram. The value is automatically filled if you have started the wizard by right-clicking on a project or a directory. You can change it by clicking on the "..." button.
    • The field "Model name" is the name for your model and diagram files that will be created.
    • The drop-down list "Template" helps you to select a Template. Templates are defined by the plugin, they provide a basis for your model and whether a model is associated with many diagrams, the plugin must provide a template for each diagram.

When you have correctly filled all the informations, click on the "Finish" button to open the editor with your empty diagram.

Creation of a new Diagram from an existing model Each graphical editor is associated with a wizard whose goal is to simplify user tasks. The creation is so achieved in a few steps. To start the wizard, select the model file that should be associated with the diagram you want to create, "Right Click > New > Other ..." and then select the corresponding kind of diagram depending on the model file you have choosen : "Topcased > Topcased Diagrams > XXXDiagram".

Once you have selected the expected diagram, the wizard is opened :

existingModelWizard You will have to fill the following informations :
  • The radio button "Create from an existing Model" should be selected by default, otherwise select it.
    • The field "Model" reference the existing model to use with your diagram. The value is automatically filled if you have started the wizard by right-clicking on a valid model file. You can change it by clicking on the "..." button. modelSelection
    • Then you have to "Select" in the list the model object that should be associated with your main diagram.
    • The drop-down list "Template" helps you to select a Template. The available list of Templates are filtered depending on the type of model object you have previously selected in the list.

When you have correctly filled all the informations, click on the "Finish" button to open the editor : as you can see the editor is empty. However, if you look at the "Outline" and more precisely the area that contains the model, you will discover that all the model object are present : so you have just to drag and drop the objects into appropriate diagrams and continue modeling.

Export formats

exportIcon

Different exporting formats are available. The active diagram can be exported as an image to your file sytem. On the editor, "Right Click > Export to file" and then in the popup window, select the destination folder and the format among BMP and JPG. exportAction << New in 0.10.0 >> Three new formats are available : SVG, PNG and GIF. exportFormats
Control/Uncontrol << New in 0.11.0 >>

These actions are mainly used to split/merge a model into several models. This functionality is mainly used to share a same model between different users. You can "Control" (or split) a model from the Outline View. Select the element you want to extract in a new file, "Right Click > Control" : controlAction Then, you have to choose a file where the subModel should be stored (Do not forget to indicate the corresponding file extension) : selectControlledFileDialog" At this point, when you save the model, the new controlled file should appear in the Package Explorer view. An associated diagrams file is also created : it will contains all the diagrams contained in the hierarchy of the controlled element, or none. You can then edit that diagrams, all changes are made in that file (the original file only keep a reference to that controlled file).

Later, you can choose to "Uncontrol" (or merge) these two models. In the original model file, select the controlled element (it should be decorated with a special icon in the Outline View), and then "Right Click > Uncontrol" : uncontrolAction" Now the contents of the controlled files (model and diagrams) should be merged into that model. Currently the controlled file is not deleted but it is probably empty in the case where this were the only object that were controlled into that file, so you probably have to remove it by hand.

Rename a Model

This refactoring method is used to rename a diagram/model file(s), and all the files that are referencing them. The dialog let the user choose the refactoring range : by default, the renaming of the file only update the files in the same project, but the workspace may be included in the references search (the process will be longer in this case). renameModelFile
Graphical Properties
Direct Edit

When a label is associated with a graphical element, in general you can directly edit it from the editing Window. directEdit Note that you can use the shortcut "F2" when an element is selected to enter in the direct Edit mode.
Resize element Depending on the element configuration, an element may be resizable or not. When it is resizable it can be restricted so that only the width, the heigth or both dimensions could be resized. To resize an element, select it first and depending on the small squares that are drawn around the selection bounds, you can try to extend its initial size. resizeElement"
Grid support

<< New in 0.10.0 >>

When activated, graphical elements are automatically aligned on the grid when they are created, moved or resized. When snapping a rectangle, the edges of the rectangle will snap along gridlines.

Snap to Geometry support

When activated, graphical elements can be snapped to existing elements. When snapping a rectangle, the edges of the rectangle will snap to edges of other rectangles corresponding to the existing elements. Similarly, the centers and middles of rectangles will snap to each other. snapToGeometryExample
Alignment for graphical elements

                   

Alignment can be performed whenever two or more graphical elements are selected. They can be aligned between them or resized to match the size of the primary selection.
  • Horizontal Alignment : there are three types of horizontal alignments (left, center, right).
  • Vertical Alignment : there are three types of horizontal alignments (top, middle, bottom).
  • Match width or height : the elements may be resized to match the width or the height of the primary selection.

Note : The primary selection is indicated by black selection handles, non-primary selection is indicated by white handles with a black outline.

primarySelection
AutoResize

Graphical elements can be resized automatically to fit their minimal size. This is used in particular during the Drag'n'Drop of an object from the Outline.
Show/Hide connection Labels << New in 1.0.0M2 >>

You can choose to show or hide the Labels associated with a Connection. In the "Graphics" tab of the Properties View, when a Connection is selected, there is two lists that show you the Labels that are linked with the connection : the Left list contains the labels that are displayed in the diagram, and the left list, those which are hidden. showHideEdgeObjects

Diagram navigation
Initialization of diagram contents << New in 0.10.0 >>

When a diagram is about to be created, it can be initialized with the existing model objects. This feature is available from the creation wizard (when you create a new diagram from an existing model file) and during the model edition, when you create a diagram into an existing model object that could be associated with a diagram. initializeDiagram

Navigation to the parent or last active diagram

       

Using the toolbar menu actions : you can navigate to the previous diagram or the next diagram. You can also navigate to the parent diagram : the parent diagram is a diagram that is associated with the first model object in the parent hierarchy of the current diagram.

From the Editing Window : double click on a graphical element that is decorated with the icon to display the associated diagram.

From the Outline : double click on a diagram in the outline to show its content.

Diagram creation From the Editing Window : double click on a graphical element. If the element can be associated with a diagram, this will create a new one. When more than one diagram can be associated with the element, a popup appears and you can choose the type of diagram to create.

From the Outline : select a valid model object, "Right Click > Add Diagram > XXX Diagram".

Connections
Connection creation Creation of a "connection" (a.k.a. link, flow) requires that the user click twice, once on the source, and again on the target. This allows the user to scroll the diagram between clicks.
Routers Three routers are available :
  • The RectilinearRouter routes the Connection so that the lines are always vertical or horizontal.
  • The ObliqueRouter routes the Connection with a straight line.
  • The ForestRouter is mainly used to represent hierarchy connections such as the inheritance concept.
routers
Move labels The labels that are associated with a connection are completely movable. Thus you can arrange them to get a more readable diagram and avoid labels to be displayed above a connection. moveConnectionLabel
Model validation
Display validation errors << New in 0.9.0 >>

The validation errors are displayed in the diagrams. displayValidationErrors

Documentation View
Documentation View You can add additional informations on a graphical element in the Documentation View. Select the element in the diagram, and then in the Documentation View, choose the Comments tab. Then, you can type a multiLine text. commentTabInDocumentationView
Link external resources You can link Resources with a graphical element. Select the element in the diagram, and then in the Documentation View, choose the Resources tab. When you add a new Resource, a dialog appear : resourceTypeSelectionDialog You have to choose the Resource type you want to link with your element, and then an appropriate selection Dialog is shown. When you have choosen a Resource you can then directly open it with the default editor by double clicking on it in the Documentation View. For example here is an example where you can link another diagram : resourceTabInDocumentationView
Outline View
Display mode

       

You can change the display mode of the outline :
  • Only the Tree View : display only a hierarchical view of the model objects
  • Only the Overview : display only an overview of the current diagram
  • Both views : display both view separated
Filters

You can filter elements that are displayed in the tree view of the outline. Select the "Filters..." action from the 'Menu' icon at the top right of this view. outlineFiltersDialog Three filters are defined :
  • Diagram : diagrams are hidden
  • Only diagrams : only diagrams with their container model object are shown
  • Additional Resources : Additional resources are hidden
Object sorting You can sort the model objects that are at the same hierarchical level. By default they are ordered following their creation date, but you can arrange them in alphabetical order.
Palette tools
Marquee tools There are three different tools dedicated to the selection of the elements in the diagram :
  • Marquee : select the nodes (not recursive, only the first parent node) that are contained in the area.
  • Full Marquee : select all the nodes (even the children node of a selected object).
  • Connection Marquee : select only the connections that are contained (fully or not) in the area.
marqueeTools
Palette presentation

The Palette can be displayed with several presentations :
  • display small or big icons
  • show only text, only icons or both text and icons
  • the tools are arranged as a list or in columns
palettePresentation
Model Refactoring
Reconnecting Links User is allowed to reconnect links. All necessary model changes will be performed on the back stage. All that one have to do is to select the link on the diagram, and grab one extremity to reconnect. Drag the link end and drop it on the new target. While dragging the link end over an incorrect target, the mouse cursor will display a cross . This means the link will return to its initial state before dragging the link.
Placing existing object in other containers It is also possible to change an exisiting element of container. A container can be a Package in a Class Diagram, a Region un a StateMachine Diagram, etc. User is able select a graph node and with a simple Drag and Drop, try to place it over different containers. When the target object cannot host the selection, the mouse cursor will display a cross . On the other hand, when changement is allowed, the cursor will remain normal. Note that diagrams will perfom changements when the mouse cursor is over the new container. This means user does not need to drag the whole figure inside the new container to change its parent.
Changing properties of Graph Node Some elemens such as Classes in a Class diagram may have lists of properties or operations. It is also available to change (one by one or several at a time) these properties. You have to select the concerned objects and drag and drop them into the new node. As well as the actions explained above, the mouse cursor will display a cross when the you are dragging over a wrong place.
Note This changes can be done graphically. Dragging and Dropping object from the Outline will be neither executed or modified.