gtkmm: Gtk::MultiSelection Class Reference

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

#include <gtkmm/multiselection.h>

Inheritance diagram for Gtk::MultiSelection:

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::ListModelget_model ()
 Returns the underlying model of self. More...

 
Glib::RefPtr< const Gio::ListModelget_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< 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...

 
- Public Member Functions inherited from Glib::Object
 Object (const Object &)=delete
 
Objectoperator= (const Object &)=delete
 
 Object (Object &&src) noexcept
 
Objectoperator= (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::Objectwrap (GObject *object, bool take_copy=false)
 
- Public Member Functions inherited from Glib::ObjectBase
 ObjectBase (const ObjectBase &)=delete
 
ObjectBaseoperator= (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 ()
 
trackableoperator= (const trackable &src)
 
trackableoperator= (trackable &&src) noexcept
 
void remove_destroy_notify_callback (notifiable *data) const
 
- Public Member Functions inherited from Gio::ListModel
 ListModel (ListModel &&src) noexcept
 
ListModeloperator= (ListModel &&src) noexcept
 
 ~ListModel () noexcept override
 
GListModel * gobj ()
 
const GListModel * gobj () const
 
GType get_item_type () const
 
guint get_n_items () const
 
Glib::RefPtr< Glib::ObjectBaseget_object (guint position)
 
Glib::RefPtr< const Glib::ObjectBaseget_object (guint position) const
 
Glib::SignalProxy< void(guint, guint, guint)> signal_items_changed ()
 
Glib::RefPtr< Gio::ListModelwrap (GListModel *object, bool take_copy=false)
 
- Public Member Functions inherited from Glib::Interface
 Interface ()
 
 Interface (Interface &&src) noexcept
 
Interfaceoperator= (Interface &&src) noexcept
 
 Interface (const Glib::Interface_Class &interface_class)
 
 Interface (GObject *castitem)
 
 ~Interface () noexcept override
 
 Interface (const Interface &)=delete
 
Interfaceoperator= (const Interface &)=delete
 
GObject * gobj ()
 
const GObject * gobj () const
 
- 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 a set containing a set where the values in the range [position, position + n_items) match the selected state of the items in that 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)
 This is the most advanced selection updating method that allows the most fine-grained control over 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 Gio::ListModel
static void add_interface (GType gtype_implementer)
 
static GType get_type ()
 
- 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 Glib::Object
 Object ()
 
 Object (const Glib::ConstructParams &construct_params)
 
 Object (GObject *castitem)
 
 ~Object () noexcept override
 
- 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
 
ObjectBaseoperator= (ObjectBase &&src) noexcept
 
virtual ~ObjectBase () noexcept=0
 
void initialize (GObject *castitem)
 
void initialize_move (GObject *castitem, Glib::ObjectBase *previous_wrapper)
 
- Protected Member Functions inherited from Gio::ListModel
 ListModel ()
 
void items_changed (guint position, guint removed, guint added)
 
virtual GType get_item_type_vfunc ()
 
virtual guint get_n_items_vfunc ()
 
virtual gpointer get_item_vfunc (guint position)
 
- 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...

 

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
 
- Public Types inherited from sigc::notifiable
typedef internal::func_destroy_notify func_destroy_notify
 

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

Gtk::MultiSelection::MultiSelection ( MultiSelection&&  src)
noexcept
Gtk::MultiSelection::~MultiSelection ( )
overridenoexcept
Gtk::MultiSelection::MultiSelection ( )
protected
Gtk::MultiSelection::MultiSelection ( const Glib::RefPtr< Gio::ListModel > &  model)
explicitprotected

Member Function Documentation

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

Returns the underlying model of self.

Returns
The underlying model.
Glib::RefPtr<const Gio::ListModel> Gtk::MultiSelection::get_model ( ) const

Returns the underlying model of self.

Returns
The underlying model.
static GType Gtk::MultiSelection::get_type ( )
static

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

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

Provides access to the underlying C GObject.

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

Provides access to the underlying C GObject.

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.

MultiSelection& Gtk::MultiSelection::operator= ( MultiSelection&&  src)
noexcept
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.
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.
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 ListModel to wrap.

Friends And Related Function Documentation

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.