ETableGroupContainer

ETableGroupContainer

Synopsis

struct              ETableGroupContainerChildNode;
struct              ETableGroupContainer;
ETableGroup *       e_table_group_container_new         (GnomeCanvasGroup *parent,
                                                         ETableHeader *full_header,
                                                         ETableHeader *header,
                                                         ETableModel *model,
                                                         ETableSortInfo *sort_info,
                                                         gint n);
void                e_table_group_container_construct   (GnomeCanvasGroup *parent,
                                                         ETableGroupContainer *etgc,
                                                         ETableHeader *full_header,
                                                         ETableHeader *header,
                                                         ETableModel *model,
                                                         ETableSortInfo *sort_info,
                                                         gint n);
gboolean            e_table_group_container_is_editing  (ETableGroupContainer *etgc);

Description

Details

struct ETableGroupContainerChildNode

struct ETableGroupContainerChildNode {
	ETableGroup *child;
	gpointer key;
	gchar *string;
	GnomeCanvasItem *text;
	GnomeCanvasItem *rect;
	gint count;
};

struct ETableGroupContainer

struct ETableGroupContainer {
	ETableGroup group;

	/*
	 * The ETableCol used to group this set
	 */
	ETableCol *ecol;
	gint ascending;

	/*
	 * List of ETableGroups we stack
	 */
	GList *children;

	/*
	 * The canvas rectangle that contains the children
	 */
	GnomeCanvasItem *rect;

	PangoFontDescription *font_desc;

	gdouble width, height, minimum_width;

	ETableSortInfo *sort_info;
	gint n;
	gint length_threshold;

	ESelectionModel *selection_model;

	guint alternating_row_colors : 1;
	guint horizontal_draw_grid : 1;
	guint vertical_draw_grid : 1;
	guint draw_focus : 1;
	guint uniform_row_height : 1;
	ECursorMode cursor_mode;

	/*
	 * State: the ETableGroup is open or closed
	 */
	guint open : 1;
};

e_table_group_container_new ()

ETableGroup *       e_table_group_container_new         (GnomeCanvasGroup *parent,
                                                         ETableHeader *full_header,
                                                         ETableHeader *header,
                                                         ETableModel *model,
                                                         ETableSortInfo *sort_info,
                                                         gint n);

ETableGroupContainer is an ETableGroup which groups by the nth grouping of the ETableSortInfo. It creates ETableGroups as children.

parent :

The GnomeCanvasGroup to create a child of.

full_header :

The full header of the ETable.

header :

The current header of the ETable.

model :

The ETableModel of the ETable.

sort_info :

The ETableSortInfo of the ETable.

n :

Which grouping level this is (Starts at 0 and sends n + 1 to any child ETableGroups.

Returns :

The new ETableGroupContainer.

e_table_group_container_construct ()

void                e_table_group_container_construct   (GnomeCanvasGroup *parent,
                                                         ETableGroupContainer *etgc,
                                                         ETableHeader *full_header,
                                                         ETableHeader *header,
                                                         ETableModel *model,
                                                         ETableSortInfo *sort_info,
                                                         gint n);

This routine constructs the new ETableGroupContainer.

parent :

The GnomeCanvasGroup to create a child of.

etgc :

The ETableGroupContainer.

full_header :

The full header of the ETable.

header :

The current header of the ETable.

model :

The ETableModel of the ETable.

sort_info :

The ETableSortInfo of the ETable.

n :

Which grouping level this is (Starts at 0 and sends n + 1 to any child ETableGroups.

e_table_group_container_is_editing ()

gboolean            e_table_group_container_is_editing  (ETableGroupContainer *etgc);