diff options
-rw-r--r-- | widgets/e-table/ChangeLog | 8 | ||||
-rw-r--r-- | widgets/e-table/e-table-header-item.c | 26 | ||||
-rw-r--r-- | widgets/e-table/e-table-header-item.h | 5 | ||||
-rw-r--r-- | widgets/table/e-table-header-item.c | 26 | ||||
-rw-r--r-- | widgets/table/e-table-header-item.h | 5 |
5 files changed, 68 insertions, 2 deletions
diff --git a/widgets/e-table/ChangeLog b/widgets/e-table/ChangeLog index 74899eeb4a..4237a13bd4 100644 --- a/widgets/e-table/ChangeLog +++ b/widgets/e-table/ChangeLog @@ -1,3 +1,11 @@ +2000-05-11 Miguel de Icaza <miguel@gnu.org> + + * e-table.c: Removed dead code. + +2000-04-14 Miguel de Icaza <miguel@gnu.org> + + * e-table-header-item.c (ethi_class_init): New signal action. + 2000-05-10 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added e-table-col-dnd.h and table-test.h. diff --git a/widgets/e-table/e-table-header-item.c b/widgets/e-table/e-table-header-item.c index f916ce447e..6923fffd0a 100644 --- a/widgets/e-table/e-table-header-item.c +++ b/widgets/e-table/e-table-header-item.c @@ -27,6 +27,13 @@ #include "arrow-up.xpm" #include "arrow-down.xpm" +enum { + BUTTON_PRESSED, + LAST_SIGNAL +}; + +static guint ethi_signals [LAST_SIGNAL] = { 0, }; + #define ARROW_DOWN_HEIGHT 16 #define ARROW_PTR 7 @@ -925,6 +932,13 @@ ethi_start_drag (ETableHeaderItem *ethi, GdkEvent *event) g_hash_table_destroy (arrows); } +static void +ethi_button_pressed (ETableHeaderItem *ethi, GdkEventButton *event) +{ + gtk_signal_emit (GTK_OBJECT (ethi), + ethi_signals [BUTTON_PRESSED], event); +} + /* FIXME: Implement this. */ #if 0 static GtkMenu * @@ -1029,7 +1043,8 @@ ethi_event (GnomeCanvasItem *item, GdkEvent *e) ethi->maybe_drag = TRUE; } else if (e->button.button == 3){ ethi_header_context_menu (ethi, &e->button); - } + } else + ethi_button_pressed (ethi, &e->button); } break; @@ -1147,6 +1162,15 @@ ethi_class_init (GtkObjectClass *object_class) add_col_pixmap = gdk_pixmap_colormap_create_from_xpm_d ( NULL, dnd_colormap, &add_col_mask, NULL, add_col_xpm); + + ethi_signals [BUTTON_PRESSED] = + gtk_signal_new ("button_pressed", + GTK_RUN_LAST, + object_class->type, + GTK_SIGNAL_OFFSET (ETableHeaderItemClass, button_pressed), + gtk_marshal_NONE__POINTER, + GTK_TYPE_NONE, 1, GTK_TYPE_POINTER); + } static void diff --git a/widgets/e-table/e-table-header-item.h b/widgets/e-table/e-table-header-item.h index 40d50efa1a..2b3f2e8f74 100644 --- a/widgets/e-table/e-table-header-item.h +++ b/widgets/e-table/e-table-header-item.h @@ -60,6 +60,11 @@ typedef struct { typedef struct { GnomeCanvasItemClass parent_class; + + /* + * signals + */ + void (*button_pressed) (ETableHeaderItem *ethi, GdkEventButton *button); } ETableHeaderItemClass; GtkType e_table_header_item_get_type (void); diff --git a/widgets/table/e-table-header-item.c b/widgets/table/e-table-header-item.c index f916ce447e..6923fffd0a 100644 --- a/widgets/table/e-table-header-item.c +++ b/widgets/table/e-table-header-item.c @@ -27,6 +27,13 @@ #include "arrow-up.xpm" #include "arrow-down.xpm" +enum { + BUTTON_PRESSED, + LAST_SIGNAL +}; + +static guint ethi_signals [LAST_SIGNAL] = { 0, }; + #define ARROW_DOWN_HEIGHT 16 #define ARROW_PTR 7 @@ -925,6 +932,13 @@ ethi_start_drag (ETableHeaderItem *ethi, GdkEvent *event) g_hash_table_destroy (arrows); } +static void +ethi_button_pressed (ETableHeaderItem *ethi, GdkEventButton *event) +{ + gtk_signal_emit (GTK_OBJECT (ethi), + ethi_signals [BUTTON_PRESSED], event); +} + /* FIXME: Implement this. */ #if 0 static GtkMenu * @@ -1029,7 +1043,8 @@ ethi_event (GnomeCanvasItem *item, GdkEvent *e) ethi->maybe_drag = TRUE; } else if (e->button.button == 3){ ethi_header_context_menu (ethi, &e->button); - } + } else + ethi_button_pressed (ethi, &e->button); } break; @@ -1147,6 +1162,15 @@ ethi_class_init (GtkObjectClass *object_class) add_col_pixmap = gdk_pixmap_colormap_create_from_xpm_d ( NULL, dnd_colormap, &add_col_mask, NULL, add_col_xpm); + + ethi_signals [BUTTON_PRESSED] = + gtk_signal_new ("button_pressed", + GTK_RUN_LAST, + object_class->type, + GTK_SIGNAL_OFFSET (ETableHeaderItemClass, button_pressed), + gtk_marshal_NONE__POINTER, + GTK_TYPE_NONE, 1, GTK_TYPE_POINTER); + } static void diff --git a/widgets/table/e-table-header-item.h b/widgets/table/e-table-header-item.h index 40d50efa1a..2b3f2e8f74 100644 --- a/widgets/table/e-table-header-item.h +++ b/widgets/table/e-table-header-item.h @@ -60,6 +60,11 @@ typedef struct { typedef struct { GnomeCanvasItemClass parent_class; + + /* + * signals + */ + void (*button_pressed) (ETableHeaderItem *ethi, GdkEventButton *button); } ETableHeaderItemClass; GtkType e_table_header_item_get_type (void); |