gtkmm: Gtk::CellLayout Class Reference

An interface for packing cells. More...

Inheritance diagram for Gtk::CellLayout:

List of all members.

Public Types

typedef sigc::slot< void,

const

TreeModel::const_iterator& > 
SlotCellData

Public Member Functions

virtual ~CellLayout ()
GtkCellLayout* gobj ()
 Provides access to the underlying C GObject.

const GtkCellLayout* gobj () const
 Provides access to the underlying C GObject.

template<class ColumnType >
void pack_start (const TreeModelColumn< ColumnType >& model_column, bool expand=true)
void pack_start (CellRenderer& cell, bool expand=true)
 Packs the cell into the beginning of cell_layout.

void pack_end (CellRenderer& cell, bool expand=true)
 Adds the cell to the end of cell_layout.

std::vector< CellRenderer* > get_cells ()
 Return value: a list of cell renderers.

std::vector< const CellRenderer* > get_cells () const
 Return value: a list of cell renderers.

CellRendererget_first_cell ()
 Gets the CellRenderer for the column.

const CellRendererget_first_cell () const
 Gets the CellRenderer for the column.

void clear ()
 Unsets all the mappings on all renderers on cell_layout and removes all renderers from cell_layout.

void add_attribute (CellRenderer& cell, const Glib::ustring& attribute, int column)
 Adds an attribute mapping to the list in cell_layout.

void add_attribute (const Glib::PropertyProxy_Base& property, const TreeModelColumnBase& column)
void add_attribute (CellRenderer& cell, const Glib::ustring& attribute, const TreeModelColumnBase& column)
void set_cell_data_func (CellRenderer& cell, const SlotCellData& slot)
void clear_attributes (CellRenderer& cell)
 Clears all existing attributes previously set with set_attributes().

void reorder (CellRenderer& cell, int position)
 Re-inserts cell at position.

Glib::RefPtr< CellAreaget_area ()
 Returns the underlying Gtk::CellArea which might be cell_layout if called on a Gtk::CellArea or might be 0 if no Gtk::CellArea is used by cell_layout.

Glib::RefPtr< const CellAreaget_area () const
 Returns the underlying Gtk::CellArea which might be cell_layout if called on a Gtk::CellArea or might be 0 if no Gtk::CellArea is used by cell_layout.

template<class T_ModelColumnType >
void pack_start (const TreeModelColumn< T_ModelColumnType >& column, bool expand)

Static Public Member Functions

static void add_interface (GType gtype_implementer)

Protected Member Functions

virtual void pack_start_vfunc (CellRenderer* cell, bool expand)
virtual void pack_end_vfunc (CellRenderer* cell, bool expand)
virtual void clear_vfunc ()
virtual void add_attribute_vfunc (CellRenderer* cell, const Glib::ustring& attribute, int column)
virtual void clear_attributes_vfunc (CellRenderer* cell)
virtual void reorder_vfunc (CellRenderer* cell, int position)

Related Functions

(Note that these are not member functions.)

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


Detailed Description

An interface for packing cells.

CellLayout is an interface to be implemented by all objects which want to provide a TreeView::Column-like API for packing cells, setting attributes and data funcs.


Member Typedef Documentation


Constructor & Destructor Documentation

virtual Gtk::CellLayout::~CellLayout ( ) [virtual]

Member Function Documentation

void Gtk::CellLayout::add_attribute ( CellRenderer cell,
const Glib::ustring attribute,
int  column 
)

Adds an attribute mapping to the list in cell_layout.

The column is the column of the model to get a value from, and the attribute is the parameter on cell to be set from the value. So for example if column 2 of the model contains strings, you could have the "text" attribute of a Gtk::CellRendererText get its values from column 2.

Since gtkmm 2.4:
Parameters:
cellA Gtk::CellRenderer.
attributeAn attribute on the renderer.
columnThe column position on the model to get the attribute from.

Reimplemented in Gtk::TreeViewColumn.

void Gtk::CellLayout::add_attribute ( const Glib::PropertyProxy_Base property,
const TreeModelColumnBase column 
)

Reimplemented in Gtk::TreeViewColumn.

void Gtk::CellLayout::add_attribute ( CellRenderer cell,
const Glib::ustring attribute,
const TreeModelColumnBase column 
)

Reimplemented in Gtk::TreeViewColumn.

virtual void Gtk::CellLayout::add_attribute_vfunc ( CellRenderer cell,
const Glib::ustring attribute,
int  column 
) [protected, virtual]
static void Gtk::CellLayout::add_interface ( GType  gtype_implementer) [static]
void Gtk::CellLayout::clear ( )

Unsets all the mappings on all renderers on cell_layout and removes all renderers from cell_layout.

Since gtkmm 2.4:

Reimplemented in Gtk::TreeViewColumn.

void Gtk::CellLayout::clear_attributes ( CellRenderer cell)

Clears all existing attributes previously set with set_attributes().

Since gtkmm 2.4:
Parameters:
cellA Gtk::CellRenderer to clear the attribute mapping on.

Reimplemented in Gtk::TreeViewColumn.

virtual void Gtk::CellLayout::clear_attributes_vfunc ( CellRenderer cell) [protected, virtual]
virtual void Gtk::CellLayout::clear_vfunc ( ) [protected, virtual]
Glib::RefPtr<CellArea> Gtk::CellLayout::get_area ( )

Returns the underlying Gtk::CellArea which might be cell_layout if called on a Gtk::CellArea or might be 0 if no Gtk::CellArea is used by cell_layout.

Since gtkmm 3.0:
Returns:
The cell area used by cell_layout.
Glib::RefPtr<const CellArea> Gtk::CellLayout::get_area ( ) const

Returns the underlying Gtk::CellArea which might be cell_layout if called on a Gtk::CellArea or might be 0 if no Gtk::CellArea is used by cell_layout.

Since gtkmm 3.0:
Returns:
The cell area used by cell_layout.
std::vector<const CellRenderer*> Gtk::CellLayout::get_cells ( ) const

Return value: a list of cell renderers.

Returns:
A list of cell renderers.
Since gtkmm 2.12:
std::vector<CellRenderer*> Gtk::CellLayout::get_cells ( )

Return value: a list of cell renderers.

Returns:
A list of cell renderers.
Since gtkmm 2.12:
CellRenderer* Gtk::CellLayout::get_first_cell ( )

Gets the CellRenderer for the column.

You should dynamic_cast<> to the expected derived CellRenderer type. This assumes that the CellLayout contains only one CellRenderer.

const CellRenderer* Gtk::CellLayout::get_first_cell ( ) const

Gets the CellRenderer for the column.

You should dynamic_cast<> to the expected derived CellRenderer type. This assumes that the CellLayout contains only one CellRenderer.

GtkCellLayout* Gtk::CellLayout::gobj ( ) [inline]
const GtkCellLayout* Gtk::CellLayout::gobj ( ) const [inline]
void Gtk::CellLayout::pack_end ( CellRenderer cell,
bool  expand = true 
)

Adds the cell to the end of cell_layout.

If expand is false, then the cell is allocated no more space than it needs. Any unused space is divided evenly between cells for which expand is true.

Note that reusing the same cell renderer is not supported.

Since gtkmm 2.4:
Parameters:
cellA Gtk::CellRenderer.
expandtrue if cell is to be given extra space allocated to cell_layout.

Reimplemented in Gtk::TreeViewColumn.

virtual void Gtk::CellLayout::pack_end_vfunc ( CellRenderer cell,
bool  expand 
) [protected, virtual]
template <class ColumnType >
void Gtk::CellLayout::pack_start ( const TreeModelColumn< ColumnType >&  model_column,
bool  expand = true 
) [inline]
void Gtk::CellLayout::pack_start ( CellRenderer cell,
bool  expand = true 
)

Packs the cell into the beginning of cell_layout.

If expand is false, then the cell is allocated no more space than it needs. Any unused space is divided evenly between cells for which expand is true.

Note that reusing the same cell renderer is not supported.

Since gtkmm 2.4:
Parameters:
cellA Gtk::CellRenderer.
expandtrue if cell is to be given extra space allocated to cell_layout.

Reimplemented in Gtk::TreeViewColumn.

template <class T_ModelColumnType >
void Gtk::CellLayout::pack_start ( const TreeModelColumn< T_ModelColumnType >&  column,
bool  expand 
)

Reimplemented in Gtk::TreeViewColumn.

virtual void Gtk::CellLayout::pack_start_vfunc ( CellRenderer cell,
bool  expand 
) [protected, virtual]
void Gtk::CellLayout::reorder ( CellRenderer cell,
int  position 
)

Re-inserts cell at position.

Note that cell has already to be packed into cell_layout for this to function properly.

Since gtkmm 2.4:
Parameters:
cellA Gtk::CellRenderer to reorder.
positionNew position to insert cell at.
virtual void Gtk::CellLayout::reorder_vfunc ( CellRenderer cell,
int  position 
) [protected, virtual]
void Gtk::CellLayout::set_cell_data_func ( CellRenderer cell,
const SlotCellData slot 
)

Reimplemented in Gtk::TreeViewColumn.


Friends And Related Function Documentation

Glib::RefPtr< Gtk::CellLayout > wrap ( GtkCellLayout *  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.

The documentation for this class was generated from the following file:
  • gtkmm/celllayout.h