Selections
Functions for handling inter-process communication via selections
The selection mechanism provides the basis for different types
of communication between processes. In particular, drag and drop and
#GtkClipboard work via selections. You will very seldom or
never need to use most of the functions in this section directly;
#GtkClipboard provides a nicer interface to the same functionality.
Some of the datatypes defined this section are used in
the #GtkClipboard and drag-and-drop API's as well. The
#GtkTargetEntry structure and #GtkTargetList objects represent
lists of data types that are supported when sending or
receiving data. The #GtkSelectionData object is used to
store a chunk of data along with the data type and other
associated information.
#GtkWidget
Much of the operation of selections happens via
signals for #GtkWidget. In particular, if you are
using the functions in this section, you may need
to pay attention to ::selection_get,
::selection_received, and :selection_clear_event
signals.
A #GtkTargetEntry structure represents a single type of
data than can be supplied for by a widget for a selection
or for supplied or received during drag-and-drop. It
contains a string representing the drag type, a flags
field (used only for drag and drop - see #GtkTargetFlags),
and an application assigned integer ID. The integer
ID will later be passed as a signal parameter for signals
like "selection_get". It allows the application to identify
the target type without extensive string compares.
@target:
@flags:
@info:
A #GtkTargetList structure is a reference counted list
of #GtkTargetPair. It is used to represent the same
information as a table of #GtkTargetEntry, but in
an efficient form. This structure should be treated as
opaque.
@list:
@ref_count:
Internally used structure in the drag-and-drop and
selection handling code.
@target:
@flags:
@info:
@targets:
@ntargets:
@Returns:
@list:
@Returns:
@list:
@list:
@target:
@flags:
@info:
@list:
@targets:
@ntargets:
@list:
@info:
@list:
@info:
@writable:
@list:
@info:
@list:
@info:
@deserializable:
@buffer:
@list:
@target:
@list:
@target:
@info:
@Returns:
@targets:
@n_targets:
@list:
@n_targets:
@Returns:
@widget:
@selection:
@time_:
@Returns:
@display:
@widget:
@selection:
@time_:
@Returns:
@widget:
@selection:
@target:
@info:
@widget:
@selection:
@targets:
@ntargets:
@widget:
@selection:
@widget:
@selection:
@target:
@time_:
@Returns: x
@selection_data:
@type:
@format:
@data:
@length:
@selection_data:
@str:
@len:
@Returns:
@selection_data:
@Returns:
@selection_data:
@pixbuf:
@Returns:
@selection_data:
@Returns:
@selection_data:
@uris:
@Returns:
@selection_data:
@Returns:
@selection_data:
@targets:
@n_atoms:
@Returns:
@selection_data:
@writable:
@Returns:
@selection_data:
@Returns:
@selection_data:
@Returns:
@selection_data:
@buffer:
@Returns:
@selection_data:
@Returns:
@selection_data:
@Returns:
@selection_data:
@Returns:
@selection_data:
@Returns:
@selection_data:
@Returns:
@selection_data:
@Returns:
@selection_data:
@Returns:
@targets:
@n_targets:
@writable:
@Returns:
@targets:
@n_targets:
@Returns:
@targets:
@n_targets:
@Returns:
@targets:
@n_targets:
@buffer:
@Returns:
@widget:
@data:
@Returns:
@data: