Kristian Rietveld a écrit : > On Tue, Nov 13, 2007 at 09:58:15PM +0100, Damien Carbonne wrote: > >> My problem is the following: >> I'm trying to convert mouse coordinates (x, y), obtained from a >> button_press event, >> into the clicked row by using gtk_tree_view_get_dest_row_at_pos. >> I tried to use gtk_tree_view_widget_to_tree_coords to convert (x, y), >> without success. >> I noticed that there is a coord shift between (x, y) obtained from >> button_press and the one obtained with DnD. >> >> So my question is: >> - Is there any practical solution, with gtk 2.10, to convert >> button_event coords to be used >> with gtk_tree_view_get_dest_row_at_pos ? >> - Or do I have to wait for a GtkAda 2.12 binding ? >> > > For handling button-press events, you want to: > > 1. Make sure the event is destined for the tree view's bin_window > by checking that > > event->window == gtk_tree_view_get_bin_window (tree_view) > > 2. Then directly call gtk_tree_view_get_path_at_pos() with the > coordinates found in the event. No need to translate coordinates here. > > > It does not make much sense to use gtk_tree_view_get_dest_row_at_pos() > instead, since that function just calls gkt_tree_view_get_path_at_pos() > internally ;). > > > Hope this helps. > > > Thanks, This worked. I wanted to use the other function to create new nodes just like DnD works (Into, Before, After, ...). Looking into code of gtk_tree_view_get_dest_row_at_pos, I realized there was a translation on Y axis using an internal macro (HEADER_...). I have to think again to find the best way to create new nodes! Thanks again Damien > regards, > > -kris. > > > _______________________________________________ gtk-list mailing list gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list