GnuCash c935c2f+
Loading...
Searching...
No Matches
Public Member Functions
GncOptionGtkUIItem Class Reference

class GncOptionGtkUIItem Gtk-specific Interface class for Option Widget More...

#include <gnc-option-gtk-ui.hpp>

Inheritance diagram for GncOptionGtkUIItem:
GncOptionUIItem GncGtkAccountListUIItem GncGtkAccountSelUIItem GncGtkBooleanUIItem GncGtkBudgetUIItem GncGtkColorUIItem GncGtkCommodityUIItem GncGtkCurrencyUIItem GncGtkDateFormatUIItem GncGtkFontUIItem GncGtkInvReportUIItem GncGtkInvoiceUIItem GncGtkListUIItem GncGtkMultichoiceUIItem GncGtkNumberRangeUIItem GncGtkOwnerUIItem GncGtkPixmapUIItem GncGtkPlotSizeUIItem GncGtkRadioButtonUIItem GncGtkStringUIItem GncGtkTaxTableUIItem GncGtkTextUIItem GncOptionDateUIItem

Public Member Functions

 GncOptionGtkUIItem (GtkWidget *widget, GncOptionUIType type)
 
 GncOptionGtkUIItem (const GncOptionGtkUIItem &item)
 
 GncOptionGtkUIItem (GncOptionGtkUIItem &&)=default
 
virtual void set_selectable (bool) const noexcept override
 Control wether the widget is sensitive.
 
void clear_ui_item () override
 Clear the data from the widget.
 
void set_widget (GtkWidget *widget)
 
virtual GtkWidget * get_widget () const
 
virtual SCM get_widget_scm_value (const GncOption &) const
 
- Public Member Functions inherited from GncOptionUIItem
 GncOptionUIItem (GncOptionUIType type)
 
GncOptionUIType get_ui_type () const noexcept
 
virtual void set_dirty (bool status) noexcept
 
virtual bool get_dirty () const noexcept
 
virtual void set_ui_item_from_option (GncOption &option) noexcept=0
 
virtual void set_option_from_ui_item (GncOption &option) noexcept=0
 

Detailed Description

class GncOptionGtkUIItem Gtk-specific Interface class for Option Widget

Definition at line 74 of file gnc-option-gtk-ui.hpp.

Constructor & Destructor Documentation

◆ GncOptionGtkUIItem() [1/2]

GncOptionGtkUIItem::GncOptionGtkUIItem ( GtkWidget *  widget,
GncOptionUIType  type 
)

Definition at line 80 of file gnc-option-gtk-ui.cpp.

81 :
82 GncOptionUIItem{type},
83 m_widget{static_cast<GtkWidget*>(g_object_ref(widget))} {}
Holds a pointer to the UI item which will control the option and an enum representing the type of the...

◆ GncOptionGtkUIItem() [2/2]

GncOptionGtkUIItem::GncOptionGtkUIItem ( const GncOptionGtkUIItem item)

Definition at line 85 of file gnc-option-gtk-ui.cpp.

85 :
86 GncOptionUIItem{item.get_ui_type()},
87 m_widget{static_cast<GtkWidget*>(g_object_ref(item.get_widget()))} {}

◆ ~GncOptionGtkUIItem()

GncOptionGtkUIItem::~GncOptionGtkUIItem ( )
overridevirtual

Definition at line 89 of file gnc-option-gtk-ui.cpp.

90{
91 if (m_widget)
92 g_object_unref(m_widget);
93}

Member Function Documentation

◆ clear_ui_item()

void GncOptionGtkUIItem::clear_ui_item ( )
overridevirtual

Clear the data from the widget.

Implements GncOptionUIItem.

Definition at line 103 of file gnc-option-gtk-ui.cpp.

104{
105 if (m_widget)
106 g_object_unref(m_widget);
107 m_widget = nullptr;
108}

◆ get_widget()

virtual GtkWidget * GncOptionGtkUIItem::get_widget ( ) const
inlinevirtual

Definition at line 86 of file gnc-option-gtk-ui.hpp.

86{ return m_widget; }

◆ get_widget_scm_value()

SCM GncOptionGtkUIItem::get_widget_scm_value ( const GncOption option) const
virtual

Definition at line 126 of file gnc-option-gtk-ui.cpp.

127{
128 return SCM_BOOL_F;
129}

◆ set_selectable()

void GncOptionGtkUIItem::set_selectable ( bool  selectable) const
overridevirtualnoexcept

Control wether the widget is sensitive.

Implements GncOptionUIItem.

Definition at line 96 of file gnc-option-gtk-ui.cpp.

97{
98 if (m_widget)
99 gtk_widget_set_sensitive (m_widget, selectable);
100}

◆ set_widget()

void GncOptionGtkUIItem::set_widget ( GtkWidget *  widget)

Definition at line 111 of file gnc-option-gtk-ui.cpp.

112{
113 if (get_ui_type() == GncOptionUIType::INTERNAL)
114 {
115 std::string error{"INTERNAL option, setting the UI item forbidden."};
116 throw std::logic_error(error);
117 }
118
119 if (m_widget)
120 g_object_unref(m_widget);
121
122 m_widget = static_cast<GtkWidget*>(g_object_ref(widget));
123}

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