Optimize redraw of focus stuff in radio/check buttons and tabs.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2226 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Michael R Sweet 2002-05-15 16:50:27 +00:00
parent 786e3ed0a8
commit e217ac0564
3 changed files with 16 additions and 7 deletions

View File

@ -1,5 +1,7 @@
CHANGES IN FLTK 1.1.0
- Optimized the redrawing of tabs and radio/check
buttons when the keyboard focus changes.
- More tooltip fixes.
- DND text operations would loop under X11.

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_Button.cxx,v 1.4.2.6.2.12 2002/03/25 21:08:41 easysw Exp $"
// "$Id: Fl_Button.cxx,v 1.4.2.6.2.13 2002/05/15 16:50:27 easysw Exp $"
//
// Button widget for the Fast Light Tool Kit (FLTK).
//
@ -116,8 +116,8 @@ int Fl_Button::handle(int event) {
Fl_Widget *p;
for (p = parent(); p; p = p->parent())
if (p->box() != FL_NO_BOX) break;
if (p) p->redraw();
else window()->redraw();
if (p) p->damage(FL_DAMAGE_EXPOSE, x(), y(), w() + 1, h() + 1);
else window()->damage(FL_DAMAGE_EXPOSE, x(), y(), w() + 1, h() + 1);
}
else redraw();
return 1;
@ -149,5 +149,5 @@ Fl_Button::Fl_Button(int x,int y,int w,int h, const char *l)
}
//
// End of "$Id: Fl_Button.cxx,v 1.4.2.6.2.12 2002/03/25 21:08:41 easysw Exp $".
// End of "$Id: Fl_Button.cxx,v 1.4.2.6.2.13 2002/05/15 16:50:27 easysw Exp $".
//

View File

@ -1,5 +1,5 @@
//
// "$Id: Fl_Tabs.cxx,v 1.6.2.10.2.9 2002/01/30 13:38:15 easysw Exp $"
// "$Id: Fl_Tabs.cxx,v 1.6.2.10.2.10 2002/05/15 16:50:27 easysw Exp $"
//
// Tab widget for the Fast Light Tool Kit (FLTK).
//
@ -140,7 +140,14 @@ int Fl_Tabs::handle(int event) {
case FL_FOCUS:
case FL_UNFOCUS:
if (Fl::visible_focus()) {
redraw();
int H = tab_height();
if (H >= 0) {
H += Fl::box_dy(box());
damage(FL_DAMAGE_EXPOSE, x(), y(), w(), H);
} else {
H = Fl::box_dy(box()) - H;
damage(FL_DAMAGE_EXPOSE, x(), y() + h() - H, w(), H);
}
return 1;
} else return 0;
case FL_KEYBOARD:
@ -293,5 +300,5 @@ Fl_Tabs::Fl_Tabs(int X,int Y,int W, int H, const char *l) :
}
//
// End of "$Id: Fl_Tabs.cxx,v 1.6.2.10.2.9 2002/01/30 13:38:15 easysw Exp $".
// End of "$Id: Fl_Tabs.cxx,v 1.6.2.10.2.10 2002/05/15 16:50:27 easysw Exp $".
//