diff options
| author | Matthias Melcher <fltk@matthiasm.com> | 2006-05-21 09:41:47 +0000 |
|---|---|---|
| committer | Matthias Melcher <fltk@matthiasm.com> | 2006-05-21 09:41:47 +0000 |
| commit | b9e4886cfe155e1c524a423c12b4efbe35e76972 (patch) | |
| tree | 79bf9dc8e2d9d788e66e780feed053fcd5067a3b /src | |
| parent | 20ad7d23fa75c594748887c8a773c6b476e8fbd6 (diff) | |
Tabs now show the correct tooltip (STR #1282)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5139 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src')
| -rw-r--r-- | src/Fl_Tabs.cxx | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/Fl_Tabs.cxx b/src/Fl_Tabs.cxx index 59c06b4d5..37fcdf7ab 100644 --- a/src/Fl_Tabs.cxx +++ b/src/Fl_Tabs.cxx @@ -35,6 +35,7 @@ #include <FL/Fl.H> #include <FL/Fl_Tabs.H> #include <FL/fl_draw.H> +#include <FL/Fl_Tooltip.H> #define BORDER 2 #define EXTRASPACE 10 @@ -144,6 +145,21 @@ int Fl_Tabs::handle(int event) { } else push(o); if (Fl::visible_focus() && event == FL_RELEASE) Fl::focus(this); return 1; + case FL_MOVE: { + int ret = Fl_Group::handle(event); + Fl_Widget *o = Fl_Tooltip::current(), *n = o; + int H = tab_height(); + if ( (H>=0) && (Fl::event_y()>y()+H) ) + return ret; + else if ( (H<0) && (Fl::event_y() < y()+h()+H) ) + return ret; + else { + n = which(Fl::event_x(), Fl::event_y()); + if (!n) n = this; + } + if (n!=o) + Fl_Tooltip::enter(n); + return ret; } case FL_FOCUS: case FL_UNFOCUS: if (!Fl::visible_focus()) return Fl_Group::handle(event); |
