|  |  |  | Evolution Utilities Reference Manual |  | 
|---|---|---|---|---|
| Top | Description | Object Hierarchy | ||||
struct ECell; struct ECellView; ECellView * e_cell_new_view (ECell *ecell,ETableModel *table_model,gpointer e_table_item_view); void e_cell_kill_view (ECellView *ecell_view); enum ECellFlags; enum ECellActions; gint e_cell_event (ECellView *ecell_view,GdkEvent *event,gint model_col,gint view_col,gint row,ECellFlags flags,ECellActions *actions); void e_cell_realize (ECellView *ecell_view); void e_cell_unrealize (ECellView *ecell_view); void e_cell_draw (ECellView *ecell_view,cairo_t *cr,gint model_col,gint view_col,gint row,ECellFlags flags,gint x1,gint y1,gint x2,gint y2); void e_cell_print (ECellView *ecell_view,GtkPrintContext *context,gint model_col,gint view_col,gint row,gdouble width,gdouble height); gdouble e_cell_print_height (ECellView *ecell_view,GtkPrintContext *context,gint model_col,gint view_col,gint row,gdouble width); gint e_cell_max_width (ECellView *ecell_view,gint model_col,gint view_col); gint e_cell_max_width_by_row (ECellView *ecell_view,gint model_col,gint view_col,gint row); gboolean e_cell_max_width_by_row_implemented (ECellView *ecell_view); gchar * e_cell_get_bg_color (ECellView *ecell_view,gint row); void e_cell_focus (ECellView *ecell_view,gint model_col,gint view_col,gint row,gint x1,gint y1,gint x2,gint y2); void e_cell_unfocus (ECellView *ecell_view); gint e_cell_height (ECellView *ecell_view,gint model_col,gint view_col,gint row); gpointer e_cell_enter_edit (ECellView *ecell_view,gint model_col,gint view_col,gint row); void e_cell_leave_edit (ECellView *ecell_view,gint model_col,gint view_col,gint row,gpointer edit_context); gpointer e_cell_save_state (ECellView *ecell_view,gint model_col,gint view_col,gint row,gpointer edit_context); void e_cell_load_state (ECellView *ecell_view,gint model_col,gint view_col,gint row,gpointer edit_context,gpointer save_state); void e_cell_free_state (ECellView *ecell_view,gint model_col,gint view_col,gint row,gpointer save_state);
GObject +----ECell +----ECellToggle +----ECellPopup +----ECellText +----ECellHbox +----ECellPixbuf +----ECellTree +----ECellVbox
struct ECellView {
	ECell *ecell;
	ETableModel *e_table_model;
	void        *e_table_item_view;
	gint   focus_x1, focus_y1, focus_x2, focus_y2;
	gint   focus_col, focus_row;
	void  (*kill_view_cb) (struct _ECellView *, gpointer);
	GList *kill_view_cb_data;
};
ECellView * e_cell_new_view (ECell *ecell,ETableModel *table_model,gpointer e_table_item_view);
ECell renderers new to be bound to a table_model and to the actual view during their life time to actually render the data. This method is invoked by the ETableItem canvas item to instatiate a new view of the ECell.
This is invoked when the ETableModel is attached to the ETableItem (a CanvasItem that can render ETableModels in the screen).
| 
 | the Ecell that will create the new view | 
| 
 | the table model the ecell is bound to | 
| 
 | an ETableItem object (the CanvasItem that reprensents the view of the table) | 
| Returns : | a new ECellView for this ecellon thetable_modeldisplayed
on thee_table_item_view. | 
void                e_cell_kill_view                    (ECellView *ecell_view);
This method it used to destroy a view of an ECell renderer
| 
 | view to be destroyed. | 
typedef enum {
	E_CELL_SELECTED = 1 << 0,
	E_CELL_JUSTIFICATION = 3 << 1,
	E_CELL_JUSTIFY_CENTER = 0 << 1,
	E_CELL_JUSTIFY_LEFT = 1 << 1,
	E_CELL_JUSTIFY_RIGHT = 2 << 1,
	E_CELL_JUSTIFY_FILL = 3 << 1,
	E_CELL_ALIGN_LEFT = 1 << 1,
	E_CELL_ALIGN_RIGHT = 1 << 2,
	E_CELL_FOCUSED = 1 << 3,
	E_CELL_EDITING = 1 << 4,
	E_CELL_CURSOR = 1 << 5,
	E_CELL_PREEDIT = 1 << 6
} ECellFlags;
gint e_cell_event (ECellView *ecell_view,GdkEvent *event,gint model_col,gint view_col,gint row,ECellFlags flags,ECellActions *actions);
Dispatches the event event to the ecell_view for.
| 
 | The ECellView where the event will be dispatched | 
| 
 | The GdkEvent. | 
| 
 | the column in the model | 
| 
 | the column in the view | 
| 
 | the row | 
| 
 | flags about the current state | 
| 
 | a second return value in case the cell wants to take some action (specifically grabbing & ungrabbing) | 
| Returns : | processing state from the GdkEvent handling. | 
void                e_cell_realize                      (ECellView *ecell_view);
This function is invoked to give a chance to the ECellView to allocate any resources it needs from Gdk, equivalent to the GtkWidget::realize signal.
| 
 | The ECellView to be realized. | 
void                e_cell_unrealize                    (ECellView *ecell_view);
This function is invoked to give a chance to the ECellView to release any resources it allocated during the realize method, equivalent to the GtkWidget::unrealize signal.
| 
 | The ECellView to be unrealized. | 
void e_cell_draw (ECellView *ecell_view,cairo_t *cr,gint model_col,gint view_col,gint row,ECellFlags flags,gint x1,gint y1,gint x2,gint y2);
This instructs the ECellView to render itself into the Cairo context. The region to be drawn in given by (x1,y1)-(x2,y2).
The most important flags are E_CELL_SELECTED and E_CELL_FOCUSED, other
flags include alignments and justifications.
| 
 | the ECellView to redraw | 
| 
 | a Cairo context | 
| 
 | the column in the model being drawn. | 
| 
 | the column in the view being drawn (what the model maps to). | 
| 
 | the row being drawn | 
| 
 | rendering flags. | 
| 
 | boudary for the rendering | 
| 
 | boudary for the rendering | 
| 
 | boudary for the rendering | 
| 
 | boudary for the rendering | 
void e_cell_print (ECellView *ecell_view,GtkPrintContext *context,gint model_col,gint view_col,gint row,gdouble width,gdouble height);
FIXME:
gdouble e_cell_print_height (ECellView *ecell_view,GtkPrintContext *context,gint model_col,gint view_col,gint row,gdouble width);
gint e_cell_max_width (ECellView *ecell_view,gint model_col,gint view_col);
| 
 | the ECellView that will leave editing | 
| 
 | the column in the model | 
| 
 | the column in the view. | 
| Returns : | the maximum width for the ECellview at model_colwhich
is being rendered asview_col | 
gint e_cell_max_width_by_row (ECellView *ecell_view,gint model_col,gint view_col,gint row);
| 
 | the ECellView that we are curious about | 
| 
 | the column in the model | 
| 
 | the column in the view. | 
| 
 | The row in the model. | 
| Returns : | the maximum width for the ECellview at model_colwhich
is being rendered asview_colfor the data inrow. | 
gboolean            e_cell_max_width_by_row_implemented (ECellView *ecell_view);
| 
 | the ECellView that we are curious about | 
| Returns : | the maximum width for the ECellview at model_colwhich
is being rendered asview_colfor the data inrow. | 
void e_cell_focus (ECellView *ecell_view,gint model_col,gint view_col,gint row,gint x1,gint y1,gint x2,gint y2);
gint e_cell_height (ECellView *ecell_view,gint model_col,gint view_col,gint row);
| 
 | the ECellView. | 
| 
 | the column in the model | 
| 
 | the column in the view. | 
| 
 | the row to me measured | 
| Returns : | the height of the cell at model_col,rowrendered atview_col,row. | 
gpointer e_cell_enter_edit (ECellView *ecell_view,gint model_col,gint view_col,gint row);
Notifies the ECellView that it is about to enter editing mode for
model_col, row rendered at view_col, row.
| 
 | the ECellView that will enter editing | 
| 
 | the column in the model | 
| 
 | the column in the view | 
| 
 | the row | 
void e_cell_leave_edit (ECellView *ecell_view,gint model_col,gint view_col,gint row,gpointer edit_context);
Notifies the ECellView that editing is finished at model_col, row
rendered at view_col, row.
| 
 | the ECellView that will leave editing | 
| 
 | the column in the model | 
| 
 | the column in the view | 
| 
 | the row | 
| 
 | the editing context | 
gpointer e_cell_save_state (ECellView *ecell_view,gint model_col,gint view_col,gint row,gpointer edit_context);
| 
 | the ECellView to save | 
| 
 | the column in the model | 
| 
 | the column in the view | 
| 
 | the row | 
| 
 | the editing context | 
| Returns : | The save state. Requests that the ECellView return a gpointer representing the state of the ECell. This is primarily intended for things like selection or scrolling. | 
void e_cell_load_state (ECellView *ecell_view,gint model_col,gint view_col,gint row,gpointer edit_context,gpointer save_state);
Requests that the ECellView load from the given save state.
| 
 | the ECellView to load | 
| 
 | the column in the model | 
| 
 | the column in the view | 
| 
 | the row | 
| 
 | the editing context | 
| 
 | the save state to load from | 
void e_cell_free_state (ECellView *ecell_view,gint model_col,gint view_col,gint row,gpointer save_state);
Requests that the ECellView free the given save state.
| 
 | the ECellView | 
| 
 | the column in the model | 
| 
 | the column in the view | 
| 
 | the row | 
| 
 | the save state to free |