Fixed adding an idle handler during a draw() call (STR #1950)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6473 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
parent
f3180baff0
commit
0490b30383
2
CHANGES
2
CHANGES
@ -1,5 +1,7 @@
|
|||||||
CHANGES IN FLTK 1.3.0
|
CHANGES IN FLTK 1.3.0
|
||||||
|
|
||||||
|
- Fixed adding an idle handler during
|
||||||
|
a draw() call (STR #1950)
|
||||||
- Fl_Group::clip_children() is now public (STR #2017)
|
- Fl_Group::clip_children() is now public (STR #2017)
|
||||||
- Added clarification to Fl_GL_Window mode
|
- Added clarification to Fl_GL_Window mode
|
||||||
function (STR #1945)
|
function (STR #1945)
|
||||||
|
@ -381,6 +381,8 @@ double Fl::wait(double time_to_wait) {
|
|||||||
if (idle) time_to_wait = 0.0;
|
if (idle) time_to_wait = 0.0;
|
||||||
}
|
}
|
||||||
flush();
|
flush();
|
||||||
|
if (idle && !in_idle) // 'idle' may have been set within flush()
|
||||||
|
time_to_wait = 0.0;
|
||||||
return fl_wait(time_to_wait);
|
return fl_wait(time_to_wait);
|
||||||
|
|
||||||
#else
|
#else
|
||||||
@ -427,6 +429,8 @@ double Fl::wait(double time_to_wait) {
|
|||||||
} else {
|
} else {
|
||||||
// do flush first so that user sees the display:
|
// do flush first so that user sees the display:
|
||||||
flush();
|
flush();
|
||||||
|
if (idle && !in_idle) // 'idle' may have been set within flush()
|
||||||
|
time_to_wait = 0.0;
|
||||||
return fl_wait(time_to_wait);
|
return fl_wait(time_to_wait);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -33,12 +33,12 @@
|
|||||||
Drawing_Window mbrot;
|
Drawing_Window mbrot;
|
||||||
Drawing_Window jbrot;
|
Drawing_Window jbrot;
|
||||||
|
|
||||||
void idle() {
|
void idle(void*) {
|
||||||
if (!mbrot.d->idle() && !(jbrot.d && jbrot.d->idle())) Fl::set_idle(0);
|
if (!mbrot.d->idle() && !(jbrot.d && jbrot.d->idle())) Fl::remove_idle(idle);
|
||||||
}
|
}
|
||||||
|
|
||||||
void set_idle() {
|
void set_idle() {
|
||||||
Fl::set_idle(idle);
|
Fl::add_idle(idle);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void window_callback(Fl_Widget*, void*) {exit(0);}
|
static void window_callback(Fl_Widget*, void*) {exit(0);}
|
||||||
|
Loading…
Reference in New Issue
Block a user