ETableGroup

Name

ETableGroup -- 

Synopsis



#define             E_TABLE_GROUP_TYPE
typedef             ETableGroup;
void                e_table_group_add                   (ETableGroup *etg,
                                                         gint row);
void                e_table_group_add_all               (ETableGroup *etg);
gboolean            e_table_group_remove                (ETableGroup *etg,
                                                         gint row);
gint                e_table_group_get_count             (ETableGroup *etg);
void                e_table_group_increment             (ETableGroup *etg,
                                                         gint position,
                                                         gint amount);
void                e_table_group_decrement             (ETableGroup *etg,
                                                         gint position,
                                                         gint amount);
gint                e_table_group_row_count             (ETableGroup *etg);
void                e_table_group_set_focus             (ETableGroup *etg,
                                                         EFocus direction,
                                                         gint view_col);
void                e_table_group_set_cursor_row        (ETableGroup *etg,
                                                         gint row);
int                 e_table_group_get_cursor_row        (ETableGroup *etg);
gboolean            e_table_group_get_focus             (ETableGroup *etg);
gint                e_table_group_get_focus_column      (ETableGroup *etg);
ETableHeader*       e_table_group_get_header            (ETableGroup *etg);
ETableCol*          e_table_group_get_ecol              (ETableGroup *etg);
EPrintable*         e_table_group_get_printable         (ETableGroup *etg);
void                e_table_group_compute_location      (ETableGroup *etg,
                                                         int *x,
                                                         int *y,
                                                         int *row,
                                                         int *col);
ETableGroup*        e_table_group_new                   (const char *title,
                                                         ETableModel *table);
void                e_table_group_construct             (GnomeCanvasGroup *parent,
                                                         ETableGroup *etg,
                                                         ETableHeader *full_header,
                                                         ETableHeader *header,
                                                         ETableModel *model);
void                e_table_group_cursor_change         (ETableGroup *etg,
                                                         gint row);
void                e_table_group_double_click          (ETableGroup *etg,
                                                         gint row,
                                                         gint col,
                                                         GdkEvent *event);
gint                e_table_group_right_click           (ETableGroup *etg,
                                                         gint row,
                                                         gint col,
                                                         GdkEvent *event);
gint                e_table_group_click                 (ETableGroup *etg,
                                                         gint row,
                                                         gint col,
                                                         GdkEvent *event);
gint                e_table_group_key_press             (ETableGroup *etg,
                                                         gint row,
                                                         gint col,
                                                         GdkEvent *event);
void                (*ETableGroupLeafFn)                (void *e_table_item,
                                                         void *closure);
void                e_table_group_apply_to_leafs        (ETableGroup *etg,
                                                         ETableGroupLeafFn fn,
                                                         void *closure);

Object Hierarchy


  GtkObject
   +----GnomeCanvasItem
         +----GnomeCanvasGroup
               +----ETableGroup
                     +----ETableGroupContainer
                     +----ETableGroupLeaf

Signals


  "cursor-change"                                  
  "double-click"                                   
  "right-click"                                    
  "click"                                          
  "key-press"                                      

Description

Details

E_TABLE_GROUP_TYPE

#define E_TABLE_GROUP_TYPE        (e_table_group_get_type ())


ETableGroup

typedef struct {
	GnomeCanvasGroup group;

	/*
	 * The full header.
	 */
	ETableHeader *full_header;
	ETableHeader *header;
	
	/*
	 * The model we pull data from.
	 */
	ETableModel *model;

	/*
	 * Whether we should add indentation and open/close markers,
	 * or if we just act as containers of subtables.
	 */
	guint transparent : 1;

	guint has_focus : 1;
	
	guint frozen : 1;
} ETableGroup;


e_table_group_add ()

void                e_table_group_add                   (ETableGroup *etg,
                                                         gint row);

This routine adds the given row from the ETableModel to this set of rows.

etg :

The ETableGroup to add a row to

row :

The row to add.


e_table_group_add_all ()

void                e_table_group_add_all               (ETableGroup *etg);

This routine adds all the rows from the ETableModel to this set of rows.

etg :

The ETableGroup to add to


e_table_group_remove ()

gboolean            e_table_group_remove                (ETableGroup *etg,
                                                         gint row);

This routine removes the given row from the ETableModel from this set of rows.

etg :

The ETableGroup to remove a row from

row :

The row to remove.

Returns :

TRUE if the row was deleted and FALSE if the row was not found.


e_table_group_get_count ()

gint                e_table_group_get_count             (ETableGroup *etg);

etg :

Returns :


e_table_group_increment ()

void                e_table_group_increment             (ETableGroup *etg,
                                                         gint position,
                                                         gint amount);

This routine calculates the number of rows shown in this group.

etg :

The ETableGroup to count

position :

amount :


e_table_group_decrement ()

void                e_table_group_decrement             (ETableGroup *etg,
                                                         gint position,
                                                         gint amount);

etg :

position :

amount :


e_table_group_row_count ()

gint                e_table_group_row_count             (ETableGroup *etg);

etg :

Returns :


e_table_group_set_focus ()

void                e_table_group_set_focus             (ETableGroup *etg,
                                                         EFocus direction,
                                                         gint view_col);

Sets the focus to this widget. Places the focus in the view column coming from direction direction.

etg :

The ETableGroup to set

direction :

The direction the focus is coming from.

view_col :

The column to set the focus in.


e_table_group_set_cursor_row ()

void                e_table_group_set_cursor_row        (ETableGroup *etg,
                                                         gint row);

etg :

row :


e_table_group_get_cursor_row ()

int                 e_table_group_get_cursor_row        (ETableGroup *etg);

etg :

Returns :


e_table_group_get_focus ()

gboolean            e_table_group_get_focus             (ETableGroup *etg);

Calculates if this group has the focus.

etg :

The ETableGroup to check

Returns :

TRUE if this group has the focus.


e_table_group_get_focus_column ()

gint                e_table_group_get_focus_column      (ETableGroup *etg);

Calculates which column in this group has the focus.

etg :

The ETableGroup to check

Returns :

The column index (view column).


e_table_group_get_header ()

ETableHeader*       e_table_group_get_header            (ETableGroup *etg);

This routine returns the ETableGroup's header.

etg :

Returns :

The ETableHeader.


e_table_group_get_ecol ()

ETableCol*          e_table_group_get_ecol              (ETableGroup *etg);

etg :

Returns :


e_table_group_get_printable ()

EPrintable*         e_table_group_get_printable         (ETableGroup *etg);

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

etg :

ETableGroup which will be printed

Returns :

The EPrintable.


e_table_group_compute_location ()

void                e_table_group_compute_location      (ETableGroup *etg,
                                                         int *x,
                                                         int *y,
                                                         int *row,
                                                         int *col);

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

etg :

x :

A pointer to the x location to find in the ETableGroup.

y :

A pointer to the y location to find in the ETableGroup.

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_group_new ()

ETableGroup*        e_table_group_new                   (const char *title,
                                                         ETableModel *table);

ETableGroup is a collection of rows of an ETable. It's a GnomeCanvasItem. There are two different forms. If n < the number of groupings in the given ETableSortInfo, then the ETableGroup will need to contain other ETableGroups, thus it creates an ETableGroupContainer. Otherwise, it will just contain an ETableItem, and thus it creates an ETableGroupLeaf.

title :

table :

Returns :

The new ETableGroup.


e_table_group_construct ()

void                e_table_group_construct             (GnomeCanvasGroup *parent,
                                                         ETableGroup *etg,
                                                         ETableHeader *full_header,
                                                         ETableHeader *header,
                                                         ETableModel *model);

This routine does the base construction of the ETableGroup.

parent :

The GnomeCanvasGroup to create a child of.

etg :

The ETableGroup to construct.

full_header :

The full header of the ETable.

header :

The current header of the ETable.

model :

The ETableModel of the ETable.


e_table_group_cursor_change ()

void                e_table_group_cursor_change         (ETableGroup *etg,
                                                         gint row);

This routine emits the "cursor_change" signal.

etg :

row :

The new cursor row (model row)


e_table_group_double_click ()

void                e_table_group_double_click          (ETableGroup *etg,
                                                         gint row,
                                                         gint col,
                                                         GdkEvent *event);

This routine emits the "double_click" signal.

etg :

row :

The row clicked on (model row)

col :

The col clicked on (model col)

event :

The event that caused this signal


e_table_group_right_click ()

gint                e_table_group_right_click           (ETableGroup *etg,
                                                         gint row,
                                                         gint col,
                                                         GdkEvent *event);

This routine emits the "right_click" signal.

etg :

row :

The row clicked on (model row)

col :

The col clicked on (model col)

event :

The event that caused this signal

Returns :


e_table_group_click ()

gint                e_table_group_click                 (ETableGroup *etg,
                                                         gint row,
                                                         gint col,
                                                         GdkEvent *event);

This routine emits the "click" signal.

etg :

row :

The row clicked on (model row)

col :

The col clicked on (model col)

event :

The event that caused this signal

Returns :


e_table_group_key_press ()

gint                e_table_group_key_press             (ETableGroup *etg,
                                                         gint row,
                                                         gint col,
                                                         GdkEvent *event);

This routine emits the "key_press" signal.

etg :

row :

The cursor row (model row)

col :

The cursor col (model col)

event :

The event that caused this signal

Returns :


ETableGroupLeafFn ()

void                (*ETableGroupLeafFn)                (void *e_table_item,
                                                         void *closure);

e_table_item :

closure :


e_table_group_apply_to_leafs ()

void                e_table_group_apply_to_leafs        (ETableGroup *etg,
                                                         ETableGroupLeafFn fn,
                                                         void *closure);

etg :

fn :

closure :

Signal Details

The "cursor-change" signal

void                user_function                      (ETableGroup *etablegroup,
                                                        gint         arg1,
                                                        gpointer     user_data)

etablegroup :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.


The "double-click" signal

void                user_function                      (ETableGroup *etablegroup,
                                                        gint         arg1,
                                                        gint         arg2,
                                                        gpointer     arg3,
                                                        gpointer     user_data)

etablegroup :

the object which received the signal.

arg1 :

arg2 :

arg3 :

user_data :

user data set when the signal handler was connected.


The "right-click" signal

gint                user_function                      (ETableGroup *etablegroup,
                                                        gint         arg1,
                                                        gint         arg2,
                                                        gpointer     arg3,
                                                        gpointer     user_data)

etablegroup :

the object which received the signal.

arg1 :

arg2 :

arg3 :

user_data :

user data set when the signal handler was connected.

Returns :


The "click" signal

gint                user_function                      (ETableGroup *etablegroup,
                                                        gint         arg1,
                                                        gint         arg2,
                                                        gpointer     arg3,
                                                        gpointer     user_data)

etablegroup :

the object which received the signal.

arg1 :

arg2 :

arg3 :

user_data :

user data set when the signal handler was connected.

Returns :


The "key-press" signal

gint                user_function                      (ETableGroup *etablegroup,
                                                        gint         arg1,
                                                        gint         arg2,
                                                        gpointer     arg3,
                                                        gpointer     user_data)

etablegroup :

the object which received the signal.

arg1 :

arg2 :

arg3 :

user_data :

user data set when the signal handler was connected.

Returns :