[GRASSGUI] graphic overlays

Glynn Clements glynn at gclements.plus.com
Sun Mar 25 12:58:19 EDT 2007


Michael Barton wrote:

> > These should all be achievable using d.* commands, and the GUI should
> > provide a convenient interface to those commands (e.g. using the mouse
> > to identify coordinates for placement).
> 
> This is fine as far as it goes. d.grid is fairly complete as is. However,
> d.barscale is very limited in its style of north arrows and scales. And
> there is no way to adjust the size of either.

So improve d.barscale, rather than writing a GUI-only alternative.

> If someone wants to program in
> a bunch of arrow and scale styles, along with ways of setting scale
> parameters and arrow sizes, that's fine. But it may well be much easier to
> to do this in the GUI than in a C module.

No, there's no reason why this can't be implemented in d.barscale.

> I don't advocate getting rid of
> d.barscale. But I don't think the GUI should be limited by its restrictions.

The GUI should be an *interface*, not a new (and interactive-use-only)
graphics architecture.

> d.text is similarly limited. You can do quite a bit more with text in the
> GUI,

Such as?

> and do so more easily (e.g., built in font-setting dialogs that are
> appropriate to whatever platform it's run on).

Providing font-selection dialogs is a reasonable task for the GUI, but
that doesn't mean that the GUI should then take over all text
rendering.

> For all of these, interactive
> placing and moving with a mouse is difficult if we only use the d.* command
> modules. While I can click and send coordinates to d.barscale (like we can
> do in the TclTk GUI), I don't know how I could grab a north arrow with a
> mouse and drag it to reposition it in another locale on the screen using
> d.barscale.

Pan the image which d.barscale generates. Or use the GUI to draw a
preview; just don't offer features which can't then be re-created
using d.barscale.

-- 
Glynn Clements <glynn at gclements.plus.com>




More information about the grass-gui mailing list