diff options
author | Benjamin Otte <otte@redhat.com> | 2010-10-10 08:31:45 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2010-10-30 01:49:59 +0800 |
commit | b3a95d0299386bccbdebb967d15f4df02cf15891 (patch) | |
tree | 52b90e4b913bb1c4cd17df3335216bf518a6e01c /libgnomecanvas/gnome-canvas.h | |
parent | 08e71ba8ae72f333f017c25168b9ec85ea5954fa (diff) | |
download | gsoc2013-evolution-b3a95d0299386bccbdebb967d15f4df02cf15891.tar.gz gsoc2013-evolution-b3a95d0299386bccbdebb967d15f4df02cf15891.tar.zst gsoc2013-evolution-b3a95d0299386bccbdebb967d15f4df02cf15891.zip |
gnome-canvas: Change GnomeCanvasItem->point vfunc
Previously the function returned the distance to the nearest item. Now
it only returns an item that is hit. This slightly changes semantics
(button events are no longer dispatched to the nearest item, but only to
the item actually clicked on), but makes the code way simpler and
actually does what one would expect.
Diffstat (limited to 'libgnomecanvas/gnome-canvas.h')
-rw-r--r-- | libgnomecanvas/gnome-canvas.h | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/libgnomecanvas/gnome-canvas.h b/libgnomecanvas/gnome-canvas.h index 864f9e649f..70a8f5c736 100644 --- a/libgnomecanvas/gnome-canvas.h +++ b/libgnomecanvas/gnome-canvas.h @@ -171,14 +171,13 @@ struct _GnomeCanvasItemClass { void (* draw) (GnomeCanvasItem *item, GdkDrawable *drawable, gint x, gint y, gint width, gint height); - /* Calculate the distance from an item to the specified point. It also - * returns a canvas item which is the item itself in the case of the - * object being an actual leaf item, or a child in case of the object - * being a canvas group. (cx, cy) are the canvas pixel coordinates that - * correspond to the item-relative coordinates (x, y). + /* Returns the canvas item which is at the given location. This is the + * item itself in the case of the object being an actual leaf item, or + * a child in case of the object being a canvas group. (cx, cy) are + * the canvas pixel coordinates that correspond to the item-relative + * coordinates (x, y). */ - gdouble (* point) (GnomeCanvasItem *item, gdouble x, gdouble y, gint cx, gint cy, - GnomeCanvasItem **actual_item); + GnomeCanvasItem * (* point) (GnomeCanvasItem *item, gdouble x, gdouble y, gint cx, gint cy); /* Fetch the item's bounding box (need not be exactly tight). This * should be in item-relative coordinates. |