[GRASS5] XDRIVER and hour glass cursor while drawing?

Glynn Clements glynn.clements at virgin.net
Fri May 2 00:25:50 EDT 2003


Markus Neteler wrote:

> > > But: while drawing one cannot resize the monitor. For this the draw
> > > event is caught. Maybe it could be also used to change the cursor
> > > (as it is exactly the same situation)?
> > 
> > That's basically option b). The monitor cannot be resized while a
> > client is connected; it doesn't matter if it's drawing, waiting on
> > R_get_location_with_*, or just doing nothing.
> > 
> > The main reason for not taking that route is that it might result in
> > long-running programs displaying the hourglass cursor inappropriately. 
> > OTOH, you might be willing to live with that.
> 
> You mean live with the latter?

I mean live with it displaying the hourglass being displayed when it
shouldn't be.

> OK, maybe I drop that suggestions, it seems to be too complicated.

Implementation is non-trivial, but not excessive. The problem is
whether the end result will actually be desirable.

The key issue is that the driver doesn't get to see the "big picture".

It knows when a client connects and disconnects, and it knows when
it's actually performing a drawing command (drawing one row of a
raster, drawing a single line, drawing a polyline etc).

But it doesn't know about larger operations (e.g. drawing an entire
map), other than by assuming that they last for the lifetime of the
client, minus any time spent in the R_get_location_with_* handlers. 
This is a reasonable assumption for simple clients (d.rast, d.vect
etc), but maybe not for more complex ones.

-- 
Glynn Clements <glynn.clements at virgin.net>




More information about the grass-dev mailing list