Gdk::DragContext Class Reference

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

Inheritance diagram for Gdk::DragContext:
[legend]
Collaboration diagram for Gdk::DragContext:
[legend]

## Public Member Functions

| DragContext (DragContext&& src) noexcept
DragContext& | operator= (DragContext&& src) noexcept
| ~DragContext () noexceptoverride
GdkDragContext* | gobj ()
| Provides access to the underlying C GObject. More...
const GdkDragContext* | gobj () const
| Provides access to the underlying C GObject. More...
GdkDragContext* | gobj_copy ()
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
void | drag_status (DragAction action, guint32 time)
| Selects one of the actions offered by the drag source. More...
void | drag_refuse (guint32 time)
| Indicate that a drop will not be accepted. More...
void | drop_reply (bool ok, guint32 time)
| Accepts or rejects a drop. More...
void | drop_finish (bool success, guint32 time)
| Ends the drag operation after a drop. More...
Glib::ustring | get_selection () const
| Returns the selection atom for the current source window. More...
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. More...
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 ()
| Returns the Gdk::Window where the DND operation started. More...
Glib::RefPtr< const Window > | get_source_window () const
| Returns the Gdk::Window where the DND operation started. More...
Gdk::ListHandle_AtomString | get_targets () const
| Get a list of targets offered by the source. More...
DragProtocol | get_protocol () const
| Get the DND protocol which governs this drag. More...
bool | get_is_source () const
| Discover whether the context is used on the source side. More...
DragAction | get_actions () const
| Determines the bitmask of actions proposed by the source if gdk_drag_context_suggested_action() returns GDK_ACTION_ASK. More...
DragAction | get_suggested_action () const
| Determines the suggested drag action of the context. More...
DragAction | get_action () const
| Determines the action chosen by the drag destination. More...
DragAction | get_selected_action () const
| Determines the action chosen by the drag destination. More...
guint32 | get_start_time () const
| Get a timestamp recording the start time of this drag. More...
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. More...
Public Member Functions inherited from Glib::Object
| Object (const Object &)=delete
Object & | operator= (const Object &)=delete
| Object (Object &&src) noexcept
Object & | operator= (Object &&src) noexcept
void * | get_data (const QueryQuark &key)
void | set_data (const Quark &key, void *data)
void | set_data (const Quark &key, void *data, DestroyNotify notify)
void | remove_data (const QueryQuark &quark)
void * | steal_data (const QueryQuark &quark)
Glib::RefPtr< Glib::Object > | wrap (GObject *object, bool take_copy=false)
Public Member Functions inherited from Glib::ObjectBase
| ObjectBase (const ObjectBase &)=delete
ObjectBase & | operator= (const ObjectBase &)=delete
void | set_property_value (const Glib::ustring &property_name, const Glib::ValueBase &value)
void | get_property_value (const Glib::ustring &property_name, Glib::ValueBase &value) const
void | set_property (const Glib::ustring &property_name, const PropertyType &value)
void | get_property (const Glib::ustring &property_name, PropertyType &value) const
void | connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void > &slot)
void | connect_property_changed (const Glib::ustring &property_name, sigc::slot< void > &&slot)
sigc::connection | connect_property_changed_with_return (const Glib::ustring &property_name, const sigc::slot< void > &slot)
sigc::connection | connect_property_changed_with_return (const Glib::ustring &property_name, sigc::slot< void > &&slot)
void | freeze_notify ()
void | thaw_notify ()
virtual void | reference () const
virtual void | unreference () const
GObject * | gobj ()
const GObject * | gobj () const
GObject * | gobj_copy () const
Public Member Functions inherited from sigc::trackable
| trackable () noexcept
| trackable (const trackable &src) noexcept
| trackable (trackable &&src)
| ~trackable ()
void | add_destroy_notify_callback (void *data, func_destroy_notify func) const
void | notify_callbacks ()
trackable & | operator= (const trackable &src)
trackable & | operator= (trackable &&src)
void | remove_destroy_notify_callback (void *data) const

## Static Public Member Functions

static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system. More...
static Glib::RefPtr< DragContext > | create ()

## Protected Member Functions

| DragContext ()
Protected Member Functions inherited from Glib::Object
| Object ()
| Object (const Glib::ConstructParams &construct_params)
| Object (GObject *castitem)
| ~Object () noexceptoverride
Protected Member Functions inherited from Glib::ObjectBase
| ObjectBase ()
| ObjectBase (const char *custom_type_name)
| ObjectBase (const std::type_info &custom_type_info)
| ObjectBase (ObjectBase &&src) noexcept
ObjectBase & | operator= (ObjectBase &&src) noexcept
virtual | ~ObjectBase () noexcept=0
void | initialize (GObject *castitem)
void | initialize_move (GObject *castitem, Glib::ObjectBase *previous_wrapper)

## 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. More...

## Additional Inherited Members

Public Types inherited from Glib::Object
typedef void(*)(gpointer data | DestroyNotify)
Public Types inherited from sigc::trackable
typedef internal::func_destroy_notify | func_destroy_notify

## Detailed Description

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

It is used on both source and destination sides.

## Constructor & Destructor Documentation

Gdk::DragContext::DragContext | ( | DragContext&& | src | ) |

noexcept

Gdk::DragContext::~DragContext | ( |  | ) |

override noexcept

Gdk::DragContext::DragContext | ( |  | ) |

protected

Deprecated:
  This method is not useful, you always obtain drag contexts by Gdk::Window::drag_begin() or similar.

## Member Function Documentation

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

static

Deprecated:
  This method is not useful, you always obtain drag contexts by Gdk::Window::drag_begin() or similar.

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

Determines the action chosen by the drag destination.

Since gtkmm 2.22:

Deprecated:
  Use get_selected_action()

Returns
  A Gdk::DragAction value.

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

Determines the bitmask of actions proposed by the source if gdk_drag_context_suggested_action() returns GDK_ACTION_ASK.

Since gtkmm 2.22:

Returns
  The Gdk::DragAction flags.

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.

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

Determines the action chosen by the drag destination.

Since gtkmm 2.22:

Returns
  A Gdk::DragAction value.

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

Returns the selection atom for the current source window.

Returns
  The selection atom.

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

Returns the Gdk::Window where the DND operation started.

Since gtkmm 2.22:

Returns
  A Gdk::Window.

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

Returns the Gdk::Window where the DND operation started.

Since gtkmm 2.22:

Returns
  A Gdk::Window.

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

Determines the suggested drag action of the context.

Since gtkmm 2.22:

Returns
  A Gdk::DragAction value.

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.

static GType Gdk::DragContext::get_type | ( |  | ) |

static

Get the GType for this class, for use with the underlying GObject type system.

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

inline

Provides access to the underlying C GObject.

const GdkDragContext* Gdk::DragContext::gobj | ( |  | ) | const

inline

Provides access to the underlying C GObject.

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.

DragContext& Gdk::DragContext::operator= | ( | DragContext&& | src | ) |

noexcept

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 | ( | const Glib::RefPtr< Gdk::Pixbuf >& | pixbuf,
|  | int | hot_x,
|  | int | hot_y
| ) |  |

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

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

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