| 1 /** |
|
| 2 * @file gtkdnd-hints.h GTK+ Drag-and-Drop arrow hints |
|
| 3 * @ingroup gtkui |
|
| 4 * |
|
| 5 * Gaim is the legal property of its developers, whose names are too numerous |
|
| 6 * to list here. Please refer to the COPYRIGHT file distributed with this |
|
| 7 * source distribution. |
|
| 8 * |
|
| 9 * This program is free software; you can redistribute it and/or modify |
|
| 10 * it under the terms of the GNU General Public License as published by |
|
| 11 * the Free Software Foundation; either version 2, or (at your option) |
|
| 12 * any later version. |
|
| 13 * |
|
| 14 * This program is distributed in the hope that it will be useful, |
|
| 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 * GNU General Public License for more details. |
|
| 18 * |
|
| 19 * You should have received a copy of the GNU General Public License |
|
| 20 * along with this program; if not, write to the Free Software |
|
| 21 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
|
| 22 */ |
|
| 23 #ifndef _GAIM_DND_HINTS_H_ |
|
| 24 #define _GAIM_DND_HINTS_H_ |
|
| 25 |
|
| 26 #include <glib.h> |
|
| 27 #include <gtk/gtkwidget.h> |
|
| 28 |
|
| 29 /** |
|
| 30 * Conversation drag-and-drop arrow types. |
|
| 31 */ |
|
| 32 typedef enum |
|
| 33 { |
|
| 34 HINT_ARROW_UP, /**< Up arrow. */ |
|
| 35 HINT_ARROW_DOWN, /**< Down arrow. */ |
|
| 36 HINT_ARROW_LEFT, /**< Left arrow. */ |
|
| 37 HINT_ARROW_RIGHT /**< Right arrow. */ |
|
| 38 |
|
| 39 } DndHintWindowId; |
|
| 40 |
|
| 41 /** |
|
| 42 * Conversation drag-and-drop arrow positions. |
|
| 43 */ |
|
| 44 typedef enum { |
|
| 45 |
|
| 46 HINT_POSITION_RIGHT, /**< Position to the right of a tab. */ |
|
| 47 HINT_POSITION_LEFT, /**< Position to the left of a tab. */ |
|
| 48 HINT_POSITION_TOP, /**< Position above a tab. */ |
|
| 49 HINT_POSITION_BOTTOM, /**< Position below a tab. */ |
|
| 50 HINT_POSITION_CENTER /**< Position in the center of a tab. */ |
|
| 51 |
|
| 52 } DndHintPosition; |
|
| 53 |
|
| 54 /** |
|
| 55 * Shows a drag-and-drop hint at the specified location. |
|
| 56 * |
|
| 57 * @param id The ID of the hint to show. |
|
| 58 * @param x The X location to show it at. |
|
| 59 * @param y The Y location to show it at. |
|
| 60 */ |
|
| 61 void dnd_hints_show(DndHintWindowId id, gint x, gint y); |
|
| 62 |
|
| 63 /** |
|
| 64 * Hides the specified drag-and-drop hint. |
|
| 65 * |
|
| 66 * @param id The ID of the hint to hide. |
|
| 67 */ |
|
| 68 void dnd_hints_hide(DndHintWindowId id); |
|
| 69 |
|
| 70 /** |
|
| 71 * Hides all drag-and-drop hints. |
|
| 72 */ |
|
| 73 void dnd_hints_hide_all(void); |
|
| 74 |
|
| 75 /** |
|
| 76 * Shows a drag-and-drop hint relative to a widget. |
|
| 77 * |
|
| 78 * @param id The ID of the hint. |
|
| 79 * @param widget The widget that the hint is relative to. |
|
| 80 * @param horiz The horizontal relative position. |
|
| 81 * @param vert The vertical relative position. |
|
| 82 */ |
|
| 83 void dnd_hints_show_relative(DndHintWindowId id, GtkWidget *widget, |
|
| 84 DndHintPosition horiz, DndHintPosition vert); |
|
| 85 |
|
| 86 #endif /* _GAIM_DND_HINTS_H_ */ |
|