From 5f0a7fea0d679915459fb28a98c82d61cb79b673 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Mon, 16 Feb 2009 11:00:23 +0000 Subject: ** Fix for bug #550114 2009-02-16 Milan Crha ** Fix for bug #550114 * widgets/table/e-table-group.h: * widgets/table/e-table-group.c: * widgets/table/e-table-group-container.c: * widgets/table/e-table-group-leaf.c: Replaced 'compute_mouse_over' with 'get_mouse_over', now works with cached values 'motion_row', 'motion_col'. * widgets/table/e-table.c: (e_table_get_mouse_over_cell): Mouse position not required anymore, remove it too then. * calendar/gui/e-calendar-table.h: (ec_query_tooltip): * calendar/gui/e-calendar-table.c: (ec_query_tooltip): Offer it to others too. * calendar/gui/e-calendar-table.c: (query_tooltip_cb): Use above funtion. Show proper tooltip in table with grouping columns. * calendar/gui/e-memo-table.c: (query_tooltip_cb), (e_memo_table_init): Show tooltips in memo view too. svn path=/trunk/; revision=37275 --- widgets/table/e-table-group-leaf.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'widgets/table/e-table-group-leaf.c') diff --git a/widgets/table/e-table-group-leaf.c b/widgets/table/e-table-group-leaf.c index 95dc312b0a..dc4c8ba11e 100644 --- a/widgets/table/e-table-group-leaf.c +++ b/widgets/table/e-table-group-leaf.c @@ -408,11 +408,16 @@ etgl_compute_location (ETableGroup *etg, int *x, int *y, int *row, int *col) } static void -etgl_compute_mouse_over (ETableGroup *etg, int x, int y, int *row, int *col) +etgl_get_mouse_over (ETableGroup *etg, int *row, int *col) { ETableGroupLeaf *etgl = E_TABLE_GROUP_LEAF (etg); - e_table_item_compute_mouse_over (etgl->item, x, y, row, col); + if (etgl->item && etgl->item->motion_row > -1 && etgl->item->motion_col > -1) { + if (row) + *row = etgl->item->motion_row; + if (col) + *col = etgl->item->motion_col; + } } static void @@ -573,7 +578,7 @@ etgl_class_init (ETableGroupLeafClass *klass) e_group_class->get_focus_column = etgl_get_focus_column; e_group_class->get_printable = etgl_get_printable; e_group_class->compute_location = etgl_compute_location; - e_group_class->compute_mouse_over = etgl_compute_mouse_over; + e_group_class->get_mouse_over = etgl_get_mouse_over; e_group_class->get_cell_geometry = etgl_get_cell_geometry; g_object_class_install_property (object_class, PROP_TABLE_ALTERNATING_ROW_COLORS, -- cgit