logo top
Main Page   Widgets   Namespaces   Book  

Gnome::Glade::VariablesMap Class Reference

Associates named Glade widgets with member variables. More...

#include <variablesmap.h>

Public Member Functions

 VariablesMap (const Glib::RefPtr< Glade::Xml > &glade)
 
virtual ~VariablesMap ()
 
virtual void connect_widget (const Glib::ustring &widget_name, bool &variable)
 For ToggleButton (CheckBox and RadioButton)
 
virtual void connect_widget (const Glib::ustring &widget_name, Glib::ustring &variable)
 For Entry, ComboBoxEntry and SpinBox.
 
virtual void connect_widget (const Glib::ustring &widget_name, double &variable)
 For Scale (HScale and VScale)
 
virtual void connect_widget (const Glib::ustring &widget_name, Glib::Date &variable)
 For Calendar.
 
virtual void transfer_widgets_to_variables ()
 Transfer data from the widget to the variable.
 
virtual void transfer_variables_to_widgets ()
 Transfer data from the variable to the widget.
 

Protected Types

typedef std::map< Gtk::Widget *, void * > type_mapWidgetsToVariables
 

Protected Member Functions

virtual bool validate_widgets ()
 Override this to validate the data that the user enters into the widgets.
 
virtual void transfer_one_widget (Gtk::Widget *pWidget, bool to_variable)
 

Protected Attributes

type_mapWidgetsToVariables m_mapWidgetsToVariables
 
Glib::RefPtr< Glade::Xmlm_refGlade
 

Detailed Description

Associates named Glade widgets with member variables.

Use connect_widget() to link the widgets with variables that will contain their data. Then use transfer_widgets_to_variables() and transfer_variables_to_widgets() to get or set all of the variables at once.

This is meant to be a bit like MFC's "Dialog Data Exchange and Validation".

The association of widget and member varables follow this mapping:

Gtk::Entry --> Glib::ustring Gtk::SpinBox --> Glib::ustring Gtk::ComboBoxEntry --> Glib::ustring Gtk::Scale --> double Gtk::Calendar --> Glib::Date Gtk::CheckBox --> bool Gtk::RadioButton --> bool

Member Typedef Documentation

◆ type_mapWidgetsToVariables

std::map<Gtk::Widget*, void*> Gnome::Glade::VariablesMap::type_mapWidgetsToVariables
protected

Constructor & Destructor Documentation

◆ VariablesMap()

Gnome::Glade::VariablesMap::VariablesMap ( const Glib::RefPtr< Glade::Xml > & glade)
explicit

◆ ~VariablesMap()

virtual Gnome::Glade::VariablesMap::~VariablesMap ( )
virtual

Member Function Documentation

◆ connect_widget() [1/4]

virtual void Gnome::Glade::VariablesMap::connect_widget ( const Glib::ustring & widget_name,
bool & variable )
virtual

For ToggleButton (CheckBox and RadioButton)

◆ connect_widget() [2/4]

virtual void Gnome::Glade::VariablesMap::connect_widget ( const Glib::ustring & widget_name,
double & variable )
virtual

For Scale (HScale and VScale)

◆ connect_widget() [3/4]

virtual void Gnome::Glade::VariablesMap::connect_widget ( const Glib::ustring & widget_name,
Glib::Date & variable )
virtual

For Calendar.

◆ connect_widget() [4/4]

virtual void Gnome::Glade::VariablesMap::connect_widget ( const Glib::ustring & widget_name,
Glib::ustring & variable )
virtual

For Entry, ComboBoxEntry and SpinBox.

◆ transfer_one_widget()

virtual void Gnome::Glade::VariablesMap::transfer_one_widget ( Gtk::Widget * pWidget,
bool to_variable )
protectedvirtual

◆ transfer_variables_to_widgets()

virtual void Gnome::Glade::VariablesMap::transfer_variables_to_widgets ( )
virtual

Transfer data from the variable to the widget.

◆ transfer_widgets_to_variables()

virtual void Gnome::Glade::VariablesMap::transfer_widgets_to_variables ( )
virtual

Transfer data from the widget to the variable.

◆ validate_widgets()

virtual bool Gnome::Glade::VariablesMap::validate_widgets ( )
protectedvirtual

Override this to validate the data that the user enters into the widgets.

The return value indicates whether the widgets' data is valid.

Member Data Documentation

◆ m_mapWidgetsToVariables

type_mapWidgetsToVariables Gnome::Glade::VariablesMap::m_mapWidgetsToVariables
protected

◆ m_refGlade

Glib::RefPtr<Glade::Xml> Gnome::Glade::VariablesMap::m_refGlade
protected

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

Generated for libglademm 2.4 by Doxygen 1.12.0 © 1997-2001