On 04/24/2013 12:34 PM, Michael Van Canneyt wrote:
ยด
What are you waiting for ?

All you need to do is implement an event loop. All the rest is there.


As I said, I already did try this some years ago Trying both to implement a new event queue mechanism (stolen from mse), and - better idea - reusing the event queue code from the "GTK" WidgetType. But I gave up after some weeks (not fulltime, of course) due to the enormous complexity of the Lazarus units involved.

In fact I did only take a look at the Lazarus units, not the RTL, at that time not knowing that it would need to be revised, too.

A major political problem is that - to do it right - all WidgetType units that are dealing with the EventQueue would need to be modified (e. g. using the new RTL interface and moving QueueAsncCall out), and of course the basic work needs to be done in the RTL (e. g providing the "SignalMainThread" interface with an EventQueue that is to be used for non-GUI events (and be merged with the GUI events from the LCL at the queue input (GTK and many others) or the queue output (Windows) and moving QueueAsncCall in).

This would need a huge testing effort to guarantee that existing code would not be broken.

All this can't be done by a one-man team of volunteers.

As always, I feel that before trying any start on this, a rather commonly agreed concept would need to be decided upon.

-Michael

--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to