[fpc-pascal] lnet for TCP daemon

Michael Schnell mschnell at lumino.de
Wed Sep 18 10:25:43 CEST 2013


On 09/18/2013 10:05 AM, Mattias Gaertner wrote:
> On Wed, 18 Sep 2013 09:32:54 +0200
> Michael Schnell <mschnell at lumino.de> wrote:
>
>> [...]
>>   Instead I was told that I should look at the LCL
>> source code and that "in Windows, the Event queuing mechanism is done by
>> Windows itself  and in Linux it is done by a queue in the LCL that is
>> managed by the underlying Widget Set".
> This is true for PostMessage.

(and supposedly for Application.QueueAsyncCall)

Of course I do know this and this is what makes it impossible to port 
the Delphi applications, my colleagues did, to a non-GUI environment.

The new idea now is, that implementing PostMessage (and supposedly 
Application.QueueAsyncCall) might be done using the existing RTL Event 
queue (which only recently came to my full awareness), instead of 
creating (or in Windows  attaching to) an additional queuing mechanism.

> There are many ways to implement timers and queues. But if you want the
> whole event system of the LCL then you need do more.

What non-GUI events - additionally to the events I mentioned - would be 
needed for "the whole event system of the LCL" ?

> Have you ever asked
> how to program a timer in a console application on this list?
Of course I do know that this is doable (and I already did it several 
times). But (as I mentioned multiple times) I don't need this for any 
concrete application, but for creating an "SDK" that allows for porting 
existing Delphi applications in a way as easy to use as possible. Thus 
an "Application" and "Postmessage" (thus an LCL Widget Type 
implementation) is necessary.

-Michael



More information about the fpc-pascal mailing list