Note: I am putting this out for general discussion on the mailing list.
Peter Juhasz has added an initial framework for setting and tracking
dash patterns as a separate property analogous to point type
or line color. No it doesn't really do much yet, it's just a framework.
Nevertheless there are some basic choices to make and I'm not sure
what people will expect or prefer.
1) Should the default linetype sequence include dash patterns?
This is more or less what it does now in the special case of
"set term ... dash". But I am in favor of making all lines default
to solid unless you specifically set a dash pattern either by
modifying the linetype or by including it in the plot command.
2) Can we just get rid of the extra terminal option [dash|solid]?
I'd say yes. Right now in order to include even a single dashed
line in a plot you have to reset the terminal property to "dash",
which then makes _all_ lines dashed unless you go back and change
all the plot and style commands to make them explicitly solid.
That seems backwards. I would prefer to just leave the terminal
in dash-capable state, but have all lines default to solid unless
a new terminal entry term->dashtype(struct dashtype *dt) has
been called as a result of some explicit user command.
3) Should the structure describing a dash pattern also contain
a dashlength multiplier? Should there be a global "set dashlength"?
Currently most terminals that have a "set term ... dash" mode also
allow "set term ... dashlength <val>". We could get rid of that
along with the {dash|solid} terminal setting, or we could keep it
even if the dash length can also be modified elsewhere.
For example many terminals allow you to set a linewidth multiplier
as part of "set term", but this doesn't stop you from specifying
line width in individual line styles or plot commands.
Or the model could be "set pointsize" which is a multiplier
applied everywhere on top of the current terminal setting
or line type properties.
Ethan
|