ModelMaker Code Explorer Screenshots
ModelMaker Code Explorer docked in the Delphi IDE Editor
Notice how:
- Classes view displays Inheritance relations for both classes and interfaces
- Shortcuts to immediate ancestors declared in other modules are optionally displayed.
- Shortcuts to supported interfaces are optionally displayed.
- Members view shows members for class selected in Classes view (TDemoClass).
- Property access method SetActive and property state field FActive are (optionally) grouped with the property
- Documentation for DoSomething is picked up and displayed in the Documentation Pane (top view). Documentation can be created or edited in this pane.
- Local procedures LocalProcA and LocalProcB are (optionally) displayed nested

Some new MMX 6 features
- Entity Insight]™ bar - quick access to attributes for selected entities.

- IDE editor tool bar] - dockable, customizable tool bar with 80+ MMX editor commands.

- Cursor Indicator] and centered positioning improve navigating with explorer and source indexer.

- The MMX toolbar contains alternative Member Search bar + search window.

New MMX 5 / MMX-VS 2 features
- Classes are displayed as types contained by the module, similar to how nested types are displayed for a class. This allows multiple selecting of classes for copy/paste, move/delete
- Non-class types such as enumerates, delegates and sets are displayed and can be Renamed, Copy/Pasted etc.
- Source Indexer supported tabbed searching.

Some Explorer View Refactorings
The Explorer view supports many Refactoring and Restructuring commands. The commands in the explorer views (left) operate on the selected entities in the explorer. This as opposed to the editor refactorings which operate in the editor context.
Additionally drag and drop can be used to copy / move members or classes. Where necessary members will be converted. For example: drop a plain module procedure on a class to convert it to a normal method.

Editor Refactorings Menu
ModelMaker Code Explorer adds Refactorings to the IDE code editor. These are available from the MMX toolbar, the editor local menu, through the main menu MMX and additionally through keyboard shortcuts.
The editor refactorings operate on the IDE editor cursor position. For example: Add Field, Method, Extract Method, Rename parameter, Add Local Variable etc.
Generic operations include: Edit, Delete, Cut, Copy entity (method, class, property etc.)

Rearrange Code
The Members view Rearrange Mode allows dragging entities (classes, members) to a new location. Comments and attributes are moved with the entities

Property Editor Dialog (pascal)
The Property Editor dialog is used to add or edit a property. Note how accessors are simply (re)defined by checking none, field or method. Editing a property's access specifier takes care of inserting, editing and deleting the fields and methods.
If you change the property signature (name, type etc) the access members will be updated accordingly. IntelliReplace propagates the renamed field in code.
The Integrated Creational Wizard helps initializing / finalizing the property in constructor and destructor.

Method Editor Dialog (pascal)
The Method Editor dialog is used to add or edit a method. Note the integrated Parameter Wizard that allows structured editing of parameter lists. Renamed parameters are optionally propagated in the method implementation.
Notice how the type selector and additional options are collapsed here - check the property editor dialog above.


