Hi, Maybe you are missing something, because once you call drag_begin(), the DnD is automatically handled by GTK. Did you first call enable_model_drag_dest() on your tree?
I implemented manual DnD in a TreeView and it works well, you can try to see what are the differences and why your doesn't work: http://fingelrest.silent-blade.org/index.php?n=Hobbies.ExtListView On 10/25/07, Jeffrey Barish <[EMAIL PROTECTED]> wrote: > I am trying to implement a manual drag of a row in a treeview to another > location in the same treeview. I need to initiate the drag manually > because there are conditions in which I want to disallow dragging of a > particular row. I have figured out how to initiate the drag: > > 1. Grab the position of the initial mouse press event. > 2. In a motion_notify_event handler, compare the latest position of the > mouse with the initial mouse press using drag_check_threshold. > 3. When drag_check_threshold returns True, execute drag_begin. > > My problem is that I am not able to end the drag. When I release the mouse > button at a dropable location, nothing happens. I have tried detecting all > the drag-related signals, but I don't get any of them when I release the > mouse button. I even tried detecting button release, but I don't get it > until I escape out of the drag. Any idea what I am missing? > -- > Jeffrey Barish > > _______________________________________________ > pygtk mailing list pygtk@daa.com.au > http://www.daa.com.au/mailman/listinfo/pygtk > Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/ > _______________________________________________ pygtk mailing list pygtk@daa.com.au http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/