## ETableCol ETableCol |

## Functions

ETableCol * | e_table_col_new ()
void | e_table_col_ensure_surface ()

## Types and Values

enum | ETableColArrow

## Object Hierarchy

        GObject
        ╰── ETableCol

## Description

## Functions

### e_table_col_new ()

    ETableCol *
    e_table_col_new (ETableColumnSpecification *spec,
                     const gchar *text,
                     const gchar *icon_name,
                     ECell *ecell,
                     GCompareDataFunc compare);

The ETableCol represents a column to be used inside an ETable. The ETableCol objects are inserted inside an ETableHeader (which is just a collection of ETableCols). The ETableHeader is the definition of the order in which columns are shown to the user.

The `text` argument is the text that will be shown as a header to the user. `col_idx` reflects where the data for this ETableCol object will be fetch from an ETableModel. So even if the user changes the order of the columns being viewed (the ETableCols in the ETableHeader), the column will always point to the same column inside the ETableModel.

The `ecell` argument is an ECell object that needs to know how to render the data in the ETableModel for this specific row.

Data passed to `compare` can be (if not `NULL`) a cmp_cache, which can be accessed by `e_table_sorting_utils_add_to_cmp_cache()` and `e_table_sorting_utils_lookup_cmp_cache()`.

#### Parameters

spec | an ETableColumnSpecification |
text | a title for this column |
icon_name | name of the icon to be used for the header, or `NULL` |
ecell | the renderer to be used for this column |
compare | comparision function for the elements stored in this column |

#### Returns

the newly created ETableCol object.

### e_table_col_ensure_surface ()

    void
    e_table_col_ensure_surface (ETableCol *etc,
                                GtkWidget *widget);

## Types and Values

### enum ETableColArrow

#### Members

E_TABLE_COL_ARROW_NONE |  |
E_TABLE_COL_ARROW_UP |  |
E_TABLE_COL_ARROW_DOWN |  |