ModelMaker Code Explorer for Visual Studio Screenshots


ModelMaker Code Explorer Docked in Visual Studio Code Editor

Notice how:

  • Classes view displays Inheritance relations for both classes and interfaces.
  • Members view shows members for class selected in Classes view (DemoClass).
  • Property state fields Active / active and ImageIndex / imageIndex are (optionally) grouped with the property
  • Property Accessors and State Fields can be suppressed with the Property Accessor filter.

ModelMaker Code Explorer Overview


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 are converted and modifiers adjusted.

Explorer Refactorings


Editor Refactorings Menu

ModelMaker Code Explorer adds Refactorings to the IDE code editor. These are available from the editor local menu, through the main menu MMX and 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.)

Editor Refactoring Menu


Rearrange Code

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

Rearrange Mode


Property Editor Dialog

The Property Editor dialog is used to add or edit a property. Note how accessors are simply (re)defined with check boxes, even after the property was created. Editing a property's access specifiers takes care of inserting, editing and deleting the fields and methods.

Additionally a property state can be created and maintained. State Field matching uses user defined prefix and character case rules. If you change the property signature (name, type etc) the state field is updated accordingly. IntelliReplace propagates the change field name in code.

Property Editor Dialog