gtkmm  4.8.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Functions | List of all members
Gtk::MultiSelection Class Reference

A selection model that allows selecting multiple items. More...

#include <gtkmm/multiselection.h>

Inheritance diagram for Gtk::MultiSelection:
Inheritance graph
[legend]

Public Member Functions

 MultiSelection (MultiSelection && src) noexcept
 
MultiSelectionoperator= (MultiSelection && src) noexcept
 
 ~MultiSelection () noexcept override
 
GtkMultiSelection * gobj ()
 Provides access to the underlying C GObject. More...
 
const GtkMultiSelection * gobj () const
 Provides access to the underlying C GObject. More...
 
GtkMultiSelection * gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
 
Glib::RefPtr< Gio::ListModel > get_model ()
 Returns the underlying model of self. More...
 
Glib::RefPtr< const Gio::ListModel > get_model () const
 Returns the underlying model of self. More...
 
void set_model (const Glib::RefPtr< Gio::ListModel > & model)
 Sets the model that self should wrap. More...
 
Glib::PropertyProxy_ReadOnly< GType > property_item_type () const
 The type of items. More...
 
Glib::PropertyProxy< Glib::RefPtr< Gio::ListModel > > property_model ()
 The list managed by this selection. More...
 
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gio::ListModel > > property_model () const
 The list managed by this selection. More...
 
Glib::PropertyProxy_ReadOnly< unsigned int > property_n_items () const
 The number of items. More...
 
- Public Member Functions inherited from Gtk::SelectionModel
 SelectionModel (SelectionModel && src) noexcept
 
SelectionModeloperator= (SelectionModel && src) noexcept
 
 ~SelectionModel () noexcept override
 
GtkSelectionModel * gobj ()
 Provides access to the underlying C GObject. More...
 
const GtkSelectionModel * gobj () const
 Provides access to the underlying C GObject. More...
 
bool is_selected (guint position) const
 Checks if the given item is selected. More...
 
Glib::RefPtr< const Bitsetget_selection () const
 Gets the set containing all currently selected items in the model. More...
 
Glib::RefPtr< const Bitsetget_selection (guint position, guint n_items) const
 Gets the set of selected items in a range. More...
 
bool select_item (guint position, bool unselect_rest)
 Requests to select an item in the model. More...
 
bool unselect_item (guint position)
 Requests to unselect an item in the model. More...
 
bool select_range (guint position, guint n_items, bool unselect_rest)
 Requests to select a range of items in the model. More...
 
bool unselect_range (guint position, guint n_items)
 Requests to unselect a range of items in the model. More...
 
bool select_all ()
 Requests to select all items in the model. More...
 
bool unselect_all ()
 Requests to unselect all items in the model. More...
 
bool set_selection (const Glib::RefPtr< const Bitset > & selected, const Glib::RefPtr< const Bitset > & mask)
 Make selection changes. More...
 
Glib::SignalProxy< void(guint, guint)> signal_selection_changed ()
 

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< MultiSelectioncreate ()
 
static Glib::RefPtr< MultiSelectioncreate (const Glib::RefPtr< Gio::ListModel > & model)
 
- Static Public Member Functions inherited from Gtk::SelectionModel
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. More...
 

Protected Member Functions

 MultiSelection ()
 
 MultiSelection (const Glib::RefPtr< Gio::ListModel > & model)
 
- Protected Member Functions inherited from Gtk::SelectionModel
 SelectionModel ()
 You should derive from this class to use it. More...
 
void selection_changed (guint position, guint n_items)
 Helper function for implementations of Gtk::SelectionModel. More...
 
virtual bool is_selected_vfunc (guint position) const
 
virtual Glib::RefPtr< const Bitsetget_selection_vfunc (guint position, guint n_items)
 
virtual bool select_item_vfunc (guint position, bool unselect_rest)
 
virtual bool unselect_item_vfunc (guint position)
 
virtual bool select_range_vfunc (guint position, guint n_items, bool unselect_rest)
 
virtual bool unselect_range_vfunc (guint position, guint n_items)
 
virtual bool select_all_vfunc ()
 
virtual bool unselect_all_vfunc ()
 
virtual bool set_selection_vfunc (const Glib::RefPtr< const Bitset > & selected, const Glib::RefPtr< const Bitset > & mask)
 

Related Functions

(Note that these are not member functions.)

Glib::RefPtr< Gtk::MultiSelectionwrap (GtkMultiSelection * object, bool take_copy=false)
 A Glib::wrap() method for this object. More...
 

Detailed Description

A selection model that allows selecting multiple items.

Gtk::MultiSelection is an implementation of the Gtk::SelectionModel interface that allows selecting multiple elements.

See also
SelectionModel
Since gtkmm 3.98:

Constructor & Destructor Documentation

◆ MultiSelection() [1/3]

Gtk::MultiSelection::MultiSelection ( MultiSelection &&  src)
noexcept

◆ ~MultiSelection()

Gtk::MultiSelection::~MultiSelection ( )
overridenoexcept

◆ MultiSelection() [2/3]

Gtk::MultiSelection::MultiSelection ( )
protected

◆ MultiSelection() [3/3]

Gtk::MultiSelection::MultiSelection ( const Glib::RefPtr< Gio::ListModel > &  model)
explicitprotected

Member Function Documentation

◆ create() [1/2]

static Glib::RefPtr<MultiSelection> Gtk::MultiSelection::create ( )
static

◆ create() [2/2]

static Glib::RefPtr<MultiSelection> Gtk::MultiSelection::create ( const Glib::RefPtr< Gio::ListModel > &  model)
static

◆ get_model() [1/2]

Glib::RefPtr<Gio::ListModel> Gtk::MultiSelection::get_model ( )

Returns the underlying model of self.

Returns
The underlying model.

◆ get_model() [2/2]

Glib::RefPtr<const Gio::ListModel> Gtk::MultiSelection::get_model ( ) const

Returns the underlying model of self.

Returns
The underlying model.

◆ get_type()

static GType Gtk::MultiSelection::get_type ( )
static

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

◆ gobj() [1/2]

GtkMultiSelection* Gtk::MultiSelection::gobj ( )
inline

Provides access to the underlying C GObject.

◆ gobj() [2/2]

const GtkMultiSelection* Gtk::MultiSelection::gobj ( ) const
inline

Provides access to the underlying C GObject.

◆ gobj_copy()

GtkMultiSelection* Gtk::MultiSelection::gobj_copy ( )

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

◆ operator=()

MultiSelection& Gtk::MultiSelection::operator= ( MultiSelection &&  src)
noexcept

◆ property_item_type()

Glib::PropertyProxy_ReadOnly< GType > Gtk::MultiSelection::property_item_type ( ) const

The type of items.

See Gio::ListModel::get_item_type().

Since gtkmm 4.8:
Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ property_model() [1/2]

Glib::PropertyProxy< Glib::RefPtr<Gio::ListModel> > Gtk::MultiSelection::property_model ( )

The list managed by this selection.

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

◆ property_model() [2/2]

Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gio::ListModel> > Gtk::MultiSelection::property_model ( ) const

The list managed by this selection.

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ property_n_items()

Glib::PropertyProxy_ReadOnly< unsigned int > Gtk::MultiSelection::property_n_items ( ) const

The number of items.

See Gio::ListModel::get_n_items().

Since gtkmm 4.8:

Default value: 0

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ set_model()

void Gtk::MultiSelection::set_model ( const Glib::RefPtr< Gio::ListModel > &  model)

Sets the model that self should wrap.

If model is nullptr, self will be empty.

Parameters
modelA Gio::ListModel to wrap.

Friends And Related Function Documentation

◆ wrap()

Glib::RefPtr< Gtk::MultiSelection > wrap ( GtkMultiSelection *  object,
bool  take_copy = false 
)
related

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

Parameters
objectThe C instance.
take_copyFalse 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.