Tuesday, September 14, 2004


John Kaster's session Overview of Delphi (Diamondback) for the Microsoft .NET Framework. The handout for this session is HUGE! A lot of enhancements and new features to cover.

The IDE has multiple personality disorder. It supports C#, Delphi/Win32 & Delphi.NET and the current personality you are using is indicated by the icon. You can have projects of each type combined in the same project group, and can switch between them without closing the IDE.

There is one object inspector and tool palette for all the personallities. Both have improved look and feel and better context management - the contents change based on what you are currently doing.

The welcome page includes an integrated customizable news feed reader. Defaults to BDN content, but additional content can be added.

The IDE supports 3 layout:

  • The Default docked layout (as introduced in Delphi 8)
  • Classic undocked layout (similar to Delphi 7)
  • Debug layout

When debugging your Win32 and .NET debuggers work simultaneously so you can debug both a managed and unmanaged application at the same time. The Debugging .NET code is hosted in a Win32 process.

Can automatically add an exception to the ignore list from the exception break dialog in the IDE. Also given the option to break or continue at an exception.

The breakpoint view supports in-place editing. You can use a checkbox to quickly enable or disable breakpoints.

The CPU view now also shows IL disassembly for managed processes and ASM for win32 processes, both with the souce code integrated in the same view.


Refactoring features supported for all personalities and it knows the langauge and the scope, so all occurances in all files are upated.

  • Rename
    • Refactoring provides a preview showing all changes over multiple files.
  • Extract method
    • Create a method out of selected code.
    • Looks at variables that need to be passed it.
    • Passes by var passed parameters when necessary
    • Removes variables that are used only in new method.
    • Will create a function or procedure depending on if
  • Extract resource string
  • Sync Edit
    • Imediate editing of multiple occurances of the same identifier.
  • Find reference, unit or namespace
    • Not just a find text, it knows the scope of the references, so if you have multiple references with the same name it finds the one that you are referring to
  • Declare field and variable
    • As you need a variable or field it will declare it for you automatically.
    • When declaring a visible field it checks your descendant classes for conflicts.
    • Verifies that you are making a valid decelaration.

Code insite adds Help Insight, which is similar to the feature in Visual Studio, but significant enhanced.

On demand loading of the tool pallet so only the components you need are loaded.


New debuggers can be added to the IDE by 3rd party's

Better connection to IIS

Intelligent mode switching

Better evaluators


  • Multi-level backups with history view
    • Provides difference view
    • Provides rollback
    • Provides undo for the form designer
    • Does not require StarTeam, but will integrate with history in StarTeam
  • StarTeam integration
    • Enhanced IDE integrated menu items
    • StarTeam project managmenet
      • Create
      • Check in/out
      • Folder management
    • Embedded client
    • External client launching
    • Connect to multiple servers
    • Project manager
      • Project groups
      • Manage associations for project groups
    • Structure pane
    • Items pane files open in IDE
    • History view is StartTeam aware
    • Locking / unlocking / merging
    • Change requests
    • File renames are tracked
      • History is not broken when a file is renamed.
  • Delphi Enterprise and above include a StarTeam license

Miscellaneous IDE

  • Persistent bookmakrs
  • Error insight
    • Expanded real-time error information for source.
    • Integration into the structure view.
  • Help insight
    • Tooltip from XML doc information
  • Updated / consolidated new component wizard
    • Combines all functions of New VCL component / import AX Type library / control
    • Open API

No comments: