Desktop, Code model, Difference view, Interface Wizard


ModelMaker Desktop

ModelMaker uses interconnected views to show differents aspects of the model. The dockable views can be organized in layouts. Here you see a layout showing Classes, Class Members and the Diagram Editor.

The symbols displayed in the diagram editor are directly linked to the underlying code model and the diagram editor is just another way of creating, selecting and modifying classes and members.

ModelMaker Overview


Design layout - Diagram Explorer

A layout showing the diagram explorer (right) that allows organizing diagrams in user definable hierarchies.

ModelMaker Design Layout


Code Model

The ModelMaker Code Model is directly edited with
  • Classes view (top left); containing a filtered tree or list of classes
  • Members view (bottom left); containing a filtered list of class members
  • Method Implementation Code editor (right) used to edit the selected method implementation.
  • The Module Code View (displayed in next image)

Code Model View


Modules view

The ModelMaker Modules View Shows the Modules (Pascal units, C# source files) in the model and the classes and interfaces they contain. The members view displays the members for the class selected in the Modules view. The (Pascal) Module Code editor shows the module code explorer (module procedures, uses clauses) and module code details. Drag drop operations include moving a class to a module or rearranging classes within a module. Copy members to a class, convert a module procedure to a class's method and many more.

Units Model View


Property Editor

ModelMaker helps creating class members by fully language aware input dialogs that avoid and check for bad input. Creating properties and events is even more automated: simply define read and write access to be a field or method and ModelMaker will create and update the access members. If you later deceide to change any of the property's attributes (name, data type etc), the access members will be automatically updated. Access members are created, updated and deleted automatically.

Property Editor Dialog


Difference View

The Difference View helps tracing differences between the ModelMaker model and changes made to source files on disk. The Difference view offers a file based or structured difference between the model and source files or just any two files on disk. The model can be updated by importing a source file, class or method.

Difference View


Interface Wizard

The ModelMaker Interface wizard analyzes a class for supported interfaces and will suggest actions to implement missing or repair incorrect mapped members. Click the 'repair' button to fix all mapping errors.

Also displayed can be: redundant members (in class but not required by supported interfaces), inherited interfaces, correct mapped members and more.

Interface wizard


Design Patterns

ModelMaker Design Patterns are ready to use active agents which insert and maintain pattern specific members and code snippets. The patterns view shows applied patterns and the related entities. The patterns palette also shows the user defined Code Templates.

Design Patterns