Top | ![]() |
![]() |
![]() |
![]() |
ETable * e_table_construct (ETable *e_table
,ETableModel *etm
,ETableExtras *ete
,ETableSpecification *specification
);
This is the internal implementation of e_table_new()
for use by
subclasses or language bindings. See e_table_new()
for details.
GtkWidget * e_table_new (ETableModel *etm
,ETableExtras *ete
,ETableSpecification *specification
);
This function creates an ETable from the given parameters. The
ETableModel is a table model to be represented. The ETableExtras
is an optional set of pixbufs, cells, and sorting functions to be
used when interpreting the spec. If you pass in NULL
it uses the
default ETableExtras. (See e_table_extras_new()
).
specification
is the specification of the set of viewable columns and the
default sorting state and such. state
is an optional string specifying
the current sorting state and such.
void e_table_save_state (ETable *e_table
,const gchar *filename
);
Saves the state of the e_table
object into the file pointed by
filename
.
ETableState *
e_table_get_state_object (ETable *e_table
);
Builds an ETableState corresponding to the current state of the ETable.
void e_table_set_state_object (ETable *e_table
,ETableState *state
);
This routine sets the state of the ETable from the given ETableState.
void e_table_load_state (ETable *e_table
,const gchar *filename
);
This routine sets the state of the ETable from a file.
void e_table_set_cursor_row (ETable *e_table
,gint row
);
Sets the cursor row and the selection to the given row number.
gint
e_table_get_cursor_row (ETable *e_table
);
Calculates the cursor row. -1 means that we don't have a cursor.
void e_table_selected_row_foreach (ETable *e_table
,EForeachFunc callback
,gpointer closure
);
Calls the given callback
function once for every selected row.
If you change the selection or delete or add rows to the table during these callbacks, problems can occur. A standard thing to do is to create a list of rows or objects the function is called upon and then act upon that list. (In inverse order if it's rows.)
gint
e_table_selected_count (ETable *e_table
);
Counts the number of selected rows.
EPrintable *
e_table_get_printable (ETable *e_table
);
Used for printing your ETable.
gint e_table_get_next_row (ETable *e_table
,gint model_row
);
This function is used when your table is sorted, but you're using model row numbers. It returns the next row in sorted order as a model row.
gint e_table_get_prev_row (ETable *e_table
,gint model_row
);
This function is used when your table is sorted, but you're using model row numbers. It returns the previous row in sorted order as a model row.
gint e_table_model_to_view_row (ETable *e_table
,gint model_row
);
Turns a model row into a view row.
gint e_table_view_to_model_row (ETable *e_table
,gint view_row
);
Turns a view row into a model row.
void e_table_get_cell_at (ETable *table
,gint x
,gint y
,gint *row_return
,gint *col_return
);
Return the row and column for the cell in which the pixel at (x
, y
) is
contained.
void e_table_get_mouse_over_cell (ETable *table
,gint *row
,gint *col
);
Similar to e_table_get_cell_at, only here we check based on the mouse motion information in the group.
void e_table_get_cell_geometry (ETable *table
,gint row
,gint col
,gint *x_return
,gint *y_return
,gint *width_return
,gint *height_return
);
Returns the x, y, width, and height of the given cell. These can all be NULL and they just won't be set.
table |
The ETable. |
|
row |
The row to get the geometry of. |
|
col |
The col to get the geometry of. |
|
x_return |
Returns the x coordinate of the upper left hand corner of the cell with respect to the widget. |
|
y_return |
Returns the y coordinate of the upper left hand corner of the cell with respect to the widget. |
|
width_return |
Returns the width of the cell. |
|
height_return |
Returns the height of the cell. |
ESelectionModel *
e_table_get_selection_model (ETable *table
);
Returns the table's ESelectionModel in case you want to access it directly.
void e_table_drag_get_data (ETable *table
,gint row
,gint col
,GdkDragContext *context
,GdkAtom target
,guint32 time
);
void e_table_drag_highlight (ETable *table
,gint row
,gint col
);
Set col to -1 to highlight the entire row. If row is -1, this is
identical to e_table_drag_unhighlight()
.
void
e_table_drag_unhighlight (ETable *table
);
Removes the highlight from an ETable.
void e_table_drag_dest_set (ETable *table
,GtkDestDefaults flags
,const GtkTargetEntry *targets
,gint n_targets
,GdkDragAction actions
);
void e_table_drag_dest_set_proxy (ETable *table
,GdkWindow *proxy_window
,GdkDragProtocol protocol
,gboolean use_coordinates
);
void e_table_drag_source_set (ETable *table
,GdkModifierType start_button_mask
,const GtkTargetEntry *targets
,gint n_targets
,GdkDragAction actions
);
Registers this table as a drag site, and possibly adds default behaviors.
void
e_table_drag_source_unset (ETable *table
);
Unregisters this ETable as a drag site.
GdkDragContext * e_table_drag_begin (ETable *table
,gint row
,gint col
,GtkTargetList *targets
,GdkDragAction actions
,gint button
,GdkEvent *event
);
Start a drag from this cell.
void
e_table_right_click_up (ETable *table
);
Call this function when you're done handling the right click if you return TRUE from the "right_click" signal.
void
e_table_commit_click_to_add (ETable *table
);
Commits the current values in the click to add to the table.