<Type Name="Drag" FullName="Gdk.Drag">
  <TypeSignature Language="C#" Value="public class Drag" Maintainer="auto" />
  <AssemblyInfo>
    <AssemblyName>gdk-sharp</AssemblyName>
    <AssemblyPublicKey>
    </AssemblyPublicKey>
    <AssemblyVersion>2.12.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the <link location="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details.</ThreadSafetyStatement>
  <Docs>
    <summary>To be added</summary>
    <remarks>To be added</remarks>
  </Docs>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces />
  <Members>
    <Member MemberName="Drop">
      <MemberSignature Language="C#" Value="public static void Drop (Gdk.DragContext context, uint time_);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="context" Type="Gdk.DragContext" />
        <Parameter Name="time_" Type="System.UInt32" />
      </Parameters>
      <Docs>
        <summary>Drops on the current destination.</summary>
        <param name="context">a <see cref="T:Gdk.DragContext" /></param>
        <param name="time_">the timestamp for this operation.</param>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Motion">
      <MemberSignature Language="C#" Value="public static bool Motion (Gdk.DragContext context, Gdk.Window dest_window, Gdk.DragProtocol protocol, int x_root, int y_root, Gdk.DragAction suggested_action, Gdk.DragAction possible_actions, uint time_);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="context" Type="Gdk.DragContext" />
        <Parameter Name="dest_window" Type="Gdk.Window" />
        <Parameter Name="protocol" Type="Gdk.DragProtocol" />
        <Parameter Name="x_root" Type="System.Int32" />
        <Parameter Name="y_root" Type="System.Int32" />
        <Parameter Name="suggested_action" Type="Gdk.DragAction" />
        <Parameter Name="possible_actions" Type="Gdk.DragAction" />
        <Parameter Name="time_" Type="System.UInt32" />
      </Parameters>
      <Docs>
        <summary>Updates the drag context when the pointer moves or the set of actions changes.</summary>
        <param name="context">a <see cref="T:Gdk.DragContext" /></param>
        <param name="dest_window"> the new destination window, obtained by <see cref="M:Gdk.Drag.FindWindow" />.</param>
        <param name="protocol">the DND protocol in use, obtained by <see cref="M:Gdk.Drag.FindWindow" />.</param>
        <param name="x_root">the x position of the pointer in root coordinates.</param>
        <param name="y_root">the y position of the pointer in root coordinates. </param>
        <param name="suggested_action">the suggested action.</param>
        <param name="possible_actions">the possible actions.</param>
        <param name="time_">the timestamp for this operation.</param>
        <returns>a <see cref="T:System.Boolean" /></returns>
        <remarks>This function is called by the drag source.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Abort">
      <MemberSignature Language="C#" Value="public static void Abort (Gdk.DragContext context, uint time_);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="context" Type="Gdk.DragContext" />
        <Parameter Name="time_" Type="System.UInt32" />
      </Parameters>
      <Docs>
        <summary>Aborts a drag without dropping.</summary>
        <param name="context">a <see cref="T:Gdk.DragContext" /></param>
        <param name="time_">the timestamp for this operation.</param>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Status">
      <MemberSignature Language="C#" Value="public static void Status (Gdk.DragContext context, Gdk.DragAction action, uint time_);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="context" Type="Gdk.DragContext" />
        <Parameter Name="action" Type="Gdk.DragAction" />
        <Parameter Name="time_" Type="System.UInt32" />
      </Parameters>
      <Docs>
        <summary>Selects one of the actions offered by the drag source.</summary>
        <param name="context">a <see cref="T:Gdk.DragContext" /></param>
        <param name="action">the selected action which will be taken when a drop happens, or 0 to indicate that a drop will not be accepted.</param>
        <param name="time_">the timestamp for this operation. </param>
        <remarks>This function is called by the drag destination in response to <see cref="M:Gdk.Drag.Motion" /> called by the drag source.</remarks>
      </Docs>
    </Member>
    <Member MemberName="GetSelection">
      <MemberSignature Language="C#" Value="public static Gdk.Atom GetSelection (Gdk.DragContext context);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gdk.Atom</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="context" Type="Gdk.DragContext" />
      </Parameters>
      <Docs>
        <summary>Returns the selection atom for the current source window.</summary>
        <param name="context">a <see cref="T:Gdk.DragContext" /></param>
        <returns>the selection atom.</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public Drag ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="GetProtocolForDisplay">
      <MemberSignature Language="C#" Value="public static uint GetProtocolForDisplay (Gdk.Display display, uint xid, out Gdk.DragProtocol protocol);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.UInt32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="display" Type="Gdk.Display" />
        <Parameter Name="xid" Type="System.UInt32" />
        <Parameter Name="protocol" Type="Gdk.DragProtocol&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <summary>Finds out the DND protocol supported by a window.</summary>
        <param name="display">the <see cref="T:Gdk.Display" /> where the destination window resides.</param>
        <param name="xid">the X id of the destination window.</param>
        <param name="protocol">location where the supported DND protocol is returned.</param>
        <returns>the X id of the window where the drop should happen. This may be xid or the X id of a proxy window, or None if xid doesn't support Drag and Drop.</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="GetProtocol">
      <MemberSignature Language="C#" Value="public static uint GetProtocol (uint xid, out Gdk.DragProtocol protocol);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.UInt32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="xid" Type="System.UInt32" />
        <Parameter Name="protocol" Type="Gdk.DragProtocol&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <summary>Finds out the DND protocol supported by a window.</summary>
        <param name="xid">the X id of the destination window.</param>
        <param name="protocol">location where the supported DND protocol is returned.</param>
        <returns>the X id of the window where the drop should happen. This may be xid or the X id of a proxy window, or None if xid doesn't support Drag and Drop. </returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="FindWindow">
      <MemberSignature Language="C#" Value="public static void FindWindow (Gdk.DragContext context, Gdk.Window drag_window, int x_root, int y_root, out Gdk.Window dest_window, out Gdk.DragProtocol protocol);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="context" Type="Gdk.DragContext" />
        <Parameter Name="drag_window" Type="Gdk.Window" />
        <Parameter Name="x_root" Type="System.Int32" />
        <Parameter Name="y_root" Type="System.Int32" />
        <Parameter Name="dest_window" Type="Gdk.Window&amp;" RefType="out" />
        <Parameter Name="protocol" Type="Gdk.DragProtocol&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <summary>Finds the destination window and DND protocol to use at the given pointer position.</summary>
        <param name="context">a <see cref="T:Gdk.DragContext" /></param>
        <param name="drag_window">a window which may be at the pointer position, but should be ignored, since it is put up by the drag source as an icon.</param>
        <param name="x_root">the x position of the pointer in root coordinates.</param>
        <param name="y_root">the y position of the pointer in root coordinates.</param>
        <param name="dest_window">location to store the destination window in.</param>
        <param name="protocol">location to store the DND protocol in.</param>
        <remarks>
          <para>This function is called by the drag source to obtain the dest_window and protocol parameters for <see cref="M:Gdk.Drag.Motion" />.</para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="FindWindowForScreen">
      <MemberSignature Language="C#" Value="public static void FindWindowForScreen (Gdk.DragContext context, Gdk.Window drag_window, Gdk.Screen screen, int x_root, int y_root, out Gdk.Window dest_window, out Gdk.DragProtocol protocol);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="context" Type="Gdk.DragContext" />
        <Parameter Name="drag_window" Type="Gdk.Window" />
        <Parameter Name="screen" Type="Gdk.Screen" />
        <Parameter Name="x_root" Type="System.Int32" />
        <Parameter Name="y_root" Type="System.Int32" />
        <Parameter Name="dest_window" Type="Gdk.Window&amp;" RefType="out" />
        <Parameter Name="protocol" Type="Gdk.DragProtocol&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <summary>Finds the destination window and DND protocol to use at the given pointer position.</summary>
        <param name="context">a <see cref="T:Gdk.DragContext" /></param>
        <param name="drag_window">a window which may be at the pointer position, but should be ignored, since it is put up by the drag source as an icon.</param>
        <param name="screen">the screen where the destination window is sought.</param>
        <param name="x_root">the x position of the pointer in root coordinates.</param>
        <param name="y_root">the y position of the pointer in root coordinates.</param>
        <param name="dest_window">location to store the destination window in.</param>
        <param name="protocol">location to store the DND protocol in. </param>
        <remarks>This function is called by the drag source to obtain the dest_window and protocol parameters for <see cref="M:Gdk.Drag.Motion" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="DropSucceeded">
      <MemberSignature Language="C#" Value="public static bool DropSucceeded (Gdk.DragContext context);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="context" Type="Gdk.DragContext" />
      </Parameters>
      <Docs>
        <summary>To be added</summary>
        <param name="context">a <see cref="T:Gdk.DragContext" /></param>
        <returns>a <see cref="T:System.Boolean" /></returns>
        <remarks>To be added</remarks>
        <since version="Gtk# 2.6" />
      </Docs>
    </Member>
  </Members>
</Type>
