# Gtk::CellRenderer Class Reference
[TreeView Classes]

CellRenderers are used by Gtk::TreeView columns to render the Gtk::TreeModel column data appropriately. More...

Inheritance diagram for Gtk::CellRenderer:
[legend]
Collaboration diagram for Gtk::CellRenderer:
[legend]

List of all members.

## Public Member Functions

virtual | ~CellRenderer ()
GtkCellRenderer* | gobj ()
| Provides access to the underlying C GtkObject.
const GtkCellRenderer* | gobj () const
| Provides access to the underlying C GtkObject.
SizeRequestMode | get_request_mode () const
void | get_preferred_width (Widget& widget, int& minimum_width, int& natural_width) const
void | get_preferred_height_for_width (Widget& widget, int width, int& minimum_height, int& natural_height) const
void | get_preferred_height (Widget& widget, int& minimum_height, int& natural_height) const
void | get_preferred_width_for_height (Widget& widget, int height, int& minimum_width, int& natural_width) const
void | get_preferred_size (Widget& widget, Requisition& minimum_size, Requisition& natural_size) const
void | get_aligned_area (Widget& widget, CellRendererState flags, const Gdk::Rectangle& cell_area, Gdk::Rectangle& aligned_area)
void | render (const Cairo::RefPtr< Cairo::Context >& cr, Widget& widget, const Gdk::Rectangle& background_area, const Gdk::Rectangle& cell_area, CellRendererState flags)
| Invokes the virtual render function of the Gtk::CellRenderer.
bool | activate (GdkEvent* event, Widget& widget, const Glib::ustring& path, const Gdk::Rectangle& background_area, const Gdk::Rectangle& cell_area, CellRendererState flags)
| Passes an activate event to the cell renderer for possible processing.
CellEditable* | start_editing (GdkEvent* event, Widget& widget, const Glib::ustring& path, const Gdk::Rectangle& background_area, const Gdk::Rectangle& cell_area, CellRendererState flags=CellRendererState(0))
| Passes an activate event to the cell renderer for possible processing.
void | set_fixed_size (int width, int height)
| Sets the renderer size to be explicit, independent of the properties set.
void | get_fixed_size (int& width, int& height) const
| Fills in width and height with the appropriate size of cell.
void | set_alignment (float align, float yalign)
| Sets the renderer's alignment within its available space.
void | get_alignment (float& xalign, float& yalign) const
| Fills in xalign and yalign with the appropriate values of cell.
void | set_padding (int xpad, int ypad)
| Sets the renderer's padding.
void | get_padding (int& xpad, int& ypad) const
| Fills in xpad and ypad with the appropriate values of cell.
void | set_visible (bool visible=true)
| Sets the cell renderer's visibility.
bool | get_visible () const
| Returns the cell renderer's visibility.
void | set_sensitive (bool sensitive=true)
| Sets the cell renderer's sensitivity.
bool | get_sensitive () const
| Returns the cell renderer's sensitivity.
bool | is_activatable () const
void | stop_editing (bool canceled=false)
| Informs the cell renderer that the editing is stopped.
StateFlags | get_state (Widget& widget, CellRendererState cell_state) const
StateFlags | get_state (CellRendererState cell_state) const
| Translates the cell renderer state to StateFlags, based on the cell renderer and the given CellRendererState.
Glib::SignalProxy0< void > | signal_editing_canceled ()
| This signal is emitted when the user cancels the process of editing a cell.
Glib::SignalProxy2< void, CellEditable*, const Glib::ustring& > | signal_editing_started ()
| This signal gets emitted when a cell starts to be edited.
Glib::PropertyProxy < CellRendererMode > | property_mode ()
| Editable mode of the CellRenderer.
Glib::PropertyProxy_ReadOnly < CellRendererMode > | property_mode () const
| Editable mode of the CellRenderer.
Glib::PropertyProxy< bool > | property_visible ()
| Display the cell.
Glib::PropertyProxy_ReadOnly < bool > | property_visible () const
| Display the cell.
Glib::PropertyProxy< bool > | property_sensitive ()
| Display the cell sensitive.
Glib::PropertyProxy_ReadOnly < bool > | property_sensitive () const
| Display the cell sensitive.
Glib::PropertyProxy< float > | property_xalign ()
| The x-align.
Glib::PropertyProxy_ReadOnly < float > | property_xalign () const
| The x-align.
Glib::PropertyProxy< float > | property_yalign ()
| The y-align.
Glib::PropertyProxy_ReadOnly < float > | property_yalign () const
| The y-align.
Glib::PropertyProxy< unsigned int > | property_xpad ()
| The xpad.
Glib::PropertyProxy_ReadOnly < unsigned int > | property_xpad () const
| The xpad.
Glib::PropertyProxy< unsigned int > | property_ypad ()
| The ypad.
Glib::PropertyProxy_ReadOnly < unsigned int > | property_ypad () const
| The ypad.
Glib::PropertyProxy< int > | property_width ()
| The fixed width.
Glib::PropertyProxy_ReadOnly< int > | property_width () const
| The fixed width.
Glib::PropertyProxy< int > | property_height ()
| The fixed height.
Glib::PropertyProxy_ReadOnly< int > | property_height () const
| The fixed height.
Glib::PropertyProxy< bool > | property_is_expander ()
| Row has children.
Glib::PropertyProxy_ReadOnly < bool > | property_is_expander () const
| Row has children.
Glib::PropertyProxy< bool > | property_is_expanded ()
| Row is an expander row, and is expanded.
Glib::PropertyProxy_ReadOnly < bool > | property_is_expanded () const
| Row is an expander row, and is expanded.
Glib::PropertyProxy_WriteOnly < Glib::ustring > | property_cell_background ()
| Cell background color as a string.
Glib::PropertyProxy< Gdk::Color > | property_cell_background_gdk ()
| Cell background color as a GdkColor.
Glib::PropertyProxy_ReadOnly < Gdk::Color > | property_cell_background_gdk () const
| Cell background color as a GdkColor.
Glib::PropertyProxy< Gdk::RGBA > | property_cell_background_rgba ()
| Cell background color as a GdkRGBA.
Glib::PropertyProxy_ReadOnly < Gdk::RGBA > | property_cell_background_rgba () const
| Cell background color as a GdkRGBA.
Glib::PropertyProxy< bool > | property_cell_background_set ()
| Whether this tag affects the cell background color.
Glib::PropertyProxy_ReadOnly < bool > | property_cell_background_set () const
| Whether this tag affects the cell background color.
Glib::PropertyProxy_ReadOnly < bool > | property_editing () const
| Whether the cell renderer is currently in editing mode.

## Protected Member Functions

virtual void | on_editing_canceled ()
virtual void | on_editing_started (CellEditable* editable, const Glib::ustring& path)
| CellRenderer ()
virtual SizeRequestMode | get_request_mode_vfunc () const
virtual void | get_preferred_width_vfunc (Widget& widget, int& minimum_width, int& natural_width) const
virtual void | get_preferred_height_for_width_vfunc (Widget& widget, int width, int& minimum_height, int& natural_height) const
virtual void | get_preferred_height_vfunc (Widget& widget, int& minimum_height, int& natural_height) const
virtual void | get_preferred_width_for_height_vfunc (Widget& widget, int height, int& minimum_width, int& natural_width) const
virtual void | render_vfunc (const Cairo::RefPtr< Cairo::Context >& cr, Widget& widget, const Gdk::Rectangle& background_area, const Gdk::Rectangle& cell_area, CellRendererState flags)
virtual bool | activate_vfunc (GdkEvent* event, Widget& widget, const Glib::ustring& path, const Gdk::Rectangle& background_area, const Gdk::Rectangle& cell_area, CellRendererState flags)
virtual CellEditable* | start_editing_vfunc (GdkEvent* event, Widget& widget, const Glib::ustring& path, const Gdk::Rectangle& background_area, const Gdk::Rectangle& cell_area, CellRendererState flags)

## Related Functions

(Note that these are not member functions.)
Gtk::CellRenderer* | wrap (GtkCellRenderer* object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

CellRenderers are used by Gtk::TreeView columns to render the Gtk::TreeModel column data appropriately.

They display, and allow editing of, the values of their properties. In most cases, Gtk::TreeView::append_column() will automatically choose the appropriate renderer for the mode column's data type, so you will rarely need to worry about these classes.

## Constructor & Destructor Documentation

virtual Gtk::CellRenderer::~CellRenderer | ( | ) | `[virtual]`

Gtk::CellRenderer::CellRenderer | ( | ) | `[protected]`

## Member Function Documentation

bool Gtk::CellRenderer::activate | ( | GdkEvent * | event,
|  | Widget& | widget,
|  | const Glib::ustring & | path,
|  | const Gdk::Rectangle& | background_area,
|  | const Gdk::Rectangle& | cell_area,
|  | CellRendererState | flags
| ) |  |

Passes an activate event to the cell renderer for possible processing.

Some cell renderers may use events; for example, Gtk::CellRendererToggle toggles when it gets a mouse click.

Parameters:

  event | A Gdk::Event.
  widget | Widget that received the event.
  path | Widget-dependent string representation of the event location; e.g. for Gtk::TreeView, a string representation of Gtk::TreePath.
  background_area | Background area as passed to render().
  cell_area | Cell area as passed to render().
  flags | Render flags.

Returns:
  `true` if the event was consumed/handled.

virtual bool Gtk::CellRenderer::activate_vfunc | ( | GdkEvent * | event,
|  | Widget& | widget,
|  | const Glib::ustring & | path,
|  | const Gdk::Rectangle& | background_area,
|  | const Gdk::Rectangle& | cell_area,
|  | CellRendererState | flags
| ) |  | `[protected, virtual]`

void Gtk::CellRenderer::get_aligned_area | ( | Widget& | widget,
|  | CellRendererState | flags,
|  | const Gdk::Rectangle& | cell_area,
|  | Gdk::Rectangle& | aligned_area
| ) |  |

void Gtk::CellRenderer::get_alignment | ( | float & | xalign,
|  | float & | yalign
| ) |  | const

Fills in xalign and yalign with the appropriate values of cell.

Since gtkmm 2.18:

Parameters:

  xalign | Location to fill in with the x alignment of the cell, or `0`.
  yalign | Location to fill in with the y alignment of the cell, or `0`.

void Gtk::CellRenderer::get_fixed_size | ( | int & | width,
|  | int & | height
| ) |  | const

Fills in width and height with the appropriate size of cell.

Parameters:

  width | Location to fill in with the fixed width of the widget.
  height | Location to fill in with the fixed height of the widget.

void Gtk::CellRenderer::get_padding | ( | int & | xpad,
|  | int & | ypad
| ) |  | const

Fills in xpad and ypad with the appropriate values of cell.

Since gtkmm 2.18:

Parameters:

  xpad | Location to fill in with the x padding of the cell, or `0`.
  ypad | Location to fill in with the y padding of the cell, or `0`.

void Gtk::CellRenderer::get_preferred_height | ( | Widget& | widget,
|  | int & | minimum_height,
|  | int & | natural_height
| ) |  | const

void Gtk::CellRenderer::get_preferred_height_for_width | ( | Widget& | widget,
|  | int | width,
|  | int & | minimum_height,
|  | int & | natural_height
| ) |  | const

virtual void Gtk::CellRenderer::get_preferred_height_for_width_vfunc | ( | Widget& | widget,
|  | int | width,
|  | int & | minimum_height,
|  | int & | natural_height
| ) |  | const`[protected, virtual]`

virtual void Gtk::CellRenderer::get_preferred_height_vfunc | ( | Widget& | widget,
|  | int & | minimum_height,
|  | int & | natural_height
| ) |  | const`[protected, virtual]`

void Gtk::CellRenderer::get_preferred_size | ( | Widget& | widget,
|  | Requisition& | minimum_size,
|  | Requisition& | natural_size
| ) |  | const

void Gtk::CellRenderer::get_preferred_width | ( | Widget& | widget,
|  | int & | minimum_width,
|  | int & | natural_width
| ) |  | const

void Gtk::CellRenderer::get_preferred_width_for_height | ( | Widget& | widget,
|  | int | height,
|  | int & | minimum_width,
|  | int & | natural_width
| ) |  | const

virtual void Gtk::CellRenderer::get_preferred_width_for_height_vfunc | ( | Widget& | widget,
|  | int | height,
|  | int & | minimum_width,
|  | int & | natural_width
| ) |  | const`[protected, virtual]`

virtual void Gtk::CellRenderer::get_preferred_width_vfunc | ( | Widget& | widget,
|  | int & | minimum_width,
|  | int & | natural_width
| ) |  | const`[protected, virtual]`

SizeRequestMode Gtk::CellRenderer::get_request_mode | ( | ) | const

virtual SizeRequestMode Gtk::CellRenderer::get_request_mode_vfunc | ( | ) | const`[protected, virtual]`

bool Gtk::CellRenderer::get_sensitive | ( | ) | const

Returns the cell renderer's sensitivity.

Since gtkmm 2.18:

Returns:
  `true` if the cell renderer is sensitive.

StateFlags Gtk::CellRenderer::get_state | ( | Widget& | widget,
|  | CellRendererState | cell_state
| ) |  | const

StateFlags Gtk::CellRenderer::get_state | ( | CellRendererState | cell_state ) | const

Translates the cell renderer state to StateFlags, based on the cell renderer and the given CellRendererState.

Parameters:

  cell_state | The cell renderer state.

Returns:
  The widget state flags applying to the cell renderer.

Since gtkmm 3.0:

bool Gtk::CellRenderer::get_visible | ( | ) | const

Returns the cell renderer's visibility.

Since gtkmm 2.18:

Returns:
  `true` if the cell renderer is visible.

GtkCellRenderer* Gtk::CellRenderer::gobj | ( | ) | `[inline]`

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Object.

Reimplemented in Gtk::CellRendererAccel, Gtk::CellRendererCombo, Gtk::CellRendererPixbuf, Gtk::CellRendererProgress, Gtk::CellRendererSpin, Gtk::CellRendererSpinner, Gtk::CellRendererText, and Gtk::CellRendererToggle.

const GtkCellRenderer* Gtk::CellRenderer::gobj | ( | ) | const`[inline]`

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Object.

Reimplemented in Gtk::CellRendererAccel, Gtk::CellRendererCombo, Gtk::CellRendererPixbuf, Gtk::CellRendererProgress, Gtk::CellRendererSpin, Gtk::CellRendererSpinner, Gtk::CellRendererText, and Gtk::CellRendererToggle.

bool Gtk::CellRenderer::is_activatable | ( | ) | const

virtual void Gtk::CellRenderer::on_editing_canceled | ( | ) | `[protected, virtual]`

virtual void Gtk::CellRenderer::on_editing_started | ( | CellEditable* | editable,
|  | const Glib::ustring & | path
| ) |  | `[protected, virtual]`

Glib::PropertyProxy_WriteOnly<Glib::ustring> Gtk::CellRenderer::property_cell_background | ( | ) |

Cell background color as a string.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<Gdk::Color> Gtk::CellRenderer::property_cell_background_gdk | ( | ) |

Cell background color as a GdkColor.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<Gdk::Color> Gtk::CellRenderer::property_cell_background_gdk | ( | ) | const

Cell background color as a GdkColor.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<Gdk::RGBA> Gtk::CellRenderer::property_cell_background_rgba | ( | ) | const

Cell background color as a GdkRGBA.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<Gdk::RGBA> Gtk::CellRenderer::property_cell_background_rgba | ( | ) |

Cell background color as a GdkRGBA.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<bool> Gtk::CellRenderer::property_cell_background_set | ( | ) | const

Whether this tag affects the cell background color.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<bool> Gtk::CellRenderer::property_cell_background_set | ( | ) |

Whether this tag affects the cell background color.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<bool> Gtk::CellRenderer::property_editing | ( | ) | const

Whether the cell renderer is currently in editing mode.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<int> Gtk::CellRenderer::property_height | ( | ) |

The fixed height.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<int> Gtk::CellRenderer::property_height | ( | ) | const

The fixed height.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<bool> Gtk::CellRenderer::property_is_expanded | ( | ) |

Row is an expander row, and is expanded.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<bool> Gtk::CellRenderer::property_is_expanded | ( | ) | const

Row is an expander row, and is expanded.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<bool> Gtk::CellRenderer::property_is_expander | ( | ) |

Row has children.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<bool> Gtk::CellRenderer::property_is_expander | ( | ) | const

Row has children.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<CellRendererMode> Gtk::CellRenderer::property_mode | ( | ) | const

Editable mode of the CellRenderer.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<CellRendererMode> Gtk::CellRenderer::property_mode | ( | ) |

Editable mode of the CellRenderer.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<bool> Gtk::CellRenderer::property_sensitive | ( | ) |

Display the cell sensitive.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<bool> Gtk::CellRenderer::property_sensitive | ( | ) | const

Display the cell sensitive.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<bool> Gtk::CellRenderer::property_visible | ( | ) |

Display the cell.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<bool> Gtk::CellRenderer::property_visible | ( | ) | const

Display the cell.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<int> Gtk::CellRenderer::property_width | ( | ) |

The fixed width.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<int> Gtk::CellRenderer::property_width | ( | ) | const

The fixed width.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<float> Gtk::CellRenderer::property_xalign | ( | ) |

The x-align.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<float> Gtk::CellRenderer::property_xalign | ( | ) | const

The x-align.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<unsigned int> Gtk::CellRenderer::property_xpad | ( | ) |

The xpad.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<unsigned int> Gtk::CellRenderer::property_xpad | ( | ) | const

The xpad.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<float> Gtk::CellRenderer::property_yalign | ( | ) | const

The y-align.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<float> Gtk::CellRenderer::property_yalign | ( | ) |

The y-align.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<unsigned int> Gtk::CellRenderer::property_ypad | ( | ) | const

The ypad.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<unsigned int> Gtk::CellRenderer::property_ypad | ( | ) |

The ypad.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

void Gtk::CellRenderer::render | ( | const Cairo::RefPtr< Cairo::Context > & | cr,
|  | Widget& | widget,
|  | const Gdk::Rectangle& | background_area,
|  | const Gdk::Rectangle& | cell_area,
|  | CellRendererState | flags
| ) |  |

Invokes the virtual render function of the Gtk::CellRenderer.

The three passed-in rectangles are areas of window. Most renderers will draw within cell_area; the xalign, yalign, xpad, and ypad fields of the Gtk::CellRenderer should be honored with respect to cell_area. background_area includes the blank space around the cell, and also the area containing the tree expander; so the background_area rectangles for all cells tile to cover the entire window. expose_area is a clip rectangle.

Parameters:

  window | A Gdk::Drawable to draw to.
  widget | The widget owning window.
  background_area | Entire cell area (including tree expanders and maybe padding on the sides).
  cell_area | Area normally rendered by a cell renderer.
  expose_area | Area that actually needs updating.
  flags | Flags that affect rendering.

virtual void Gtk::CellRenderer::render_vfunc | ( | const Cairo::RefPtr< Cairo::Context > & | cr,
|  | Widget& | widget,
|  | const Gdk::Rectangle& | background_area,
|  | const Gdk::Rectangle& | cell_area,
|  | CellRendererState | flags
| ) |  | `[protected, virtual]`

void Gtk::CellRenderer::set_alignment | ( | float | align,
|  | float | yalign
| ) |  |

Sets the renderer's alignment within its available space.

Since gtkmm 2.18:

Parameters:

  xalign | The x alignment of the cell renderer.
  yalign | The y alignment of the cell renderer.

void Gtk::CellRenderer::set_fixed_size | ( | int | width,
|  | int | height
| ) |  |

Sets the renderer size to be explicit, independent of the properties set.

Parameters:

  width | The width of the cell renderer, or -1.
  height | The height of the cell renderer, or -1.

void Gtk::CellRenderer::set_padding | ( | int | xpad,
|  | int | ypad
| ) |  |

Sets the renderer's padding.

Since gtkmm 2.18:

Parameters:

  xpad | The x padding of the cell renderer.
  ypad | The y padding of the cell renderer.

void Gtk::CellRenderer::set_sensitive | ( | bool | sensitive = `true` ) |

Sets the cell renderer's sensitivity.

Since gtkmm 2.18:

Parameters:

  sensitive | The sensitivity of the cell.

void Gtk::CellRenderer::set_visible | ( | bool | visible = `true` ) |

Sets the cell renderer's visibility.

Since gtkmm 2.18:

Parameters:

  visible | The visibility of the cell.

Glib::SignalProxy0< void > Gtk::CellRenderer::signal_editing_canceled | ( | ) |

This signal is emitted when the user cancels the process of editing a cell.

For example, an editable cell renderer could be written to cancel editing when the user presses Escape.

See also:
  editing_canceled()

Prototype:
  `void on_my_editing_canceled()`

Glib::SignalProxy2< void,CellEditable*,const Glib::ustring& > Gtk::CellRenderer::signal_editing_started | ( | ) |

This signal gets emitted when a cell starts to be edited.

The indended use of this signal is to do special setup on editable, e.g. adding an EntryCompletion or setting up additional columns in a ComboBox.

Note that GTK+ doesn't guarantee that cell renderers will continue to use the same kind of widget for editing in future releases, therefore you should check the type of editable before doing any specific setup.

Note that this signal does not work yet in gtkmm. See http://bugzilla.gnome.org/show_bug.cgi?id=301597

Since gtkmm 2.6:

Parameters:

  editable | the CellEditable.
  path | the path identifying the edited cell.

Prototype:
  `void on_my_editing_started(CellEditable* editable, const Glib::ustring& path)`

CellEditable* Gtk::CellRenderer::start_editing | ( | GdkEvent * | event,
|  | Widget& | widget,
|  | const Glib::ustring & | path,
|  | const Gdk::Rectangle& | background_area,
|  | const Gdk::Rectangle& | cell_area,
|  | CellRendererState | flags = `CellRendererState(0)`
| ) |  |

Passes an activate event to the cell renderer for possible processing.

Parameters:

  event | A Gdk::Event.
  widget | Widget that received the event.
  path | Widget-dependent string representation of the event location; e.g. for Gtk::TreeView, a string representation of Gtk::TreePath.
  background_area | Background area as passed to render().
  cell_area | Cell area as passed to render().
  flags | Render flags.

Returns:
  A new Gtk::CellEditable, or `0`.

virtual CellEditable* Gtk::CellRenderer::start_editing_vfunc | ( | GdkEvent * | event,
|  | Widget& | widget,
|  | const Glib::ustring & | path,
|  | const Gdk::Rectangle& | background_area,
|  | const Gdk::Rectangle& | cell_area,
|  | CellRendererState | flags
| ) |  | `[protected, virtual]`

void Gtk::CellRenderer::stop_editing | ( | bool | canceled = `false` ) |

Informs the cell renderer that the editing is stopped.

If canceled is `true`, the cell renderer will emit the Gtk::CellRenderer::editing-canceled signal.

This function should be called by cell renderer implementations in response to the Gtk::CellEditable::editing-done signal of Gtk::CellEditable.

Since gtkmm 2.6:

Parameters:

  canceled | `true` if the editing has been canceled.

## Friends And Related Function Documentation

Gtk::CellRenderer* wrap | ( | GtkCellRenderer * | object,
|  | bool | take_copy = `false`
| ) |  | `[related]`

A Glib::wrap() method for this object.

Parameters:

  object | The C instance.
  take_copy | False 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/cellrenderer.h