1 /* GDK - The GIMP Drawing Kit 2 * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public 15 * License along with this library; if not, write to the 16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330, 17 * Boston, MA 02111-1307, USA. 18 */ 19 20 /* 21 * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS 22 * file for a list of people on the GTK+ Team. See the ChangeLog 23 * files for a list of changes. These files are distributed with 24 * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 25 */ 26 27 #ifndef __GDK_SELECTION_H__ 28 #define __GDK_SELECTION_H__ 29 30 #if defined(GTK_DISABLE_SINGLE_INCLUDES) && !defined (__GDK_H_INSIDE__) && !defined (GDK_COMPILATION) 31 #error "Only <gdk/gdk.h> can be included directly." 32 #endif 33 34 #include <gdk/gdktypes.h> 35 36 G_BEGIN_DECLS 37 38 /* Predefined atoms relating to selections. In general, one will need to use 39 * gdk_intern_atom 40 */ 41 #define GDK_SELECTION_PRIMARY _GDK_MAKE_ATOM (1) 42 #define GDK_SELECTION_SECONDARY _GDK_MAKE_ATOM (2) 43 #define GDK_SELECTION_CLIPBOARD _GDK_MAKE_ATOM (69) 44 #define GDK_TARGET_BITMAP _GDK_MAKE_ATOM (5) 45 #define GDK_TARGET_COLORMAP _GDK_MAKE_ATOM (7) 46 #define GDK_TARGET_DRAWABLE _GDK_MAKE_ATOM (17) 47 #define GDK_TARGET_PIXMAP _GDK_MAKE_ATOM (20) 48 #define GDK_TARGET_STRING _GDK_MAKE_ATOM (31) 49 #define GDK_SELECTION_TYPE_ATOM _GDK_MAKE_ATOM (4) 50 #define GDK_SELECTION_TYPE_BITMAP _GDK_MAKE_ATOM (5) 51 #define GDK_SELECTION_TYPE_COLORMAP _GDK_MAKE_ATOM (7) 52 #define GDK_SELECTION_TYPE_DRAWABLE _GDK_MAKE_ATOM (17) 53 #define GDK_SELECTION_TYPE_INTEGER _GDK_MAKE_ATOM (19) 54 #define GDK_SELECTION_TYPE_PIXMAP _GDK_MAKE_ATOM (20) 55 #define GDK_SELECTION_TYPE_WINDOW _GDK_MAKE_ATOM (33) 56 #define GDK_SELECTION_TYPE_STRING _GDK_MAKE_ATOM (31) 57 58 #ifndef GDK_DISABLE_DEPRECATED 59 60 typedef GdkAtom GdkSelection; 61 typedef GdkAtom GdkTarget; 62 typedef GdkAtom GdkSelectionType; 63 64 #endif /* GDK_DISABLE_DEPRECATED */ 65 66 /* Selections 67 */ 68 69 #ifndef GDK_MULTIHEAD_SAFE 70 gboolean gdk_selection_owner_set (GdkWindow *owner, 71 GdkAtom selection, 72 guint32 time_, 73 gboolean send_event); 74 GdkWindow* gdk_selection_owner_get (GdkAtom selection); 75 #endif/* GDK_MULTIHEAD_SAFE */ 76 77 gboolean gdk_selection_owner_set_for_display (GdkDisplay *display, 78 GdkWindow *owner, 79 GdkAtom selection, 80 guint32 time_, 81 gboolean send_event); 82 GdkWindow *gdk_selection_owner_get_for_display (GdkDisplay *display, 83 GdkAtom selection); 84 85 void gdk_selection_convert (GdkWindow *requestor, 86 GdkAtom selection, 87 GdkAtom target, 88 guint32 time_); 89 gint gdk_selection_property_get (GdkWindow *requestor, 90 guchar **data, 91 GdkAtom *prop_type, 92 gint *prop_format); 93 94 #ifndef GDK_MULTIHEAD_SAFE 95 void gdk_selection_send_notify (GdkNativeWindow requestor, 96 GdkAtom selection, 97 GdkAtom target, 98 GdkAtom property, 99 guint32 time_); 100 #endif /* GDK_MULTIHEAD_SAFE */ 101 102 void gdk_selection_send_notify_for_display (GdkDisplay *display, 103 GdkNativeWindow requestor, 104 GdkAtom selection, 105 GdkAtom target, 106 GdkAtom property, 107 guint32 time_); 108 109 G_END_DECLS 110 111 #endif /* __GDK_SELECTION_H__ */ 112