diff options
author | Iain Holmes <iain@helixcode.com> | 2000-09-16 05:42:38 +0800 |
---|---|---|
committer | Iain Holmes <iain@src.gnome.org> | 2000-09-16 05:42:38 +0800 |
commit | 6e4ae07fbfce5845d48e8ba1992f64376a885ac4 (patch) | |
tree | cdf00c9707a7de41e34f4b3ba48ea695224ca0eb /widgets/e-table/e-cell-tree.c | |
parent | ce3c18afd96cc9fb91fca4dfabc440206aa2f99e (diff) | |
download | gsoc2013-evolution-6e4ae07fbfce5845d48e8ba1992f64376a885ac4.tar gsoc2013-evolution-6e4ae07fbfce5845d48e8ba1992f64376a885ac4.tar.gz gsoc2013-evolution-6e4ae07fbfce5845d48e8ba1992f64376a885ac4.tar.bz2 gsoc2013-evolution-6e4ae07fbfce5845d48e8ba1992f64376a885ac4.tar.lz gsoc2013-evolution-6e4ae07fbfce5845d48e8ba1992f64376a885ac4.tar.xz gsoc2013-evolution-6e4ae07fbfce5845d48e8ba1992f64376a885ac4.tar.zst gsoc2013-evolution-6e4ae07fbfce5845d48e8ba1992f64376a885ac4.zip |
If the cursor is inside the subcell, call the show_tooltip on it.
2000-09-15 Iain Holmes <iain@helixcode.com>
* e-cell-tree.c (ect_show_tooltip): If the cursor is inside
the subcell, call the show_tooltip on it.
* e-table-header-item.c (draw_button): Draw the arrow first,
then take it's size into account when calculating how to draw
the text. Use ellipsis if the text it too long.
2000-09-15 Iain Holmes <iain@helixcode.com>
* e-table-header-item.c (draw_button): Fix a crash by passing
the canvas widget to gtk_paint_box. Reported by Radek.
2000-09-14 Iain Holmes <iain@helixcode.com>
* e-table-header-item.c (set_cursor): The column isn't resizable
if it is the last, or if all other columns after it are not
resizable.
* e-cell-text.c (ect_max_width): Correctly calculate the width
of the line of text. Unbuild the current cell and unref the lines
as well.
(build_current_cell): Initialize cell->style to 0;
2000-09-14 Iain Holmes <iain@helixcode.com>
* e-table-item.c: Start timers for the tooltip to appear, on motion
events.
* e-cell.[ch]: Add a new show_tooltip method.
* e-cell-text.c (ect_show_tooltip): Show the tooltip.
svn path=/trunk/; revision=5466
Diffstat (limited to 'widgets/e-table/e-cell-tree.c')
-rw-r--r-- | widgets/e-table/e-cell-tree.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/widgets/e-table/e-cell-tree.c b/widgets/e-table/e-cell-tree.c index 48ae9f4af1..5a055fce0e 100644 --- a/widgets/e-table/e-cell-tree.c +++ b/widgets/e-table/e-cell-tree.c @@ -411,7 +411,24 @@ ect_max_width (ECellView *ecell_view, int model_col, int view_col) return max_width; } - +/* + * ECellView::show_tooltip method + */ +static void +ect_show_tooltip (ECellView *ecell_view, int model_col, int view_col, int row, + ETableTooltip *tooltip) +{ + ECellTreeView *tree_view = (ECellTreeView *) ecell_view; + ETreeModel *tree_model = e_cell_tree_get_tree_model (ecell_view->e_table_model, row); + ETreePath *node = e_cell_tree_get_node (tree_model, row); + int offset = offset_of_node (tree_model, node); + + /* if the tooltip happened in the subcell, then handle it */ + + if (tooltip->cx > offset) { + e_cell_show_tooltip (tree_view->subcell_view, model_col, view_col, row, tooltip); + } +} /* * ECellView::enter_edit method @@ -572,6 +589,7 @@ e_cell_tree_class_init (GtkObjectClass *object_class) ecc->print = ect_print; ecc->print_height = ect_print_height; ecc->max_width = ect_max_width; + ecc->show_tooltip = ect_show_tooltip; parent_class = gtk_type_class (PARENT_TYPE); } |