ModelMaker Code Explorer 8

MMX 8 released

On September 7th 2009 ModelMaker Tools released ModelMaker Code Explorer 8. Check the upgrade policy to upgrade existing licenses.

Main new Features

Delphi 2010 IDE and syntax support

  • New Delphi 2010 Win32 language mode on Properties | Pascal| Parsing tab.
  • Support for the delayed option in external procedures.
  • Support for custom attributes in parser and editor.
  • Attributes wizard available for classes and members (multiple selection in explorer). Uses attribute presets, organized similar to templates.

Show Related Classes

  • Show related classes: "Alt+Click" in Explorer Classes view shows Related Classes in a popup window. Also available from the classes view tool bar and Navigate pop-up sub menu and the IDE Editor Navigate commands. Used to navigate (across modules) between
    • a class and its descendants,
    • a class and its ancestor,
    • a class and other classes derived from the same ancestor (siblings),
    • a class and the interfaces it supports (implements)
    • an interface and classes implementing (realizing) the interface.

    Show Related Classes

General New Features

  • The Interface Wizard is invoked when dropping an interface reference node on a class node in the Explorer classes view. Referenced interfaces may defined in other source files as the file was previously parsed by MMX.
  • Pascal: support for type alias IUknown = IInterface in navigation features and the interface wizard.
  • Pascal: Auto add to uses first checks all already "used" units before using a new unit. This makes the feature more precise.
  • Format uses clause: reformats a uses clause either as "combine and wrap units" or "each unit on new line" style. If there's a comment or compiler directive in the uses clause, the clause is skipped and a message displayed. Available in the main IDE MMX |Sorting sub menu and in the Explorer Members view Sorting sub menu. Editor keybinding defaults to Ctrl+Alt+U.
  • Delphi 6, 7 and 2005: Activate Page lets you activate an editor page using a filtered drop down list. A button is inserted in the IDE editor tab control - similar to more recent Delphi IDEs.

    Activate Page

    In Delphi 6 and 7 a Close Page button is also added.
  • Source Indexer "Excluded Paths" accepts sub directories such as "\__history\" . Excluded sub directories are case insensitive. For example:
    "\cv" skips "c:\tests\CVS" and "c:\tests\cvs-tests"
    "\cvs\" skips "c:\tests\CVS\" but not "c:\tests\cvs-tests\"
    "\_history\" skips "c:\source\main\_history\" and "c:\source\options\_history\"
  • Align Code, align selected lines on tokens like
    = : := ; "read" "write"
    . Commonly used to align var, constant and property declarations.
  • Convert to Const now accepts all letters (and digits) when building the constant identifier from the extracted text.
  • MMX dialogs use ClearType font Tahoma.
  • The main IDE Tools sub menu has been split into "Tools" and "Text Tools" to avoid the sub menu getting too large.

Solved bugs

  • D2009: Sorting | Rearrange Members would cause an AV. Fixed.
  • D2009: anonymous methods (closures) without parameters and with an empty param list ( ) would cause parse errors. Solved.
  • D2009: selected text would in some cases (for example in Convert to Const) not use the correct editor encoding, possibly resulting in odd extracted texts. Solved.
  • D2009 (possibly other IDEs too): the explorer classes tree would in some cases be invisible after returning from debug layout. Solved.
  • Pascal: property accessors using qualified names would in some cases cause the importer to fail. Solved.
  • Pascal: combining deprecated calling conventions like far and export with others like stdcall would clear the non-deprecated calling convention. Solved.
  • Pascal: Extract method invoked on nested procedures would not look into containing methods to find local vars and parameters. Solved.