Skip to content

Model Grid

Simon Mourier edited this page Feb 19, 2020 · 1 revision

The CodeModeler Model Grid is like a spreadsheet for viewing and editing the model. You can open it using the Ribbon Bar or using the Visual Studio Project’s context menu. When opened, it will look like the combination of a tree view and a list view.

Note: The Model Grid is a Visual Studio Tool Window. It means it can be resized, left open simultaneously with other document windows (such as the Design surface editor), dragged by its title bar, and/or docked in the IDE.

It also has a context menu shown in the following image (when you right click on the left side bar):

Model Grid - Picture 64

The grid always displays one or more types (entities and/or enumerations) as root elements of the left tree view. The list of types displayed as root elements depends on the context when the grid was opened. If you open the grid on one entity, you will only see this entity. If you opened the grid on a namespace, you will see all types in that namespaces, etc.

The buttons located in the left bar are toggle buttons that match the context menu top items. They add or remove sub concepts to the root concepts. The sub concepts selection is defined with an M3 selectors associated with the button.

For example, you can add properties of entities if you toggle the second button (of course, this button will have no effect on enumerations as they don’t have properties). You can add or remove buttons using the “Selectors Chooser” in the context menu.

The list of columns in the view depends on the concepts shown. You can add or remove columns using the “Column Chooser” in the context menu.

Columns Chooser

When you click on the “Column Chooser” menu item, the following dialog box will be shown:

Columns Chooser - Picture 65

The “Concepts” column on the left corresponds to the defined list of meta concepts handled by SoftFluent CodeModeler.

The “Available Columns” column on the right corresponds to the defined list of properties that the concept selected on the left has, so its content changes when you change the selected concept on the left. In this example, we can see the list of properties of the “property” concept.

The “Display Columns” column corresponds to the list of columns selected from the right column. You can add or remove properties from the right to the list of displayed columns. In this example, we have just added the “Clr Full TypeName” property to the display columns. When we close that dialog box, we’ll see something like this:

Columns Chooser - Picture 66

We can see the new “Clr Full TypeName” column in the list view. Note the grid can be edited inline, for example when we click in a “DbType” cell, we can change it:

Columns Chooser - Picture 67

Many properties of CodeModeler concepts are computed or read-only properties, they can be displayed, but they cannot be changed.

Selectors Chooser

When you click on the “Selectors Chooser” menu item, the following dialog box will be shown:

Selectors Chooser - Picture 45

The list contains the following columns:

  • Description which is just a name that defines the expression.

  • System which is true or false. A “System” selector is built-in and cannot be removed nor modified.

  • M3 Expression which is an M3 selector which defines which sub concept will be shown/hidden when the button is toggled on/off.

For example, if we click on the “Add New” button, we can define a new button/selector with the /entity/method[starts-with(@Name, “LoadBy”)] path:

Selectors Chooser - Picture 68

When we click ok, a new button is created that can be toggle and the model grid will display all methods with a name starting with the “LoadBy” text:

Selectors Chooser - Picture 69

Clone this wiki locally