diff options
Diffstat (limited to 'widgets/table/e-cell.c')
-rw-r--r-- | widgets/table/e-cell.c | 118 |
1 files changed, 117 insertions, 1 deletions
diff --git a/widgets/table/e-cell.c b/widgets/table/e-cell.c index 8fe664f7e1..53aba7c625 100644 --- a/widgets/table/e-cell.c +++ b/widgets/table/e-cell.c @@ -124,7 +124,18 @@ e_cell_init (GtkObject *object) E_MAKE_TYPE(e_cell, "ECell", ECell, e_cell_class_init, e_cell_init, PARENT_TYPE); - +/** + * e_cell_event: + * @ecell_view: The ECellView where the event will be dispatched + * @event: The GdkEvent. + * @model_col: the column in the model + * @view_col: the column in the view + * @row: the row + * + * Dispatches the event @event to the @ecell_view for. + * + * Returns: processing state from the GdkEvent handling. + */ gint e_cell_event (ECellView *ecell_view, GdkEvent *event, int model_col, int view_col, int row) { @@ -132,6 +143,21 @@ e_cell_event (ECellView *ecell_view, GdkEvent *event, int model_col, int view_co ecell_view, event, model_col, view_col, row); } +/** + * e_cell_new_view: + * @ecell: the Ecell that will create the new view + * @table_model: the table model the ecell is bound to + * @e_table_item_view: An ETableItem object (the CanvasItem that reprensents the view of the table) + * + * 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). + * + * Returns: a new ECellView for this @ecell on the @table_model displayed on the @e_table_item_view. + */ ECellView * e_cell_new_view (ECell *ecell, ETableModel *table_model, void *e_table_item_view) { @@ -139,24 +165,65 @@ e_cell_new_view (ECell *ecell, ETableModel *table_model, void *e_table_item_view ecell, table_model, e_table_item_view); } +/** + * e_cell_realize: + * @ecell_view: The ECellView to be realized. + * + * 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. + */ void e_cell_realize (ECellView *ecell_view) { return E_CELL_CLASS (GTK_OBJECT (ecell_view->ecell)->klass)->realize (ecell_view); } +/** + * e_cell_kill_view: + * @ecell_view: view to be destroyed. + * + * This method it used to destroy a view of an ECell renderer + */ void e_cell_kill_view (ECellView *ecell_view) { E_CELL_CLASS (GTK_OBJECT (ecell_view->ecell)->klass)->kill_view (ecell_view); } +/** + * e_cell_unrealize: + * @ecell_view: The ECellView to be unrealized. + * + * 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. + */ void e_cell_unrealize (ECellView *ecell_view) { E_CELL_CLASS (GTK_OBJECT (ecell_view->ecell)->klass)->unrealize (ecell_view); } +/** + * e_cell_draw: + * @ecell_view: the ECellView to redraw + * @drawable: draw desination + * @model_col: the column in the model being drawn. + * @view_col: the column in the view being drawn (what the model maps to). + * @row: the row being drawn + * @flags: rendering flags. + * @x1: boudary for the rendering + * @y1: boudary for the rendering + * @x2: boudary for the rendering + * @y2: boudary for the rendering + * + * This instructs the ECellView to render itself into the drawable. 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. + */ void e_cell_draw (ECellView *ecell_view, GdkDrawable *drawable, int model_col, int view_col, int row, ECellFlags flags, int x1, int y1, int x2, int y2) @@ -165,6 +232,11 @@ e_cell_draw (ECellView *ecell_view, GdkDrawable *drawable, ecell_view, drawable, model_col, view_col, row, flags, x1, y1, x2, y2); } +/** + * e_cell_print: + * + * FIXME: + */ void e_cell_print (ECellView *ecell_view, GnomePrintContext *context, int model_col, int view_col, int row, @@ -174,6 +246,11 @@ e_cell_print (ECellView *ecell_view, GnomePrintContext *context, (ecell_view, context, model_col, view_col, row, width, height); } +/** + * e_cell_print: + * + * FIXME: + */ gdouble e_cell_print_height (ECellView *ecell_view, GnomePrintContext *context, int model_col, int view_col, int row, @@ -186,6 +263,16 @@ e_cell_print_height (ECellView *ecell_view, GnomePrintContext *context, return 0.0; } +/** + * e_cell_height: + * @ecell_view: the ECellView. + * @model_col: the column in the model + * @view_col: the column in the view. + * @row: the row to me measured + * + * Returns: the height of the cell at @model_col, @row rendered at + * @view_col, @row. + */ int e_cell_height (ECellView *ecell_view, int model_col, int view_col, int row) { @@ -193,6 +280,16 @@ e_cell_height (ECellView *ecell_view, int model_col, int view_col, int row) ecell_view, model_col, view_col, row); } +/** + * e_cell_enter_edit: + * @ecell_view: the ECellView that will enter editing + * @model_col: the column in the model + * @view_col: the column in the view + * @row: the row + * + * Notifies the ECellView that it is about to enter editing mode for + * @model_col, @row rendered at @view_col, @row. + */ void * e_cell_enter_edit (ECellView *ecell_view, int model_col, int view_col, int row) { @@ -200,6 +297,16 @@ e_cell_enter_edit (ECellView *ecell_view, int model_col, int view_col, int row) ecell_view, model_col, view_col, row); } +/** + * e_cell_leave_edit: + * @ecell_view: the ECellView that will leave editing + * @model_col: the column in the model + * @view_col: the column in the view + * @row: the row + * + * Notifies the ECellView that editing is finished at @model_col, @row + * rendered at @view_col, @row. + */ void e_cell_leave_edit (ECellView *ecell_view, int model_col, int view_col, int row, void *edit_context) { @@ -207,6 +314,15 @@ e_cell_leave_edit (ECellView *ecell_view, int model_col, int view_col, int row, ecell_view, model_col, view_col, row, edit_context); } +/** + * e_cell_max_width: + * @ecell_view: the ECellView that will leave editing + * @model_col: the column in the model + * @view_col: the column in the view. + * + * Returns: the maximum width for the ECellview at @model_col which + * is being rendered as @view_col + */ int e_cell_max_width (ECellView *ecell_view, int model_col, int view_col) { |