From 4a25f612c0fb701a774d20c19888957c555e54a2 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Fri, 11 Feb 2000 22:08:09 +0000 Subject: Added reordering of columns. 2000-02-11 Christopher James Lahey * e-table-header-item.h, e-table-header-item.c: Added reordering of columns. * e-table-header.c: Fixed a couple of bugs in the move column and remove column functions. svn path=/trunk/; revision=1736 --- widgets/e-table/e-table-header.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'widgets/e-table/e-table-header.c') diff --git a/widgets/e-table/e-table-header.c b/widgets/e-table/e-table-header.c index 7c54bd936e..2147869678 100644 --- a/widgets/e-table/e-table-header.c +++ b/widgets/e-table/e-table-header.c @@ -100,9 +100,10 @@ e_table_header_new (void) static void eth_do_insert (ETableHeader *eth, int pos, ETableCol *val) { - memcpy (ð->columns [pos+1], ð->columns [pos], + memmove (ð->columns [pos+1], ð->columns [pos], sizeof (ETableCol *) * (eth->col_count - pos)); eth->columns [pos] = val; + eth->col_count ++; } static void @@ -139,7 +140,6 @@ e_table_header_add_column (ETableHeader *eth, ETableCol *tc, int pos) gtk_object_sink (GTK_OBJECT (tc)); eth_do_insert (eth, pos, tc); - eth->col_count++; eth_update_offsets (eth); gtk_signal_emit (GTK_OBJECT (eth), eth_signals [STRUCTURE_CHANGE]); @@ -261,7 +261,7 @@ eth_do_remove (ETableHeader *eth, int idx, gboolean do_unref) if (do_unref) gtk_object_unref (GTK_OBJECT (eth->columns [idx])); - memcpy (ð->columns [idx], ð->columns [idx+1], + memmove (ð->columns [idx], ð->columns [idx+1], sizeof (ETableCol *) * eth->col_count - idx); eth->col_count--; } -- cgit v1.2.3