FileDroppers allows the Delphi form editor to accept files being dropped onto it. As they are dropped, these files are automatically converted into populated Delphi components (really amazing stuff).
This plug-in is similar to the DelphiDrop plug-in that offers drag and drop functionality for CodeRush 5.
FileDroppers enhances the Delphi IDE by means of drag-and-drop operations. Drag files onto a form you're designing in the IDE and this plug-in automatically interprets the dropped content. The dropped content is used to:
Unlike its predecessor, DelphiDrop, FileDroppers is designed to work solely with files; this being the case, you cannot drag text snippets to and from Delphi with this plug-in. You can, however, drag a variety of different file types onto Delphi forms, creating controls, with the type of component created being dictated by the type of file dropped. For example, you can drag a SQL text file (*.sql) from your Desktop onto a Delphi form and create a fully populated TQuery component (this is pretty cool).
The types of content that can be dragged to create components are listed below:
When you drop a Windows Video file (AVI) onto your form, FileDroppers automatically creates a TAnimate component containing the dropped graphic. It's Active property will be set to False.
When you drop a device-independent bitmap (DIB), a device-dependent bitmap (DDB) or an enhanced metafile (i.e., just about any graphical content), FileDroppers automatically inserts a TImage containing the dropped graphic.
When you drop a bitmap (BMP) onto a TToolbar control, FileDroppers automatically creates a TSpeedButton containing the dropped graphic. This plug-in technically should be creating a TToolButton when the image is dropped; however, since this would necessitate the creation of a linked TImageList, etc to make the magic work, this shortcut was used instead. Since full source is available, anyone wishing to update this to create "proper" toolbar items is encouraged to do so.
When you drop a structured query language file (SQL), FileDroppers automatically creates a TQuery component. The contents of the dropped *.SQL file will reside in the SQL property of the created TQuery.
It is also possible to drop files without creating components. The actions listed below require you to drop a file onto a particular type of Delphi component, similar to the Toolbar actions above.
When a file is dragged onto your Delphi form and dropped onto an existing TMemo control, FileDroppers automatically populates the TMemo with the contents of your file. So, for example, when dragging the *.SQL file above to create a TQuery component, if the file was dropped onto a TMemo component instead of onto the form, the memo would display the SQL script from the SQL file.
When a file is dragged onto your Delphi form and dropped onto an existing TListBox control, FileDroppers automatically populates the TListBox with the contents of your file. So, for example, if you drag Delphi 6's README.TXT file and drop it onto a TListBox component instead of onto the form, the list box would display the following:
One of the best things about FileDroppers is that it can easily be extended to support more file types and drop targets. In the most advanced of the FileDropper units in this plug-in there are only two methods that need to be updated:
AllowCreateFromFile - to tell Delphi whether or not to allow a component to be created from the dropped content.
DropFiles - to perform the dropping of file information.
At most, about twenty lines of code have been used to support any existing drop type. So if someone wanted to extend the QueryDropper, for instance, to support *.QRY files in addition to *.SQL files, it is relatively painless to do so.
Copyright 2004 Ackerson Software, All Rights Reserved.
Author: Jim O'Brien
Created: September 6, 2002
Plug-In Type: Standard
Options Page: No
This plug-in is NOT currently supported.
This plug-in is not the property of Developer Express; it is the sole property of its author. As such, Developer Express cannot be held liable for any incidental damages that may be related to the usage of this plug-in.