gtkmm: Gtk::TreeDragSource Class Reference

gtkmm 4.22.0

Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Symbols | List of all members
Gtk::TreeDragSource Class Reference
TreeView Classes

Interface for Drag-and-Drop sources in Gtk::TreeView. More...

`#include <gtkmm/treedragsource.h>`

Inheritance diagram for Gtk::TreeDragSource:
[legend]

## Public Member Functions
| TreeDragSource (TreeDragSource &&src) noexcept
TreeDragSource & | operator= (TreeDragSource &&src) noexcept
| ~TreeDragSource () noexcept override
GtkTreeDragSource * | gobj ()
| Provides access to the underlying C GObject.
const GtkTreeDragSource * | gobj () const
| Provides access to the underlying C GObject.
bool | row_draggable (const TreeModel::Path & path) const
| Asks the `Gtk::TreeDragSource` whether a particular row can be used as the source of a DND operation.
Glib::RefPtr< Gdk::ContentProvider > | drag_data_get (const TreeModel::Path & path) const
| Asks the `Gtk::TreeDragSource` to return a `Gdk::ContentProvider` representing the row at path.
bool | drag_data_delete (const TreeModel::Path & path)
| Asks the `Gtk::TreeDragSource` to delete the row at path, because it was moved somewhere else via drag-and-drop.
Public Member Functions inherited from Glib::Interface
| Interface ()
| Interface (Interface &&src) noexcept
Interface & | operator= (Interface &&src) noexcept
| Interface (const Glib::Interface_Class &interface_class)
| Interface (GObject *castitem)
| ~Interface () noexcept override
| Interface (const Interface &)=delete
Interface & | operator= (const Interface &)=delete
GObject * | gobj ()
const GObject * | gobj () const
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
PropertyType | get_property (const Glib::ustring &property_name) const
sigc::connection | connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void()> &slot)
sigc::connection | connect_property_changed (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) noexcept
| ~trackable ()
void | add_destroy_notify_callback (notifiable *data, func_destroy_notify func) const
void | notify_callbacks ()
trackable & | operator= (const trackable &src)
trackable & | operator= (trackable &&src) noexcept
void | remove_destroy_notify_callback (notifiable *data) const

## Static Public Member Functions
static void | add_interface (GType gtype_implementer)
static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system.

## Protected Member Functions
| TreeDragSource ()
| You should derive from this class to use it.
virtual bool | row_draggable_vfunc (const TreeModel::Path & path) const
virtual Glib::RefPtr< Gdk::ContentProvider > | drag_data_get_vfunc (const TreeModel::Path & path) const
virtual bool | drag_data_delete_vfunc (const TreeModel::Path & path)
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 Symbols
(Note that these are not member symbols.)
Glib::RefPtr< Gtk::TreeDragSource > | wrap (GtkTreeDragSource *object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Additional Inherited Members
Public Types inherited from sigc::trackable
typedef internal::func_destroy_notify | func_destroy_notify
Public Types inherited from sigc::notifiable
typedef internal::func_destroy_notify | func_destroy_notify

## Detailed Description

Interface for Drag-and-Drop sources in Gtk::TreeView.

Deprecated:
  4.10: List views use widgets to display their contents. You can use Gtk::DragSource to implement a drag source.

## Constructor & Destructor Documentation

## ◆ TreeDragSource() [1/2]

Gtk::TreeDragSource::TreeDragSource | ( |  | ) |
| protected

You should derive from this class to use it.

## ◆ TreeDragSource() [2/2]

Gtk::TreeDragSource::TreeDragSource | ( | TreeDragSource && | src | ) |
| noexcept

## ◆ ~TreeDragSource()

Gtk::TreeDragSource::~TreeDragSource | ( |  | ) |
| overridenoexcept

## Member Function Documentation

## ◆ add_interface()

static void Gtk::TreeDragSource::add_interface | ( | GType | gtype_implementer | ) |
| static

## ◆ drag_data_delete()

bool Gtk::TreeDragSource::drag_data_delete | ( | const TreeModel::Path & | path | ) |

Asks the `Gtk::TreeDragSource` to delete the row at path, because it was moved somewhere else via drag-and-drop.

Returns `false` if the deletion fails because path no longer exists, or for some model-specific reason. Should robustly handle a path no longer found in the model!

Deprecated: 4.10: Use list models instead

Parameters

  path | Row that was being dragged.

Returns
  `true` if the row was successfully deleted.

## ◆ drag_data_delete_vfunc()

virtual bool Gtk::TreeDragSource::drag_data_delete_vfunc | ( | const TreeModel::Path & | path | ) |
| protectedvirtual

## ◆ drag_data_get()

Glib::RefPtr< Gdk::ContentProvider > Gtk::TreeDragSource::drag_data_get | ( | const TreeModel::Path & | path | ) | const

Asks the `Gtk::TreeDragSource` to return a `Gdk::ContentProvider` representing the row at path.

Should robustly handle a path no longer found in the model!

Deprecated: 4.10: Use list models instead

Parameters

  path | Row that was dragged.

Returns
  A `Gdk::ContentProvider` for the given path.

## ◆ drag_data_get_vfunc()

virtual Glib::RefPtr< Gdk::ContentProvider > Gtk::TreeDragSource::drag_data_get_vfunc | ( | const TreeModel::Path & | path | ) | const
| protectedvirtual

## ◆ get_type()

static GType Gtk::TreeDragSource::get_type | ( |  | ) |
| static

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

## ◆ gobj() [1/2]

GtkTreeDragSource * Gtk::TreeDragSource::gobj | ( |  | ) |
| inline

Provides access to the underlying C GObject.

## ◆ gobj() [2/2]

const GtkTreeDragSource * Gtk::TreeDragSource::gobj | ( |  | ) | const
| inline

Provides access to the underlying C GObject.

## ◆ operator=()

TreeDragSource & Gtk::TreeDragSource::operator= | ( | TreeDragSource && | src | ) |
| noexcept

## ◆ row_draggable()

bool Gtk::TreeDragSource::row_draggable | ( | const TreeModel::Path & | path | ) | const

Asks the `Gtk::TreeDragSource` whether a particular row can be used as the source of a DND operation.

If the source doesn’t implement this interface, the row is assumed draggable.

Deprecated: 4.10: Use list models instead

Parameters

  path | Row on which user is initiating a drag.

Returns
  `true` if the row can be dragged.

## ◆ row_draggable_vfunc()

virtual bool Gtk::TreeDragSource::row_draggable_vfunc | ( | const TreeModel::Path & | path | ) | const
| protectedvirtual

## Friends And Related Symbol Documentation

## ◆ wrap()

Glib::RefPtr< Gtk::TreeDragSource > wrap | ( | GtkTreeDragSource * | 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.