Difference between revisions of "Drop files event"

From Free Pascal wiki
Jump to navigationJump to search
Line 9: Line 9:
 
Add OnFilesDrop: TFilesDropEvent to TCustomForm, TApplication and TApplicationProperties.  
 
Add OnFilesDrop: TFilesDropEvent to TCustomForm, TApplication and TApplicationProperties.  
  
The widgetsets should call method IntfFilesDrop of target form, which would invoke the OnFilesDrop event of the form and also of the application.
+
==Possible implementation per widgetsets==
  
==Possible implementation per widgetsets==
+
The widgetsets should call method IntfFilesDrop of target form (or main form if drop target is unknown) and the application.
  
 
===Win32/64===
 
===Win32/64===
Line 31: Line 31:
  
 
==TODO==
 
==TODO==
# agree on details
+
# implement for widgetsets
# implement for LCL/widgetsets
+
# documentation
# example application and documentation
 

Revision as of 11:58, 24 June 2007

The files drop event will be invoked when the user drops one or multiple dragged files on one of application's forms.

First this event should be fired for target form (or main form if drop target is unknown), then for the application.

Possible implementation for LCL

TFilesDropEvent = procedure (Sender: TObject; const FileNames: Array of String) of Object;

Add OnFilesDrop: TFilesDropEvent to TCustomForm, TApplication and TApplicationProperties.

Possible implementation per widgetsets

The widgetsets should call method IntfFilesDrop of target form (or main form if drop target is unknown) and the application.

Win32/64

  • set DragAcceptFiles for every form
  • respond to WM_DROPFILES message

GTK1/2

Qt

Carbon

  • respond to kAECoreSuite/kAEOpenDocuments event to open application associated files
  • respond to kAECoreSuite/kAEOpenContents event, where content format is typeFSRef

Related bug reports

TODO

  1. implement for widgetsets
  2. documentation