diff options
author | Milan Crha <mcrha@redhat.com> | 2008-07-21 01:02:33 +0800 |
---|---|---|
committer | Bharath Acharya <abharath@src.gnome.org> | 2008-07-21 01:02:33 +0800 |
commit | 9e2412ce340e7e39a1fe6532151afd4fdbe8bb37 (patch) | |
tree | dc3d5d334db47477f652ce95b49c72e232b48bb9 /widgets/table/e-table.c | |
parent | 3e0962231032ae53af4310b43dbced810cdc6100 (diff) | |
download | gsoc2013-evolution-9e2412ce340e7e39a1fe6532151afd4fdbe8bb37.tar.gz gsoc2013-evolution-9e2412ce340e7e39a1fe6532151afd4fdbe8bb37.tar.zst gsoc2013-evolution-9e2412ce340e7e39a1fe6532151afd4fdbe8bb37.zip |
Committing on behalf of Milan Crha <mcrha@redhat.com>
2008-07-15 Milan Crha <mcrha@redhat.com>
** Part of fix for bug #329821
* e-table-item.c: (find_cell): Do not consider last row's height
till the bottom.
* e-table-item.h: (e_table_item_compute_mouse_over):
* e-table-item.c: (e_table_item_compute_mouse_over):
* e-table-group-container.c: (etgc_compute_mouse_over),
(etgc_class_init):
* e-table-group-leaf.c: (etgl_compute_mouse_over),
(etgl_class_init):
* e-table.h: (e_table_get_mouse_over_cell):
* e-table.c: (e_table_get_mouse_over_cell):
* e-table-group.h: (struct ETableGroupClass),
(e_table_group_compute_mouse_over):
* e-table-group.c: (e_table_group_compute_mouse_over),
(etg_class_init): Be able to calculate mouse-over position
correctly,
relatively to the ETableItem.
svn path=/trunk/; revision=35778
Diffstat (limited to 'widgets/table/e-table.c')
-rw-r--r-- | widgets/table/e-table.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/widgets/table/e-table.c b/widgets/table/e-table.c index 6ee1a93cbd..c260199ecb 100644 --- a/widgets/table/e-table.c +++ b/widgets/table/e-table.c @@ -2414,6 +2414,24 @@ e_table_get_cell_geometry (ETable *table, } /** + * e_table_get_mouse_over_cell: + * Similar to e_table_get_cell_at, only here we recalculate x,y relatively to each item. + **/ +void +e_table_get_mouse_over_cell (ETable *table, int x, int y, int *row, int *col) +{ + g_return_if_fail (table != NULL); + g_return_if_fail (E_IS_TABLE (table)); + + x += GTK_LAYOUT (table->table_canvas)->hadjustment->value; + y += GTK_LAYOUT (table->table_canvas)->vadjustment->value; + + y -= E_TABLE_HEADER_ITEM (table->header_item)->height; + + e_table_group_compute_mouse_over (table->group, x, y, row, col); +} + +/** * e_table_get_selection_model: * @table: The #ETable to query * |