ETableModel

ETableModel

Synopsis

struct              ETableModel;
gint                e_table_model_column_count          (ETableModel *e_table_model);
const gchar *       e_table_model_column_name           (ETableModel *e_table_model,
                                                         gint col);
gint                e_table_model_row_count             (ETableModel *e_table_model);
void                e_table_model_append_row            (ETableModel *e_table_model,
                                                         ETableModel *source,
                                                         gint row);
gpointer            e_table_model_value_at              (ETableModel *e_table_model,
                                                         gint col,
                                                         gint row);
void                e_table_model_set_value_at          (ETableModel *e_table_model,
                                                         gint col,
                                                         gint row,
                                                         gconstpointer value);
gboolean            e_table_model_is_cell_editable      (ETableModel *e_table_model,
                                                         gint col,
                                                         gint row);
gboolean            e_table_model_has_save_id           (ETableModel *etm);
gchar *             e_table_model_get_save_id           (ETableModel *etm,
                                                         gint row);
gboolean            e_table_model_has_change_pending    (ETableModel *etm);
gpointer            e_table_model_duplicate_value       (ETableModel *e_table_model,
                                                         gint col,
                                                         gconstpointer value);
void                e_table_model_free_value            (ETableModel *e_table_model,
                                                         gint col,
                                                         gpointer value);
gpointer            e_table_model_initialize_value      (ETableModel *e_table_model,
                                                         gint col);
gboolean            e_table_model_value_is_empty        (ETableModel *e_table_model,
                                                         gint col,
                                                         gconstpointer value);
gchar *             e_table_model_value_to_string       (ETableModel *e_table_model,
                                                         gint col,
                                                         gconstpointer value);
void                e_table_model_pre_change            (ETableModel *e_table_model);
void                e_table_model_no_change             (ETableModel *e_table_model);
void                e_table_model_changed               (ETableModel *e_table_model);
void                e_table_model_row_changed           (ETableModel *e_table_model,
                                                         gint row);
void                e_table_model_cell_changed          (ETableModel *e_table_model,
                                                         gint col,
                                                         gint row);
void                e_table_model_rows_inserted         (ETableModel *e_table_model,
                                                         gint row,
                                                         gint count);
void                e_table_model_rows_deleted          (ETableModel *e_table_model,
                                                         gint row,
                                                         gint count);
void                e_table_model_row_inserted          (ETableModel *e_table_model,
                                                         gint row);
void                e_table_model_row_deleted           (ETableModel *e_table_model,
                                                         gint row);
void                e_table_model_freeze                (ETableModel *e_table_model);
void                e_table_model_thaw                  (ETableModel *e_table_model);

Object Hierarchy

  GObject
   +----ETableModel
         +----ETableMemory
         +----ETableSubset
         +----ETreeTableAdapter
         +----GalDefineViewsModel

Signals

  "model-cell-changed"                             : Run Last
  "model-changed"                                  : Run Last
  "model-no-change"                                : Run Last
  "model-pre-change"                               : Run Last
  "model-row-changed"                              : Run Last
  "model-rows-deleted"                             : Run Last
  "model-rows-inserted"                            : Run Last

Description

Details

struct ETableModel

struct ETableModel;

e_table_model_column_count ()

gint                e_table_model_column_count          (ETableModel *e_table_model);

e_table_model :

The e-table-model to operate on

Returns :

the number of columns in the table model.

e_table_model_column_name ()

const gchar *       e_table_model_column_name           (ETableModel *e_table_model,
                                                         gint col);

e_table_model_row_count ()

gint                e_table_model_row_count             (ETableModel *e_table_model);

e_table_model :

the e-table-model to operate on

Returns :

the number of rows in the Table model.

e_table_model_append_row ()

void                e_table_model_append_row            (ETableModel *e_table_model,
                                                         ETableModel *source,
                                                         gint row);

e_table_model :

the table model to append the a row to.

e_table_model_value_at ()

gpointer            e_table_model_value_at              (ETableModel *e_table_model,
                                                         gint col,
                                                         gint row);

e_table_model_set_value_at ()

void                e_table_model_set_value_at          (ETableModel *e_table_model,
                                                         gint col,
                                                         gint row,
                                                         gconstpointer value);

This function instructs the model to store the value in data in the the e_table_model at column col and row row. The data typically comes from one of the ECell rendering objects.

There should be an agreement between the Table Model and the user of this function about the data being stored. Typically it will be a pointer to a set of data, or a datum that fits inside a gpointer .

e_table_model :

the table model to operate on.

col :

the column where the data will be stored in the model.

row :

the row where the data will be stored in the model.

value :

the data to be stored.

e_table_model_is_cell_editable ()

gboolean            e_table_model_is_cell_editable      (ETableModel *e_table_model,
                                                         gint col,
                                                         gint row);

e_table_model :

the table model to query.

col :

column to query.

row :

row to query.

Returns :

TRUE if the cell in e_table_model at col,row can be edited, FALSE otherwise

e_table_model_has_save_id ()

gboolean            e_table_model_has_save_id           (ETableModel *etm);

e_table_model_get_save_id ()

gchar *             e_table_model_get_save_id           (ETableModel *etm,
                                                         gint row);

e_table_model_has_change_pending ()

gboolean            e_table_model_has_change_pending    (ETableModel *etm);

e_table_model_duplicate_value ()

gpointer            e_table_model_duplicate_value       (ETableModel *e_table_model,
                                                         gint col,
                                                         gconstpointer value);

e_table_model_free_value ()

void                e_table_model_free_value            (ETableModel *e_table_model,
                                                         gint col,
                                                         gpointer value);

e_table_model_initialize_value ()

gpointer            e_table_model_initialize_value      (ETableModel *e_table_model,
                                                         gint col);

e_table_model_value_is_empty ()

gboolean            e_table_model_value_is_empty        (ETableModel *e_table_model,
                                                         gint col,
                                                         gconstpointer value);

e_table_model_value_to_string ()

gchar *             e_table_model_value_to_string       (ETableModel *e_table_model,
                                                         gint col,
                                                         gconstpointer value);

e_table_model_pre_change ()

void                e_table_model_pre_change            (ETableModel *e_table_model);

e_table_model_no_change ()

void                e_table_model_no_change             (ETableModel *e_table_model);

Use this function to notify any views of this table model that the contents of the table model have changed. This will emit the signal "model_no_change" on the e_table_model object.

It is preferable to use the e_table_model_row_changed() and the e_table_model_cell_changed() to notify of smaller changes than to invalidate the entire model, as the views might have ways of caching the information they render from the model.

e_table_model :

the table model to notify of the lack of a change

e_table_model_changed ()

void                e_table_model_changed               (ETableModel *e_table_model);

Use this function to notify any views of this table model that the contents of the table model have changed. This will emit the signal "model_changed" on the e_table_model object.

It is preferable to use the e_table_model_row_changed() and the e_table_model_cell_changed() to notify of smaller changes than to invalidate the entire model, as the views might have ways of caching the information they render from the model.

e_table_model :

the table model to notify of the change

e_table_model_row_changed ()

void                e_table_model_row_changed           (ETableModel *e_table_model,
                                                         gint row);

Use this function to notify any views of the table model that the contents of row row have changed in model. This function will emit the "model_row_changed" signal on the e_table_model object

e_table_model :

the table model to notify of the change

row :

the row that was changed in the model.

e_table_model_cell_changed ()

void                e_table_model_cell_changed          (ETableModel *e_table_model,
                                                         gint col,
                                                         gint row);

Use this function to notify any views of the table model that contents of the cell at col,row has changed. This will emit the "model_cell_changed" signal on the e_table_model object

e_table_model :

the table model to notify of the change

col :

the column.

row :

the row

e_table_model_rows_inserted ()

void                e_table_model_rows_inserted         (ETableModel *e_table_model,
                                                         gint row,
                                                         gint count);

Use this function to notify any views of the table model that count rows at row row have been inserted into the model. This function will emit the "model_rows_inserted" signal on the e_table_model object

e_table_model :

the table model to notify of the change

row :

the row that was inserted into the model.

count :

The number of rows that were inserted.

e_table_model_rows_deleted ()

void                e_table_model_rows_deleted          (ETableModel *e_table_model,
                                                         gint row,
                                                         gint count);

e_table_model_row_inserted ()

void                e_table_model_row_inserted          (ETableModel *e_table_model,
                                                         gint row);

Use this function to notify any views of the table model that the row row has been inserted into the model. This function will emit the "model_rows_inserted" signal on the e_table_model object

e_table_model :

the table model to notify of the change

row :

the row that was inserted into the model.

e_table_model_row_deleted ()

void                e_table_model_row_deleted           (ETableModel *e_table_model,
                                                         gint row);

Use this function to notify any views of the table model that the row row has been deleted from the model. This function will emit the "model_rows_deleted" signal on the e_table_model object

e_table_model :

the table model to notify of the change

row :

the row that was deleted

e_table_model_freeze ()

void                e_table_model_freeze                (ETableModel *e_table_model);

e_table_model_thaw ()

void                e_table_model_thaw                  (ETableModel *e_table_model);

Signal Details

The "model-cell-changed" signal

void                user_function                      (ETableModel *etablemodel,
                                                        gint         arg1,
                                                        gint         arg2,
                                                        gpointer     user_data)        : Run Last

The "model-changed" signal

void                user_function                      (ETableModel *etablemodel,
                                                        gpointer     user_data)        : Run Last

The "model-no-change" signal

void                user_function                      (ETableModel *etablemodel,
                                                        gpointer     user_data)        : Run Last

The "model-pre-change" signal

void                user_function                      (ETableModel *etablemodel,
                                                        gpointer     user_data)        : Run Last

The "model-row-changed" signal

void                user_function                      (ETableModel *etablemodel,
                                                        gint         arg1,
                                                        gpointer     user_data)        : Run Last

The "model-rows-deleted" signal

void                user_function                      (ETableModel *etablemodel,
                                                        gint         arg1,
                                                        gint         arg2,
                                                        gpointer     user_data)        : Run Last

The "model-rows-inserted" signal

void                user_function                      (ETableModel *etablemodel,
                                                        gint         arg1,
                                                        gint         arg2,
                                                        gpointer     user_data)        : Run Last