Whole document tree
    

Whole document tree

ETableGroup

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

Signal Prototypes


"cursor-change"
            void        user_function      (ETableGroup *etablegroup,
                                            gint arg1,
                                            gpointer user_data);
"double-click"
            void        user_function      (ETableGroup *etablegroup,
                                            gint arg1,
                                            gint arg2,
                                            gpointer arg3,
                                            gpointer user_data);
"right-click"
            gint        user_function      (ETableGroup *etablegroup,
                                            gint arg1,
                                            gint arg2,
                                            gpointer arg3,
                                            gpointer user_data);
"click"     gint        user_function      (ETableGroup *etablegroup,
                                            gint arg1,
                                            gint arg2,
                                            gpointer arg3,
                                            gpointer user_data);
"key-press" gint        user_function      (ETableGroup *etablegroup,
                                            gint arg1,
                                            gint arg2,
                                            gpointer arg3,
                                            gpointer user_data);

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.


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.


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.


e_table_group_get_count ()

gint        e_table_group_get_count         (ETableGroup *etg);


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.


e_table_group_decrement ()

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


e_table_group_row_count ()

gint        e_table_group_row_count         (ETableGroup *etg);


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.


e_table_group_set_cursor_row ()

void        e_table_group_set_cursor_row    (ETableGroup *etg,
                                             gint row);


e_table_group_get_cursor_row ()

int         e_table_group_get_cursor_row    (ETableGroup *etg);


e_table_group_get_focus ()

gboolean    e_table_group_get_focus         (ETableGroup *etg);

Calculates 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.


e_table_group_get_header ()

ETableHeader* e_table_group_get_header      (ETableGroup *etg);

This routine returns the ETableGroup's header.


e_table_group_get_ecol ()

ETableCol*  e_table_group_get_ecol          (ETableGroup *etg);


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.


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.


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.


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.


e_table_group_cursor_change ()

void        e_table_group_cursor_change     (ETableGroup *etg,
                                             gint row);

This routine emits the "cursor_change" signal.


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.


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.


e_table_group_click ()

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

This routine emits the "click" signal.


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.


ETableGroupLeafFn ()

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


e_table_group_apply_to_leafs ()

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

Signals

The "cursor-change" signal

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


The "double-click" signal

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


The "right-click" signal

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


The "click" signal

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


The "key-press" signal

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