From c144d2091888813efe3b7ae4414b356fd080b610 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Fri, 13 Oct 2000 18:53:51 +0000 Subject: Added e-table-config-field.lo. 2000-10-13 Christopher James Lahey * gal/Makefile.am: Added e-table-config-field.lo. * tests/test-tree-2.c: Changed this to use cursor-mode in the xml instead of the no longer existing gtk argument. From gal/e-table/ChangeLog: 2000-10-13 Christopher James Lahey * Makefile.am: Added e-table-config-field.c and e-table-config-field.h. * e-table-column-specification.c: Cleaned this up a bit. Made it leak less memory. * e-table-config-field.c, e-table-config-field.h: New files. This is the configuration widgets for sorting or grouping. * e-table-config.c, e-table-config.h: Nuked these and replaced them with a widget that handles all the ETable configuration. * e-table-config.glade, e-table-config.glade.h: Updated this a bit to match what's actually being used better. This isn't used in actual code. * e-table-header-item.c, e-table-header-item.h: Added a pointer to the table in the header item structure so that we can launch the configuration from the header item right click menu. Made the header item launch the ETable configuration dialog. * e-table.c, e-table.h: Keep the spec given to us around. Added a get_state_object function which returns an ETableState *. Set the "table" argument on the header item. svn path=/trunk/; revision=5901 --- widgets/table/e-table-config.h | 43 ++++++++++++++++++++++++++++++++++++------ 1 file changed, 37 insertions(+), 6 deletions(-) (limited to 'widgets/table/e-table-config.h') diff --git a/widgets/table/e-table-config.h b/widgets/table/e-table-config.h index 617ef6a331..ddae3f1497 100644 --- a/widgets/table/e-table-config.h +++ b/widgets/table/e-table-config.h @@ -1,11 +1,42 @@ -#ifndef _E_TABLE_CONFIG_H -#define _E_TABLE_CONFIG_H +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +#ifndef _E_TABLE_CONFIG_H_ +#define _E_TABLE_CONFIG_H_ -GnomeDialog *e_table_gui_config (ETable *etable); -void e_table_do_gui_config (GtkWidget *, ETable *etable); +#include +#include +#include -void e_table_gui_config_accept (GtkWidget *widget, ETable *etable); -void e_table_gui_config_cancel (GtkWidget *widget, ETable *etable); +#define E_TABLE_CONFIG_TYPE (e_table_config_get_type ()) +#define E_TABLE_CONFIG(o) (GTK_CHECK_CAST ((o), E_TABLE_CONFIG_TYPE, ETableConfig)) +#define E_TABLE_CONFIG_CLASS(k) (GTK_CHECK_CLASS_CAST((k), E_TABLE_CONFIG_TYPE, ETableConfigClass)) +#define E_IS_TABLE_CONFIG(o) (GTK_CHECK_TYPE ((o), E_TABLE_CONFIG_TYPE)) +#define E_IS_TABLE_CONFIG_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), E_TABLE_CONFIG_TYPE)) +typedef struct { + GnomeDialog base; + + ETableSpecification *spec; + ETableState *state; + + GtkWidget *sort_label; + GtkWidget *group_label; + + GtkWidget *sort_dialog; + GtkWidget *group_dialog; + + int sorting_changed_id; + int grouping_changed_id; +} ETableConfig; + +typedef struct { + GnomeDialogClass parent_class; +} ETableConfigClass; + +GtkType e_table_config_get_type (void); +GtkWidget *e_table_config_new (ETableSpecification *spec, + ETableState *state); +GtkWidget *e_table_config_construct (ETableConfig *etco, + ETableSpecification *spec, + ETableState *state); #endif /* _E_TABLE_CONFIG_H */ -- cgit v1.2.3