gtkmm: Gtk::SelectionData Class Reference

#include <gtkmm/selectiondata.h>

Public Member Functions

SelectionData ()
SelectionData (GtkSelectionData* gobject, bool make_a_copy=true)
SelectionData (const SelectionData & other)
SelectionData & operator= (const SelectionData & other)
SelectionData ( SelectionData && other) noexcept
SelectionData & operator= ( SelectionData && other) noexcept
~SelectionData () noexcept
void swap ( SelectionData & other) noexcept
GtkSelectionData* gobj ()
Provides access to the underlying C instance. More...

const GtkSelectionData* gobj () const
Provides access to the underlying C instance. More...

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

void set (int format, const guint8* data, int length)
Assign a memory block of raw data. More...

void set (const std::string & type , int format, const guint8* data, int length)
Assign a memory block of raw data. More...

void set (const std::string & type , const std::string & data)
Assign a string of raw data. More...

bool set_text (const Glib::ustring & data)
Assign UTF-8 encoded text. More...

Glib::ustring get_text () const
Gets the contents of the selection data as a UTF-8 string. More...

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

Glib::RefPtr < Gdk::Pixbuf > get_pixbuf ()
Gets the contents of the selection data as a Gdk::Pixbuf . More...

Glib::RefPtr < const Gdk::Pixbuf > get_pixbuf () const
Gets the contents of the selection data as a Gdk::Pixbuf . More...

bool set_uris (const std::vector < Glib::ustring >& uris)
Sets the contents of the selection from a list of URIs. More...

std::vector < Glib::ustring > get_uris () const
Gets the contents of the selection data as a container of URIs. More...

const guchar* get_data () const
Retrieves the raw data of the selection. More...

int get_length () const
Retrieves the length of the raw data of the selection. More...

const guchar* get_data (int& length) const
Retrieves the raw data of the selection along with its length. More...

std::string get_data_as_string () const
Retrieves the raw data of the selection as a std::string . More...

std::string get_selection () const
Retrieves the selection Gdk::Atom of the selection data. More...

std::string get_target () const
Retrieves the target of the selection. More...

std::vector < std::string > get_targets () const
See also Gtk::Clipboard::request_targets() More...

std::string get_data_type () const
Returns the type of the data as set by SelectionData::set() . More...

int get_format () const
Retrieves the format of the selection. More...

Glib::RefPtr < Gdk::Display > get_display ()
Retrieves the display of the selection. More...

Glib::RefPtr < const Gdk::Display > get_display () const
Retrieves the display of the selection. More...

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

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

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

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

Static Public Member Functions

static GType get_type ()
Get the GType for this class, for use with the underlying GObject type system. More...

Protected Attributes

GtkSelectionData* gobject_

Related Functions

(Note that these are not member functions.)

void swap ( SelectionData & lhs, SelectionData & rhs) noexcept
Gtk::SelectionData wrap (GtkSelectionData* object, bool take_copy=false)
A Glib::wrap() method for this object. More...

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 ( SelectionData && other )
noexcept
Gtk::SelectionData::~SelectionData ( )
noexcept

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.
const guchar* Gtk::SelectionData::get_data ( int & length ) const

Retrieves the raw data of the selection along with its length.

Since gtkmm 3.0:
Parameters
length Return location for length of the data segment.
Returns
The raw data of the selection.
std::string Gtk::SelectionData::get_data_as_string ( ) const

Retrieves the raw data of the selection as a std::string .

Returns
The raw data of the selection. Contains 0-bytes, if the selection data does.
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 nullptr . If the result is non- nullptr 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 nullptr . If the result is non- nullptr 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
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.
static GType Gtk::SelectionData::get_type ( )
static

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

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

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

Since gtkmm 2.6:
Returns
If the selection data contains a list of URIs, a container containing the URIs, otherwise an empty container.
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 )
SelectionData & Gtk::SelectionData::operator= ( SelectionData && other )
noexcept
void Gtk::SelectionData::set ( int format ,
const guint8 * data ,
int length
)

Assign a memory block of raw data.

Store new data into the Gtk::SelectionData object. Should only be called from a selection handler callback. A 0-byte terminates the stored data. The type of data is determined by get_target() .

Parameters
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.
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 be called from a selection handler callback. A 0-byte terminates the stored data.

Parameters
type The type of the selection data.
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.
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 be called from a selection handler callback.

Parameters
type The type of the selection data.
data A string that contains the data (does not have to be text).
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 nullptr -terminated array of strings holding URIs.
Returns
true if the selection was successfully set, otherwise false .
void Gtk::SelectionData::swap ( SelectionData & other )
noexcept
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