On Wed, 11 Jun 2008 11:34:30 +0300 "Kostas Michalopoulos" <[EMAIL PROTECTED]> wrote:
> > 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). Does someone know, if the newer Delphi flavors still have this inconsistency? Even Delphi .net? Mattias _______________________________________________ Lazarus mailing list [email protected] http://www.lazarus.freepascal.org/mailman/listinfo/lazarus
