To be able to modify the Delphi IDE, it is often useful to know what windows and components are available in the IDE. For that purpose I wrote a simple IDE Explorer expert. It shows the properties, class, inheritence and ownership of the components that make up the IDE.
To install the expert, open the IDEExplorer.bsdproj project file from the IDE. As soon as the files appear in the project manager, you can right click the IDEExplorer.bpl entry, and from the popup menu, select the Install item. After a few seconds you will get a message that the file was installed. If all is well, the IDE explorer is available from the Tools menu in the IDE.
NOTE: This expert compiles with and installs in Delphi 2005 and 2006. It probably also works in Delphi 7. I am not so sure it also works in Delphi 8, since that requires a special DCC32 command line compiler version, version 7.1. This was available as download for registered users once, but I don’t know if this is still the case. I don’t have Delphi 8 installed, so I did not test this expert with it.
The main window of the explorer looks like this:
The left pane shows the available controls and components, the right pane shows information about the item that is selected in the left pane. The parts of the window are self-explanatory, but I will discuss them briefly below.
What is exactly displayed in the left pane depends on what button was pressed. If you press the Owned button, you will get a tree of the items owned by a component, with Application as the root. If you press Parented, you will get a tree of all main forms visible, and all the items that are parented by them.
Using the Search button, you can search the tree for a name or a type, starting with the currently selected item in the tree. By clicking Search Next, you can find the next item with these search criteria.
The right pane contains two tabs. The Properties tab, as shown in the image above, shows (surprise!) the published properties of the item selected in the left pane. If a property is a class, you can also see the published properties of that class. In the image, the properties of the ActiveControl object are shown.
The Trees tab shows two or three trees (if the item is a component, it does not always have a parent). The Inheritance tree shows the ancestor classes of the item. The Ownership tree shows the owner and its owner, etc., and the Parentage tree shows the parents and grandparents of the component, if it is a control.
The IDE Explorer is freeware. All rights are reserved. Its code is provided as is, expressly without a warranty of any kind. You use it at your own risk.
I hope this code is useful to you. If you use some of it, please credit me. If you modify or improve the explorer, please send me the modifications.
I may improve or enhance the explorer myself, and I will try to post changes here. But this is not a promise. Please don’t request features.
Standard Disclaimer for External Links
These links are being provided as a convenience and for informational purposes only; they do not constitute an endorsement or an approval of any of the products, services or opinions of the corporation or organization or individual. I bear no responsibility for the accuracy, legality or content of the external site or for that of subsequent links. Contact the external site for answers to questions regarding its content.
Disclaimer and Copyright
The coding examples presented here are for illustration purposes only. The author takes no responsibility for end-user use. All content herein is copyrighted by Rudy Velthuis, and may not be reproduced in any form without the author's permission. Source code written by Rudy Velthuis presented as download is subject to the license in the files.