diff options
author | Christopher James Lahey <clahey@ximian.com> | 2002-06-15 06:26:43 +0800 |
---|---|---|
committer | Chris Lahey <clahey@src.gnome.org> | 2002-06-15 06:26:43 +0800 |
commit | bfccd5b470c3bcc0d23d619e9c0d93f0fdc80cce (patch) | |
tree | f420e29e4a0140d0728511a2979c927978d2e0e7 /widgets/table/e-table-col.c | |
parent | c397a95d08f8c2b9ce1dd2830324e3cc14a13926 (diff) | |
download | gsoc2013-evolution-bfccd5b470c3bcc0d23d619e9c0d93f0fdc80cce.tar.gz gsoc2013-evolution-bfccd5b470c3bcc0d23d619e9c0d93f0fdc80cce.tar.zst gsoc2013-evolution-bfccd5b470c3bcc0d23d619e9c0d93f0fdc80cce.zip |
Don't draw or interact with the popup button if a cell isn't editable
2002-06-14 Christopher James Lahey <clahey@ximian.com>
* e-cell-popup.c (ecp_draw, ecp_event): Don't draw or interact
with the popup button if a cell isn't editable (based on a patch
by JPR.)
* e-table-col.c, e-table-col.h: Added the compare_col field to
this structure. Added a GtkArg to set it.
* e-table-column-specification.c, e-table-column-specification.h:
Added the compare_col field here. Made it load properly from xml.
* e-table-sorting-utils.c: Sort based on the compare_col in the
ETableCol instead of the col_idx.
* e-table-utils.c (et_col_spec_to_col): Set the compare_col field
in the ETableCol properly.
* e-table.c, e-table.h: Removed the drag_get_data_row and
drag_get_data_col fields since they're not used any longer.
(e_table_construct): If specification loading fails, return a NULL
ETable instead of just ignoring it.
(e_table_drag_highlight): Only destroy table->drop_highlight if it
exists.
svn path=/trunk/; revision=17190
Diffstat (limited to 'widgets/table/e-table-col.c')
-rw-r--r-- | widgets/table/e-table-col.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/widgets/table/e-table-col.c b/widgets/table/e-table-col.c index 7d302f4d80..fa53fb0d0c 100644 --- a/widgets/table/e-table-col.c +++ b/widgets/table/e-table-col.c @@ -34,7 +34,8 @@ static GtkObjectClass *parent_class; enum { ARG_0, - ARG_SORTABLE + ARG_SORTABLE, + ARG_COMPARE_COL }; static void @@ -62,6 +63,9 @@ etc_set_arg (GtkObject *o, GtkArg *arg, guint arg_id) case ARG_SORTABLE: etc->sortable = GTK_VALUE_BOOL(*arg); break; + case ARG_COMPARE_COL: + etc->compare_col = GTK_VALUE_INT(*arg); + break; } } @@ -74,6 +78,9 @@ etc_get_arg (GtkObject *o, GtkArg *arg, guint arg_id) case ARG_SORTABLE: GTK_VALUE_BOOL(*arg) = etc->sortable; break; + case ARG_COMPARE_COL: + GTK_VALUE_INT(*arg) = etc->compare_col; + break; default: arg->type = GTK_TYPE_INVALID; break; @@ -90,6 +97,8 @@ e_table_col_class_init (GtkObjectClass *object_class) gtk_object_add_arg_type ("ETableCol::sortable", GTK_TYPE_BOOL, GTK_ARG_READWRITE, ARG_SORTABLE); + gtk_object_add_arg_type ("ETableCol::compare_col", + GTK_TYPE_INT, GTK_ARG_READWRITE, ARG_COMPARE_COL); } static void @@ -148,6 +157,7 @@ e_table_col_new (int col_idx, const char *text, double expansion, int min_width, etc->is_pixbuf = FALSE; etc->col_idx = col_idx; + etc->compare_col = col_idx; etc->text = g_strdup (text); etc->pixbuf = NULL; etc->expansion = expansion; @@ -208,6 +218,7 @@ e_table_col_new_with_pixbuf (int col_idx, const char *text, GdkPixbuf *pixbuf, d etc->is_pixbuf = TRUE; etc->col_idx = col_idx; + etc->compare_col = col_idx; etc->text = g_strdup(text); etc->pixbuf = pixbuf; etc->expansion = expansion; |