I actually posted this last night, but for some reason, it wasn't here when I woke up, so reposting
So, along the lines of the actual mouse location, I made up this little demo
(YouTube) for myself to try and understand exactly what is going on better, unfortunately in some ways, the results are confusing me more.
In the picture below -
I expected the mouseLoc and localLoc of the mouse to only report when the mouse was within the borders of the application, and sure enough, they do only change when you are within the card area.
However, I did expect the screenMouseLoc and globalLoc of the mouse to change no matter where the mouse was on the screen. To my surprise, this isn't the case, whether the stack has focus or not.
What I find confusing is why this isn't the case? I'm sure this must be reported somewhere, but I wasn't able to find it in the pending messages (although that could be a lack of understanding on my part about the pending messages, which I am also looking into).
So what am I missing here? The code is all simple and very direct (I thought) -
Code: Select all
put the mouseLoc into field 1
put the screenMouseLoc into field 2
put the localLoc of the mouseLoc into field 5
put the globalLoc of the mouseLoc into field 6
put the target into field 7
put the pendingMessages into tmpMsg
repeat for each line x in tmpMsg
put item 3 of x & cr before field "msgs"
put the rect of this stack into field 3
put the effective rect of this stack into field 4