|
From: Joao C. <jc...@fe...> - 2002-11-09 19:26:28
|
On Saturday 09 November 2002 07:54, Maurice LeBrun wrote:
> Joao Cardoso writes:
> > On Wednesday 06 November 2002 06:17, Maurice LeBrun wrote:
> > > Alan W. Irwin writes:
> > > > On Tue, 5 Nov 2002, [iso-8859-1] Jo=E3o Cardoso wrote:
> > > > > What do you think of this problem? Is there a "cure" that doe=
s
> > > > > not influence other users?
> > > >
> > > > How about define plenv0 which does everything but the page adva=
nce?
> > > > Then define plenv as the combination of pladv and plenv0.
> > > >
> > > > I know this adds one more piece of public API that we have to
> > > > propagate to all the language interfaces *and* document, but th=
at
> > > > is pretty straightforward, and we currently have so many variat=
ions
> > > > on our startup commands (think of all the plstart variations), =
and
> > > > our advance page commands, that adding another convenient plenv
> > > > variation isn't that big a deal IMO.
> > > >
> > > > Geoffrey and Maurice, is such a solution OK with you?
> > >
> > > Sure. I've never been completely happy with the behavior of plenv=
in
> > > this regard either.
> >
> > OK, I will work on it soon.
> >
> > Do you think that plenv0() should clear the page? I think it should!
>
> Seems reasonable. There may be some cases where the user doesn't want =
it
> cleared but these are probably rare and not worth API support.
>
> Sigh.. I must admit to some dislike of the proliferation of API calls. =
I
I agree!=20
> would greatly prefer we handle these kinds of cases through some sort o=
f
> option-setting procedure. E.g. instead of calling plenv0(...), one wou=
ld
> do:
>
> plsopt("plenv_advance", "0");
> plenv(...)
>
> Then you never need to expand the API (complete with the myriad of lang=
uage
> bindings needed), just add a new option.
Good solution. Now is a bit too late, as I already implemented plenv0().
However, I think that if plsopt("plenv_advance", "0") becomes implemented=
=20
before the next release, then we can drop plenv0().
No user can complain by a feature introduced and removed but that never m=
ade=20
part of a release.=20
>
> I've actually implemented such a scheme for my own libraries, twice now=
,
> once in Fortran and more recently in iTcl. Because there are times whe=
n
> you want the option to be set forever, I'd use plsdopt(...) to set an
> option permanently (default); plsopt would only take effect until the n=
ext
> new plot. That way you could avoid non-local effects. It works great.
So lets wait for plsdopt() also. Your ToDo list?
Joao
> Anyway, I've got no time for any of this right now, so for now we're st=
uck
> with the usual addition to the API.
>
> > As plclear() is not currently working (no driver but the gnome one
> > supports it) I will also change it, issuing a solid fill with the
> > background color when the driver does not support clear.
>
> Looks good.
|