[comp.windows.news] Mouse event coordinates getting screwed up...

sai@SUN.COM (Steve Isaac) (10/27/87)

>I had some problems with screwed up coordinates comeing off a canvas in an
>event process.  I solved it by executing a "setcanvas" EVERY time the
>event process woke up.  It seems that a given process will see the
>"old" graphics state associated w/ a canvas until the process has done
>another 'setcanvas'. 

The X|YLocation fields in an event are transformed to the *current canvas'
coordinate system*. So, whatever the current canvas is set to when your event 
handler accesses the X|YLocation fields is what determines how these
suckers are reported back. 

For instance, if you want to have the coordinates be transformed by the 
canvas that the events occurred in, do the following:

	awaitevent
        begin
           Canvas setcanvas
           XLocation ...
	   ...
        end

This is documented in the NeWS manual under the description
of XLocation in the PostScript Type Extensions section. It doesn't
really jump out at you, however...