Simon Stuart has released the source code for the Delphi IDE MonkeyMixer plugin which allows you to have FMX and VCL forms within the same application. This is helpful because it allows you to use components like the Tray Icon with your Firemonkey applications in Delphi XE6. You can access the MonkeyMixer source code on Github. If you want to dig into the MonkeyMixer source code you may also want to know more about the Open Tools API which is used to interface with the Delphi IDE. Building add ons for the Delphi IDE using the Open Tools API is somewhat of an undocumented exercise. Fortunately the creators of the GExperts IDE plugin have written a FAQ which explains a lot of how the Open Tools API works. There is even a simple ‘hello world’ IDE wizard sample project that you can start from. The GExperts Open Tools API FAQ answers questions like:
-
How do I obtain the current project (IOTAProject) interface?
-
Is there any OTA support for parsing a source file or obtaining Code Insight information?
-
Should I compile my wizard as a DLL or a Package?
-
How can I get notified when a source file has changed?
-
How can I get notified when a form designer or component is selected?
-
How can I do custom painting or drawing (colors, lines, etc.) in the IDE code editor?
-
How can I obtain the Name property of a form?