From: Axel S. <Axe...@en...> - 2008-01-11 10:54:35
|
On Fri, 2008-01-11 at 12:19 +0300, Bulat Ziganshin wrote: > Hello Gtk2hs-users, > > does gtk2hs supports drag&drop in windows? linux? Yes, but it's very new and not well tested. But I think we've implemented all the functions that are necessary to do DND. Windows DND should be supported, too. > how should i use it > - is there any examples on the Net? No, I'm afraid there's no tutorial or manual. The best way is to read C tutorials and look at the corresponding Haskell functions. You have to use the current darcs version of Gtk2Hs, the functions for DND are in Gtk/General/Drag and Gtk/General/Selection. Gtk2Hs only implements what the C documentation calls "high-level DND interface". That is, you don't need to worry about most DND from Gdk (Gdk = low level functions of Gtk). For widgets to receive DND events, you: - create a target list (see Selection) and insert the targets you want - enable these targets for a given widget using dragDestSetTargetList - connect to dragDataDrop and dragDataReceived in which you call selectionDataGet to receive the DND data For widgets to generate new DND events, you: - create a target list - enable these targets using dragSourceSetTargetList - connect to dragDataGet which calls selectionDataSet There's quite a lot of documentation in the Drag module. However, I got no example at hand that shows how it all works together. That's on my todo list. Hope this helps, let us know how you get on and if anything is missing. Cheers, Axel. |