# Gtk::SelectionData Class Reference

List of all members.

## Public Member Functions

| SelectionData ()
| SelectionData (GtkSelectionData* gobject, bool make_a_copy=true)
| SelectionData (const SelectionData& other)
SelectionData& | operator= (const SelectionData& other)
| ~SelectionData ()
void | swap (SelectionData& other)
GtkSelectionData* | gobj ()
| Provides access to the underlying C instance.
const GtkSelectionData* | gobj () const
| Provides access to the underlying C instance.
GtkSelectionData* | gobj_copy () const
| Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs.
void | set (int format, const guint8* data, int length)
void | set (const std::string&type, int format, const guint8* data, int length)
| Assign a memory block of raw data.
void | set (const std::string&type, const std::string& data)
| Assign a string of raw data.
bool | set_text (const Glib::ustring& data)
| Assign UTF-8 encoded text.
Glib::ustring | get_text () const
| Gets the contents of the selection data as a UTF-8 string.
bool | set_pixbuf (const Glib::RefPtr< Gdk::Pixbuf >& pixbuf)
| Sets the contents of the selection from a Gdk::Pixbuf The pixbuf is converted to the form determined by selection_data->target.
Glib::RefPtr< Gdk::Pixbuf > | get_pixbuf ()
| Gets the contents of the selection data as a Gdk::Pixbuf.
Glib::RefPtr< const Gdk::Pixbuf > | get_pixbuf () const
| Gets the contents of the selection data as a Gdk::Pixbuf.
bool | set_uris (const std::vector< Glib::ustring >& uris)
| Sets the contents of the selection from a list of URIs.
std::vector< Glib::ustring > | get_uris () const
| Gets the contents of the selection data as a container of URIs.
const guchar* | get_data () const
| Retrieves the raw data of the selection.
int | get_length () const
| Retrieves the length of the raw data of the selection.
std::string | get_data_as_string () const
std::string | get_selection () const
| Retrieves the selection Gdk::Atom of the selection data.
std::string | get_target () const
| Retrieves the target of the selection.
std::vector< std::string > | get_targets () const
| See also Gtk::Clipboard::request_targets()
std::string | get_data_type () const
| Returns the type of the data as set by SelectionData::set().
int | get_format () const
| Retrieves the format of the selection.
Glib::RefPtr< Gdk::Display > | get_display ()
| Retrieves the display of the selection.
Glib::RefPtr< const Gdk::Display > | get_display () const
| Retrieves the display of the selection.
bool | targets_include_uri () const
| Given a Gtk::SelectionData object holding a list of targets, determines if any of the targets in targets can be used to provide a list or URIs.
bool | targets_include_text () const
| Given a Gtk::SelectionData object holding a list of targets, determines if any of the targets in targets can be used to provide text.
bool | targets_include_rich_text (const Glib::RefPtr< TextBuffer >& buffer) const
| Given a Gtk::SelectionData object holding a list of targets, determines if any of the targets in targets can be used to provide rich text.
bool | targets_include_image (bool writable=true) const
| Given a Gtk::SelectionData object holding a list of targets, determines if any of the targets in targets can be used to provide a Gdk::Pixbuf.

## Protected Attributes

GtkSelectionData* | gobject_

## Related Functions

(Note that these are not member functions.)
void | swap (SelectionData& lhs, SelectionData& rhs)
Gtk::SelectionData | wrap (GtkSelectionData* object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Constructor & Destructor Documentation

Gtk::SelectionData::SelectionData | ( | ) |

Gtk::SelectionData::SelectionData | ( | GtkSelectionData * | gobject,
|  | bool | make_a_copy = `true`
| ) |  | `[explicit]`

Gtk::SelectionData::SelectionData | ( | const SelectionData& | other ) |

Gtk::SelectionData::~SelectionData | ( | ) |

## Member Function Documentation

const guchar* Gtk::SelectionData::get_data | ( | ) | const

Retrieves the raw data of the selection.

Since gtkmm 2.14:

Returns:
  The raw data of the selection.

std::string Gtk::SelectionData::get_data_as_string | ( | ) | const

std::string Gtk::SelectionData::get_data_type | ( | ) | const

Returns the type of the data as set by SelectionData::set().

Glib::RefPtr<Gdk::Display> Gtk::SelectionData::get_display | ( | ) |

Retrieves the display of the selection.

Since gtkmm 2.14:

Returns:
  The display of the selection.

Glib::RefPtr<const Gdk::Display> Gtk::SelectionData::get_display | ( | ) | const

Retrieves the display of the selection.

Since gtkmm 2.14:

Returns:
  The display of the selection.

int Gtk::SelectionData::get_format | ( | ) | const

Retrieves the format of the selection.

Since gtkmm 2.14:

Returns:
  The format of the selection.

int Gtk::SelectionData::get_length | ( | ) | const

Retrieves the length of the raw data of the selection.

Since gtkmm 2.14:

Returns:
  The length of the data of the selection.

Glib::RefPtr<Gdk::Pixbuf> Gtk::SelectionData::get_pixbuf | ( | ) |

Gets the contents of the selection data as a Gdk::Pixbuf.

Since gtkmm 2.6:

Returns:
  If the selection data contained a recognized image type and it could be converted to a Gdk::Pixbuf, a newly allocated pixbuf is returned, otherwise `0`. If the result is non-`0` it must be freed with Glib::object_unref().

Glib::RefPtr<const Gdk::Pixbuf> Gtk::SelectionData::get_pixbuf | ( | ) | const

Gets the contents of the selection data as a Gdk::Pixbuf.

Since gtkmm 2.6:

Returns:
  If the selection data contained a recognized image type and it could be converted to a Gdk::Pixbuf, a newly allocated pixbuf is returned, otherwise `0`. If the result is non-`0` it must be freed with Glib::object_unref().

std::string Gtk::SelectionData::get_selection | ( | ) | const

Retrieves the selection Gdk::Atom of the selection data.

Since gtkmm 2.16:

Returns:
  The selection Gdk::Atom of the selection data.

std::string Gtk::SelectionData::get_target | ( | ) | const

Retrieves the target of the selection.

Since gtkmm 2.14:

std::vector<std::string> Gtk::SelectionData::get_targets | ( | ) | const

See also Gtk::Clipboard::request_targets()

Glib::ustring Gtk::SelectionData::get_text | ( | ) | const

Gets the contents of the selection data as a UTF-8 string.

Returns:
  If the selection data contained a recognized text type and it could be converted to UTF-8, a string containing the converted text, otherwise an empty string.

std::vector<Glib::ustring> Gtk::SelectionData::get_uris | ( | ) | const

Gets the contents of the selection data as a container of URIs.

Returns:
  If the selection data contains a list of URIs, a container containing the URIs, otherwise an empty container.

Since gtkmm 2.6:

GtkSelectionData* Gtk::SelectionData::gobj | ( | ) | `[inline]`

Provides access to the underlying C instance.

const GtkSelectionData* Gtk::SelectionData::gobj | ( | ) | const`[inline]`

Provides access to the underlying C instance.

GtkSelectionData* Gtk::SelectionData::gobj_copy | ( | ) | const

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

SelectionData& Gtk::SelectionData::operator= | ( | const SelectionData& | other ) |

void Gtk::SelectionData::set | ( | const std::string & | type,
|  | const std::string & | data
| ) |  |

Assign a string of raw data.

Store new data into the Gtk::SelectionData object. Should _only_ by called from a selection handler callback.

Parameters:

  type | The type of the selection.
  data | A string that contains the data (does not have to be text).

void Gtk::SelectionData::set | ( | int | format,
|  | const guint8 * | data,
|  | int | length
| ) |  |

void Gtk::SelectionData::set | ( | const std::string & | type,
|  | int | format,
|  | const guint8 * | data,
|  | int | length
| ) |  |

Assign a memory block of raw data.

Store new data into the Gtk::SelectionData object. Should _only_ by called from a selection handler callback. A 0-byte terminates the stored data.

Parameters:

  type | The type of the selection.
  format | The data format, i.e. the number of bits in a unit.
  data | Pointer to the data (will be copied).
  length | The length of the data block in bytes.

bool Gtk::SelectionData::set_pixbuf | ( | const Glib::RefPtr< Gdk::Pixbuf >& | pixbuf ) |

Sets the contents of the selection from a Gdk::Pixbuf The pixbuf is converted to the form determined by selection_data->target.

Since gtkmm 2.6:

Parameters:

  pixbuf | A Gdk::Pixbuf.

Returns:
  `true` if the selection was successfully set, otherwise `false`.

bool Gtk::SelectionData::set_text | ( | const Glib::ustring & | data ) |

Assign UTF-8 encoded text.

Sets the contents of the selection from a UTF-8 encoded string. The string is converted to the form determined by get_target().

Parameters:

  data | A UTF-8 encoded string.

Returns:
  `true` if the selection was successfully set, otherwise `false`.

bool Gtk::SelectionData::set_uris | ( | const std::vector< Glib::ustring > & | uris ) |

Sets the contents of the selection from a list of URIs.

The string is converted to the form determined by selection_data->target.

Since gtkmm 2.6:

Parameters:

  uris | A `0`-terminated array of strings holding URIs.

Returns:
  `true` if the selection was successfully set, otherwise `false`.

void Gtk::SelectionData::swap | ( | SelectionData& | other ) |

bool Gtk::SelectionData::targets_include_image | ( | bool | writable = `true` ) | const

Given a Gtk::SelectionData object holding a list of targets, determines if any of the targets in targets can be used to provide a Gdk::Pixbuf.

Since gtkmm 2.6:

Parameters:

  writable | Whether to accept only targets for which GTK+ knows how to convert a pixbuf into the format.

Returns:
  `true` if selection_data holds a list of targets, and a suitable target for images is included, otherwise `false`.

bool Gtk::SelectionData::targets_include_rich_text | ( | const Glib::RefPtr< TextBuffer >& | buffer ) | const

Given a Gtk::SelectionData object holding a list of targets, determines if any of the targets in targets can be used to provide rich text.

Since gtkmm 2.10:

Parameters:

  buffer | A Gtk::TextBuffer.

Returns:
  `true` if selection_data holds a list of targets, and a suitable target for rich text is included, otherwise `false`.

bool Gtk::SelectionData::targets_include_text | ( | ) | const

Given a Gtk::SelectionData object holding a list of targets, determines if any of the targets in targets can be used to provide text.

Returns:
  `true` if selection_data holds a list of targets, and a suitable target for text is included, otherwise `false`.

bool Gtk::SelectionData::targets_include_uri | ( | ) | const

Given a Gtk::SelectionData object holding a list of targets, determines if any of the targets in targets can be used to provide a list or URIs.

Since gtkmm 2.10:

Returns:
  `true` if selection_data holds a list of targets, and a suitable target for URI lists is included, otherwise `false`.

## Friends And Related Function Documentation

void swap | ( | SelectionData& | lhs,
|  | SelectionData& | rhs
| ) |  | `[related]`

Parameters:

  lhs | The left-hand side
  rhs | The right-hand side

Gtk::SelectionData wrap | ( | GtkSelectionData * | 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.

## Member Data Documentation

GtkSelectionData* Gtk::SelectionData::gobject_`[protected]`

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

- gtkmm/selectiondata.h