CtkCellRendererCombo: CTK+ 3 Reference Manual

## CtkCellRendererCombo CtkCellRendererCombo — Renders a combobox in a cell |

## Functions

CtkCellRenderer * | ctk_cell_renderer_combo_new ()

## Properties

gboolean | has-entry | Read / Write
CtkTreeModel * | model | Read / Write
int | text-column | Read / Write

## Signals

void | changed | Run Last

## Types and Values

struct | CtkCellRendererCombo

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── CtkCellRenderer
                ╰── CtkCellRendererText
                    ╰── CtkCellRendererCombo

## Includes

    #include <ctk/ctk.h>

## Description

CtkCellRendererCombo renders text in a cell like CtkCellRendererText from which it is derived. But while CtkCellRendererText offers a simple entry to edit the text, CtkCellRendererCombo offers a CtkComboBox widget to edit the text. The values to display in the combo box are taken from the tree model specified in the “model” property.

The combo cell renderer takes care of adding a text cell renderer to the combo box and sets it to display the column specified by its “text-column” property. Further properties of the combo box can be set in a handler for the “editing-started” signal.

The CtkCellRendererCombo cell renderer was added in CTK+ 2.6.

## Functions

### ctk_cell_renderer_combo_new ()

    CtkCellRenderer *
    ctk_cell_renderer_combo_new (void);

Creates a new CtkCellRendererCombo. Adjust how text is drawn using object properties. Object properties can be set globally (with `g_object_set()`). Also, with CtkTreeViewColumn, you can bind a property to a value in a CtkTreeModel. For example, you can bind the “text” property on the cell renderer to a string value in the model, thus rendering a different string in each row of the CtkTreeView.

#### Returns

the new cell renderer

Since: 2.6

## Types and Values

### struct CtkCellRendererCombo

    struct CtkCellRendererCombo;

## Property Details

### The `“has-entry”` property

      “has-entry”                gboolean

If `TRUE`, the cell renderer will include an entry and allow to enter values other than the ones in the popup list.

Owner: CtkCellRendererCombo

Flags: Read / Write

Default value: TRUE

Since: 2.6

### The `“model”` property

      “model”                    CtkTreeModel *

Holds a tree model containing the possible values for the combo box. Use the text_column property to specify the column holding the values.

Owner: CtkCellRendererCombo

Flags: Read / Write

Since: 2.6

### The `“text-column”` property

      “text-column”              int

Specifies the model column which holds the possible values for the combo box.

Note that this refers to the model specified in the model property, not the model backing the tree view to which this cell renderer is attached.

CtkCellRendererCombo automatically adds a text cell renderer for this column to its combo box.

Owner: CtkCellRendererCombo

Flags: Read / Write

Allowed values: >= -1

Default value: -1

Since: 2.6

## Signal Details

### The `“changed”` signal

    void
    user_function (CtkCellRendererCombo *combo,
                   char                 *path_string,
                   CtkTreeIter          *new_iter,
                   gpointer              user_data)

This signal is emitted each time after the user selected an item in the combo box, either by using the mouse or the arrow keys. Contrary to CtkComboBox, CtkCellRendererCombo::changed is not emitted for changes made to a selected item in the entry. The argument `new_iter` corresponds to the newly selected item in the combo box and it is relative to the CtkTreeModel set via the model property on CtkCellRendererCombo.

Note that as soon as you change the model displayed in the tree view, the tree view will immediately cease the editing operating. This means that you most probably want to refrain from changing the model until the combo cell renderer emits the edited or editing_canceled signal.

#### Parameters

combo | the object on which the signal is emitted |
path_string | a string of the path identifying the edited cell (relative to the tree view model) |
new_iter | the new iter selected in the combo box (relative to the combo box model) |
user_data | user data set when the signal handler was connected. |

Flags: Run Last

Since: 2.14