2008-02-29 Cosimo Cecchi <cosimoc@gnome.org>
[nautilus.git] / libnautilus-private / nautilus-icon-dnd.h
blob72c8616cfcf647b2f70cd2bc244cf28bbe5cae55
1 /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
3 /* nautilus-icon-dnd.h - Drag & drop handling for the icon container widget.
5 Copyright (C) 1999, 2000 Free Software Foundation
6 Copyright (C) 2000 Eazel, Inc.
8 The Gnome Library is free software; you can redistribute it and/or
9 modify it under the terms of the GNU Library General Public License as
10 published by the Free Software Foundation; either version 2 of the
11 License, or (at your option) any later version.
13 The Gnome Library is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 Library General Public License for more details.
18 You should have received a copy of the GNU Library General Public
19 License along with the Gnome Library; see the file COPYING.LIB. If not,
20 write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21 Boston, MA 02111-1307, USA.
23 Authors: Ettore Perazzoli <ettore@gnu.org>,
24 Darin Adler <darin@bentspoon.com>,
25 Andy Hertzfeld <andy@eazel.com>
28 #ifndef NAUTILUS_ICON_DND_H
29 #define NAUTILUS_ICON_DND_H
31 #include <libnautilus-private/nautilus-icon-container.h>
32 #include <libnautilus-private/nautilus-dnd.h>
34 /* DnD-related information. */
35 typedef struct {
36 /* inherited drag info context */
37 NautilusDragInfo drag_info;
39 gboolean highlighted;
41 /* Stipple for drawing icon shadows during DnD. */
42 GdkBitmap *stipple;
44 /* Shadow for the icons being dragged. */
45 EelCanvasItem *shadow;
46 } NautilusIconDndInfo;
49 void nautilus_icon_dnd_init (NautilusIconContainer *container,
50 GdkBitmap *stipple);
51 void nautilus_icon_dnd_fini (NautilusIconContainer *container);
52 void nautilus_icon_dnd_set_stipple (NautilusIconContainer *container,
53 GdkBitmap *stipple);
54 void nautilus_icon_dnd_begin_drag (NautilusIconContainer *container,
55 GdkDragAction actions,
56 gint button,
57 GdkEventMotion *event,
58 int start_x,
59 int start_y);
60 void nautilus_icon_dnd_end_drag (NautilusIconContainer *container);
62 #endif /* NAUTILUS_ICON_DND_H */