> No, it's a Delphi compatibility. I tested CM_MOUSEWHEEL, the equivalent > message of LM_MOUSEWHEEL. Under Delphi XPos and YPos fields returns > screen coordinates. > Furthermore, OnMouseWheel MousePos also is at screen coordinates. > > Luiz
I assume you mean *in*compatibility :-). Anyway i'm not sure if it is so important to bring this in screen coordinates (what is the behavior in other toolkits btw? GTK reports it in screen or client coordinates?). Personally i see this as a Delphi bug (even if its actually Windows who report it in screen coords) and i would suggest it to be in client coordinates so the behavior is consistent for all mouse events and put a note in the wiki page about converting Delphi code to Lazarus. So the options are: 1. Keep the patch as-is. Report it in client coords, be consistent with other mouse events and introduce a small Delphi incompatibility. I prefer this. 2. Modify LCL so that it brings the client coords to screen after the control is found for a LM_MOUSEWHEEL message so that is Delphi compatible (note: the screen-to-client convertion i made in WM_MOUSEWHEEL handler is still needed for LCL to figure out the correct control to send the message - unless, of course, LCL is further modified to accept screen coords from Win32 and client coords from other toolkits). Kostas _______________________________________________ Lazarus mailing list [email protected] http://www.lazarus.freepascal.org/mailman/listinfo/lazarus
