On 08/19/2013 11:28 AM, Michael Van Canneyt wrote:
I am having a déjà vu :-)
Yep.
But at that time I (maybe completely erroneously) decided to do this as
an LCL Widget Type as I had extensions in mind that would fit just there
(such as stuff based on "ExtPascal" or "mse-ifi").
If memory serves me well, MSEGUI contains such an event loop
descendent using a custom made mechanism.
Of course. In fact I understand that any LCL Widget Type does this, too.
There is nothing magical about such an application. Basically, it
watches one or more
file descriptors (object handles in windows-speak) for changes, using
a timeout,
and triggers some event handler when something happens. It calls
checksynchronize from time to time. That's it.
It should not take more than an hour to implement.
In fact I do know this. If I would have a current practical project to
do, I of course would do this right away, but (as always) I am doing
just researching and groundwork for future projects.
So - if I would start doing anything on that behalf - I would do
something with as wide reach as possible: providing (at least) all of
TTimer, TThread.Synchronize, TThread,Queue, and
Application.QueuAsnycCall, as well for Linux and for Windows in a "ready
to use" way (including documentation).
In fact the cause why this becomes more prominent for me right now is
that since some time "TThread.Queue" is provided in the rtl (in fact on
my request and happily implemented by very knowledgeable supporters like
yourself) and thus I feel that in a similar way TTimer and
Application.QueuAsnycCall would be doable.
-Michael (known as the weird mind)
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel