[Lazarus] Purpose of MouseCapture?

Paul Ishenin webpirat at mail.ru
Sun Jan 9 06:14:23 CET 2011


08.01.2011 22:16, Hans-Peter Diettrich wrote:
> Hans-Peter Diettrich schrieb:
>> What's the purpose of setting the mouse capture in the LCL?
>
> While nobody seems to know, I found that TSpltter uses mouse capture.
Sorry, I did not notice the initial mail.
>
> So the DragManager simply should ignore CaptureChanged.
The purpose of mouse capture is to be sure that you are recieving all 
mouse events until you want to stop mouse capture or external event 
stops your mouse capture. Such external event can be for example 
switching task or another window require a mouse capture.

When you start a drag operator you must always request the capture. In 
other case you cannot track mouse events outside the dragged control. 
DragManager must handle the CaptureChanged event in order to understand 
that capture it has was requested by other control and therefore it must 
stop the drag operation.

Best regards,
Paul Ishenin




More information about the Lazarus mailing list