## ETableItem

ETableItem

## Synopsis

    struct              ETableItem;
    void                e_table_item_set_cursor             (ETableItem *eti,
                                                             gint col,
                                                             gint row);
    gint                e_table_item_get_focused_column     (ETableItem *eti);
    void                e_table_item_leave_edit             (ETableItem *eti);
    void                e_table_item_enter_edit             (ETableItem *eti,
                                                             gint col,
                                                             gint row);
    void                e_table_item_redraw_range           (ETableItem *eti,
                                                             gint start_col,
                                                             gint start_row,
                                                             gint end_col,
                                                             gint end_row);
    EPrintable *        e_table_item_get_printable          (ETableItem *eti);
    void                e_table_item_compute_location       (ETableItem *eti,
                                                             gint *x,
                                                             gint *y,
                                                             gint *row,
                                                             gint *col);
    void                e_table_item_compute_mouse_over     (ETableItem *eti,
                                                             gint x,
                                                             gint y,
                                                             gint *row,
                                                             gint *col);
    void                e_table_item_get_cell_geometry      (ETableItem *eti,
                                                             gint *row,
                                                             gint *col,
                                                             gint *x,
                                                             gint *y,
                                                             gint *width,
                                                             gint *height);
    gint                e_table_item_row_diff               (ETableItem *eti,
                                                             gint start_row,
                                                             gint end_row);
    gboolean            e_table_item_is_editing             (ETableItem *eti);
    void                e_table_item_cursor_scrolled        (ETableItem *eti);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GnomeCanvasItem
                   +----ETableItem

## Properties

      "ETableHeader"             ETableHeader*         : Write
      "ETableModel"              ETableModel*          : Write
      "alternating-row-colors"   gboolean              : Write
      "cursor-mode"              gint                  : Write
      "cursor-row"               gint                  : Read / Write
      "drawfocus"                gboolean              : Write
      "height"                   gdouble               : Read
      "horizontal-draw-grid"     gboolean              : Write
      "is-editing"               gboolean              : Read
      "length-threshold"         gint                  : Write
      "minimum-width"            gdouble               : Read / Write
      "selection-model"          ESelectionModel*      : Write
      "uniform-row-height"       gboolean              : Read / Write
      "vertical-draw-grid"       gboolean              : Write
      "width"                    gdouble               : Read / Write

## Signals

      "click"                                          : Run Last
      "cursor-activated"                               : Run Last
      "cursor-change"                                  : Run Last
      "double-click"                                   : Run Last
      "key-press"                                      : Run Last
      "right-click"                                    : Run Last
      "selection-model-added"                          : Action
      "selection-model-removed"                        : Action
      "start-drag"                                     : Run Last
      "style-set"                                      : Run Last

## Description

## Details

### struct ETableItem

    struct ETableItem;

### e_table_item_set_cursor ()

    void                e_table_item_set_cursor             (ETableItem *eti,
                                                             gint col,
                                                             gint row);

This routine sets the cursor of the `ETableItem` canvas item.

`eti` : | `ETableItem` which will have the cursor set.
`col` : | Column to select. -1 means the last column.
`row` : | Row to select. -1 means the last row.

### e_table_item_get_focused_column ()

    gint                e_table_item_get_focused_column     (ETableItem *eti);

This routine gets the cursor of the `ETableItem` canvas item.

`eti` : | `ETableItem` which will have the cursor retrieved.
Returns : | The current cursor column.

### e_table_item_leave_edit ()

    void                e_table_item_leave_edit             (ETableItem *eti);

### e_table_item_enter_edit ()

    void                e_table_item_enter_edit             (ETableItem *eti,
                                                             gint col,
                                                             gint row);

This routine starts the given `ETableItem` editing at the given view column and row.

`eti` : | `ETableItem` which will start being edited
`col` : | The view col to edit.
`row` : | The view row to edit.

### e_table_item_redraw_range ()

    void                e_table_item_redraw_range           (ETableItem *eti,
                                                             gint start_col,
                                                             gint start_row,
                                                             gint end_col,
                                                             gint end_row);

This routine redraws the given `ETableItem` in the range given. The range is inclusive at both ends.

`eti` : | `ETableItem` which will be redrawn
`start_col` : | The first col to redraw.
`start_row` : | The first row to redraw.
`end_col` : | The last col to redraw.
`end_row` : | The last row to redraw.

### e_table_item_get_printable ()

    EPrintable *        e_table_item_get_printable          (ETableItem *eti);

This routine creates and returns an `EPrintable` that can be used to print the given `ETableItem`.

`eti` : | `ETableItem` which will be printed
Returns : | The `EPrintable`.

### e_table_item_compute_location ()

    void                e_table_item_compute_location       (ETableItem *eti,
                                                             gint *x,
                                                             gint *y,
                                                             gint *row,
                                                             gint *col);

This routine locates the pixel location (*x, *y) in the `ETableItem`. If that location is in the `ETableItem`, *row and *col are set to the view row and column where it was found. If that location is not in the `ETableItem`, the height of the `ETableItem` is removed from the value y points to.

`eti` : | `ETableItem` to look in.
`x` : | A pointer to the x location to find in the `ETableItem`.
`y` : | A pointer to the y location to find in the `ETableItem`.
`row` : | A pointer to the location to store the found row in.
`col` : | A pointer to the location to store the found col in.

### e_table_item_compute_mouse_over ()

    void                e_table_item_compute_mouse_over     (ETableItem *eti,
                                                             gint x,
                                                             gint y,
                                                             gint *row,
                                                             gint *col);

### e_table_item_get_cell_geometry ()

    void                e_table_item_get_cell_geometry      (ETableItem *eti,
                                                             gint *row,
                                                             gint *col,
                                                             gint *x,
                                                             gint *y,
                                                             gint *width,
                                                             gint *height);

### e_table_item_row_diff ()

    gint                e_table_item_row_diff               (ETableItem *eti,
                                                             gint start_row,
                                                             gint end_row);

### e_table_item_is_editing ()

    gboolean            e_table_item_is_editing             (ETableItem *eti);

`eti` : | an `ETableItem`
Returns : | Whether the table item is currently editing cell content.

### e_table_item_cursor_scrolled ()

    void                e_table_item_cursor_scrolled        (ETableItem *eti);

Does necessary recalculations after cursor scrolled, like whether the cursor is on screen or not anymore.

`eti` : | an `ETableItem`

## Property Details

### The `"ETableHeader"` property

      "ETableHeader"             ETableHeader*         : Write

Table header.

### The `"ETableModel"` property

      "ETableModel"              ETableModel*          : Write

Table model.

### The `"alternating-row-colors"` property

      "alternating-row-colors"   gboolean              : Write

Alternating Row Colors.

Default value: FALSE

### The `"cursor-mode"` property

      "cursor-mode"              gint                  : Write

Cursor mode.

Allowed values: [0,2]

Default value: 0

### The `"cursor-row"` property

      "cursor-row"               gint                  : Read / Write

Cursor row.

Allowed values: >= 0

Default value: 0

### The `"drawfocus"` property

      "drawfocus"                gboolean              : Write

Draw focus.

Default value: FALSE

### The `"height"` property

      "height"                   gdouble               : Read

Height.

Allowed values: >= 0

Default value: 0

### The `"horizontal-draw-grid"` property

      "horizontal-draw-grid"     gboolean              : Write

Horizontal Draw Grid.

Default value: FALSE

### The `"is-editing"` property

      "is-editing"               gboolean              : Read

Whether is in an editing mode.

Default value: FALSE

### The `"length-threshold"` property

      "length-threshold"         gint                  : Write

Length Threshold.

Allowed values: >= -1

Default value: 0

### The `"minimum-width"` property

      "minimum-width"            gdouble               : Read / Write

Minimum Width.

Allowed values: >= 0

Default value: 0

### The `"selection-model"` property

      "selection-model"          ESelectionModel*      : Write

Selection model.

### The `"uniform-row-height"` property

      "uniform-row-height"       gboolean              : Read / Write

Uniform row height.

Default value: FALSE

### The `"vertical-draw-grid"` property

      "vertical-draw-grid"       gboolean              : Write

Vertical Draw Grid.

Default value: FALSE

### The `"width"` property

      "width"                    gdouble               : Read / Write

Width.

Allowed values: >= 0

Default value: 0

## Signal Details

### The `"click"` signal

    gboolean            user_function                      (ETableItem *etableitem,
                                                            gint        arg1,
                                                            gint        arg2,
                                                            GdkEvent   *arg3,
                                                            gpointer    user_data)       : Run Last

### The `"cursor-activated"` signal

    void                user_function                      (ETableItem *etableitem,
                                                            gint        arg1,
                                                            gpointer    user_data)       : Run Last

### The `"cursor-change"` signal

    void                user_function                      (ETableItem *etableitem,
                                                            gint        arg1,
                                                            gpointer    user_data)       : Run Last

### The `"double-click"` signal

    void                user_function                      (ETableItem *etableitem,
                                                            gint        arg1,
                                                            gint        arg2,
                                                            GdkEvent   *arg3,
                                                            gpointer    user_data)       : Run Last

### The `"key-press"` signal

    gboolean            user_function                      (ETableItem *etableitem,
                                                            gint        arg1,
                                                            gint        arg2,
                                                            GdkEvent   *arg3,
                                                            gpointer    user_data)       : Run Last

### The `"right-click"` signal

    gboolean            user_function                      (ETableItem *etableitem,
                                                            gint        arg1,
                                                            gint        arg2,
                                                            GdkEvent   *arg3,
                                                            gpointer    user_data)       : Run Last

### The `"selection-model-added"` signal

    void                user_function                      (ETableItem *etableitem,
                                                            gpointer    arg1,
                                                            gpointer    user_data)       : Action

### The `"selection-model-removed"` signal

    void                user_function                      (ETableItem *etableitem,
                                                            gpointer    arg1,
                                                            gpointer    user_data)       : Action

### The `"start-drag"` signal

    gboolean            user_function                      (ETableItem *etableitem,
                                                            gint        arg1,
                                                            gint        arg2,
                                                            GdkEvent   *arg3,
                                                            gpointer    user_data)       : Run Last

### The `"style-set"` signal

    void                user_function                      (ETableItem *etableitem,
                                                            GtkStyle   *arg1,
                                                            gpointer    user_data)       : Run Last