[Lazarus] Shift returns empty set in MouseWheel events

Wolf wv99999 at gmail.com
Tue Aug 2 23:16:05 CEST 2016

Can you tell me in which unit I might look for the bug to originate? 
And, once I have fixed it, what procedures should I follow to have the 
patch accepted?

On 02/08/16 19:58, Ondrej Pokorny wrote:
> On 28.07.2016 0:13, Wolf wrote:
>> I enclose a little program where you can see the effects of 
>> pressing/rolling mouse keys. Vojtěch Čihák is correct in saying that 
>> OnMouseDown/Up can be used to distinguish whether the mousewheel is 
>> rolled when pressed or not. But then, why is Shift part of the 
>> procedure's parameters if it has no place in the OnMouseWheel events? 
>> So there is a workaround.
>> By the way, the proper test is *if* ssMiddle *in* Shift *then* . . . 
>> since Shift is a set of values, not an enumerated value, meaning it 
>> can contain more than one value. Press a mouse key and <shift> or 
>> <alt> to see what I mean.
>> What is your view? Is this a bug that ought to be fixed, or is it 
>> not? My vote is:
>> "If Shift in OnMouseWheelxxx events is supposed to return an empty 
>> set, remove the parameter from the handling procedures. If you say 
>> "keep it" then ensure the parameter does carry a value.
> It is a bug. Delphi carries correct values in the Shift paramter in 
> OnMouseWheelXXX events.
> Ondrej

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20160803/5681fd4c/attachment.html>

More information about the Lazarus mailing list