diff options
author | Christopher James Lahey <clahey@helixcode.com> | 2000-03-01 05:07:06 +0800 |
---|---|---|
committer | Chris Lahey <clahey@src.gnome.org> | 2000-03-01 05:07:06 +0800 |
commit | 832150b0dda320f18f1aedf2da23d0b087cde748 (patch) | |
tree | a81426b3f8f314cdd91eb152072ab5d53f9e3c2b /widgets/table/e-table-header-item.c | |
parent | 2f6721bf5bd7d5c853279db40b1fb15ded4745a2 (diff) | |
download | gsoc2013-evolution-832150b0dda320f18f1aedf2da23d0b087cde748.tar.gz gsoc2013-evolution-832150b0dda320f18f1aedf2da23d0b087cde748.tar.zst gsoc2013-evolution-832150b0dda320f18f1aedf2da23d0b087cde748.zip |
Test frozen columns
2000-02-29 Christopher James Lahey <clahey@helixcode.com>
* test-table.c: Test frozen columns
* e-table.c: Make frozen columns available through the xml file.
* e-table-header.c, e-table-header.h, e-table-header-item.c: Added
frozen columns API to let you specify some number of leading
columns as undraggable.
* Makefile.am: Add e-table-example-1.c and e-table-example-2.c.
* e-table-example-1.c, e-table-example-2.c: New files. A couple
of examples of ETable use.
svn path=/trunk/; revision=1993
Diffstat (limited to 'widgets/table/e-table-header-item.c')
-rw-r--r-- | widgets/table/e-table-header-item.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/widgets/table/e-table-header-item.c b/widgets/table/e-table-header-item.c index 0289703bf2..91a64d204a 100644 --- a/widgets/table/e-table-header-item.c +++ b/widgets/table/e-table-header-item.c @@ -40,6 +40,7 @@ static GnomeCanvasItemClass *ethi_parent_class; static void ethi_request_redraw (ETableHeaderItem *ethi); +static void ethi_drop_table_header (ETableHeaderItem *ethi); /* @@ -326,6 +327,8 @@ ethi_drag_motion (GtkObject *canvas, GdkDragContext *context, int col; col = ethi_find_col_by_x (ethi, x); + if ( col < ethi->eth->frozen_count ) + col = ethi->eth->frozen_count; if (col != -1){ ethi_remove_destroy_marker (ethi); @@ -380,6 +383,8 @@ ethi_drag_drop (GtkWidget *canvas, int col; col = ethi_find_col_by_x (ethi, x); + if ( col < ethi->eth->frozen_count ) + col = ethi->eth->frozen_count; ethi_add_drop_marker(ethi, col); if (col != -1) { @@ -700,6 +705,10 @@ ethi_start_drag (ETableHeaderItem *ethi, GdkEvent *event) GdkGC *gc; ethi->drag_col = ethi_find_col_by_x (ethi, event->motion.x); + if ( ethi->drag_col < ethi->eth->frozen_count && ethi->drag_col >= 0 ) { + ethi->maybe_drag = FALSE; + ethi->drag_col = -1; + } if (ethi->drag_col == -1) return; |