Inkscape
Vector Graphics Editor
Loading...
Searching...
No Matches
Inkscape::UI::Widget::ComboBoxEnum< E > Class Template Reference

Simplified management of enumerations in the UI as combobox. More...

#include <combo-enums.h>

Inheritance diagram for Inkscape::UI::Widget::ComboBoxEnum< E >:
Inkscape::UI::Widget::DropDownList Inkscape::UI::Widget::AttrWidget

Classes

struct  Data
 

Public Member Functions

 ComboBoxEnum (E const default_value, const Util::EnumDataConverter< E > &c, SPAttr const a=SPAttr::INVALID, bool const sort=true, const char *translation_context=nullptr)
 
 ComboBoxEnum (Util::EnumDataConverter< E > const &c, SPAttr const a=SPAttr::INVALID, bool const sort=true, const char *const translation_context=nullptr)
 
void set_active (unsigned int pos)
 
unsigned int get_active () const
 
Glib::ustring get_as_attribute () const final
 
void set_from_attribute (SPObject *const o) final
 
std::optional< E > get_selected_id () const
 
void set_active_by_id (E id)
 
void set_active_by_key (const Glib::ustring &key)
 
- Public Member Functions inherited from Inkscape::UI::Widget::DropDownList
 DropDownList ()
 
 DropDownList (BaseObjectType *cobject, const Glib::RefPtr< Gtk::Builder > &builder)
 
unsigned int append (const Glib::ustring &item)
 
Glib::ustring get_string (unsigned int position) const
 
unsigned int get_item_count () const
 
void remove_all ()
 
Glib::SignalProxyProperty signal_changed ()
 
void enable_search (bool enable=true)
 
void set_row_separator_func (std::function< bool(unsigned int)> callback)
 
- Public Member Functions inherited from Inkscape::UI::Widget::AttrWidget
 AttrWidget (const SPAttr a, unsigned int value)
 
 AttrWidget (const SPAttr a, double value)
 
 AttrWidget (const SPAttr a, bool value)
 
 AttrWidget (const SPAttr a, char *value)
 
 AttrWidget (const SPAttr a)
 
virtual ~AttrWidget ()=default
 
SPAttr get_attribute () const
 
sigc::signal< void()> & signal_attr_changed ()
 

Public Attributes

bool setProgrammatically = false
 

Private Member Functions

 ComboBoxEnum (Util::EnumDataConverter< E > const &c, SPAttr const a, bool const sort, const char *const translation_context, unsigned const default_value)
 
int get_active_by_id (E const id) const
 

Private Attributes

std::vector< Data_enums
 
const Util::EnumDataConverter< E > & _converter
 

Additional Inherited Members

- Protected Member Functions inherited from Inkscape::UI::Widget::AttrWidget
DefaultValueHolderget_default ()
 
const gchar * attribute_value (SPObject *o) const
 

Detailed Description

template<typename E>
class Inkscape::UI::Widget::ComboBoxEnum< E >

Simplified management of enumerations in the UI as combobox.

Definition at line 34 of file combo-enums.h.

Constructor & Destructor Documentation

◆ ComboBoxEnum() [1/3]

template<typename E >
Inkscape::UI::Widget::ComboBoxEnum< E >::ComboBoxEnum ( E const  default_value,
const Util::EnumDataConverter< E > &  c,
SPAttr const  a = SPAttr::INVALID,
bool const  sort = true,
const char *  translation_context = nullptr 
)
inline

◆ ComboBoxEnum() [2/3]

template<typename E >
Inkscape::UI::Widget::ComboBoxEnum< E >::ComboBoxEnum ( Util::EnumDataConverter< E > const &  c,
SPAttr const  a = SPAttr::INVALID,
bool const  sort = true,
const char *const  translation_context = nullptr 
)
inline

◆ ComboBoxEnum() [3/3]

Member Function Documentation

◆ get_active()

template<typename E >
unsigned int Inkscape::UI::Widget::ComboBoxEnum< E >::get_active ( ) const
inline

Definition at line 59 of file combo-enums.h.

◆ get_active_by_id()

template<typename E >
int Inkscape::UI::Widget::ComboBoxEnum< E >::get_active_by_id ( E const  id) const
inlineprivate

◆ get_as_attribute()

template<typename E >
Glib::ustring Inkscape::UI::Widget::ComboBoxEnum< E >::get_as_attribute ( ) const
inlinefinalvirtual

◆ get_selected_id()

template<typename E >
std::optional< E > Inkscape::UI::Widget::ComboBoxEnum< E >::get_selected_id ( ) const
inline

◆ set_active()

◆ set_active_by_id()

◆ set_active_by_key()

◆ set_from_attribute()

Member Data Documentation

◆ _converter

◆ _enums

◆ setProgrammatically


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