Fixed Fl_Tabs selection border drawing, if tabs are at the bottom

of the widget (part of STR #2480)


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@8054 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Albrecht Schlosser 2010-12-18 15:57:35 +00:00
parent b962fa8bde
commit d54fb3f925
2 changed files with 8 additions and 8 deletions

View File

@ -1,5 +1,7 @@
CHANGES IN FLTK 1.1.11
- Fixed Fl_Tabs selection border drawing, if tabs are at the bottom
of the widget (part of STR #2480)
- Documentation fixes (STR #2410)
- Fixed mouse wheel related crash in GLUT emulation (STR #2381)
- Fixed missing architecture flags in OS X build (STR #2303)

View File

@ -39,6 +39,7 @@
#define BORDER 2
#define EXTRASPACE 10
#define SELECTION_BORDER 5
// return the left edges of each tab (plus a fake left edge for a tab
// past the right-hand one). These position are actually of the left
@ -293,14 +294,11 @@ void Fl_Tabs::draw() {
draw_box(box(), x(), y()+(H>=0?H:0), w(), h()-(H>=0?H:-H), c);
if (selection_color() != c) {
// Draw the top 5 lines of the tab pane in the selection color so
// that the user knows which tab is selected...
if (H >= 0) fl_push_clip(x(), y() + H, w(), 5);
else fl_push_clip(x(), y() + h() - H - 4, w(), 5);
draw_box(box(), x(), y()+(H>=0?H:0), w(), h()-(H>=0?H:-H),
selection_color());
// Draw the top or bottom SELECTION_BORDER lines of the tab pane in the
// selection color so that the user knows which tab is selected...
int clip_y = (H >= 0) ? y() + H : y() + h() + H - SELECTION_BORDER;
fl_push_clip(x(), clip_y, w(), SELECTION_BORDER);
draw_box(box(), x(), clip_y, w(), SELECTION_BORDER, selection_color());
fl_pop_clip();
}
if (v) draw_child(*v);