Ryan Lovelett wrote:
> Well not all is well.  I'm back to my head scratching.
> [..]  When I throw it over onto Windows though, back to the
> same crazy only redrawing when the mouse is moving issue.

        This is a long thread, so I may have missed it, but what
        mechanism is being used to break out of the FLTK Fl::run() loop?

        Normally some external event like either mouse/keyboard/window event
        is needed to break out of the run() loop, or via an FLTK timer,
        or Fl::add_fd() [which only works on unix].

        If the latter is the issue, win32 does not support select()
        on file descriptors the way unix does.

        Is your video thing really using 'file descriptors' under windows?
        Or are they more likely CreateFile()-style 'handles', which are
        not file descriptors, and not compatible with add_fd() and select().

        Win32 uses a different mechanism similar to select for 'handles'..
        I think *WaitForObject*() or some such. Thing is, I don't think that
        can be tied into the FLTK event mechanism cleanly (or something),
        so I think that's why it's not currently part of the FLTK API.

        (This should maybe be investigated by the FLTK core folks; I would
        think there would be a way to implement something like the add_fd()
        behavior under windows for win32 handles, and somehow tying that
        into the event delivery mechanism, so that 'events' on the handles
        can break the event loop and invoke the 'handle' callbacks)

        Meanwhile, you might consider crafting your own Fl::run() loop
        where you poll for the thing you're waiting for, eg:

                while ( 1 ) {
                    Fl::wait(0.05);
                    // Do your polling here -- should not block
                }

_______________________________________________
fltk mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk

Reply via email to