# Gdk::DragContext Class Reference

A Gdk::DragContext holds information about a drag in progress. More...

Inherits Glib::Object.

Collaboration diagram for Gdk::DragContext:
[legend]

List of all members.

## Public Member Functions
virtual | ~DragContext ()
GdkDragContext* | gobj ()
| Provides access to the underlying C GObject.
const GdkDragContext* | gobj () const
| Provides access to the underlying C GObject.
GdkDragContext* | gobj_copy ()
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
void | drag_status (DragAction action, guint32 time)
| Selects one of the actions offered by the drag source.
void | drag_refuse (guint32 time)
| Indicate that a drop will not be accepted.
void | drop_reply (bool ok, guint32 time)
| Accepts or rejects a drop.
void | drop_finish (bool success, guint32 time)
| Ends the drag operation after a drop.
Glib::ustring | get_selection () const
| Returns the selection atom for the current source window.
void | drag_finish (bool success, bool del, guint32 time)
| Informs the drag source that the drop is finished, and that the data of the drag will no longer be required.
void | set_icon (const Glib::RefPtr< Gdk::Colormap >& colormap, const Glib::RefPtr< Gdk::Pixmap >& pixmap, const Glib::RefPtr< Gdk::Bitmap >& mask, int hot_x, int hot_y)
void | set_icon (const Glib::RefPtr< Gdk::Pixbuf >& pixbuf, int hot_x, int hot_y)
void | set_icon (const Glib::ustring& stock_id, int hot_x, int hot_y)
void | set_icon_name (const Glib::ustring& name, int hot_x, int hot_y)
void | set_icon ()
Glib::RefPtr< Window > | get_source_window ()
| Get the the source window of this drag.
Glib::RefPtr< const Window > | get_source_window () const
Glib::RefPtr< Window > | get_destination_window ()
| Get the the source window of this drag.
Glib::RefPtr< const Window > | get_destination_window () const
Gdk::ListHandle_AtomString | get_targets () const
| Get a list of targets offered by the source.
DragProtocol | get_protocol () const
| Get the DND protocol which governs this drag.
bool | get_is_source () const
| Discover whether the context is used on the source side.
DragAction | get_actions () const
| Get a bitmask of actions proposed by the source when the suggested_action is Gdk::ACTION_ASK.
DragAction | get_suggested_action () const
| Get the action suggested by the source.
DragAction | get_action () const
| Get the action chosen by the destination.
guint32 | get_start_time () const
| Get a timestamp recording the start time of this drag.
void | find_window_for_screen (const Glib::RefPtr< Window >& drag_window, const Glib::RefPtr< Screen >& screen, int x_root, int y_root, Glib::RefPtr< Window >& dest_window, DragProtocol* protocol) const
| Finds the destination window and DND protocol to use at the given pointer position.
## Static Public Member Functions
static Glib::RefPtr< DragContext > | create ()
## Protected Member Functions
| DragContext ()
## Related Functions
(Note that these are not member functions.)
Glib::RefPtr< Gdk::DragContext > | wrap (GdkDragContext* object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

A Gdk::DragContext holds information about a drag in progress.

It is used on both source and destination sides.

## Constructor & Destructor Documentation

virtual Gdk::DragContext::~DragContext | ( |  | ) | `[virtual]`

Gdk::DragContext::DragContext | ( |  | ) | `[protected]`

## Member Function Documentation

static Glib::RefPtr<DragContext> Gdk::DragContext::create | ( |  | ) | `[static]`

void Gdk::DragContext::drag_finish | ( | bool | success,
|  | bool | del,
|  | guint32 | time |
| ) |  |  |

Informs the drag source that the drop is finished, and that the data of the drag will no longer be required.

Parameters:

  | success | A flag indicating whether the drop was successful.
  | del | Aa flag indicating whether the source should delete the original data. (This should be true for a move.) time The timestamp from the "drag_data_drop" signal.

void Gdk::DragContext::drag_refuse | ( | guint32 | time | ) |

Indicate that a drop will not be accepted.

This function may be called by the drag destination in response to gdk_drag_motion() called by the drag source. Alternatively, call drag_status() to indicate which drag action will be accepted.

Parameters:

  | time | The timestamp for this operation.

void Gdk::DragContext::drag_status | ( | DragAction | action,
|  | guint32 | time |
| ) |  |  |

Selects one of the actions offered by the drag source.

This function is called by the drag destination in response to gdk_drag_motion() called by the drag source.

Parameters:

  | action | The selected action which will be taken when a drop happens, or 0 to indicate that a drop will not be accepted.
  | time | The timestamp for this operation.

void Gdk::DragContext::drop_finish | ( | bool | success,
|  | guint32 | time |
| ) |  |  |

Ends the drag operation after a drop.

This function is called by the drag destination.

Parameters:

  | success | `true` if the data was successfully received.
  | time | The timestamp for this operation.

void Gdk::DragContext::drop_reply | ( | bool | ok,
|  | guint32 | time |
| ) |  |  |

Accepts or rejects a drop.

This function is called by the drag destination in response to a drop initiated by the drag source.

Parameters:

  | ok | `true` if the drop is accepted.
  | time | The timestamp for this operation.

void Gdk::DragContext::find_window_for_screen | ( | const Glib::RefPtr< Window >& | drag_window,
|  | const Glib::RefPtr< Screen >& | screen,
|  | int | x_root,
|  | int | y_root,
|  | Glib::RefPtr< Window >& | dest_window,
|  | DragProtocol* | protocol |
| ) |  |  | const

Finds the destination window and DND protocol to use at the given pointer position.

This function is called by the drag source to obtain the dest_window and protocol parameters for gdk_drag_motion().

Since gtkmm 2.2:

Parameters:

  | 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.
  | screen | The screen where the destination window is sought.
  | x_root | The x position of the pointer in root coordinates.
  | y_root | The y position of the pointer in root coordinates.
  | dest_window | Location to store the destination window in.
  | protocol | Location to store the DND protocol in.

DragAction Gdk::DragContext::get_action | ( |  | ) | const

Get the action chosen by the destination.

Returns:
  the action chosen byt the destination.

DragAction Gdk::DragContext::get_actions | ( |  | ) | const

Get a bitmask of actions proposed by the source when the suggested_action is Gdk::ACTION_ASK.

Returns:
  a bitmask of actions proposed by the source when the suggested_action is Gdk::ACTION_ASK

Glib::RefPtr<const Window> Gdk::DragContext::get_destination_window | ( |  | ) | const

Glib::RefPtr<Window> Gdk::DragContext::get_destination_window | ( |  | ) |

Get the the source window of this drag.

Returns:
  the source window of this drag.

bool Gdk::DragContext::get_is_source | ( |  | ) | const

Discover whether the context is used on the source side.

Returns:
  true if the context is used on the source side.

DragProtocol Gdk::DragContext::get_protocol | ( |  | ) | const

Get the DND protocol which governs this drag.

Returns:
  the DND protocol which governs this drag.

Glib::ustring Gdk::DragContext::get_selection | ( |  | ) | const

Returns the selection atom for the current source window.

Returns:
  The selection atom.

Glib::RefPtr<const Window> Gdk::DragContext::get_source_window | ( |  | ) | const

Glib::RefPtr<Window> Gdk::DragContext::get_source_window | ( |  | ) |

Get the the source window of this drag.

Returns:
  the source window of this drag.

guint32 Gdk::DragContext::get_start_time | ( |  | ) | const

Get a timestamp recording the start time of this drag.

Returns:
  a timestamp recording the start time of this drag.

DragAction Gdk::DragContext::get_suggested_action | ( |  | ) | const

Get the action suggested by the source.

Returns:
  The action suggested by the source.

Gdk::ListHandle_AtomString Gdk::DragContext::get_targets | ( |  | ) | const

Get a list of targets offered by the source.

Returns:
  a list of targets offered by the source.

const GdkDragContext* Gdk::DragContext::gobj | ( |  | ) | const`[inline]`

Provides access to the underlying C GObject.

Reimplemented from Glib::ObjectBase.

GdkDragContext* Gdk::DragContext::gobj | ( |  | ) | `[inline]`

Provides access to the underlying C GObject.

Reimplemented from Glib::ObjectBase.

GdkDragContext* Gdk::DragContext::gobj_copy | ( |  | ) |

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

void Gdk::DragContext::set_icon | ( |  | ) |

void Gdk::DragContext::set_icon | ( | const Glib::ustring & | stock_id,
|  | int | hot_x,
|  | int | hot_y |
| ) |  |  |

void Gdk::DragContext::set_icon | ( | const Glib::RefPtr< Gdk::Pixbuf >& | pixbuf,
|  | int | hot_x,
|  | int | hot_y |
| ) |  |  |

void Gdk::DragContext::set_icon | ( | const Glib::RefPtr< Gdk::Colormap >& | colormap,
|  | const Glib::RefPtr< Gdk::Pixmap >& | pixmap,
|  | const Glib::RefPtr< Gdk::Bitmap >& | mask,
|  | int | hot_x,
|  | int | hot_y |
| ) |  |  |

void Gdk::DragContext::set_icon_name | ( | const Glib::ustring & | name,
|  | int | hot_x,
|  | int | hot_y |
| ) |  |  |

## Friends And Related Function Documentation

Glib::RefPtr< Gdk::DragContext > wrap | ( | GdkDragContext * | object,
|  | bool | take_copy = `false` |
| ) |  |  | `[related]`

A Glib::wrap() method for this object.

Parameters:

  | object | The C instance.
  | take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns:
  A C++ instance that wraps this C instance.

The documentation for this class was generated from the following file:

- gdkmm/dragcontext.h