Follow-up: FW: Repost: finely tuned drag-n-drop
- From: "James D. Watson" <james watson erols com>
- To: <gtk-list gnome org>
- Subject: Follow-up: FW: Repost: finely tuned drag-n-drop
- Date: Thu, 25 Apr 2002 20:45:37 -0400
Good evening,
I found a way to solve this (possibly uninteresting) problem. My sample
code is >500 lines, though, so instead of posting it to the group, would be
happy to directly email the code to anyone who emails me privately.
I ended up doing the bulk of the work in a drag_drop handler.
Regards,
James
-----Original Message-----
From: James D. Watson [mailto:james watson erols com]
Sent: Wednesday, April 24, 2002 8:24 PM
To: gtk-list gnome org
Subject: Repost: finely tuned drag-n-drop
Good evening,
I remain hopeful I could get some help with the posting at history. First
time I didn't get any takers :-). Does anyone have any [germane] thoughts
to throw my way?
I appreciate any help folks can offer.
Thank you,
Regards,
James
-----Original Message-----
From: gtk-list-admin gnome org [mailto:gtk-list-admin gnome org]On
Behalf Of James D. Watson
Sent: Sunday, April 14, 2002 1:33 PM
To: gtk-list gnome org
Subject: Q: finely tuned drag-n-drop
Good morning,
GTK+-2.0 documentation for GtkTreeView::gtk_tree_view_set_reorderable
reads "This function does not give you any degree of control over the
order -- any reorderering is allowed. If more control is needed, you should
probably handle drag and drop manually."
That's what I'm trying to do :-)
I'm trying to limit the order in which a user can place my GtkTreeView
rows. My GtkTreeModel has "above" and "below" gint columns for which
adjoining rows must match. e.g.,
rowname above below
row_a 15 20
row_b 20 20
row_c 20 15
Note that:
row_a's "below" must match row_b's "above"
row_b's "below" must match row_c's "above"
I want to support reordering such that someone *could*
o move row_c on top of row_a (because then row_c's "below" would
match row_a's "above")
but could *not*
o move row_a below row_b (because even though row_c's "above" would
match row_a's "below", row_b's "below" would not match row_a's
"above").
If I tie in to the "drag_drop" signal, I can do:
GtkTreeSelection *sel =
gtk_tree_view_get_selection(GTK_TREE_VIEW(widget));
gtk_tree_model_get(model, &iter,
ABOVE_COLUMN, &above,
BELOW_COLUMN, &below,
-1);
which tells me the above/below for the current selection which is the one
being moved. (My selection type is "SINGLE".)
But this doesn't seem to be the right signal to tie in to since I want to
find out *where* in the GtkTreeView (i.e., what row) the current selection
is trying to be dropped, whereupon I could then make an "accept" or "reject"
decision.
I'd certainly appreciate some tips.
Regards,
James
_______________________________________________
gtk-list mailing list
gtk-list gnome org
http://mail.gnome.org/mailman/listinfo/gtk-list
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]