diff options
Diffstat (limited to 'widgets/e-table/e-table-group.c')
-rw-r--r-- | widgets/e-table/e-table-group.c | 139 |
1 files changed, 0 insertions, 139 deletions
diff --git a/widgets/e-table/e-table-group.c b/widgets/e-table/e-table-group.c deleted file mode 100644 index 76c317369e..0000000000 --- a/widgets/e-table/e-table-group.c +++ /dev/null @@ -1,139 +0,0 @@ -/* - * E-Table-Group.c: Implements the grouping objects for elements on a table - * - * Author: - * Miguel de Icaza (miguel@gnu.org() - * - * Copyright 1999, Helix Code, Inc. - */ - -#include <config.h> -#include <gtk/gtksignal.h> -#include "e-table-group.h" -#include <libgnomeui/gnome-canvas-rect-ellipse.h> -#include "e-util.h" - -#define TITLE_HEIGHT 16 -#define GROUP_INDENT 10 - -#define PARENT_TYPE gnome_canvas_group_get_type () - -static GnomeCanvasGroupClass *etg_parent_class; - -static void -etg_destroy (GtkObject *object) -{ - ETableGroup *etg = E_TABLE_GROUP (object); - - gtk_object_unref (GTK_OBJECT (etg->ecol)); - - GTK_OBJECT_CLASS (etg_parent_class)->destroy (object); -} - -static int -etg_width (ETableGroup *etg) -{ - return e_table_header_total_width (etg->header) + GROUP_INDENT; -} - -static int -etg_height (ETableGroup *etg) -{ - GnomeCanvasItem *child = etg->child; - - return TITLE_HEIGHT + (child->y2 - child->y1); -} - -static void -etg_header_changed (ETableHeader *header, ETableGroup *etg) -{ - gnome_canvas_item_set ( - etg->rect, - "x2", (double) etg_width (etg), - NULL); -} - -void -e_table_group_construct (GnomeCanvasGroup *parent, ETableGroup *etg, - ETableHeader *header, int col, - GnomeCanvasItem *child, int open) -{ - gnome_canvas_item_constructv (GNOME_CANVAS_ITEM (etg), parent, 0, NULL); - - gtk_object_ref (GTK_OBJECT (header)); - - etg->header = header; - etg->col = col; - etg->ecol = e_table_header_get_column (header, col); - etg->open = open; - - gtk_signal_connect ( - GTK_OBJECT (header), "dimension_change", - GTK_SIGNAL_FUNC (etg_header_changed), etg); - - etg->child = child; - - etg->rect = gnome_canvas_item_new ( - GNOME_CANVAS_GROUP (etg), - gnome_canvas_rect_get_type (), - "fill_color", "gray", - "outline_color", "gray20", - "x1", 0.0, - "y1", 0.0, - "x2", (double) etg_width (etg), - "y2", (double) etg_height (etg), - NULL); - - - /* - * Reparent the child into our space. - */ - gnome_canvas_item_reparent (child, GNOME_CANVAS_GROUP (etg)); - - gnome_canvas_item_set ( - child, - "x", (double) GROUP_INDENT, - "y", (double) TITLE_HEIGHT, - NULL); -} - -GnomeCanvasItem * -e_table_group_new (GnomeCanvasGroup *parent, ETableHeader *header, int col, GnomeCanvasItem *child, int open) -{ - ETableGroup *etg; - - g_return_val_if_fail (parent != NULL, NULL); - g_return_val_if_fail (header != NULL, NULL); - g_return_val_if_fail (child != NULL, NULL); - - etg = gtk_type_new (e_table_group_get_type ()); - - e_table_group_construct (parent, etg, header, col, child, open); - - return GNOME_CANVAS_ITEM (etg); -} - -static void -etg_realize (GnomeCanvasItem *item) -{ - ETableGroup *etg = E_TABLE_GROUP (item); - - GNOME_CANVAS_ITEM_CLASS (etg_parent_class)->realize (item); -} - -static void -etg_class_init (GtkObjectClass *object_class) -{ - GnomeCanvasItemClass *item_class = (GnomeCanvasItemClass *) object_class; - - object_class->destroy = etg_destroy; - - item_class->realize = etg_realize; - - etg_parent_class = gtk_type_class (PARENT_TYPE); -} - -E_MAKE_TYPE (e_table_group, "ETableGroup", ETableGroup, etg_class_init, NULL, PARENT_TYPE); - - - |