Converting Delphi 7 property editor to Delphi XE2

Jerry Dodge picture Jerry Dodge · Jan 7, 2012 · Viewed 8.7k times · Source

First of all, I have never written a property editor from scratch, but had some help with one in another question. Refer to the accepted answer there. This was in Delphi 7, and now I have started using XE2 and I have to make sure my property editor is compatible with both 7 and XE2.

It's essentially a collection editor, with the difference that each collection item has its own named component in the parent form. Is there anything new about the property editors in XE2 since 7, since it is a huge version jump?

I do NOT want to make a complete copy of my unit for different versions. I want to maintain all possible versions in one unit.

Edit

It appears that Delphi XE2 has the same property editors as Delphi 7, but the issue I was facing was that although I was including DesignIDE in my package, it could not find anything, so I had to add the ToolsAPI folder to my library path.

However, now I have a new issue after this.

[DCC Fatal Error] ToolsAPI.pas(18): F1026 File not found: 'DockForm.dcu'

I'm lost in the whole concept of BPL packages and requiring others, etc.

Answer

Widget picture Widget · Jan 18, 2012

DesignIntf, DesignEditors, DesignMenus, DesignWindows are part of DesignIDE.bpl and is found in \Embarcadero\RAD_Studio\9.0\lib\win32\release\designide.dcp. But there is no designide.dcp for 64bit which is why it throws an error when compiling a 64bit package that references these units.

There is no 64bit version of DesignIDE because it is for a design time package and design time packages are 32 bit only (remember Delphi IDE is still only 32 bits). So always set your design time package as 32bit, not 64bit. :)

Mike