<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the <linklocation="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details.</ThreadSafetyStatement>
<summary>Information exchange through the Window Server selection mechanism.</summary>
<remarks>The X selection mechanism provides a way to transfer arbitrary chunks of data between programs. A selection is a essentially a named clipboard, identified by a string interned as a GdkAtom. By claiming ownership of a selection, an application indicates that it will be responsible for supplying its contents. The most common selections are PRIMARY and CLIPBOARD.
<para>
The contents of a selection can be represented in a number of formats, called targets. Each target is identified by an atom. A list of all possible targets supported by the selection owner can be retrieved by requesting the special target TARGETS. When a selection is retrieved, the data is accompanied by a type (an atom), and a format (an integer, representing the number of bits per item). See Properties and Atoms for more information.
</para><para>
The functions in this section only contain the lowlevel parts of the selection protocol. A considerably more complicated implementation is needed on top of this. GTK+ contains such an implementation in the functions in gtkselection.h and programmers should use those functions instead of the ones presented here. If you plan to implement selection handling directly on top of the functions here, you should refer to the X Inter-client Communication Conventions Manual (ICCCM).
<paramname="selection">An atom identifying the selection to get the contents of.</param>
<paramname="target">the form in which to retrieve the selection.</param>
<paramname="time_">the timestamp to use when retrieving the selection. The selection owner may refuse the request if it did not own the selection at the time indicated by the timestamp.</param>
<summary>Retrieves the contents of a selection in a given form.</summary>
<paramname="selection">an atom indentifying a selection.</param>
<summary>Determines the owner of the given selection.</summary>
<returns>If there is a selection owner for this window, and it is a window known to the current process, the <seecref="T:Gdk.Window"/> that owns the selection, otherwise <seelangword="null"/>. Note that the return value may be owned by a different process if a foreign window was previously created for that window, but a new foreign window will never be created by this call.</returns>
<MemberSignatureLanguage="ILAsm"Value=".method public static hidebysig class Gdk.Window OwnerGetForDisplay(class Gdk.Display display, class Gdk.Atom selection) cil managed"/>
<returns> if there is a selection owner for this window, and it is a window known to the current process, the <seecref="T:Gdk.Window"/> that owns the selection, otherwise <seelangword="null"/></returns>
<remarks>Note that the return value may be owned by a different process if a foreign window was previously created for that window, but a new foreign window will never be created by this call.</remarks>
<paramname="owner">a <seecref="T:Gdk.Window"/> or NULL to indicate that the the owner for the given should be unset.</param>
<paramname="selection">An <seecref="T:Gdk.Atom"/> identifying a selection.</param>
<paramname="time_">timestamp to use when setting the selection. If this is older than the timestamp given last time the owner was set for the given selection, the request will be ignored.</param>
<paramname="send_event">If <seelangword="true"/> and the new owner is different from the current owner, the current owner will be sent a SelectionClear event.</param>
<summary>Sets the owner of the given selection.</summary>
<returns>
<seelangword="true"/> if the selection owner was successfully changed to owner, otherwise <seelangword="false"/></returns>
<paramname="selection">An atom identifying a selection.</param>
<paramname="time_">Timestamp to use when setting the selection. If this is older than the timestamp given last time the owner was set for the given selection, the request will be ignored.</param>
<paramname="send_event"> if TRUE, and the new owner is different from the current owner, the current owner will be sent a SelectionClear event.</param>
<summary>Sets the <seecref="T:Gdk.Window"/> owner as the current owner of the selection selection.</summary>
<returns>TRUE if the selection owner was successfully changed to owner, otherwise FALSE.</returns>
<MemberSignatureLanguage="ILAsm"Value=".method public static hidebysig void SendNotifyForDisplay(class Gdk.Display display, class Gdk.Window requestor, class Gdk.Atom selection, class Gdk.Atom target, class Gdk.Atom property, unsigned int32 time_) cil managed"/>