Changed russian description a little bit
[gnuplot] / ChangeLog
1 2009-09-03  Ethan A Merritt  <merritt@u.washington.edu>
2
3         Release 4.2.6
4
5 2009-09-01  Ethan A Merritt  <merritt@u.washington.edu>
6
7         * src/set.c (set_tic_prop):  When xtics (e.g.) were unset, then a new
8         command 'set xtics ...' could lose track of the tic properties being set.
9         Bug #2848433
10
11 2009-08-29  Ethan A Merritt  <merritt@u.washington.edu>
12
13         * configure.in: Remove the EXPERIMENTAL flag from the x11 terminal
14         binary polygon option.
15
16         * share/LaTeX/Makefile.am:  Comment out an uninstall command because
17         it breaks the build script.
18
19         * NEWS PATCHLEVEL configure.in docs/titlepag.tex src/version.c:
20         Update in preparation for release 4.2.6
21
22 2009-08-28  Ethan A Merritt  <merritt@u.washington.edu>
23
24         * configure.in: Remove the EXPERIMENTAL flag from the wxt terminal
25
26 2009-08-13  anonymous 
27
28         * term/tek.trm: Add support for xterm tektronix emulation
29
30 2009-07-21  Ethan A Merritt  <merritt@u.washington.edu>
31
32         * src/plot2d.c (store2d_point): If the plot uses palette colors taken
33         from the Z coordinate, then also use Z to auto-scale cbrange.
34         Bug #2133407
35
36 2009-07-16  Ethan A Merritt  <merritt@u.washington.edu>
37
38         * src/save.c: The "set view" command was incorrectly saved twice.
39         Bug #2822433
40
41 2009-07-04  Thomas Sefzick <thse@users.sourceforge.net>
42
43         * graphics.c (plot_boxes):  Minimal fix for off-by-one pixel bug in
44         width of boxes with palette or rgb color.  Complete fix is in 4.4.
45         Bug #2804784
46
47 2009-07-01  Mojca Miklavec  <mojca.miklavec.lists@gmail.com>
48
49         * term/aquaterm.c: The "size xx,yy" option should have a comma between
50         xx and yy for consistency with other terminals.
51
52 2009-06-18  Ethan A Merritt <merritt@u.washington.edu>
53
54         * src/pm3d.c (set_plot_with_palette is_plot_with_colorbox):
55         Fix an accounting error that caused unnecessary loading of a color
56         palette into plots that do not need one.
57         Backport of V4.4 patch from 2009-01-02
58
59 2009-06-04  Ethan A Merritt  <merritt@u.washington.edu>
60
61         * src/mouse.c:  The following test script triggered multiple problems.
62                         "set multi; set x2data time; set x2tics; unset multi;"
63         - initialize mouse_x, mouse_y to -1;  test before using
64         - initialize mouse values with VERYLARGE (replace magic number 1e38)
65         - xDateTimeFormat: do not attempt to convert VERYLARGE to a date
66         
67         * time.c (ggmtime): Counting back from 1.e38 by one year at a time takes
68         forever. Limit the range of acceptable time values to +/- 10^12 seconds,
69         which gives a range of 33688 years forward or back.
70         * axis.c (gen_tics): Skip calculation of 0-length minor ticks
71
72         Bugfix.
73
74 2009-05-30  Thomas Sefzick <thse@users.sourceforge.net>
75
76         * src/graph3d.c (do_3dplot):  Adjust position of 3D plot with
77         'set view equal xyz' so that the center of rotation is at the center
78         of the screen.
79         Bugfix #2797226
80
81 2009-05-28  Ethan A Merritt  <merritt@u.washington.edu>
82
83         * term/x11.trm: Silence an escaped debug fprintf.  Bugfix.
84
85 2009-05-11  Ethan A Merritt  <merritt@u.washington.edu>
86
87         * term/pslatex.trm: Broken format specifier.
88         Bug #2750114
89
90 2009-05-05  Peter Gasparovic  (buteo@users.sourceforge.net)
91
92         * term/PostScript/cp1250.ps:  Fix code points for Lcaron, lcaron.
93         Bug #2785002
94
95 2009-05-05  Thomas Sefzick (thse@users.sourceforge.net)
96
97         * term/pslatex.trm: 'set epslatex ... blacktext' was producing white
98         text for tics labels, axis labels, key labels, but black title text.
99         Bug #2750114
100
101 2009-04-09  Ethan A Merritt  <merritt@u.washington.edu>
102
103         * src/gplt_x11.c:  Filled boxes and filled polygons have different
104         behaviour when the fillstyle is FS_DEFAULT, but the x11 driver was
105         not making this distinction. (caused by patch of 2008-06-22).
106
107 2009-03-29  Ethan A Merritt  <merritt@u.washington.edu>
108
109         Release 4.2.5
110
111 2009-03-28  Ethan A Merritt  <merritt@u.washington.edu>
112
113         * src/graphics.c (boundary):  Reserve room for user tic labels even if
114         the format for autoticks is "".
115
116         * src/set.c (load_tics) src/save.c (save_tics):  Do not save or restore
117         axis tic labels that were read from a data file.
118         Bug #2711994
119
120 2009-03-26  Ethan A Merritt  <merritt@u.washington.edu>
121
122         * src/graphics.c (boundary): Fix bug that caused the left/right margin
123         offsets to be applied twice, leading to too-wide margins.
124         Bug #2714997
125
126 2009-03-26  Petr Mikulik  <mikulik@physics.muni.cz>
127
128         * src/history.c (write_history_list): Indexing istart from 1 otherwise
129         "history" command (without arguments) does not work.
130
131 2009-03-24  Ethan A Merritt  <merritt@u.washington.edu>
132
133         * src/datafile.c:  Fix breakage if configured --disable-binary-data-file
134         (Lucas Hart)
135
136 2009-03-24  Petr Mikulik  <mikulik@physics.muni.cz>
137
138         * src/pm3d.c (pm3d_plot): The quadrangles are only prepared but not
139         drawn by this routine in pm3d depthorder mode, thus set_color() should
140         not be called.
141
142 2009-03-23  Ethan A Merritt  <merritt@u.washington.edu>
143
144         * src/win/wgraph.c (Wnd_exec_event): Clean the 2nd parameter sent to
145         gp_exec_event after a keypress. This should fix the problem leading to
146         "protocol error" messages.
147
148 2009-03-18  Ethan A Merritt  <merritt@u.washington.edu>
149
150         * src/wxterminal/gp_cairo.c (gp_cairo_draw_text): Determine the vertical
151         placement of text based on the average value found when the font was
152         selected, rather than on the specific height of this text fragment.
153         Otherwise successive fragments with different height produce an uneven
154         baseline.  Bug #2661664
155
156         * src/axis.c (make_tics): Trap case where there were insufficient data
157         to determine axis range. E.g. "set view map; set pm3d; splot {0,1};".
158
159 2009-03-15  Ethan A Merritt  <merritt@u.washington.edu>
160
161         Increment patchlevel, version strings, documentation dates, and NEWS in
162         preparation for release of version 4.2.5
163
164 2009-03-13  Ethan A Merritt  <merritt@u.washington.edu>
165
166         * demo/datastrings.dem demo/histograms.dem demo/histograms:
167         Switch demos to use the documented syntax "... title columnhead(2)"
168         rather than the deprecated "... title 2"
169
170 2009-03-05  Ethan A Merritt  <merritt@u.washington.edu>
171
172         * src/graphics.c: Fix assignment of fill patterns to plot boxes and key
173         for columnstacked histograms.  Bug #2664732
174
175 2009-03-04  Ethan A Merritt  <merritt@u.washington.edu>
176
177         * src/graphics.c (find_maxl_keys do_plot): The first entry in a list of
178         labels is a placeholder for style information.  Do not reserve space for
179         this entry in the key of a columnstacked histogram plot.  Bug #2664723
180
181 2009-03-02  Ethan A Merritt  <merritt@u.washington.edu>
182
183         * term/hpgl.trm term/tgif.trm term/gd.trm:
184         Fix illegal memory access violations found by valgrind.
185
186 2009-03-02  Petr Mikulik  <mikulik@physics.muni.cz>
187
188         * term/post.trm (PS_encode_image print_five_operand_image): Fix
189         related to the patch of post.trm from 2009-01-26: images drawn
190         "with rgbimage" must always be drawn as rgb colour images.
191         SF Patch #2613919: postscript outputs colour RGB as palette image
192
193 2009-02-25  Ethan A Merritt  <merritt@u.washington.edu>
194
195         * term/gd.trm (PNG_text_angle): Force angle to fall in the range
196         [-pi/2 : pi/2].  Reported to avoid problems in some versions of libgd.
197
198 2009-02-16  Ethan A Merritt  <merritt@u.washington.edu>
199
200         * docs/titlepag.tex docs/gnuplot.doc term/cgm.trm:
201         Remove duplicate keyword entries. Put version number on title page.
202
203 2009-02-14  Ethan A Merritt  <merritt@u.washington.edu>
204
205         * demo/all.dem demo/heatmaps.dem:  Add heat maps to demo set.
206
207 2009-02-11  Petr Mikulik  <mikulik@physics.muni.cz>
208
209         * config/makefile.mgw: Use $(CC) instead of gcc to compile pgnuplot.
210
211 2009-02-07  Ethan A Merritt  <merritt@u.washington.edu>
212
213         * term/x11.trm (X11_options): Call term->init() rather than X11_init(),
214         since the options routine is shared by x11 and xlib drivers.
215
216 2009-02-05  Ethan A Merritt  <merritt@u.washington.edu>
217
218         * src/util.c (type_udv) src/eval.c (add_udv_by_name) src/fit.c
219         src/plot2d.c: Prevent strange behaviour due to uninitialized field
220         udv_type in a udv entry that has been created but not yet defined.
221         Bug #2556225
222
223         * src/graph3d.c (draw_3d_graphbox): Allow Z axis label in 3D plots
224         to be rotated.
225
226 2009-02-02  Petr Mikulik  <mikulik@physics.muni.cz>
227
228         * src/mouse.c (lookup_key): Use exact match, otherwise F10, F11, or F12
229         hotkeys bind to F1.
230
231 2009-01-28  Petr Mikulik  <mikulik@physics.muni.cz>
232
233         * src/breaders.c (edf_filetype_function): Fix for long headers.
234
235 2009-01-27  Petr Mikulik  <mikulik@physics.muni.cz>
236
237         *  src/pm3d.c (pm3d_plot): Fix for "set pm3d depthorder" ignoring
238         "set pm3d interpolate".
239
240 2009-01-26  Petr Mikulik  <mikulik@physics.muni.cz>
241
242         * term/post.trm (PS_make_header PS_image): Since the beginning of pm3d,
243         the "/Color def" switched between gray and colour map. Choosing "false"
244         for "Color", the gray map was always selected regardless the use of a
245         custom palette. This led to ambiguities for custom colour palettes if
246         they contain grays only. Thus let postscript choose always colour
247         palette for interpolated colours ('set palette defined', 'set palette
248         file') and colour/gray according to "Color" otherwise ('set palette
249         gray', 'set palette rgb').
250         SF Patch #2516634: custom colormap using postscript term
251
252 2009-01-22  Ethan Merritt  <merritt@u.washington.edu>
253
254         * term/svg.trm:  Back-port changes to svg terminal driver from 4.3 CVS.
255         This adds support for dashed lines, additional color modes,
256         more standard xml syntax for attributes, and a work-around for viewers
257         that fail to correctly inherit <text xml:space="preserve">
258
259 2009-01-21  Ethan Merritt  <merritt@u.washington.edu>
260
261         * src/fit.c (fit_command):  Issue a warning if no fittable parameters
262         are found.
263         Bug #1964774
264
265 2009-01-14  Ethan Merritt  <merritt@u.washington.edu>
266
267         * src/util.c: Replace the file util.c with the correct file for this
268         CVS branch.  Somehow the copy from the 4.3 branch got incorrectly
269         duplicated here.
270
271 2009-01-14  Petr Mikulik  <mikulik@physics.muni.cz>
272
273         * src/gplt_x11.c (process_event): Change the status bar of a non-active
274         or persistent window only for almost2d plot.
275
276         * src/gplt_x11.c (exec_cmd): Add field almost2d to plot_struct and set
277         it according to sent ALMOST2D.
278
279         * term/x11.trm (X11_text): Send information about ALMOST2D.
280
281         * src/gadgets.h src/mouse.c: Move definition of macro ALMOST2D to
282         gadgets.h.
283
284 2009-01-13  Petr Mikulik  <mikulik@physics.muni.cz>
285
286         * config/makefile.mgw: Option to run gdlib-config to determine libraries
287         for linking of gd. Fix link where to download hcw.
288
289 2009-01-07  Ethan Merritt  <merritt@u.washington.edu>
290
291         * src/util3d.c (edge3d_intersect):  Fix long-standing bug in which
292         the z coordinate was clipping against xmax rather than zmax.
293         Bug #2472621
294
295 2008-12-27  Allin Cottrell  <cottrell@wfu.edu>
296
297         * util.c (gprintf): Allow '#' format character.
298
299 2008-12-26  Ethan Merritt  <merritt@u.washington.edu>
300
301         * src/set.c: More work on "set view equal {xy|xyz}'.
302
303 2008-12-24  Mike Sutton  <mws115@usa.com>
304
305         * term/x11.trm src/gplt_x11.c: Added size and position options for X11.
306
307 2008-12-17  Ethan Merritt  <merritt@u.washington.edu>
308
309         * term/x11.trm (parse_driver):  Do not overwrite environmental variable
310         GNUPLOT_DRIVER_DIR.
311
312 2008-12-14  Ethan Merritt  <merritt@u.washington.edu>
313
314         * src/gadgets.c src/gadgets.h src/graph3d.c src/graph3d.h src/save.c
315         src/show.c src/unset.c docs/gnuplot.doc:
316         More work on "set view equal {xy|xyz}'.  It now works well for terminals
317         with isotropic coordinate systems, but unfortunately not for x11 or 
318         for windows.
319
320 2008-12-13  Ethan Merritt  <merritt@u.washington.edu>
321
322         * term/emf.trm: Replace assert() statements with int_warn().
323         Fix handling of enhanced text for which the rotation angle is non-zero.
324         Bug #2424595
325
326 2008-12-11  Bastian Maerkisch  <bmaerkisch@web.de>
327             Axel Thimm <thimm@users.sourceforge.net>
328
329         * configure.in NEWS src/command.c src/gp_hist.h src/graphics.c
330         src/history.c src/plot.c src/readline.c src/readline.h src/show.c
331         src/term_api.h src/term.c (term_initialise):
332
333         ./configure --with-readline=bsd
334         Allow gnuplot to use the NetBSD editline library as an alternative to
335         gnu readline. This adaptation was originally coded by Bastian Maerkisch
336         and subsequently improved by Axel Thimm and by Tormod Volden.
337
338         The routine term_init() is renamed to term_initialise() to avoid
339         conflict with an identically named routine in libedit.
340
341 2008-12-11  Ethan Merritt  <merritt@u.washington.edu>
342
343         * src/fit.c src/show.c src/variable.c term/pdf.trm:
344         Quiet some compiler warnings.
345
346 2008-12-07  Ethan Merritt  <merritt@u.washington.edu>
347
348         * src/graphics.c (do_key_sample do_rectangle): Fill style EMPTY
349         should be no fill at all, rather than fill with background.
350         Bug #2345832
351         
352 2008-12-04  Ethan Merritt  <merritt@u.washington.edu>
353
354         * src/datafile.c:  Give an error message if the user requests any
355         unimplemented features documented for 'set datafile binary'.
356         Bug #2378535
357
358 2008-11-28  Ethan Merritt  <merritt@u.washington.edu>
359
360         * src/graphics.c (boundary) src/graph3d.c (boundary3d)
361         docs/gnuplot.doc docs/gnuplot.texi:
362         `set {lrbt}margin at screen FRAC` should behave consistently for all
363         four plot borders.  Ignore the current value of `set origin`.
364         Bug #2345000
365
366 2008-11-27  Ethan Merritt  <merritt@u.washington.edu>
367
368         * docs/gnuplot.doc src/gadgets.c src/gadgets.h src/graph3d.c src/save.c   
369         src/set.c src/show.c src/unset.c NEWS:
370         The docs say that 'set size ratio' is ignored in 3D;   make it so.
371         New option 'set view equal_axes' that forces x and y axes in a 3D plot
372         to use the same scale.  This is similar to 'set size square' in 2D.
373         Bug #2004205. Feature request #2006851.
374
375         * src/set.c (prune_dataticks): Fix typo causing ticlabel list corruption
376
377 2008-11-19  Ethan Merritt  <merritt@u.washington.edu>
378
379         * term/gd.trm (PNG_options): If no information is available about what
380         default scalable font might be available we currently give up and fall
381         back to a built in non-scalable font.  Now we try font "arial" before
382         falling back.  Who knows, it might even be available.
383
384 2008-11-13  Ethan Merritt  <merritt@u.washington.edu>
385
386         * docs/gnuplot.doc docs/gnuplot.texi: Update section on color selection
387         to include "lc variable".
388
389 2008-11-06  Ethan Merritt  <merritt@u.washington.edu>
390
391         * term/x11.trm (X11_set_font ENHX11_put_text): Initialize enhanced text
392         processing to use the most recently requested font rather than the
393         default font.
394
395         * src/set.c (set_tics) src/show.c (show_tics) src/save.c (save_set_all)
396         docs/gnuplot.doc:  Allow tics to be set front/back without turning on
397         the whole grid.    Syntax:   set tics {front|back}
398
399 2008-10-30  Ethan Merritt  <merritt@u.washington.edu>
400
401         * src/axis.c (gen_tics) src/axis.h: Use a more complete test for
402         round-off error when the increment between axis tics is close to the
403         precision of the floating point representation.
404         Bug #2209654
405
406 2008-10-27  Ethan Merritt  <merritt@u.washington.edu>
407
408         * src/misc.c (lp_parse) src/graphics.c (check_for_variable_color):
409         New colorspec:   'lc variable'
410         Read linestyle index from data column, look up corresponding color.
411         (2D plots only; Version 4.2 handling of variable color in 3D is messy).
412
413 2008-10-12  Ethan Merritt  <merritt@u.washington.edu>
414
415         * src/plot2d.c (eval_plots): Explicitly set default color of first
416         histogram to linestyle/linetype 0.
417         Bug #2155287
418
419 2008-10-10  Petr Mikulik  <mikulik@physics.muni.cz>
420
421         * src/win/pgnuplot.c: Document option "-e".
422
423 2008-10-10  Shigeharu Takeno  <shige@iee.niit.ac.jp>
424
425         * src/win/wgraph.c (drawgraph):  Work around a Windows clipboard bug by
426         using ExtCreatePen() only for linewidth != 1.  The clipboard loses the
427         line color if created with ExtCreatePen(), but not CreatePenIndirect().
428         [sfeam] Is the clipboard problem still present for thicker lines?
429
430 2008-10-08  Shigeharu Takeno  <shige@iee.niit.ac.jp>
431
432         * src/plot.c (main):
433         Add a command line option -e to execute specified commands:
434         E.g.:     gnuplot   file1.in   -e "reset"   file2.in
435
436 2008-10-06  Juergen Wieferink <wieferink@freenet.de>
437
438         * src/set.c (set_palette_defined): Allow string variables and
439         expressions in "set palette defined". SF #2149065
440
441 2008-10-01  Ethan Merritt  <merritt@u.washington.edu>
442
443         * src/plot2d.c (store_label): Only store color value for each label
444         in a "with labels" plot if "rgb variable" has been requested.
445         Bugfix
446
447 2008-09-29  Petr Mikulik  <mikulik@physics.muni.cz>
448
449         * src/color.h: Add field c into structure gpdPoint.
450
451         * src/pm3d.c (pm3d_plot): Support "pm3d interpolate" for surfaces
452         given by both z and colour coordinates.
453         SF Bug #2127845
454
455 2008-09-25  Ethan Merritt  <merritt@u.washington.edu>
456
457         * src/set.c (set_label load_tic_users prune_dataticks)
458         src/internal.c (f_strftime):  Fix memory leaks found by valgrind.
459         Memcheck now gives all.dem a clean bill of health.
460
461 2008-09-23  Ethan Merritt  <merritt@u.washington.edu>
462
463         * src/axis.h src/axis.c(gen_tics) src/set.c(set_tics) src/show.c
464         src/graphics.c (plot_border) demo/random.dem:
465         Add an axis tic attribute "rangelimited".  If set, the border and
466         tics for this axis will be drawn only for the range of the data,
467         rather than for the full range of the axis.
468
469 2008-09-22  Ethan Merritt  <merritt@u.washington.edu>
470
471         Version 4.2.4 release
472
473         * configure.in PATCHLEVEL docs/titlepag.tex src/version.c:
474         Update for 4.2.4 release
475
476 2008-09-22  Ethan Merritt  <merritt@u.washington.edu>
477
478         * src/axis.c (gen_tics): Add a sanity check for the number of auto-
479         generated axis ticks.  Do not accept a request for more ticks than the
480         resolution of the output device coordinate system (term->xmax).
481         Bug #2117370
482
483 2008-09-21  Ethan Merritt  <merritt@u.washington.edu>
484
485         * docs/gnuplot.doc docs/gnuplot.texi: Update for 4.2.4 release.
486
487 2008-09-13  Ethan Merritt  <merritt@u.washington.edu>
488
489         * term/emf.trm:  Add support for enhanced text mode.
490
491 2008-09-10  Ethan Merritt  <merritt@u.washington.edu>
492
493         * src/graph3d.c (place_labels3d):  Clip "splot with labels" against
494         plot boundaries in "set view map" mode, for consistency with 2D plots.
495
496 2008-09-09  Bastian Maerkisch  <bmaerkisch@web.de>
497
498         * src/win/wgraph.c (drawgraph): Force update of cursor position after
499         every polyline.
500         Bugfix
501
502 2008-09-06  Juergen Wieferink <wieferink@freenet.de>
503
504         * src/term.c (enhanced_recursion):  Add curly braces {} to the list of
505         characters that must be escaped in postscript enhanced mode.
506         Bug #1968636
507
508 2008-09-03  Ethan Merritt  <merritt@u.washington.edu>
509
510         * src/axis.c (add_tic_user): NULL labels are OK if requested via
511         'set xtics (x1, x2, ...)' as opposed to read from a data file.
512
513 2008-09-02  Juergen Wieferink  <wieferink@freenet.de>
514
515         * src/eval.c src/gp_time.h src/internal.c (f_strftime f_strptime)
516         src/internal.h demo/stringvar.dem docs/gnuplot.doc:
517         Introduce two new functions 'strftime' and 'strptime', which do
518         essentially the same as the standard C functions with the same names,
519         but use seconds since 2000 instead of struct tm.
520         This has been in 4.3 cvs for 18 months now with no reported problems.
521         (Patchset #1199186 July 2005). 
522
523 2008-08-16  Ethan Merritt  <merritt@u.washington.edu>
524
525         * term/dumb.trm: Accept terminal size in the form used by most other
526         terminal drivers.   'set term dumb size 80,23"
527
528 2008-08-14  Petr Mikulik  <mikulik@physics.muni.cz>
529
530         * docs/gnuplot.doc: Typo in show colornames.
531
532 2008-08-09  Ethan Merritt  <merritt@u.washington.edu>
533
534         * src/readline.c (ansi_getc): Teach built-in readline to map
535         CSI-H to ^A and CSI-F to ^E, which offers some hope that the <end> and
536         <home> keys will do something useful.
537         Bug #1556607
538
539 2008-08-06  Benjamin <lindnerb@users.sourceforge.net>
540
541         * term/post.trm: Fix parsing error for option "palfuncparam".
542         Bug #2039912
543
544         * term/emf.trm: Allow fractional linewidths; do not allow dash pattern
545         length to go to zero.
546         Bug #2040244
547
548 2008-08-06  Ethan Merritt  <merritt@u.washington.edu>
549
550         * term/emf.trm: Provide a separate "dashlength" option.
551
552 2008-08-05  Ethan Merritt  <merritt@u.washington.edu>
553
554         * src/axis.h src/eval.c: Track min/max range of data on each axis
555         indepently of the current axis range itself.  Export to the
556         corresponding variables GPVAL_DATA_{AXIS}_MIN and so on.
557         This is useful all by itself, but also lays the groundwork for
558         implementing "range-frame" borders as per request #2025481.
559
560 2008-08-01  Ethan Merritt  <merritt@u.washington.edu>
561
562         * src/axis.c (add_tic_user): Ignore NULL labels. This prevents possible
563         segfault if tic labels are requested from a non-existent data column.
564         Bugfix.
565
566         * src/plot2d.c (eval_plots) src/graphics.c (do_plot):
567         Histograms did not correctly honor 'set style user increment'.
568         Bugfix.
569
570         * src/plot2d.c (eval_plots): Remove order dependency of newhist options.
571
572 2008-07-29  Ethan Merritt  <merritt@u.washington.edu>
573
574         * src/wxterminal/wxt_gui.cpp(wxt_set_color):
575         Pay attention to the value of 'set palette maxcolors'.
576         Bugfix.
577
578 2008-07-25  Ethan Merritt  <merritt@u.washington.edu>
579
580         * src/datafile.c (plot_ticlabel_using): If tic labels will be generated
581         from an expression then force evaluation of all column contents.
582         Otherwise references to column() return uninitialized garbage. Bugfix.
583
584 2008-07-23  Ethan Merritt  <merritt@u.washington.edu>
585
586         * src/mouse.c src/command.c (pause_command) src/command.h:
587         New variant 'pause mouse close' will pause until the plot window is
588         closed. Unlike existing variants, this does not disable mouse-clicks,
589         hotkeys, or zooming.  Add wxt to the list of terminals that need a
590         work-around to avoid losing an input character when the plot window
591         is closed.
592
593 2008-07-22  Ethan A Merritt  <merritt@u.washington.edu>
594
595         * src/mouse.c (event_buttonpress): Zooming uses mouse button 3.
596         Do not disable it just because we are using buttons 1 or 2 for something
597         else.
598
599 2008-07-21  Ethan A Merritt  <merritt@u.washington.edu>
600
601         * term/post.trm (PS_vector): Work around a bug in ghostscript/gv.
602         If there is a long string of mixed relative/absolute lines without a
603         stroke command, ghostscript renders it veeeery slowly.  We already 
604         limit the number of relative moves in a row; this patch adds a "stroke".
605         Bug #2021942
606
607         * src/graphics.c (plot_vectors) src/plot2d.c (get_data):
608         Allow 2D vector plots to draw color from an extra data column.
609
610 2008-07-18  Ethan A Merritt  <merritt@u.washington.edu>
611
612         * src/graphics.c (check_for_variable_color):  Consolidate all the checks
613         for deriving color from a data column into a single subroutine.
614
615         * src/plot2d.c (eval_plots get_data) docs/gnuplot.doc:
616         Allow palette colors in 2D plots.
617
618 2008-07-16  Ethan Merritt  <merritt@u.washington.edu>
619
620         * src/graphics.c (do_plot) src/graph3d.c (do_3dplot): Move palette
621         initialization earlier, so that no objects or axes are drawn before the
622         palette is defined.
623         Bug #2019453
624
625 2008-07-15  Christian Hilgers  <hilgers@muc.zae-bayern.de>
626
627         * src/plot2d.c src/graphics.c docs/gnuplot.doc: Make stacked histograms
628         grow upward from positive data and downward from negative data.
629         Also adjust and fix autoscaling of stacked histograms.
630         This is a minor change in auto-layout of stacked histograms.
631
632 2008-07-15  Timothee Lecomte  <timothee.lecomte@ens.fr>
633         
634         * src/wxterminal/wxt_gui.h:
635         * src/wxterminal/wxt_gui.cpp (LoadCursor):
636         * src/wxterminal/bitmaps/xpm/cross.xpm:
637         * src/wxterminal/bitmaps/xpm/icon16x16.xpm:
638         * src/wxterminal/bitmaps/xpm/icon32x32.xpm:
639         * src/wxterminal/bitmaps/xpm/icon64x64.xpm:
640         * src/wxterminal/bitmaps/xpm/notfound.xpm:
641         * src/wxterminal/bitmaps/xpm/right.xpm:
642         * src/wxterminal/bitmaps/xpm/rotate.xpm:
643         * src/wxterminal/bitmaps/xpm/size.xpm:
644         Recent gcc versions are stricter with strings. Define xpm char arrays
645         as const.  (Backport from 4.3)
646
647 2008-06-26  Peter Rosin  <pekberg@users.sourceforge.net>
648
649         * term/ggi.trm: uint32 -> unit32_t
650         Allows to build with current version of libggi (2.2.2).
651
652 2008-06-26  Ethan Merritt  <merritt@u.washington.edu>
653
654         * src/graphics.c: Check for term->filled_polygon() before trying to
655         call it.  (fixes segfault triggered by ggi terminal driver).
656
657 2008-06-25  Ethan Merritt  <merritt@u.washington.edu>
658
659         * src/graph3d.c: Allow to draw contours associated with a pm3d surface.
660
661 2008-06-24  Bastian Maerkisch  <bmaerkisch@web.de>
662
663         * src/win/wgraph.c (drawgraph): Don't forget to draw a polyline even
664         if it has only a single segment.
665         Bugfix
666
667 2008-06-23  Petr Mikulik  <mikulik@physics.muni.cz>
668
669         * src/color.c (draw_inside_color_smooth_box_postscript): Fix colour of
670         the 2nd box in the colour box for negative palette in postscript
671         output.
672         SF Bug #2000751
673
674 2008-06-22  Ethan Merritt  <merritt@u.washington.edu>
675
676         * src/plot2d.c: Plot with vectors did not honor linestyles requested via
677         'set style increment user'.
678
679         * src/gplt_x11.c: Consolidate the fillstyle code into a single routine
680         that is called both by fillbox and filledpolygon processing. This fixes
681         a bug in which the fillstyle border was not applied to filled curves.
682
683 2008-06-17  Bastian Maerkisch  <bmaerkisch@web.de>
684         * src/win/wgraph.c term/win.trm (WIN_set_color):  Preserve setting of
685         dash type and linewidth when a new color is selected.
686         Allow dash types with linewidth > 1.
687         Bug #1863361
688
689 2008-06-07  Ethan Merritt  <merritt@u.washington.edu>
690
691         * src/set.c (set_margin) src/save.c (save_set_all) docs/gnuplot.doc:
692         Add keyword "at" to absolute margin placement commands.
693         The full form is now "set rmargin {at screen} 0.8".
694
695 2008-06-05  Ethan Merritt  <merritt@u.washington.edu>
696
697         * src/axis.c (gen_tics):  Interpret tic labels read from a data file as
698         string constants rather than as formats.  Otherwise there are problems
699         with labels containing the "%" character.
700
701 2008-06-02  Ethan Merritt  <merritt@u.washington.edu>
702
703         * src/hidden3d.c (store_polygon) src/mouse.c (event_motion):
704         Replace a pair of assert() statements with a flag that prevents mouse
705         interaction from further increasing the value of surface_zscale. This
706         means you cannot trigger the error condition the asserts tried to guard
707         against by moving the mouse.  You can still trigger it by setting the
708         view to something unreasonable, but the previous patch may handle that.
709         Bug #1728063
710
711 2008-06-02  Daniel Sebald  <daniel.sebald@ieee.org>
712
713         * src/hidden3d.c (sort_polys_by_z in_front coord_to_treecell):
714         Add range-checks to the calculation of quadtree array indices.
715         Bugs #1969415 #1728063
716
717 2008-05-31  Ethan A Merritt  <merritt@u.washington.edu>
718
719         * src/tables.c src/tables.h src/show.c:  'show colornames'.
720
721 2008-05-31  Allin Cottrell <cottrell@wfu.edu>
722
723         * term/metapost.trm (MP_filled_polygon):  Limit the number of vertices
724         per line of output.
725
726 2008-05-29  Ethan A Merritt  <merritt@u.washington.edu>
727
728         * src/axis.c (make_tics):  Don't generate tics for an empty axis range.
729
730 2008-05-27  Bastian Maerkisch  <bmaerkisch@web.de>
731
732         * src/win/wtext.c (TextInit), src/win/wgraph.c (GraphInit):
733         Increase buffer sizes which contain the path to wgnuplot.ini.  Fixes
734         crashes on systems with very long paths of the %APPDATA% directory.
735
736 2008-05-27  Ethan A Merritt  <merritt@u.washington.edu>
737
738         * src/graphics.c (do_key_sample): Do not draw errorbars on candlestick
739         key sample.
740
741 2008-05-25  Hans-Bernhard Broeker <broeker@physik.rwth-aachen.de>
742
743         * term/emf.trm (EMF_options): Option 'size' broke out of parsing
744         loop prematurely.
745
746 2008-05-22  Thomas Sefzick  <thse@users.sourceforge.net>
747
748         * src/bitmap.c (b_vector): If either end of a vector would fall outside
749         the canvas area, don't draw it.  This prevents segfaults and memory
750         access problems if the terminal coordinates overflow or go negative.
751         Bug #1969415
752
753 2008-05-21  Ethan A Merritt  <merritt@u.washington.edu>
754
755         * src/specfun.c (inverse_error_func):  The piecewise numerical
756         approximation failed to handle the case where x was exactly the join
757         point for the pieces.  Include +/- 0.7 in the central piece.
758         Also add one more cycle of Newton-Raphson.
759         Bug #1962800
760
761 2008-05-20  Shigeharu Takeno  <shige@iee.niit.ac.jp>
762
763         * term/emf.trm (EMF_dashtype):  Don't ignore linetype LT_AXIS.
764
765 2008-05-08  Thomas Sefzick  <thse@users.sourceforge.net>
766
767         * src/axis.c (setup_tics):  If the user specified an explicit
768         tic interval on a timefmt axis, do not change this by calling
769         quantize_time_tics().
770         Bug #1908019
771
772 2008-05-08  Ethan A Merritt  <merritt@u.washington.edu>
773
774         * term/pdf.trm (ENHPDF_FLUSH ENHPDF_put_text):  We correctly issue
775         save/restore requests to PDFlib, but we need to mirror these in the
776         terminal code so that we track what font is currently selected.
777
778 2008-05-03  Ethan A Merritt  <merritt@u.washington.edu>
779
780         * term/cgm.trm:  Clean up terminal code.
781         Use shared routines gp_alloc(), int_expression().
782         Switch to using same set of colors as other terminals (web_color_rgbs).
783         Handle RGB color request by returning closest match to a known color.
784         Don't over-write user colors with each new palette.
785         Decouple dash pattern from line color.
786
787         * term/fig.trm:  Extend point types to match standard sequence for the
788         the first 13 types.  Accept option syntax "set term fig ... size xx,yy".
789         Add a table lookup for font names known to fig, so that the terminal
790         accepts for example 'set term fig font "Palatino Italic, 11"'.
791
792         * src/tables.h src/tables.c (lookup_table_entry):  New utility routine
793         for table lookup of a string, as opposed to a token index.
794
795 2008-04-28  Bastian Maerkisch  <bmaerkisch@web.de>
796
797         * term/win.trm: Remove specific references to Windows 3.1
798
799 2008-04-27  Ethan A Merritt  <merritt@u.washington.edu>
800
801         * src/datafile.c (df_tokenise df_read_matrix): If missing or bad data is
802         found in a matrix data file, print an int_warn() message, set the value
803         to NaN if it isn't already, and return to the caller normally.
804         This allows one to leave holes in a matrix data file.
805
806         * src/graphics.c (boundary): The windows and postscript terminals place
807         the xlabel text with the character baseline on the bottom edge of the
808         canvas.  This causes any descenders to be clipped.  This patch leaves an
809         extra 1/5 line height of empty space at the bottom.  This fixes windows
810         and postscript, but introduces a small waste of space on most other
811         terminal types.
812         Bug #1918293
813
814 2008-04-24  Ethan A Merritt  <merritt@u.washington.edu>
815
816         * term/post.trm (PS_encode_image PS_image):  If the palette size is
817         limited by "set palette maxcolors" then we need to rescale [0:maxcolors]
818         to [0:bitwidth] for the packed representation of the image in PostScript
819         Bug #1869824
820
821 2008-04-20  Ethan A Merritt  <merritt@u.washington.edu>
822
823         * src/util.c (int_error):  Revert patch of 2008-04-19; it is not needed
824         for 4.2
825
826 2008-04-19  Ethan A Merritt  <merritt@u.washington.edu>
827
828         * term/sun.trm:  Rename local static variable "canvas" to "SUN_canvas"
829         to avoid conflict with global of the same name.
830
831         * src/util.c (int_error):  We really want to use snprintf(), but if the
832         platform doesn't provide it (SunOS 4.1) what can you do?
833
834 2008-04-16  Ethan A Merritt  <merritt@u.washington.edu>
835
836         * term/x11.trm:  Use a more finely sampled palette to generate colors.
837         It was using only 500 samples; change it to use the default (=5000) in
838         approximate_palette().
839         Bug #1906502
840
841 2008-04-08  Ethan A Merritt  <merritt@u.washington.edu>
842
843         * src/parse.c (parse_primary_expression) src/parse.h:
844         Track highest data column referred to in an expression.
845
846         * src/datafile.c (plot_option_using): Use info returned by perm_at()
847         to update the highest data column used.  This allows us to catch at
848         least the simple case of autotitle columnheader for 'using 1:($3)'.
849         It also allows deletion of ugly code to approximate the same thing
850         for binary files.
851         Bug #1929227
852
853 2008-04-06  Ethan A Merritt  <merritt@u.washington.edu>
854
855         * term/post.trm (PS_set_font): Avoid segfault if the font name is longer
856         than 32 characters.  The {ai grass next openstep} terminals suffer from
857         this same problem, but since they are moribund just let it go.
858         Bug #1935919
859
860         * term/gd.trm: Track ttf font names using dynamically-allocated strings
861         rather than fixed arrays.
862         Bug #1935919
863
864 2008-04-01  Thomas Sefzick  <thse@users.sourceforge.net>
865
866         * src/tables.c src/command.c (undefine_command) src/command.h
867         docs/gnuplot.doc:  Introduce a new command 'undefine foo baz [...]'
868         that clears previously defined user variables "foo", "baz", ...
869
870 2008-04-01  Ethan A Merritt  <merritt@u.washington.edu>
871
872         * src/eval.c (update_gpval_variables) docs/gnuplot.doc:  Users can
873         clobber the pre-defined variables pi and NaN.  Provide permanent,
874         non-clobberable versions GPVAL_pi and GPVAL_NaN so that they can be
875         restored if necessary.
876
877 2008-03-27  Petr Mikulik  <mikulik@physics.muni.cz>
878
879         * src/save.c (save_set_all): Fixed saving negative palette.
880
881 2008-03-21  Ethan A Merritt  <merritt@u.washington.edu>
882
883         * src/set.c (set_format): Remove superfluous c_token++.
884         Bug #1922288
885
886 2008-03-20  Ethan A Merritt  <merritt@u.washington.edu>
887
888         * src/graph3d.h src/plot3d.c docs/gnuplot.doc: Add a per-plot splot
889         keyword "nocontours".  This overrides the global "set contour", so
890         that you can contour a single surface from a plot with many.
891
892 2008-03-13  Carl Troein  <troein@users.sourceforge.net>
893
894         * term/post.trm (PS_filled_polygon): Limit the number of consecutive
895         relative moves in order to avoid accumulated round-off error.
896
897 2008-03-11  Ethan Merritt  <merritt@u.washington.edu>
898         
899         * src/gadgets.c src/gadgets.h src/graph3d.c src/graphics.c src/save.c
900         src/set.c src/show.c src/unset.c src/util3d.c:  Add option to specify
901         plot margins as an absolute position on the canvas (screen).
902             set {lrbt}margin screen <frac>
903         Back-port of CVS patches from 2006-10-21 2006-11-04 2008-03-06
904
905         * src/plot2d.c (get_data store2d_point) src/graphics.c (plot_boxes):
906         Alter processing of "with boxes" to handle specification of a column
907         containing variable color information.  Back-port from CVS.
908
909 2008-03-08  Ethan Merritt  <merritt@u.washington.edu>
910
911         Version 4.2.3 release
912         Any further commits to this tree will be in 4.2.4 if such a version is
913         ever released.
914
915 2008-03-08  Ethan Merritt  <merritt@u.washington.edu>
916
917         * term/x11.trm (X11_filled_polygon):
918         Fix read beyond end of buffer found by valgrind.
919
920         * src/datafile.c (df_tokenise):
921         Fix uninitialized variable found by valgrind.
922
923 2008-03-07  Ethan Merritt  <merritt@u.washington.edu>
924
925         * src/util3d.c (draw3d_line_unconditional): Check for user-defined
926         line styles when choosing colors for front/back of hidden surfaces.
927         Bugfix (back-ported from 4.3)
928
929         * src/color.c (draw_color_smooth) src/graph3d.c (do_3dplot cntr3d_lines)
930         src/misc.c (lp_use_properties):  Do not fail to initialize the structure
931         passed to lp_use_properties().
932         Bugfix (back-ported from 4.3)
933
934 2008-03-07  Ethan A Merritt  <merritt@u.washington.edu>
935
936         * src/datafile.c (df_gets): Revert patch from 2008-03-04 because of
937         problems reported in the development version. Revisit after 4.2.3.
938
939 2008-03-04  Ethan A Merritt  <merritt@u.washington.edu>
940
941         * src/datafile.c (df_gets): Use readline() for reading inline data from
942         pseudofile '-'.
943
944         * src/graphics.c (boundary): Be more precise in estimating the vertical
945         space required to accommodate rotated tick labels on x and x2 axes.
946         Bug #1879907
947
948         * PATCHLEVEL configure.in src/version.c:  Mark as patchlevel 3
949
950         * NEWS docs/gnuplot.texi: Update in preparation for 4.2.3
951
952         * share/Makefile.am: Correct error in generating distribution package.
953
954 2008-03-03  Ethan A Merritt  <merritt@u.washington.edu>
955
956         * src/color.c (draw_color_smooth_box) src/unset.c (unset_axislabel):
957         Allow user to set colorbar label rotatation if the bar is vertical.
958
959         * src/datafile(adjust_binary_use_spec): Allow more than one binary
960         file in a single "plot" command.
961
962 2008-03-02  Ethan A Merritt  <merritt@u.washington.edu>
963
964         * term/cgm.trm (CGM_set_color): Decouple dash type from line color.
965         Code clean-up. Use shared routines int_warn(), gp_alloc().
966
967 2008-03-01  Ethan A Merritt  <merritt@u.washington.edu>
968
969         * term/cgm.trm (CGM_fillbox CGM_filled_polygon):  Move the
970         management of fill styles and pm3d fill from CGM_fillbox() to
971         CGM_filled_polygon().  This is necessary because while boxes
972         and histograms call filled_polygon() via term->fillbox(),
973         the pm3d code calls term->filled_polygon() directly.  Bugfix.
974
975 2008-02-29  Ethan A Merritt  <merritt@u.washington.edu>
976
977         * src/set.c (set_format set_tics set_tic_prop) docs/gnuplot.doc:
978         Allow the tic format to be provided as a string variable.
979         Also introduce a format keyword for "set tics" and "set {axis} tics".
980         "set tics format 'foo'"  is equivalent to "set format 'foo'"
981         "set ytics format 'baz'" is equivalent to "set format y 'baz'"
982
983 2008-02-26  Ethan A Merritt  <merritt@u.washington.edu>
984
985         * src/graphics.c (map_position place_objects) src/graphics.h src/mouse.c
986         src/color.c:  Change map_position() to return (int) x,y rather than
987         (unsigned int). Callers are modified accordingly.  This avoids implicit
988         casting that breaks clipping calculations on ia64 and PPC.
989         This patchset fixes clipping of labels and rectangles.  Bugfix.
990
991 2008-02-23  Petr Mikulik  <mikulik@physics.muni.cz>
992
993         * src/os2/gclient.c: Use the font palette dialog instead of the standard
994         font selection dialog. Still switcheable via #define STANDARD_FONT_DIALOG.
995         SF #1773922 OS/2 PM-Termial broken font selection by Franz Bakan.
996
997         * config/makefile.cyg: Added GNUPLOT_PS_DIR and WIN_IPC.
998
999         * config/makefile.dj2 config/makefile.os2: Added GNUPLOT_PS_DIR.
1000
1001         * config/makefile.mgw: Added WIN_IPC.
1002
1003         * config/config.nt config/makefile.nt: Moved GIF_ANIMATION.
1004
1005 2008-02-22  Ethan A Merritt  <merritt@u.washington.edu>
1006
1007         * term/pslatex.trm:  Include entry point PS_path in the terminal tables
1008         for epslatex, pslatex, and pstex.  This fixes a bug due to the code in
1009         color.c:draw_inside_color_smooth_box_postscript() not being able to sync
1010         with the code in the terminal driver.
1011
1012 2008-02-20  Ethan A Merritt  <merritt@u.washington.edu>
1013
1014         * src/graph3d.c (place_arrows3d): Save/restore the clipping area so
1015         that splot doesn't trash the current clipping state.  Bugfix.
1016
1017         * src/graphics.c (boundary): Reset the default clipping area to the
1018         plot boundary at the start of every 'plot' command.  This should not
1019         be necessary, but it provides protection against a hypothetical instance
1020         of int_error() in the middle of a save/draw/restore sequence.
1021
1022 2008-02-19  Ethan A Merritt  <merritt@u.washington.edu>
1023
1024         * src/set.c (set_timestamp): Do not spin on unrecognized option. Bugfix.
1025
1026 2008-02-14  Ethan A Merritt  <merritt@u.washington.edu>
1027
1028         * src/util.c (gd_strdup) src/set.c (set_decimalsign): Fix segfault due
1029         to trying to free a string returned by getenv().
1030         Bugfix.
1031
1032 2008-02-04  Ethan A Merritt  <merritt@u.washington.edu>
1033
1034         * src/term.c (change_term):  Allow terminals with similar names to
1035         coexist (svg/svga/svgalib). Back-ported from 4.3.
1036
1037 2008-02-01  Daniel Sebald  <daniel.sebald@ieee.org>
1038
1039         * src/datafile.c (df_readbinary): Fix off-by-one error in the implicit
1040         "column 0" of non-matrix binary data files.
1041
1042 2008-01-28  Petr Mikulik  <mikulik@physics.muni.cz>
1043
1044         * graph3d.c (map3d_getposition, map3d_position_r): Fix case of y graph
1045         coordinate and splot_map.
1046
1047 2008-01-16  Ethan A Merritt  <merritt@u.washington.edu>
1048
1049         * src/graphics.c (plot_image_or_update_axes):  Do not clip 3D image data
1050         against Z range if the plot mode is "set view map".
1051
1052 2008-01-13  Ethan A Merritt  <merritt@u.washington.edu>
1053
1054         Backport fix for Bug #1850588
1055
1056         * src/datafile.c: Call add_tic_user with a tick type of -1 (a new flag
1057         value) rather than 0 (major tick).  This allows to distinguish between
1058         tick labels read from a data file and those from the command line.
1059
1060         * src/axis.c (gen_tics): Treat tick type -1 the same as major ticks.
1061
1062         * src/set.c (prune_dataticks) src/setshow.h: New routine to purge any
1063         axis tick labels left over from 'using xtics(n)' option of previous
1064         plot command.
1065
1066         * plot2d.c (plotrequest): Call prune_dataticks() before each new plot.
1067
1068 2008-01-10  Ethan A Merritt  <merritt@u.washington.edu>
1069
1070         * src/pm3d.c (pm3d_plot): When color information is given in a separate
1071         column, we must not use the interpolated z coordinate as for color.
1072         Bug #1783405
1073
1074 2008-01-10  Petr Mikulik  <mikulik@physics.muni.cz>
1075
1076         * src/command.c (replot_command): Fix for replot with unknown terminal.
1077
1078 2008-01-10  Petr Mikulik  <mikulik@physics.muni.cz>
1079
1080         * term/post.trm (PS_encode_image): Fix for maxcolors in "plot with
1081         image".
1082
1083 2008-01-10  Daniel Sebald  <daniel.sebald@ieee.org>
1084
1085         * src/hidden3d.c (store_polygon): Discard degenerate polygons.
1086         Bug #1727198
1087
1088 2008-01-07  Allin Cottrell  <cottrell@wfu.edu>
1089
1090         * term/pdf.trm (EMF_setfont):  Add support for encodings
1091         iso_8859_1 iso_8859_2 iso_8859_15 cp1250
1092
1093 2008-01-06  Allin Cottrell  <cottrell@wfu.edu>
1094
1095         * term/emf.trm (EMF_setfont):  Add support for encodings
1096         iso_8859_2 cp1250 koi8r koi8u
1097
1098 2007-12-20  Ethan A Merritt  <merritt@u.washington.edu>
1099
1100         * term/x11.trm:  Fix 4.3-ism in patch of 2007-12-09.
1101
1102 2007-12-17  Lars Hecking  <lhecking@users.sourceforge.net>
1103
1104         * share/Makefile.am: Gnuplot is generated by make and deleted by
1105         'make clean'. Bring variable names in line with xorg.
1106
1107 2007-12-14  Ethan A Merritt  <merritt@u.washington.edu>
1108
1109         * configure.in:  Increase the chance that ./configure will correctly
1110         find all the pieces of gnu libreadline under OSX 1.4.
1111
1112 2007-12-09  Ethan A Merritt  <merritt@u.washington.edu>
1113
1114         * term/x11.trm: New option 'set term x11 linewidth LW'
1115
1116 2007-12-08  Ethan A Merritt  <merritt@u.washington.edu>
1117
1118         * src/gplt_x11.c: Command line options -bw and -borderwidth were
1119         being mapped to X Resource "borderwidth".  It should be "borderWidth".
1120         Also remove limitation that maximum linewidth is 4 pixels.
1121
1122         * share/Makefile.am: Rename Gnuplot.app-defaults to Gnuplot before
1123         installing it.  Bug #1784379
1124
1125         * src/graphics.c (place_rectangles):  If the linestyle is LT_DEFAULT,
1126         nevertheless check for an explicit linewidth for this rectangle.
1127         Bug #1833429
1128
1129 2007-12-08  Petr Mikulik  <mikulik@physics.muni.cz>
1130
1131         New options "front" and "back" to "set colorbox" to let the box be
1132         drawn either after or below the image or surface.
1133
1134         * src/gadgets.h src/gadgets.c: New "layer" field in color_box_struct.
1135
1136         * src/graphics.c src/graph3d.c: Draw the colorbox at expected layers.
1137
1138         * src/save.c src/set.c src/show.c src/tables.h src/tables.c
1139         docs/gnuplot.doc: The other necessary changes.
1140
1141 2007-12-01  Thomas Orgis  <sobukus@users.sourceforge.net>
1142
1143         * src/gplt_x11.c (process_configure_notify_event):  Test for failure of
1144         window resize, and do not loop indefinitely trying to resize. Fixes
1145         infinite loop problem on ion and fluxbox window managers.
1146         Bug #1836959 #1614928
1147
1148 2007-11-25  Johannes Zellner  <johannes@zellner.org>
1149
1150         * term/emf.trm: implemented pm3d and point types according to the
1151         suggestion in term/README.  (2006-12-07 patch to CVS trunk)
1152
1153 2007-11-25  Ethan A Merritt  <merritt@u.washington.edu>
1154
1155         * term/estimate.trm: Never return a zero size estimate for a
1156         non-empty string. Promote fraction characters to size 1.
1157
1158 2007-11-25  Vladimir  <qva@users.sourceforge.net>
1159
1160         * term/svg.trm (SVG_init): Correct encoding names to koi8-r, koi8-u.
1161         Bug #1838066
1162
1163 2007-11-23  Ethan A Merritt  <merritt@u.washington.edu>
1164
1165         * term/fig.trm (FIG_boxfill):  Update current color before drawing.
1166         Bug #1837187
1167
1168 2007-11-22  Morten MacFly  <mortenmacfly@users.sourceforge.net>
1169
1170         * config/config.nt: #define vsnprintf
1171
1172 2007-11-21  Allin Cottrell  <cottrell@wfu.edu>
1173
1174         * term/emf.trm (EMF_filled_polygon): Do not alter original color
1175         when processing filled areas with opacity < 1.0
1176
1177 2007-11-20  Ethan A Merritt  <merritt@u.washington.edu>
1178
1179         * term/post.trm (RememberFont): Revert patch of 2007-10-23
1180         Parenthesized font names are not compatible with enhanced text mode,
1181         and anyhow PostScript fontnames should not contain any spaces.
1182
1183 2007-11-16  Ethan A Merritt  <merritt@u.washington.edu>
1184
1185         * src/term.c (enhanced_recursion):  Do not allow the '}' character in a
1186         font name.  Prevents PostScript badness from the following user error:
1187         set label "Foo{/Symbol}Baz".
1188         Bug #1833457.
1189
1190 2007-11-02  Ethan Merritt  <merritt@u.washington.edu>
1191
1192         * src/internal.c (f_sprintf) docs/gnuplot.doc:
1193         Remove limitation of 10 args max to internal function sprintf().
1194         Bug #1753756.
1195
1196 2007-10-30  Christian Faulhammer (v-li@users.sourceforge.net)
1197
1198         * docs/doc2texi.el: Gentoo patch to allow for changed handling of
1199         newlines in up-coming version of XEmacs. Needed in order to
1200         regenerate gnuplot.texi on such a system.
1201         Bug #1822610
1202
1203 2007-10-29  Petr Mikulik  <mikulik@physics.muni.cz>
1204
1205         * docs/gnuplot.doc: Document option "pm3d depthorder" within
1206         "help pm3d".
1207
1208 2007-10-23  Christer Lundberg  <ssslub@users.sourceforge.net>
1209
1210         * term/post.trm: A font name containing spaces must be protected by
1211         parentheses in PostScript output.
1212
1213 2007-10-05  Ethan Merritt  <merritt@u.washington.edu>
1214
1215         * src/plot2d.c (eval_plots): Load first/second axis information into
1216         the head of the label list for plot mode LABELPOINTS.
1217         Bug #1807015
1218
1219 2007-10-02  Ethan Merritt  <merritt@u.washington.edu>
1220
1221         * src/binary.c src/binary.h src/bf_test.c: Rename the routine vector()
1222         to alloc_vector().  This avoids a conflict with the "vector" keyword on
1223         PowerPC OSX with Altivec compiler options enabled.
1224         Bug #1754164
1225
1226 2007-10-01  Ethan Merritt  <merritt@u.washington.edu>
1227
1228         * src/graphics.c (bound_intersect):  Fix a degenerate case in the
1229         intersection test that caused a divide by zero.
1230         Bug #1805697
1231
1232 2007-09-29  Hanno Hoffstadt  <hannoh@users.sourceforge.net>
1233
1234         * term/Postscript/prologue.ps: Add an explicit 'closepath' before
1235         filling a rectangle. This is not required by the language spec, but
1236         works around a bug in Adobe Distiller 7 and Apple's Quartz Preview.
1237         Bug #1771533
1238
1239 2007-09-28  Hanno Hoffstadt  <hannoh@users.sourceforge.net>
1240
1241         * src/graphics.c (do_plot):  It is necessary to call
1242         term->previous_palette() at the end of any 2D plot or 3D plot
1243         that used custom rgb colors.
1244         Bug #1803337
1245
1246 2007-09-23  Ethan Merritt  <merritt@u.washington.edu>
1247
1248         * src/axis.c (gen_tics): On log scale plots with very large range,
1249         the minitic interval can overflow integer representation.
1250         Bug #1797500
1251
1252         * term/gd.trm (PNG_image):  gdImageGetClip was introduced in libgd
1253         version 2.0.12.  Don't try to use it if version is less than 2.
1254         Bug #1790171
1255
1256 2007-09-01  Ethan Merritt  <merritt@u.washington.edu>
1257
1258         Tag version 4.2.2 using command
1259                 cvs tag -c "Release_4_2_2"
1260         
1261         Version 4.2.2 released via SourceForge.  Any further commits to
1262         this tree will be in 4.2.3 if such a version is ever released.
1263
1264 2007-08-31  Ethan Merritt  <merritt@u.washington.edu>
1265
1266         The axis label bug is serious enough to warrant an updated release
1267         IMHO.  Obviously the release candidate for 4.2.1 didn't get enough
1268         testing.
1269
1270         src/version.c PATCHLEVEL configure.in docs/titlepag.tex
1271         Increment patchlevel to 2
1272
1273 2007-08-28  Ethan Merritt  <merritt@u.washington.edu>
1274
1275         * src/graph3d.c (draw_3d_graphbox):  Fix bug that caused axis labels
1276         not to be drawn in 'set view map' mode.  This was supposed to have been
1277         applied 2007-03-14 but somehow never made it into cvs.
1278         Serious bug in 4.2.1
1279
1280 2007-08-28  Ethan Merritt  <merritt@u.washington.edu>
1281
1282         * src/graphics.c (plot_c_bars): Apply border color from
1283         'set style fill' to filled candlesticks.
1284
1285 2007-08-26  Ethan Merritt  <merritt@u.washington.edu>
1286
1287         Tag version 4.2.1 using command
1288                 cvs tag -c "Release_4_2_1"
1289         
1290         Version 4.2.1 released via SourceForge.  Any further commits to
1291         this tree will be in 4.2.2 if such a version is ever released.
1292
1293 2007-08-25  Ethan Merritt  <merritt@u.washington.edu>
1294
1295         * src/version.c src/syscfg.h src/Makefile.am src/win/pgnuplot.c
1296         * src/show.c:
1297         Update version and contact info for 4.2.1
1298
1299 2007-08-25  Shigeharu Takeno  <shige@iee.niit.ac.jp>
1300
1301         * docs/gnuplot-ja.doc docs/faq-ja.tex docs/README.ja docs/term-ja.diff:
1302         Sync Japanese documentation to current version.
1303
1304 2007-08-25  Ethan Merritt  <merritt@u.washington.edu>
1305
1306         * src/datafile.c (df_set_key_title): When a key title is loaded
1307         from a datafile columnheader, apply or don't apply enhanced text
1308         processing based on the setting of "set key {no}enhanced".
1309         Bug #1712560
1310
1311 2007-08-20  Timothee Lecomte  <timothee.lecomte@ens.fr>
1312
1313         * src/wxterminal/gp_cairo.c (gp_cairo_fill_pattern): Do not use
1314         negative coordinates to create hash patterns. This gives corruption
1315         with recent cairo versions (1.4.10 for example). Instead create them
1316         with rotations and scaling.
1317         Also scale the linewidth of the patterns with PATTERN_SIZE instead
1318         of its inverse.
1319
1320 2007-08-17  Ethan Merritt  <merritt@u.washington.edu>
1321
1322         * docs/gnuplot.doc: Remove extraneous {} from entry for 'set timestamp'.
1323
1324 2007-08-12  Ethan Merritt  <merritt@u.washington.edu>
1325
1326         * src/color.c (cbtick_callback)
1327         src/graph3d.c (xtick_callback ytick_callback ztick_callback)
1328         src/graphics.c (xtick2d_callback ytick2d_callback):
1329         The callback routines were testing for TC_DEFAULT in the wrong field
1330         (colorspec.lt instead of colorspec.type).
1331         Bug #1771240
1332
1333         * demo/electron.dem:  Remove the "offset command", which is buggy, and
1334         use a consistent x axis.  Still need to fix the bug in offset, however.
1335         Bug #1744139
1336
1337 2007-08-06  Petr Mikulik  <mikulik@physics.muni.cz>
1338
1339         * term/x11.trm (X11_text): Fix conditionally missing {.
1340
1341 2007-08-04  Ethan Merritt  <merritt@u.washington.edu>
1342
1343         * Tagged using command
1344                 cvs tag -c "Release_4_2_1-pre1"
1345
1346         * PATCHLEVEL src/version.c configure.in:
1347         Increment version to Version 4.2.1
1348
1349         * docs/gnuplot.doc docs/gnuplot.texi:  Revert leakage from
1350         cvs branch (4.3) documentation into 4.2 documentation. In
1351         particular, 4.2 does not support transparency or iteration.
1352
1353         * Makefile.am: Remove reference to obsolete README.exp
1354
1355         * missing:  Nobody "really needs" makeinfo.  Allow installs without it.
1356
1357 2007-08-04  Matthias Habl  <mhabl@users.sourceforge.net>
1358
1359         * configure.in: Allow to configure from inside an emacs script.
1360         Bug #1741156
1361
1362 2007-08-02  Ethan Merritt  <merritt@u.washington.edu>
1363
1364         * src/command.c (read_line): Treat line extension consistently
1365         for both interactive and non-interactive input paths. This is
1366         Timothee Lecomte's version of the fix.
1367         Bug #1753069.
1368
1369 2007-07-27  Dietmar Warning  <dietmar.warning@arcor.de>
1370
1371         * term/win.c (WIN_enhanced_open): Avoid compiler warning.
1372
1373 2007-07-24  Shigeharu Takeno  <shige@iee.niit.ac.jp>
1374
1375         * docs/gnuplot.doc: Fixed misprint in "3 multi-branch".
1376
1377 2007-07-24  Petr Mikulik  <mikulik@physics.muni.cz>
1378
1379         * term/win.trm: Document reading of wgnuplot.ini in user's %APPDATA%
1380         directory.
1381
1382 2007-07-17  Ethan Merritt  <merritt@u.washington.edu>
1383
1384         * src/fit.c (fit_command):
1385         Accept a string variable as the file name for "fit via <viafile>".
1386         Bug #1755532
1387
1388 2007-06-21  Ethan Merritt  <merritt@u.washington.edu>
1389
1390         Fix two special cases where gnuplot auto-increments the line type, but
1391         does not check whether the user has requested user-defined line styles
1392         instead (via "set style increment user").
1393
1394         * src/graph3d.c (do_3dplot cntr3d_lines):  If the [default] option
1395         `set clabel` is in effect then contours auto-increment over line types.
1396         Check for prefer_line_styles at this point.
1397
1398         * src/graphics.c (do_plot plot_boxes): Columnstacked histograms auto-
1399         increment over line types.  Check for prefer_line_styles at thie point.
1400
1401 2007-06-17  Ethan Merritt  <merritt@u.washington.edu>
1402
1403         * src/internal.c (f_sprintf): Remove any remaining escape sequences (%%)
1404         from the tail of the format string after all of the input variables have
1405         been processed.
1406         Bug #1739625
1407
1408 2007-06-17  Ethan Merritt  <merritt@u.washington.edu>
1409
1410         * src/save.c (save_tics): save [xyz]tics must not follow the "offset"
1411         info with a bare number, because a negative number will be mis-parsed.
1412         Bugfix.
1413
1414 2007-06-07  Ethan Merritt  <merritt@u.washington.edu>
1415
1416         * src/unset.c (unset_label): Do not treat "unset label <n>" as a fatal
1417         error just because label <n> is not currently defined. Bug #1732706
1418
1419         * term/post.trm (PS_load_fontfile): Add missing %.  Bug #1732991
1420
1421 2007-06-06  Petr Mikulik  <mikulik@physics.muni.cz>
1422
1423         * docs/gnuplot.doc: Hotkey 'q' does not close the pm terminal.
1424
1425 2007-06-04  Petr Mikulik  <mikulik@physics.muni.cz>
1426
1427         * term/djsvga.trm: Unify color sequence comply with other terminals.
1428         Fix DJSVGA_set_font(fontname) for an empty fontname.
1429
1430         * src/plot.c (main): Avoid printing "??Unknow" as the System welcome
1431         message under some versions of DOS (compilation by DJGPP).
1432
1433         * config/config.dj2 config/makefile.dj2: Updated Makefile for djgpp
1434         using a config.h file.
1435
1436 2007-06-03  Petr Mikulik  <mikulik@physics.muni.cz>
1437
1438         * src/history.c (write_history_n): Cannot use int_error() when exiting
1439         gnuplot.
1440
1441 2007-06-03  Petr Mikulik  <mikulik@physics.muni.cz>
1442
1443         * config/config.amg config/config.cyg config/config.mgw: Removed
1444         PNG_FOR_GIF.
1445
1446         * config/makefile.cyg config/makefile.mgw: Removed PNG_FOR_GIF and GIF.
1447         Write requirement for gd 2.0 and newer. Enable GIF_ANIMATION and JPEG.
1448
1449 2007-06-01  Ethan Merritt  <merritt@u.washington.edu>
1450
1451         * INSTALL: Remove obsolete instructions for unix builds without
1452         ./configure, old png driver.
1453
1454 2007-05-31  Petr Mikulik  <mikulik@physics.muni.cz>
1455
1456         * src/command.c (pause_command): On Windows, Gnuplot always bailed to
1457         command line after "pause mouse".
1458         Print the message of "pause <message>" into the gnuplot terminal
1459         unless for "pause -1 <message>" (message box).
1460
1461 2007-05-28  Ethan Merritt  <merritt@u.washington.edu>
1462
1463         * src/set.c (set_decimalsign):  Follow POSIX standard with regard to
1464         finding the value of LC_NUMERIC from the environment. Use the first
1465         match to LC_ALL, LC_NUMERIC, or LANG.
1466         Bug #1692541
1467
1468 2007-05-25  Ethan Merritt  <merritt@u.washington.edu>
1469
1470         * term/latex.trm: Add an explicit size option; clarify documentation.
1471         set terminal {latex | emtex} {default | {courier|roman} {<fontsize>}}
1472                      {size <XX>{unit}, <YY>{unit}}
1473         This brings the latex terminal into line with other terminals in 4.2
1474
1475 2007-05-23  Ethan Merritt  <merritt@u.washington.edu>
1476
1477         * term/svg.trm: Give font sizes explicitly in pt units.
1478
1479         * term/svg.trm: Subscript/superscripts position must be done using
1480         relative offsets, not absolute offset. Otherwise it prematurely
1481         terminates the scope of the surrounding "chunk" of text.
1482
1483         * Make a concession to non-compliant svg viewers and clean up the scope
1484         of tspan elements.  Many current generation svg viewers do not implement
1485         "em" space units.  To coddle these, we back off to approximating
1486         1 em == (1.1 * fontsize)pt
1487
1488 2007-05-22  Petr Mikulik  <mikulik@physics.muni.cz>
1489
1490         * src/command.c (pause_command): On Windows, "pause -1" does not work
1491         if it is the 1st command in a script. Bug #1713350.
1492
1493 2007-05-22  Timothee Lecomte  <timothee.lecomte@ens.fr>
1494
1495         * src/wxterminal/wxt_gui.cpp (wxt_sigint_restore): properly pass a
1496         pointer to signal().
1497
1498 2007-05-19  Ethan Merritt  <merritt@u.washington.edu>
1499
1500         * src/plot2d.c (get_data) src/graphics.c (plot_lines):
1501         Allow 2D plots "with lines lc rgb variable".
1502         Bug #1720032
1503
1504 2007-05-16  Daniel Sebald  <daniel.sebald@ieee.org>
1505
1506         * src/gplt_x11.c (image creation): Adjust image line pad according to
1507         image data width in XCreateImage().  Bug #1716389.
1508
1509 2007-05-14  Timothee Lecomte  <timothee.lecomte@ens.fr>
1510
1511         * src/command.c (fgets_ipc): Fix fgets_ipc so that it behaves like
1512         fgets (always NUL-terminate the returned string).
1513         Bugs #1716556 and #1673352
1514
1515 2007-05-09  Ethan Merritt  <merritt@u.washington.edu>
1516
1517         * src/color.d (ifilled_quadrangle): Initialize line style before
1518         setting color.  Bug #1715480
1519
1520         * src/misc.c (lp_use_properties): Pay attention to the point flag
1521         even if we fall through to a default line type. Bug #1715480
1522
1523 2007-05-07  Ethan Merritt  <merritt@u.washington.edu>
1524
1525         * term/aquaterm.trm (AQUA_options): Allow terminal window ID to come
1526         from a variable.  Bug #1714070
1527
1528 2007-05-05  Timothee Lecomte  <timothee.lecomte@ens.fr>
1529
1530         * src/wxterminal/wxt_gui.cpp (wxtThread::Entry):
1531         Fix the initialization of a sigset_t. The structure is not meant to be
1532         known, functions are provided instead. The previous code was
1533         completely wrong on non GNU systems.
1534
1535 2007-05-04  Daniel Sebald  <daniel.sebald@ieee.org>
1536
1537         * term/gd.trm (PNG_image): Fixed an image clipping bug in x dimension.
1538
1539 2007-05-04  Ethan Merritt  <merritt@u.washington.edu>
1540
1541         * src/graph3d.c (key_sample_point_pm3d):  The sample point in the key
1542         failed to note an explicit "lc rgb 'foo'" in the plot command, leading
1543         to a color mismatch between the plot and the key.  Bugfix.
1544
1545 2007-04-25  Ethan Merritt  <merritt@u.washington.edu>
1546
1547         * src/graph3d.c (do_3dplot): Correct Z coordinate of xyplane for log
1548         scale on Z.  Bug #1703370.
1549
1550 2007-04-24  Ethan Merritt  <merritt@u.washington.edu>
1551
1552         * term/x11.trm (X11_text):  term_reset() tries to close down all files
1553         and pipes cleanly. But it called on exit, the pipe to gnuplot_x11 may
1554         already be closed. Don't try to write to it.  Bug #1706945.
1555
1556 2007-04-17  Ethan Merritt  <merritt@u.washington.edu>
1557
1558         * term/post.trm: Change the default to "blacktext" for the TeX-based
1559         terminal variants (pstex pslatex epslatex). This is more in line with
1560         the behaviour in versions 4.0 and earlier.  In particular it means that
1561         the default settings do not require you to include the color.sty
1562         package.
1563
1564 2007-04-01  Ethan Merritt  <merritt@u.washington.edu>
1565
1566         * src/util.c (gprintf):  Accept the ' format specifier, which
1567         asks for digits to be grouped and separated according to the current
1568         locale.  We just pass it on to the C library for application.
1569         Bug #1692550
1570
1571 2007-03-27  Ethan Merritt  <merritt@u.washington.edu>
1572
1573         * docs/gnuplot.doc: Cross-reference 'set datafile fortran'.
1574
1575 2007-03-23  Ethan Merritt  <merritt@u.washington.edu>
1576
1577         * src/color.h src/graphics.c (plot_image_or_update_axes)
1578         term/pdf.trm (PDF_filled_polygon) src/color.c (filled_quadrangle
1579         filled_polygon_3dcoords filled_polygon_3dcoords_zfixed):
1580         Change gpiPoints to contain signed x,y values. This is what the
1581         explanatory comment always implied ("same as in gd.h"), but it
1582         wasn't true.  The change fixes several image and polygon clipping
1583         problems, including segfaults in the pdf driver.  It also fixes
1584         broken filledcurves on 64-bit machines.
1585         Bug #1612502
1586
1587 2007-03-21 Daniel Sebald  <daniel.sebald@ieee.org>
1588
1589         * src/graphics.c (boundary): The change of 2007-02-25 overlooked the
1590         2D plots having palettes that also required setup_tics(COLOR_AXIS,).
1591         Bug #1684789
1592
1593 2007-03-21  Ethan Merritt  <merritt@u.washington.edu>
1594
1595         These are mostly trivial patches that went into CVS soon after the
1596         code freeze for 4.2
1597
1598         * src/graphics.c (plot_impulses plot_points plot_dots)
1599         src/plot2d.c (get_data store_2dpoint store_label):
1600         Allows a third column of data containing color info to be used in
1601         2D plots (points/dots/impulses/labels),
1602
1603         * term/gd.trm (PNG_image) term/pdf.trm (PDF_image)
1604         term/post.trm (PS_image)
1605         src/wxterminal/gp_cairo.c (gp_cairo_draw_fillbox gp_cairo_draw_image):
1606         Teach gd pdf post and wxt terminals to clip images using the
1607         bounding box info passed in corners[2] and corners[3] via term->image().
1608
1609         * term/pdf.trm (PDF_SetFont): Trap errors from PDF font selection,
1610         making it non-fatal.
1611
1612         * src/axis.c (get_position_default):
1613         Reduce the problem of trailing comma after 2D offset.
1614
1615         * src/graph3d.c (plot3d_impulses): splot with impulses lt rgb variable.
1616
1617         * src/graphics.c (do_key_sample):
1618         If the length of a boxplot sample in the key is set to zero,  do not
1619         draw it at all.  Without this patch, a spurious vertical line appears
1620         in the key if the fillstyle includes a border.
1621
1622         * term/svg.trm (SVG_PathLimit SVG_MoveForced):
1623         Avoid ridiculously long paths by limiting total path length to 512.
1624
1625         * src/util3d.c (draw3d_line_unconditional):  Clip line segment.
1626         Fixes segfault when line segment endpoint went negative in bitmap.c
1627         Bug #1649887
1628
1629         * src/graph3d.c (do_3dplot draw_3d_graphbox):
1630         Add special-case tests to insure that the plot border is drawn either
1631         back or front (in front of the grid) when splot_map is set.
1632         Bug #1655001
1633
1634         * term/gd.trm (PNG_vector):  Grid lines (linetype 0) were always
1635         treated as alternating black/white/black/white.  Change this to
1636         alternating current_color/transparent/current_color/transparent.
1637         Bug #1655001
1638
1639         * src/set.c (parse_label_options):
1640         Make sure that there is a default point type, so that
1641         'set label <n> point' does in fact draw an acceptable point.
1642
1643         * src/datafile.h src/datafile.c (df_reset_after_error)
1644         src/util.c (int_error):
1645         The routines in datafile.c use local variables to track the context of
1646         expression evaluation; e.g. expressions may only reference data column
1647         values inside a `using` statement. But the state of these context
1648         variables is corrupted if an error exit bails directly to the command
1649         line, thus bypassing the normal execution path. Therefore we provide a
1650         routine df_reset_after_error() to be called from int_error().
1651
1652         * src/eval.c docs/gnuplot.doc:
1653         Allow strcol() and shorthand for stringcolumn()
1654
1655         * src/unset.c (unset_style):
1656         Add missing command "unset style line <n>".
1657
1658         * term/gd.trm (PNG_init):
1659         The color palette indexing of the brush is not necessarily the same as
1660         that of the main image.  Set initial color index to something invalid so
1661         that we force an update on first use.
1662         Bug #1673316
1663
1664         * src/term.c (init_term):
1665         Normally we initialize the default terminal on program entry. However,
1666         if the default is x11 then defer initialization until an actual plot
1667         command.  This mitigates problems if gnuplot_x11 cannot be started
1668         normally, and allows the user to select a different driver in the case
1669         that x11 is the default but is broken.
1670         Bug #1530601
1671
1672         * src/win/winmain.c (appdata_directory):
1673         WinNT can segfault if APPDATA is missing from the environment.
1674
1675 2007-03-03  Ethan Merritt  <merritt@u.washington.edu>
1676
1677         * PATCHLEVEL src/version.c configure.in docs/gnuplot.texi:
1678         Tag and package for release of 4.2 patchlevel 0
1679
1680         * docs/titlepage.tex: Update
1681
1682 2007-02-27  Ethan Merritt  <merritt@u.washington.edu>
1683
1684         * src/graphics.c: Remove spurious #ifdef that was masking the code to
1685         allow room for subscripts or superscripts when placing the x-axis label.
1686         Bug #1669038
1687
1688 2007-02-26  Ethan Merritt  <merritt@u.washington.edu>
1689
1690         * docs/gnuplot.doc: Add mention of "set multiplot title <page-title>".
1691
1692         * term/metapost.trm: Add missing terminal flag.
1693
1694 2007-02-25  Petr Mikulik  <mikulik@physics.muni.cz>
1695
1696         * src/color.c (draw_color_smooth_box) src/plot3d.c (eval_3dplots):
1697         Call setup_tics(COLOR_AXIS, 20) at the same place as setup_tics(...)
1698         for all other axes. Until now it was called much later during color box
1699         drawing where it could change the colour axis min or max by rounding it
1700         to lower/upper tics step.
1701
1702 2007-02-22  sobukus@users.sourceforge.net
1703
1704         * m4/apha.m4: Fix syntax of configuration test for gcc on alpha
1705
1706 2007-02-21  Shigeharu Takeno  <shige@iee.niit.ac.jp>
1707
1708         * docs/gnuplot-ja.doc docs/faq-ja.tex: Sync Japanese documentation
1709         to current version.
1710
1711 2007-02-18  Petr Mikulik  <mikulik@physics.muni.cz>
1712
1713         * src/pm3d.c (pm3d_plot): Use the z-averaging also for flushed
1714         triangles.
1715
1716 2007-02-17  Petr Mikulik  <mikulik@physics.muni.cz>
1717
1718         * docs/gnuplot.doc: Updates in dgrid3d and contours sections.
1719
1720 2007-02-13  Ethan Merritt  <merritt@u.washington.edu>
1721
1722         * src/graphics.c (boundary): Do not apply log scale range checks to
1723         colorbar and palette unless these really are used in the plot.
1724         Bug #1659059
1725
1726         * docs/gnuplot.doc docs/gnuplot-ja.doc: Clarify the section on
1727         'set log', and remove an empty entry point for 'set log cb'.
1728
1729 2007-02-11  Petr Mikulik  <mikulik@physics.muni.cz>
1730
1731         * src/command.c (pause_command): On Windows, cannot wait for Enter
1732         in "pause -1" in a non-interactive session without the graph window.
1733
1734 2007-02-10  Petr Mikulik  <mikulik@physics.muni.cz>
1735
1736         * src/command.c (pause_command): On Windows, wait for Enter in console
1737         instead for a mouse click in a special window if the graph window is
1738         not (yet) present.
1739
1740 2007-02-09  Ethan Merritt  <merritt@u.washington.edu>
1741
1742         * term/README: Fix confusing typo in TERM_TABLE layout description.
1743
1744 2007-02-10  Petr Mikulik  <mikulik@physics.muni.cz>
1745
1746         SF #1651350 win terminal: pause mouse key|any does not work
1747
1748         * src/mouse.c (event_keypress): Kill pending Pause dialog.
1749
1750         * src/win/wpause.c (PauseBox): Don't show "OK CANCEL" dialog when
1751         pausing for mouse.
1752
1753 2007-02-09  Daniel Sebald  <daniel.sebald@ieee.org>
1754
1755         * term/pdf.trm (PDF_point): Point type 1 was incorrectly drawn as a dot.
1756         Bug #1656433
1757
1758 2007-02-10  Juergen Wieferink  <wieferink@freenet.de>
1759
1760         * src/plot.c (main): Flag 'interactive' not reset to FALSE after running
1761         command "gnuplot - nonExistingScript.gp". On some platforms, gnuplot
1762         cannot 'exit' and goes to an infinite loop after Ctrl-D.
1763         Bug #1612995
1764
1765 2007-02-09  Petr Mikulik  <mikulik@physics.muni.cz>
1766
1767         * docs/gnuplot.doc: Add a dummy label for "3 data style" to avoid bug
1768         in doc2gih (try "help contour").
1769
1770 2007-02-08  Petr Mikulik  <mikulik@physics.muni.cz>
1771
1772         * src/plot3d.c (eval_3dplots): Improved message for non-grid data.
1773
1774 2007-01-31  Ethan Merritt  <merritt@u.washington.edu>
1775
1776         * term/gd.trm (ENHGD_FLUSH): libgd 2.0.34 will allow explicit request
1777         for Adobe Symbol font encoding.  Make use of this to handle transient
1778         use of Symbol font in enhanced text.  Does not affect older gd versions.
1779
1780 2007-01-29  Per Persson <persquare@mac.com>
1781
1782         * configure.in: Testing libreadline for remove_history presence
1783         instead of readline to avoid incompatible libedit wrapper.
1784         
1785 2007-01-26  Petr Mikulik  <mikulik@physics.muni.cz>
1786
1787         * term/post.trm: Typo in docs.
1788
1789 2007-01-24  Ethan Merritt  <merritt@u.washington.edu>
1790
1791         * src/hidden3d.c (build_networks): Add checks in the hidden3d code to
1792         cleanly skip empty plots.  This fix went into the trunk CVS 2 months
1793         ago, but apparently is needed in 4.2 also (test case provided by a
1794         user).
1795
1796 2007-01-23  Ethan Merritt  <merritt@u.washington.edu>
1797
1798         * configure.in: The libreadline checks got mangled. Bad patch?
1799         This fixes the breakage, and adds a warning if gd.h is not found.
1800
1801         * PATCHLEVEL src/version.c configure.in:
1802         Tag and package as release candidate 4.2-rc4
1803
1804 2007-01-22  Ethan Merritt  <merritt@u.washington.edu>
1805
1806         * PATCHLEVEL src/version.c configure.in:
1807         Tag and package as release candidate 4.2-rc3
1808
1809 2007-01-22  Petr Mikulik  <mikulik@physics.muni.cz>
1810
1811         * configure.in: Let the GNU readline be the default instead of the
1812         built-in readline. Improved messages for --with-readline.
1813
1814 2007-01-20  Petr Mikulik  <mikulik@physics.muni.cz>
1815
1816         * plot3d.c (plot3drequest): Deactive splot_map when reading [y1:y2]
1817         argument of splot. Fixes axis reversal of set view map;splot [] [y1:y2].
1818
1819 2007-01-19  Petr Mikulik  <mikulik@physics.muni.cz>
1820
1821         * demo/pm3d.dem: Better title for plots with scans forward and
1822         backward.
1823
1824 2007-01-14  Ethan Merritt  <merritt@u.washington.edu>
1825
1826         * src/gplt_x11.c (pr_encoding) term/x11.trm share/Gnuplot.app-defaults:
1827         Gnuplot_x11 has been using a default encoding *-* for x11 fonts. There
1828         is a bug in xorg-7.1 that causes this to fail. So we now provide an
1829         optional X-resource that can be used to set the default encoding to
1830         something else.  E.g.:
1831             echo "gnuplot*encoding: iso8859-15" | xrdb -merge
1832
1833 2007-01-10  Ethan Merritt  <merritt@u.washington.edu>
1834
1835         * src/gplt_x11.c (PaletteSetColor): Update current color in
1836         plot->current_rgb when setting color from a Palette. Bugfix.
1837
1838 2007-01-09  Ethan Merritt  <merritt@u.washington.edu>
1839
1840         * docs/gnuplot.texi: Sync with current docs
1841
1842 2007-01-06  Ethan Merritt  <merritt@u.washington.edu>
1843
1844         * term/gd.trm: Add error return check after calling gdImageCreate. This
1845         was not a useful check in earlier versions of libgd, but 2.0.34 will
1846         introduce serious sanity checking at the time of image creation.
1847
1848 2006-12-31  Ethan Merritt  <merritt@u.washington.edu>
1849
1850         * docs/term-ja.diff: Sync with current terminal source files.
1851
1852 2006-12-28  Daniel Sebald  <daniel.sebald@ieee.org>
1853
1854         * src/datafile.c (isanumber_pn, isatuple, token2double):
1855         Removed these functions as they repeat behavior of and somewhat
1856         inconsistent with real(const_express()).
1857         (plot_option_array): Use : instead of , for separator between elements.
1858         (token2tuple): Use real(const_express()) to parse image parameters.
1859         This allows variables to be used in image specs.
1860         (plot_option_comma_separated): Changed "comma_separated" to
1861         "multivalued" everywhere.  Changed the separator to a colon rather than
1862         a comma since the comma conflicts with the separator between multiple
1863         plots within a plot command.  The colon is also more consistent with the
1864         separator used in other commands like "using".
1865
1866         * demo/image.dem: Replaced , with : in appropriate places.
1867
1868         Bug #1590658
1869
1870 2006-12-24  Ethan Merritt  <merritt@u.washington.edu>
1871
1872         * term/svg.trm: Remove unused variable to quiet compiler warnings.
1873
1874 2006-12-23  Ethan Merritt  <merritt@u.washington.edu>
1875
1876         * src/graph3d.c (draw_3d_graphbox): Honor 2D setting for bmargin
1877         in 3D plots with "set view map".
1878
1879         * configure.in: I still can't spell "COMPATIBLE"
1880
1881 2006-12-21  Ethan Merritt  <merritt@u.washington.edu>
1882
1883         * term/gd.trm (PNG_graphics) docs/gnuplot.doc:
1884         Announce deprecation of "set size" to control output canvas size.
1885         Document the intended difference:
1886                 set term ... size XX,YY    controls size of canvas
1887                 set size XX,YY             scales relative to the canvas
1888         Warn that png/gif/jpeg (and pbm pdf) terminals honor old syntax for now,
1889         but will require explicit 'set term size ...' in post-4.2 versions.
1890
1891 2006-12-16  Ethan Merritt  <merritt@u.washington.edu>
1892
1893         * src/datafile.c (df_tokenise df_parse_string): Allow for quoted
1894         strings in comma-separated value files.
1895         Bug #1614424
1896
1897         * src/graph3d.c (draw_3d_graphbox): Honor 2D front/back settings
1898         for axis, grid, and border elements in 3D plots with "set view map".
1899
1900 2006-12-15  Ethan Merritt  <merritt@u.washington.edu>
1901
1902         * configure.in: Fix spelling of BACKWARDS_COMPATIBLE
1903
1904 2006-12-10  Daniel Sebald  <daniel.sebald@ieee.org>
1905
1906         * src/README src/graphics.c (plot_image_or_update_axes): 
1907         Augmented sign tests for determining image pixel orientation with the
1908         terminal scales in the x and y dimensions.
1909         Bug #1589589
1910
1911 2006-12-09  Ethan Merritt  <merritt@u.washington.edu>
1912
1913         * src/plot3d.c (get_3ddata): If the first data file is non-empty but
1914         has no usable data, then auto-scaling fails. Instead of a fatal error,
1915         just print a warning and try to plot subsequent data files.
1916         Bug #1610430
1917
1918         * demo/borders.dem: Replace deprecated syntax defined(bb) with 
1919         exists("bb").
1920
1921         * configure.in: Make the selection of backwards-compatibility an 
1922         explicit option.  We have been enabling it without even asking.
1923         Now you can disable it if you want to.
1924         Defaults to --enable-backwards-compatibiliy
1925
1926 2006-12-08  Ethan Merritt  <merritt@u.washington.edu>
1927
1928         * src/set.c (set_tic_prop) src/save.c (save_tics): NO_TICS is
1929         a bitmask value, not an integer constant. All tests for NO_TICS
1930         must be masked through TICS_MASK.
1931         Bug #1611764
1932
1933 2006-12-07  Timothee Lecomte  <timothee.lecomte@ens.fr>
1934
1935         * configure.in: Fix use of --without-kpsexpand
1936
1937 2006-11-24  Ethan Merritt  <merritt@u.washington.edu>
1938
1939         * docs/term-ja.diff: Update patch to match 4.2-rc2 driver source.
1940
1941 2006-11-28  Timothee Lecomte  <timothee.lecomte@ens.fr>
1942
1943         * configure.in: Fix bug in --{en|dis}able-wxwidgets
1944
1945         * src/wxterminal/wxt_gui.cpp:
1946         * src/wxterminal/wxt_gui.h:
1947         Allow building with wxMac, in addition to wxMSW and wxGTK.
1948
1949 2006-11-24  Ethan Merritt  <merritt@u.washington.edu>
1950
1951         * PATCHLEVEL configure.in src/version.c docs/gnuplot.texi:
1952         Update in preparation for second release candidate 4.2-rc2.
1953
1954         * term/svg.trm: Back out the raw/escaped option. It needs more thought.
1955
1956 2006-11-23  Mike Sutton  <mws116@usa.com>
1957
1958         * term/gd.trm (PNG_init PNG_vector PNG_point): Fix off-by-one error
1959         in specifying brush definitions that control line width.
1960
1961 2006-11-22  Ethan Merritt  <merritt@u.washington.edu>
1962
1963         * term/pdf.trm (PDF_graphics):  The multiplier from 'set size' was being
1964         applied twice, so the resulting plot scaled as the square of the size.
1965         Apply it only once, to the plot, not to the canvas.
1966
1967         * term/pbm.trm (PBM_graphics PBM_options): Decouple 'set size' from
1968         'set term pbm size XX,YY'. The latter will always yield an XX,YY image.
1969         Maintain (pre-4.2) behaviour if no explicit terminal size is given.
1970
1971 2006-11-19  Ethan Merritt  <merritt@u.washington.edu>
1972
1973         * config/makefile.mgw term/PostScript/prologue.ps PostScript/prologues.h
1974         term/post.h:  Update version number 4.1 -> 4.2 in several places.
1975
1976         * term/fig.trm (FIG_set_color): TC_LT was handled incorrectly.
1977         Bug #1599346
1978
1979         * src/misc.c (lp_use_properties): Remove annoying warning messages.
1980
1981 2006-11-18  Ethan Merritt  <merritt@u.washington.edu>
1982
1983         * term/fig.trm (FIG_filled_polygon) term/tgif.trm (TGIF_filled_polygon)
1984         term/pstricks.trm (PSTRICKS_filled_polygon):  These terminals were
1985         issuing a spurious warning message if term->filled_polygon() was called
1986         without a color palette having been initialized. It is perfectly fine
1987         to fill a polygon with other types of colorspec.
1988
1989 2006-11-17  Ethan Merritt  <merritt@u.washington.edu>
1990
1991         * term/cgm.trm (CGM_set_color): Fix stupid typo in array bounds check.
1992
1993 2006-11-16  Ethan Merritt  <merritt@u.washington.edu>
1994
1995         * src/plot2d.c (eval_plots): Giving a title for "newhistogram" is
1996         documented as optional. Do not return an error if it is missing.
1997
1998         * INSTALL: Add mention of patches needed for Ultrix compilation.
1999
2000 2006-11-15  Ethan Merritt  <merritt@u.washington.edu>
2001
2002         * graphics.h graphics.c (place_rectangles) graph3d.c:
2003         Add a parameter to place_rectangles that indicates with certainty
2004         whether this is a 2D plot or a 3D plot.
2005         Allow rectangles in splot if they are specified in screen coords.
2006         Also, insure that 'set view map' does not affect 2D plots.
2007         Bug #1596313
2008
2009 2006-11-12  Ethan Merritt  <merritt@u.washington.edu>
2010
2011         * src/save.c (save_set_all): The gpsavediff script strips out lines
2012         from a gnuplot save file if the options they describe have not changed
2013         from the default. We can help this simplification by writing
2014         infrequently used suboptions on a separate line. Also change saved
2015         command 'set key nobox' to match documented syntax.
2016
2017 2006-11-10  Timothee Lecomte  <timothee.lecomte@ens.fr>
2018
2019         * src/win/wpause.c:
2020         * src/win/wtext.c:
2021         * src/wxterminal/wxt_gui.cpp:
2022         * src/wxterminal/wxt_gui.h:
2023         * src/wxterminal/wxt_plot.h:
2024         Rework and simplify the event handling from the wxt terminal on
2025         Windows. Remove hooks from the wxt terminal in the Windows files.
2026
2027         * src/plot.c (main):
2028         * src/plot.h:
2029         Introduce a boolean to track the use of "-persist" on the command line.
2030         Remove WXWIDGETS-specific code. Call term_reset() using GP_ATEXIT().
2031
2032         * src/wxterminal/Makefile.am:
2033         * src/wxterminal/wxt_plot.h:
2034         Remove the file wxt_plot.h, now unused.
2035
2036         * src/wxterminal/wxt_gui.cpp (wxt_init, wxt_atexit):
2037         * src/wxterminal/wxt_gui.h:
2038         Use GP_ATEXIT() to register wxt_atexit().
2039         Rework "persist" behaviour on Windows.
2040
2041         * configure.in:
2042         * wxt_gui.cpp (wxt_atexit):
2043         * wxt_gui.h:
2044         Use fork() to make the "persist" behaviour satisfying on UNIX.
2045
2046 2006-11-07  Timothee Lecomte  <timothee.lecomte@ens.fr>
2047
2048         * src/wxterminal/wxt_gui.cpp (wxtPanel::DrawToDC): Draw the zoom
2049         coordinates with the same font as the plot.
2050
2051 2006-11-04  Ethan Merritt  <merritt@u.washington.edu>
2052
2053         * term/x11.trm (parse_driver): If this routine fails on first entry, we
2054         must not call int_error() because the longjump has not been set up yet.
2055         I.e. "setenv GNUPLOT_DRIVER_DIR illegal; setenv GNUTERM x11; gnuplot"
2056         would segfault on entry. Just a print warning and hope the user notices.
2057
2058 2006-11-03  Ethan Merritt  <merritt@u.washington.edu>
2059
2060         * src/datafile.c (df_readline): If the datafile we are supposedly
2061         reading from was never opened, simply return DF_EOF. This relieves the
2062         caller from having to check this separately before calling df_readline.
2063
2064         * src/datafile.c (df_open); If the datafile cannot be opened, set
2065         df_eof and return DF_EOF. FIXME: Having both methods is stupid; we
2066         should just get rid of df_eof and use the return value.
2067
2068         * src/graph3d.c (do_3dplot draw_3d_graphbox) src/graphics.c (do_plot): 
2069         * src/plot3d.c (eval_3dplots): 
2070         Do a better job of skipping over plots marked NODATA.  In particular do
2071         not try to scan their data for scaling or plot limits, and do not place
2072         an entry in the key box.
2073
2074         Bug #1579867
2075
2076 2006-11-03  Ethan Merritt  <merritt@u.washington.edu>
2077
2078         * src/datafile.c (df_readbinary): Fix error in logic of 2D and 3D
2079         rotation matrix initialization.
2080
2081 2006-11-01  Ethan Merritt  <merritt@u.washington.edu>
2082
2083         * docs/gnuplot.doc: Add an entry key for "help file", because otherwise
2084         this takes you to a section on avs binary format (confusing).
2085
2086 2006-10-28  Ethan Merritt  <merritt@u.washington.edu>
2087
2088         * src/show.c (show_ticdef) src/save.c (save_tics): Sace/show textcolor
2089         of tic labels correctly for cases other than a pure linetype (TC_LT).
2090         Bug #1586427
2091
2092 2006-10-22  Hans-Bernhard Broeker  <broeker@physik.rwth-achen.de>
2093
2094         * src/graphics.c (plot_image_or_update_axes): Operator | is
2095         forbidden on real C99 booleans.  Use || instead.
2096
2097         * src/datafile.c (df_readbinary): Operator | is forbidden on real
2098         C99 booleans.  Use || instead.
2099
2100         * src/axis.c (setup_tics): Operator & is forbidden on real C99
2101         booleans.  Use && instead.
2102
2103         * config/makefile.oww (WCFLAGS): Add -za99 to enable _Bool type in
2104         recent versions of OpenWatcom.
2105         (default): Mark .SYMBOLIC for wmake.
2106         (texticon.ico): Avoid endless rebuild by copying the generation
2107         command.
2108
2109 2006-10-21  Ethan Merritt  <merritt@u.washington.edu>
2110
2111         * src/datafile.c (df_open): Fix bug limiting the options for reading a
2112         plot key label from the data file; now allow title subcommand:
2113             plot foo using 1:(column(N)) title column(N)
2114
2115         * src/plot2d.c (get_data): Add #ifdef EAM_HISTOGRAMS to a section that
2116         prevented configuration with --disable-histograms
2117
2118 2006-10-21  Timothee Lecomte  <timothee.lecomte@ens.fr>
2119
2120         * configure.in: Rework the summary displayed at the end of the
2121         'configure' script, so that it is more complete, useful, consistent and
2122         still readable.
2123
2124 2006-10-20  Bernhard Simon
2125
2126         * src/color.c (make_palette): Add missing stderr parameter in 
2127         FPRINTF debugging statements.
2128
2129 2006-10-17  Ethan Merritt  <merritt@u.washington.edu>
2130
2131         * term/svg.trm: option to control treatment of non-ascii characters
2132         "set term svg raw" - pass them through unaltered
2133         "set term svg escaped" - replace byte-by-byte with &#xNN;
2134
2135         * configure.in: Print a warning if snprintf() is not found during auto-
2136         configuration. Recommend that the user provide snprintf() via an
2137         external version.
2138
2139 2006-10-15  Ethan Merritt  <merritt@u.washington.edu>
2140
2141         * term/gd.trm: Switch to Unicode-compatible representation of octal
2142         characters given as \xxx in a single-quoted test string.
2143         Bug #1534649
2144
2145 2006-10-14  Ethan Merritt  <merritt@u.washington.edu>
2146
2147         * term/svg.trm (SVG_options): Do not reset terminal options to default
2148         values if invoked from `set termoption` rather than `set terminal`.
2149         Bug #1534649
2150
2151 2006-10-13  Ethan Merritt  <merritt@u.washington.edu>
2152
2153         * demo/rgb_variable.dem: Some platforms do not allow you to read a
2154         hexadecimal constant via strtod(). This prevents reading RGB colors as
2155         hexadecimal constants. Add a test for this, and print a warning.
2156         Bug #1574814
2157
2158         * term/gplt_x11.c: Place #ifdef HAVE_STRDUP protection around a code
2159         section that uses it to send signals to the KDE konsole.
2160         Older systems may not provide strdup(), but they also don't run KDE.
2161         Even if they did, the code in question is hardly a required feature.
2162         Fixes compile problem on Ultrix.
2163
2164 2006-10-12  Ethan Merritt  <merritt@u.washington.edu>
2165
2166         * term/svg.trm: Replace -rc1 svg driver with the version from cvs
2167         12 Oct 2006.  This changes the handling of escaped characters and
2168         characters given as octal constants.  Bug #1575007
2169
2170 2006-10-12  Daniel Sebald  <daniel.sebald@ieee.org>
2171
2172         * docs/gnuplot.doc: Small corrections.
2173
2174         * term/post.trm (PS_encode_image): Added gamma correction for images
2175         using a PostScript transfer function. SF Patch [1575425].
2176
2177 2006-10-11  Petr Mikulik  <mikulik@physics.muni.cz>
2178
2179         * src/command.c (test_palette_subcommand): Fixed order of set tics
2180         commands.
2181
2182 2006-10-10  Ethan A Merritt  <merritt@u.washington.edu>
2183
2184         * m4/alpha.m4:  Have the new macro use __alpha as the basis for the
2185         test.  Checked on Digital Unix 4.0D and Tru64 V5.1
2186
2187 2006-10-10  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
2188
2189         * m4/alpha.m4: New macro GP_ALPHA.  Try to auto-detect if
2190         compilater targets DEC Alpha/AXP CPU.  If so, add -mieee or -ieee
2191         flag to CFLAGS to avoid FPU weirdness.
2192
2193         * configure.in (GP_ALPHA): Call new macro.
2194
2195 2006-10-08  Petr Mikulik  <mikulik@physics.muni.cz>
2196
2197         * NEWS README.1ST src/version.c: Updates.
2198
2199 2006-10-08  Daniel Sebald  <daniel.sebald@ieee.org>
2200
2201         * demo/borders.dem: Place all 16 plots on one multiplot.
2202
2203         * demo/all.dem: Put borders.dem inside all.dem.
2204
2205 2006-10-08  Hans-Bernhard Broeker  <broeker@physik.rwth-achen.de>
2206
2207         * docs/gnuplot.doc: Fix gotcha in list of alignment 
2208         options in 'at <position>' case.
2209
2210 2006-10-05  Ethan A Merritt  <merritt@u.washington.edu>
2211
2212         * src/term.c (change_term): For backward compatibility, allow
2213         "set term X" as shorthand for "set term x11".
2214
2215 2006-10-04  Ethan A Merritt  <merritt@u.washington.edu>
2216
2217         * tutorial/eg7.plt: Make sure no local encoding is in effect, since
2218         the corresponding TeX package is probably not going to be loaded.
2219
2220         * term/post.trm (PS_vector): Fix breakage introduced by Bugfix #1542050.
2221         The path length must not be set to 0 without issuing a stroke command,
2222         otherwise the current path may never be flushed at all.
2223
2224 2006-10-03  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
2225
2226         * src/graph3d.c (place_arrows3d): Clip arrows even in 3D.  Patch
2227         from Harald Harders (SF #1569232).
2228
2229 2006-10-02  Ethan A Merritt  <merritt@u.washington.edu>
2230
2231         * share/LaTeX/Makefile.am: If ./configure has determined that TeX is
2232         not installed on this machine, do not try to install gnuplot.cfg
2233         in the TeX directory tree.
2234         Bug #1569033
2235
2236 2006-10-02  Daniel Sebald  <daniel.sebald@ieee.org>
2237
2238         * docs/gnuplot.doc: Changed documentation for image to reflect fact
2239         that uniform sampling is assumed.  Fix other typos.
2240
2241 2006-10-01  Ethan A Merritt  <merritt@u.washington.edu>
2242
2243         * docs/gnuplot.texi docs/doc2texi.el docs/gnuplot.doc: 
2244         Update version number to 4.2 and date to 2006
2245
2246 2006-10-01  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
2247
2248         * PATCHLEVEL: Mark for first release candidate.  4.2-rc1
2249
2250         * VERSION: Bump to version 4.2.
2251
2252 2006-10-01  Hans-Bernhard Broeker  <broeker@physik.rwth-achen.de>
2253
2254         * configure.in (AC_INIT, AM_INIT_AUTOMAKE, AC_CONFIG_SRCDIR):
2255         Changed to allow automake version to be checked.  Avoid annoyingly
2256         frequent problems from CVS users who just have too ancient
2257         automakes, but only detect that by showing us obscure error
2258         messages.  Required automake may have to be increased still.
2259         
2260 2006-09-28  Timothee Lecomte  <timothee.lecomte@ens.fr>
2261
2262         * src/wxterminal/wxt_plot.h: Fix compilation on Windows, where syscfg.h
2263         has to be included for TBOOLEAN to be defined in wtext.c
2264
2265 2006-09-26  Juergen Wieferink  <wieferink@freenet.de>
2266
2267         * src/graphics.c (plot_betweencurves): If the input file contains a
2268         blank line, terminate current filled area and start a new one.
2269         Unfortunately it is not currently possible to distinguish between a
2270         blank line and an invalid/missing coordinate.
2271
2272         * src/plot2d.c (get_data): Add comments to document the problem of
2273         distinguishing a blank line from an invalid data point. (EAM)
2274
2275         Bug #1563430
2276
2277 2006-09-24  Shigeharu Takeno  <shige@iee.niit.ac.jp>
2278
2279         * docs/gnuplot-ja.doc docs/faq-ja.tex: Sync Japanese documentation,
2280         SF Patch [1519215].
2281
2282 2006-09-23  Ethan A Merritt  <merritt@u.washington.edu>
2283
2284         * src/pm3d.c (set_plot_with_palette): It used to be that all plots
2285         needing a colorbox had pm3d_color.type == TC_DEFAULT.  This is no
2286         longer true, so add a more specific check on whether a colorbox is
2287         needed.  Bugfix.
2288
2289 2006-09-23  Timothee Lecomte  <timothee.lecomte@ens.fr>
2290
2291         * src/wxterminal/wxt_gui.cpp (wxtPanel::OnSize): Clean floating-point
2292         comparison nonsense.
2293
2294 2006-09-22  Juergen Wieferink  <wieferink@freenet.de>
2295
2296         * term/post.trm (PS_vector): To avoid accummulated error in a long
2297         series of relative moves or draws, we were issuing a "stroke" command
2298         periodically to force an update of the absolute position. This has the
2299         bad side affect of resetting the current dot/dash pattern.  Fix this so
2300         that instead of using "stroke", we simply force an absolute vector
2301         before continuing. This avoids accummulated error but does not reset
2302         the dot/dash pattern.
2303         Bugfix #1542050
2304
2305 2006-09-21  Timothee Lecomte  <timothee.lecomte@ens.fr>
2306
2307         * configure.in: Bump required version of wxWidgets to 2.5.3 for the
2308         wxt terminal.
2309
2310         * src/wxterminal/wxt_gui.cpp (DrawToDC): Fix double cast warnings.
2311         Fix a lazy constructor that seems not to be accepted on all setups.
2312
2313 2006-09-19  Ethan A Merritt  <merritt@u.washington.edu>
2314
2315         * src/show.c (disp_value): Force clean printout of "NaN" on save,
2316         print, or show commands.  Without this, the value is printed as
2317         "nan.0", which is not parsable by set or load commands.  Bugfix
2318         #1544347
2319
2320 2006-09-16  Timothee Lecomte  <timothee.lecomte@ens.fr>
2321
2322         * configure.in: Rework the checks for cairo and pango so that the error
2323         messages are more helpful, mostly by copying the defaults pkg-config
2324         messages and making them non-fatal.
2325         Revert the minimum version of pango to 1.10.0 but refuse to compile the
2326         wxWidgets terminal with pango 1.10.2.
2327
2328 2006-09-16  Hans-Bernhard Broeker  <broeker@physik.rwth-achen.de>
2329
2330         * docs/gnuplot.doc (set format): Make documentation for missing
2331         <axes> argument match actual behaviour.
2332
2333 2006-09-15  Timothee Lecomte  <timothee.lecomte@ens.fr>
2334
2335         * src/wxterminal/wxt_gui.cpp (DrawToDC): Fill in gray the empty space
2336         that has been let by a change in the aspect ratio of the window.
2337
2338         * trm/wxt.trm (TERM_HELP): Try to document the window resize behaviour
2339         a little better.
2340
2341 2006-09-14  Timothee Lecomte  <timothee.lecomte@ens.fr>
2342
2343         * configure.in: Bump the required version of pango to 1.10.3 to fix a
2344         bug in earlier versions about scaling matrix not being applied properly
2345         to the fonts.
2346
2347 2006-09-12  Hans-Bernhard Broeker  <broeker@physik.rwth-achen.de>
2348
2349         * docs/gnuplot.doc (format specifiers): Fix typo in one example.
2350
2351 2006-09-11  Timothee Lecomte  <timothee.lecomte@ens.fr>
2352
2353         * src/wxterminal/wxt_gui.cpp (wxtConfigDialog::OnButton):
2354         * src/wxterminal/wxt_gui.h (wxt_settings_queue, wxt_settings_apply):
2355         Queue the modified rendering settings instead of applying them right
2356         away, so that the plot is not messed up during a window resize.
2357
2358 2006-09-10  Timothee Lecomte  <timothee.lecomte@ens.fr>
2359
2360         * src/wxterminal/gp_cairo.c (gp_cairo_draw_text): Fix the use of the
2361         Symbol font in non-enhanced mode, a peace of code was not pasted
2362         properly.
2363
2364         * src/wxterminal/wxt_gui.cpp (wxt_set_font): Fix the use of a
2365         non-initialized integer as the fontsize.
2366
2367 2006-09-10  Shigeharu Takeno  <shige@iee.niit.ac.jp>
2368
2369         * docs/gnuplot-ja.doc: Sync Japanese documentation to recent changes in
2370         English files. SF Patch [1519215], rev.1.385.
2371
2372 2006-09-01  Juergen Wieferink  <wieferink@freenet.de>
2373
2374         * src/command.c (string_expand): Fix segfault if a truly enormous
2375         string is to be used as an input line.
2376
2377 2006-09-01  Petr Mikulik  <mikulik@physics.muni.cz>
2378
2379         * docs/gnuplot.doc: Edits of the "What is new in gnuplot 4.2".
2380
2381         * docs/gnuplot.doc term/x11.trm: Comments on 'raise' does not raise.
2382
2383 2006-08-30  Harald Harders  <h.harders@tu-bs.de>
2384
2385         * src/graphics.c (place_arrows): Allow for terminal-specific clipping,
2386         exactly as done elsewhere in the code.
2387
2388 2006-08-30  Ethan A Merritt  <merritt@u.washington.edu>
2389
2390         * src/graphics.c (do_plot): The border attribute of fill style was
2391         ignored by filledcurves. Change this to match all other places where
2392         fillstyle is honored.
2393
2394 2006-08-28  Lars Hecking  <lhecking@users.sourceforge.net>
2395
2396         * prepare: Allow importing auto* tools from the environment.
2397
2398 2006-08-26  Ethan A Merritt  <merritt@u.washington.edu>
2399
2400         Fix program errors revealed by issuing the command sequence
2401            set termoption font 'face,size'; show term
2402            set termoption font 'face'; show term
2403         to all terminal types.
2404
2405         * term/gd.trm term/svg.trm term/tgif.trm:  Accept comma-separated font
2406         face, size. Reset to default font size if no size information is given.
2407
2408         * term/tkcanvas.trm: Fix infinite loop if unrecognized terminal option.
2409
2410 2006-08-24  Ethan A Merritt  <merritt@u.washington.edu>
2411
2412         * src/plot3d.c (get_3ddata): Increment the current point even if its
2413         value is undefined.  This allows grid spacing to be maintained, and
2414         correctly handles `splot ... using ($1):($2):($3)`.
2415
2416         FIXME: This is only a partial solution. Deeper problems exist in the
2417         handling of missing/NaN/junk data values during input. In particular,
2418         gridding is still corrupted in the case of `splot ... using 1:2:3`.
2419
2420 2006-08-23  Ethan A Merritt  <merritt@u.washington.edu>
2421
2422         * src/color.c (cbtick_callback): Add handling of text properties 
2423         associated with colorbox tic labels, making them like the other axis
2424         tic labels.
2425         Bug #1543927
2426
2427 2006-08-21  Shigeharu Takeno  <shige@iee.niit.ac.jp>
2428
2429         * docs/gnuplot-ja.doc
2430         Sync Japanese documentation to recent changes in English files.
2431         (rev.1.383) 15Aug2006
2432
2433 2006-08-21  Ethan A Merritt  <merritt@u.washington.edu>
2434
2435         * src/save.c (save_variables__sub): Do not save NaN to output file,
2436         since it does not print correctly.
2437
2438         * src/eval.c (update_gpval_variables): Make it explicit which variables
2439         are updated from which context.
2440
2441         * src/plot.c (main) src/util.c (int_error): Call update_gpval_variables
2442         on program entry and on int_error.
2443
2444         Bug #1540398  (last release-critical tracker item)
2445
2446 2006-08-19  James R. Van Zandt  <jrvz@comcast.net>
2447
2448         * term/cgm.trm: update email address
2449
2450 2006-08-19  Ethan A Merritt  <merritt@u.washington.edu>
2451
2452         * src/graphics.c: One half of the definition of clip_fill was 
2453         inadvertently omitted from the patch of 2006-06-04. This fix allows the
2454         improved clipping to apply to all filled curves, whereas without it the
2455         new clipping code only checked for "closed" filled curves.
2456
2457 2006-08-16  Ethan A Merritt  <merritt@u.washington.edu>
2458
2459         * src/gadgets.h: Initialize default histogram title structure to use
2460         character units for the title offset. Fixes spurious error if the
2461         y axis is log scale.
2462
2463 2006-08-14  Ethan A Merritt  <merritt@u.washington.edu>
2464
2465         * src/graphics.c (do_key_sample): Check for terminal support of 
2466         term->filled_polygon before using it to draw a key sample. Fixes
2467         segfault in epson driver (and probably others) if a filled area
2468         is assigned an RGB color.
2469         Bugfix.
2470
2471         * src/eval.c (update_gpval_variables): Test for term==NULL, and if so
2472         return without doing anything. This prevents a segfault. However, why
2473         does the program not trigger a similar segfault elsewhere?
2474         Bug #1540398
2475
2476 2006-08-13  Ethan A Merritt  <merritt@u.washington.edu>
2477
2478         * docs/gnuplot.doc: Clarify the argument required by exists(), and
2479         provide an example of passing it a string variable containing the
2480         name of another udv (possibly useful in conjunction with macros).
2481
2482 2006-08-13  Petr Mikulik  <mikulik@physics.muni.cz>
2483
2484         * docs/doc2tex.c (puttex): Don't split index words at - or _; replace
2485         _ by space.
2486
2487 2006-08-11  Ethan A Merritt  <merritt@u.washington.edu>
2488
2489         * term/PostScript/prologue.ps: Remove comment with my name in it.
2490         Further tweak to the PatternBgnd macro.
2491
2492 2006-08-12  Petr Mikulik  <mikulik@physics.muni.cz>
2493
2494         * term/PostScript/cp437.ps term/PostScript/cp850.ps 
2495         term/PostScript/koi8r.ps: Remove superfluous C comment characters.
2496
2497         * term/PostScript/cp852.ps: Remove my info.
2498
2499 2006-08-11  Timothee Lecomte  <timothee.lecomte@ens.fr>
2500
2501         * term/post.trm: Fix preprocessor logic for !defined(GNUPLOT_PS_DIR).
2502
2503 2006-08-11  Petr Mikulik  <mikulik@physics.muni.cz>
2504
2505         * term/PostScript/prologue.ps: Replace multiple spaces by a tabulator.
2506
2507         * docs/doc2tex.c (puttex): Remove superfluous spaces around \index{x}.
2508
2509 2006-08-11  Bastian Maerkisch  <bmaerkisch@web.de>
2510
2511         * config/makefile.nt: Define GNUPLOT_PS_DIR to use external PostScript
2512         prologue files.
2513
2514 2006-08-11  Petr Mikulik  <mikulik@physics.muni.cz>
2515
2516         * docs/gnuplot.doc: Some comments in the help for bind and mouse
2517         variables. 
2518
2519 2006-08-10  Shigeharu Takeno  <shige@iee.niit.ac.jp>
2520
2521         * docs/gnuplot-ja.doc
2522         Sync Japanese documentation to recent changes in English files.
2523         (rev.1.381) 08Aug2006
2524
2525 2006-08-09  Ethan A Merritt  <merritt@u.washington.edu>
2526
2527         * term/post.trm term/PostScript/prologue.ps: Move the pattern-fill
2528         background initialization out of the terminal driver and into the
2529         prologue script, with a user-toggle at the top of the file. Allows
2530         pseudo-transparency, and complete redefinition of the pattern styles
2531         without rebuilding gnuplot.
2532
2533 2006-08-09  Timothee Lecomte  <timothee.lecomte@ens.fr>
2534
2535         * docs/Makefile.in: Revert change from 2006-07-18 (define
2536         GNUPLOT_PS_DIR), now useless as the PostScript prologue help no longer
2537         has any #ifdef.
2538
2539 2006-08-09  Bastian Maerkisch  <bmaerkisch@web.de>
2540
2541         SF Patch [1505261] wgnuplot: open file-open-dialog in current dir
2542
2543         * src/win/wmenu.c (SendMacro): Windows XP uses a strange initial
2544         directory for the file open dialog. This patch forces the dialog to
2545         always open in the current directory. So now, if you change the
2546         directory via 'cd', the file open dialog opens where expected.
2547
2548 2006-08-08  Hans-Bernhard Broeker  <broeker@physik.rwth-achen.de>
2549
2550         * src/show.c (show_version): Fix C99-ism by reintroducing
2551         a pair of braces that had been removed.
2552         
2553 2006-08-07  Timothee Lecomte  <timothee.lecomte@ens.fr>
2554
2555         * src/wxterminal/wxt_gui.cpp (wxtPanel::wxt_cairo_create_bitmap):
2556         Use a reference instead of a pointer to avoid misusing an undocumented
2557         constructor that will be removed in wxWidgets >= 2.7.0.
2558
2559 2006-08-07  Ethan A Merritt  <merritt@u.washington.edu>
2560
2561         * demo/all.dem: Add rectangle.dem to the standard test set.
2562         
2563         * demo/image.dem demo/macros.dem demo/rainbow.dem demo/rectangle.dem:
2564         Now that we have the configuration options in GPVAL_COMPILE_OPTIONS we
2565         can use this to test for the presence of optional features needed for
2566         any particular demo.  These particular demos require configuration
2567         options that are marked EXPERIMENTAL in version 4.2, so we test for
2568         the presence of the feature and if it is missing then we print a 
2569         warning message and skip the rest of the demo.  This allows "make check"
2570         to succeed even if the EXPERIMENTAL features are configured out.
2571
2572 2006-08-06  Timothee Lecomte  <timothee.lecomte@ens.fr>
2573
2574         * docs/gnuplot.doc: Document GNUPLOT_PS_DIR in the list of environment
2575         variables.
2576
2577         * INSTALL: Likewise.
2578         Synchronize the output of `./configure --help'.
2579         Document the requirements of the wxWidgets terminal.
2580
2581         * configure.in: Remove detection of libpng, useless since the
2582         standalone png driver has been removed.
2583
2584         * src/Makefile.am (AM_CPPFLAGS); Remove PREFIX and VERSION_MAJOR, those
2585         were used by the wxWidgets terminal but are not anymore.
2586
2587 2006-08-05  Ethan A Merritt  <merritt@u.washington.edu>
2588
2589         * tutorial/tutorial.tex: Update version statement to 4.2
2590
2591         * src/version.c src/version.h: Global (char *)compile_options.
2592
2593         * src/show.c (show_version): Save the configuration options string
2594         produced for "show version long" in (char *)compile_options. If called
2595         as show_version(NULL), do this and nothing else.
2596
2597         * src/plot.c (main): Call show_version() on program entry in both
2598         interactive and non-interactive mode so that it initializes the
2599         compile_options string.
2600
2601         * src/eval.c (update_gpval_variables): New udv GPVAL_COMPILE_OPTIONS
2602         that makes the compile_options string available to the user.
2603
2604 2006-08-05  Daniel Sebald  <daniel.sebald@ieee.org>
2605
2606         * src/history.c: Built-in readline history command was losing one
2607         saved entry every time.  Fix the start point for the save.
2608         Bug #1531532
2609
2610 2006-08-04  Ethan A Merritt  <merritt@u.washington.edu>
2611
2612         * term/pdf.trm term/post.trm term/emf.trm term/cgm.trm 
2613         term/metapost.trm: term->options() should not reset the terminal to
2614         its default values if it is called from "set termoption" rather than
2615         from "set term".
2616         Bug #1534649
2617
2618         * docs/gnuplot.doc: Fix typo and update example commands to use
2619         exists("Foo") rather than define(Foo).
2620
2621         * src/eval.c (update_gpval_variables): Store PATCHLEVEL as a string if
2622         possible, so that people can use this as an identifier for customized
2623         versions. 
2624
2625 2006-08-03  Ethan A Merritt  <merritt@u.washington.edu>
2626
2627         * term/pdf.trm (PDF_set_color PDF_linetype PDF_filled_polygon):
2628         Implement the "mono" option, which up until now has not done anything
2629         other than failing to set new linetypes.
2630         Bug #1517932
2631
2632 2006-08-03  Petr Mikulik  <mikulik@physics.muni.cz>
2633
2634         * term/PostScript/prologues.h: Regenerated.
2635
2636         * term/PostScript/ps_header.sh: Force always the same sorting.
2637
2638         * term/post.trm term/PostScript/prologue.ps: Move "Blacktext {} if" into
2639         the definitions of {M}{LCR}show, to avoid it directly in the postscript
2640         body.
2641
2642 2006-08-01  Ethan A Merritt  <merritt@u.washington.edu>
2643
2644         * src/datafile.c (df_readascii): Allow a string-valued function
2645         to provide the time/date string for interpreting axis coordinates
2646         given after 'set {xyz}data time'.
2647         Bug #1445586
2648
2649 2006-07-31  Timothee Lecomte  <timothee.lecomte@ens.fr>
2650
2651         * README.1ST: Update notes on the gd library.
2652
2653 2006-07-31  Ethan A Merritt  <merritt@u.washington.edu>
2654
2655         * term/gd.trm (PNG_linetype): Fix off-by-one error in checking for
2656         minimum legal linetype. Could conceivably have caused a segfault.
2657
2658         * demo/rectangle.dem demo/html/index.save: Update demo for 4.2
2659
2660 2006-07-30  Ethan A Merritt  <merritt@u.washington.edu>
2661
2662         * docs/gnuplot.doc (Known Bugs): The 'nohidden3d' options does
2663         not work for parametric curves. Bug #1531432.
2664
2665 2006-07-30  Shigeharu Takeno  <shige@iee.niit.ac.jp>
2666
2667         * docs/gnuplot-ja.doc docs/term-ja.diff:
2668         Sync Japanese documentation to recent changes in English files.
2669
2670 2006-07-30  Timothee Lecomte  <timothee.lecomte@ens.fr>
2671
2672         * term/post.trm: Reword the doc about the prologue files, so that we do
2673         not need the #ifdef GNUPLOT_PS_DIR, and so that the use of the
2674         environment variable GNUPLOT_PS_DIR is always documented since it is
2675         always available.
2676
2677 2006-07-30  Daniel Sebald  <daniel.sebald@ieee.org>
2678
2679         * docs/gnuplot.doc: Format norm()/invnorm() info for 80 characters.
2680
2681 2006-07-29  Ethan A Merritt  <merritt@u.washington.edu>
2682
2683         * configure.in: Remove warning about needing a patch for libreadline
2684         (not relevant to libreadline version 5).
2685
2686         * docs/gnuplot.texi: Update to match current documentation.
2687
2688 2006-07-29  James R. Van Zandt  <jrv@vanzandt.comcast.net>
2689
2690         * docs/gnuplot.doc: clarify definitions of functions norm() and igamma()
2691
2692 2006-07-29  Timothee Lecomte  <timothee.lecomte@ens.fr>
2693
2694         * docs/gnuplot.doc: Another round of additions to the "news" section
2695         of the help.
2696
2697         * src/plot.c (main): Fix parsing of "-persist" for the wxWidgets
2698         terminal when X11 is not defined, and when _Windows is defined.
2699
2700         * term/ai.trm (TERM_HELP): Add notice that the terminal is outdated
2701         and that post should be used instead.
2702
2703 2006-07-28  Timothee Lecomte  <timothee.lecomte@ens.fr>
2704
2705         * docs/gnuplot.doc: Add details about new features in 4.2 with full
2706         sentences and following the same format as 4.0 new features.
2707
2708         * src/command.c (rlgets) [HAVE_LIBREADLINE]: Add an extra string
2709         comparison not to remove false duplicates from the history.
2710         BUG #1529200
2711
2712 2006-07-28  Ethan A Merritt  <merritt@u.washington.edu>
2713
2714         * tutorial/Makefile.am.in:  Set environmental variable GNUTERM to latex
2715         before running gnuplot on the tutorial demos.  Bypasses any potential
2716         conflicts of default terminal type with currently installed terminals.
2717         Bugfix.
2718
2719         * src/misc.c (lp_parse parse_colorspec): Incorrect parsing of linetype
2720         colorspec if the colorspec was not the last thing on the command line.
2721         Bug #1526387
2722
2723         * term/emf.trm: Implement "set term emf ... size XX,YY".
2724
2725         * term/post.trm term/dumb.trm: Update terminal description
2726
2727 2006-07-27  Ethan A Merritt  <merritt@u.washington.edu>
2728
2729         * term/pslatex.trm (EPSLATEX_set_color): If the color is specified
2730         by linetype, fall back to PS_linetype for monochrome/grayscale plots.
2731         Bug #1529884
2732
2733 2206-07-27  Timothee Lecomte  <timothee.lecomte@ens.fr>
2734
2735         * docs/gnuplot.doc (x11_mouse): Reword the section about possible hangs
2736         when piping from /dev/null to reflect the 4.2 behaviour where mouse is
2737         turned on by default.
2738
2739         * src/plot.c (main):
2740         * src/wxt_gui.c (wxt_atexit):
2741         * src/wxt_plot.h:
2742         Move the code parsing **argv for "-persist" from wxt_atexit() to
2743         main(). X11_args() parses it too in main() and removes the tokens that
2744         it recognizes from **argv, so we need to do it before that happens.
2745         Also avoid processing of the mouse events when the wxt terminal is not
2746         the current active one at exit time.
2747
2748 2006-07-27  Shigeharu Takeno  <shige@iee.niit.ac.jp>
2749
2750         * docs/gnuplot-ja.doc docs/term-ja.diff:
2751         Sync Japanese documentation to recent changes in English files.
2752
2753 2006-07-26  Per Persson  <persquare@mac.com>
2754         * term/aquaterm.trm: Made UTF8 the default encoding for AquaTerm.
2755         
2756 2006-07-26  Hans-Bernhard Broeker  <broeker@physik.rwth-achen.de>
2757
2758         * tutorial/Makefile.am.in (RUN_GNUPLOT): Can the .plt.tex command
2759         sequence into this new macro.
2760         (.plt.tex): Use the new macro. Ged rid of the @ marker that hides
2761         the gnuplot invocation, while at it.
2762         (eg7.eps): New rule using the macro, to ensure make knows how to
2763         make the .eps file, even if the .tex output is still present.
2764
2765 2006-07-26  Timothee Lecomte  <timothee.lecomte@ens.fr>
2766
2767         * tutorial/.cvsignore: Add *.eps and test.tex to the list of files
2768         to be ignored by CVS.
2769
2770 2006-07-25  Timothee Lecomte  <timothee.lecomte@ens.fr>
2771
2772         * term/README: Change IMAGE_DRIVER to the true WITH_IMAGE.
2773
2774 2006-07-24  Timothee Lecomte  <timothee.lecomte@ens.fr>
2775
2776         * term/wxt.trm (wxt_options): Fix wrong test on tri-state variable.
2777
2778 2006-07-23  Timothee Lecomte  <timothee.lecomte@ens.fr>
2779
2780         * docs/gnuplot.doc (Syntax): Change wording to avoid reference to
2781         `enhanced postscript`.
2782
2783 2006-07-22  Timothee Lecomte  <timothee.lecomte@ens.fr>
2784
2785         * docs/gnuplot.doc: Add here and there some references to the wxWidgets
2786         terminal, where appropriate.
2787         * term/post.trm (00psglobal): Remove reference to 'if compiled with
2788         pm3d'.
2789         * term/post.trm (epslatex): Change reference from 'set ticscale' to
2790         'set tics scale'.
2791
2792 2006-07-21  Ethan A Merritt  <merritt@u.washington.edu>
2793
2794         * src/gplt_x11.c term/x11.trm term/wxt.trm:  Make x11 and wxt share a
2795         common syntax for switching between "quit = q" and "quit = ctrl-q"
2796         behaviour from the command line:
2797                 set term foo {{no}ctrlq}
2798
2799 2006-07-20  Ethan A Merritt  <merritt@u.washington.edu>
2800
2801         * src/eval.c src/eval.h src/plot.c: Add a pre-defined udv NaN that is
2802         guaranteed to evaluate as NaN. This provides a convenient way to define
2803         a user function that explicitly returns NaN under some conditions.
2804         Bug #1158281
2805
2806 2006-07-20  Shigeharu Takeno  <shige@iee.niit.ac.jp>
2807
2808         * docs/gnuplot-ja.doc: Sync to current English version.
2809
2810 2006-07-20  Ethan A Merritt  <merritt@u.washington.edu>
2811
2812         * term/*.trm:  Revert patchset of 2006-07-06
2813         Restore explicit help entries for "set term foo ...".
2814         Daniel has a patch to help.c which would obviate this fix, but I judge
2815         that had better wait til after 4.2.  This returns us to a state that
2816         was satisfactory for a long time.
2817
2818         * docs/term-ja.diff: EAM - Modify patch so that it applies without error,
2819         but it still needs to be updated to track the recent changes to post.trm
2820         that add a section describing GNUPLOT_PS_DIR.
2821
2822 2006-07-18  Timothee Lecomte  <timothee.lecomte@ens.fr>
2823
2824         * src/wxterminal/wxt_gui.h (wxtPanel): New state variable
2825         wxt_ruler_lineto.
2826
2827         * src/wxterminal/wxt_gui.cpp (wxt_set_cursor): Handle the new flags -3
2828         and -4 for "line from ruler to current mouse position".
2829         (OnMotion): Redraw on mouse motionto update the line to ruler.
2830         (Draw): Draw a line from the ruler to current position when asked to.
2831
2832 2006-07-18  Ethan A Merritt  <merritt@u.washington.edu>
2833
2834         * term/post.trm:  Add help-file sections describing the PostScript
2835         prolog processing, and the environmental variable GNUPLOT_PS_DIR.
2836         
2837         * term/post.trm: Add a %%BeginProlog line to the output stream.
2838
2839         * docs/Makefile.in: Define GNUPLOT_PS_DIR so that the corresponding
2840         documentation is processed (Timothee Lecomte).
2841
2842         * src/plot3d.c (eval_3dplots): Unnecessary initialization to quiet
2843         spurious compiler warning.
2844
2845 2006-07-18  Hans-Bernhard Broeker  <broeker@physik.rwth-achen.de>
2846
2847         * config/makefile.oww (TERMFLAGS): Add -DGNUPLOT_PS_DIR flag.
2848         (GNUPLOT_PS_DIR): Define the relative PostScript path.
2849
2850         * config/makefile.mgw: Add a line to help Emacs detect this is a
2851         Makefile.
2852         (term.$(O)): -DGNUPLOT_PS_DIR shouldn't really be down here.
2853         (TERMFLAGS): Move the -DGNUPLOT_PS_DIR flag in here.
2854
2855 2006-07-18  Petr Mikulik  <mikulik@physics.muni.cz>
2856
2857         SF Patch [1520821] line from ruler to current mouse position if polar
2858         distance
2859
2860         * src/mouse.c term/README: Two new flags for term->set_cursor(flag,...):
2861         -3 = draw line between ruler and current mouse position,
2862         -4 = don't draw (erase) line between ruler and current mouse position.
2863         They are issued when mousing with displayed ruler and showing polar
2864         distance or tangent.
2865
2866         * src/gplt_x11.c: New plot variables ruler_lineto_{on|x|y}, and function
2867         DrawLineToRuler(plot) to draw and erase line between ruler and current
2868         mouse position. This implements calls of set_cursor(flag,...) for 
2869         flag=-3 and -4.
2870
2871         * src/win/wgraph.c: Same as for gplt_x11.c, just with ruler_lineto
2872         structure.
2873
2874 2006-07-17  Timothee Lecomte  <timothee.lecomte@ens.fr>
2875
2876         * term/post.trm (PS_dump_prologue_file): Modify the Windows code
2877         to use GNUPLOT_PS_DIR as the relative path
2878
2879         * config/makefile.mgw: Add an entry to define GNUPLOT_PS_DIR.
2880
2881 2006-07-17  Bastian Maerkisch  <bmaerkisch@web.de>
2882
2883         * term/post.trm (PS_dump_prologue_file): OS/2 code to look
2884         for PostScript prologue files relatively to the executable path.
2885
2886 2006-07-17  Ethan A Merritt  <merritt@u.washington.edu>
2887
2888         * NEWS docs/gnuplot.doc:  Update list of known bugs, and add index
2889         entries to help find them in the docs.
2890
2891         * src/plot2d.c (get_data): Remove debugging statement that escaped
2892         into cvs.
2893
2894 2006-07-16  Ethan A Merritt  <merritt@u.washington.edu>
2895
2896         * term/pslatex.trm (EPSLATEX_set_color): Filter out redundant commands
2897         to change the color in the *.tex output stream by buffering each 
2898         set_color command, and only sending the most recent one if necessary at
2899         the time the next TeX plot element is sent.
2900         Bug #1517932.
2901
2902         * docs/gnuplot.doc: Document the new FIT_* user variables, and clarify
2903         the use of locale settings.
2904
2905 2006-07-15  Timothee Lecomte  <timothee.lecomte@ens.fr>
2906
2907         * term/PostScript/prologues.h term/PostScript/ps_header.sh
2908         term/PostScript/README:  Set up an automated system for encapsulating
2909         the external PostScript prologue files back into a header for inclusion
2910         in-line in post.trm if necessary.
2911         
2912         * term/post.trm: If GNUPLOT_PS_DIR is defined, then load the prologue
2913         data at run-time from the externally maintained files in that directory.
2914         If GNUPLOT_PS_DIR is not defined, then include the equivalent text data
2915         as static arrays at compile time.
2916
2917         * config/makefile.mgw:  Define some GNUPLOT_PS_DIR.
2918
2919         * src/win/winmain.h:  Declare szModuleName as extern
2920         (EAM - what is this???).
2921
2922         Bug #1510816
2923
2924 2006-07-15  Ethan A Merritt  <merritt@u.washington.edu>
2925
2926         * src/fit.c (regress): Export user-visible variables from the fit.
2927         FIT_NDF : Number of degrees of freedom
2928         FIT_WSSR : Weighted sum-of-squares residual
2929         FIT_STDFIT : sqrt(WSSR/ndf), called "rms of residuals" in the log file
2930         FIT_CONVERGED : 1 if the previous fit converged; 0 otherwise
2931
2932 2006-07-15  Daniel Sebald  <daniel.sebald@ieee.org>
2933         * src/command.c (history_command): Remove recursive function call to
2934         avoid problem with "flag" being in incorrect state if the recalled
2935         command from history fails.  Now use approach where command from
2936         history is parsed to check if it itself is also history.
2937
2938 2006-07-14  Timothee Lecomte  <timothee.lecomte@ens.fr>
2939
2940         * src/wxterminal/gp_cairo.c: Respect ISO C90 standard (mainly move
2941         declarations to beginning of functions).
2942
2943 2006-07-14  Ethan A Merritt  <merritt@u.washington.edu>
2944
2945         * term/post.trm (PS_dump_prologue_file): Try harder to expand short
2946         file name into legal VMS or Windows path+file. Give more informative
2947         error messages if the file cannot be found.
2948
2949 2006-07-14  Juergen Wieferink  <wieferink@freenet.de>
2950
2951         * src/eval.c (fill_gpval_string): Remove cast to (char *) by correcting
2952         a dereference of the string value.
2953
2954 2006-07-13  Juergen Wieferink  <wieferink@freenet.de>
2955
2956         * src/eval.c (fill_gpval_string): Do not risk calling gpfree_string
2957         on uninitialized udv.
2958
2959         * src/eval.c (update_gpval_variables): Treat GPVAL_TERM just like all
2960         the other GPVAL_* variables.
2961
2962         * standard.c standard.h (f_exists): Allow to compile with 
2963         ./configure --disable-stringvariables
2964
2965 2006-07-12  Ethan A Merritt  <merritt@u.washington.edu>
2966
2967         * configure.in:  Enable HIDDEN3D_QUADTREE by default.
2968
2969         * term/post.trm (PS_linetype): Additional optimization from not forcing
2970         an absolute move if the linetype change has been optimized away.
2971
2972         * term/pslatex.trm (EPSLATEX_linetype): Step back from over-general test
2973         for unnecessary linetype change.  Forward it to PS_linetype for the
2974         actual decision. Without this, a pure linewidth change or a pure
2975         dash style change are incorrectly ignored.
2976         Bugfix.
2977
2978 2006-07-12  Timothee Lecomte  <timothee.lecomte@ens.fr>
2979
2980         * demo/Makefile.am.in:
2981         * demo/random.dem:
2982         * demo/vector.dem:
2983         Rename temporary *.dat files to *.tmp to prevent them to be included by
2984         'make dist'.
2985
2986 2006-07-11  Ethan A Merritt  <merritt@u.washington.edu>
2987
2988         * term/pslatex.trm (EPSLATEX_set_color): Restore support for color
2989         text set using fractional palette values. If the terminal is in mono
2990         mode, or has the blacktext option, the fractional text color remains
2991         a pure grayscale.
2992         Bug #1517932
2993
2994 2006-07-11  Per Persson  <persquare@mac.com>
2995
2996         * term/aquaterm.trm: Made aqua terminal respect font requests of the
2997         form: font "<fontface>{,<fontsize>}", old syntax still supported too. 
2998         
2999 2006-07-11  Petr Mikulik  <mikulik@physics.muni.cz>
3000
3001         * config/makefile.cyg config/makefile.mgw config/makefile.nt: #define
3002         EAM_OBJECTS and HIDDEN3D_VAR_PTSIZE.
3003
3004 2006-07-10  Ethan A Merritt  <merritt@u.washington.edu>
3005
3006         * demo/mouselabels.dem demo/mouselab_1.dem demo/mouselab_2.dem:
3007         New demo using GPVAL_* variables and mouse/keystroke interaction to
3008         achieve interactive placement of plot labels. Tested for x11 and wxt.
3009
3010         * demo/mousevariables.dem demo/keystroke.dem(removed): 
3011         Remove the keystroke part of this demo, since this feature is now
3012         demonstrated more usefully by mouselabels.dem
3013
3014         * src/eval.c:  Allow both  if(exists("foo")) and if(exist("foo")).
3015         The latter is what octave uses.
3016
3017 2006-07-09  Hans-Bernhard Broeker  <broeker@physik.rwth-achen.de>
3018
3019         * demo/Makefile.am.in (CLEANFILES): Remove stringvar.tmp.
3020
3021         * tutorial/Makefile.am.in (CLEANFILES): Fix up list of created
3022         files to be cleaned.
3023         (.plt.tex): Allow vpath builds.
3024         (.eps.pdf): New rule to fix pdf build of tutorial.
3025         (tutorial.dvi): Add dependency on eg7.eps.
3026         (tutorial.pdf): Add dependency on eg7.pdf
3027
3028         * src/win/wtext.c: Fix mixed-up line endings.
3029
3030         * docs/gnuplot.doc: Repair some blank-only lines.  Again.
3031
3032 2006-07-08  Timothee Lecomte  <timothee.lecomte@ens.fr>
3033
3034         * configure.in: Always check for Cairo rendering support in Pango, and
3035         add the corresponding linking flags to WX_LIBS.
3036
3037         * src/wxterminal/gp_cairo.c (gp_cairo_enhanced_flush): Initialize
3038         overprinted_width to avoid gcc warning.
3039
3040         * term/wxt.trm (wxt_options): Initialize font_setting to avoid gcc
3041         warning.
3042
3043 2006-07-08  Ethan A Merritt  <merritt@u.washington.edu>
3044
3045         * src/parse.c:  Revert to parse.c version 1.44 (10 Jun 2006).
3046         This does away with dead code left after yesterday's partial
3047         reversion.
3048
3049         * term/post.trm (PS_linetype PS_set_color): Restore long-time commented
3050         out test for redundant linetype commands. Don't "change" linetype if the
3051         new one is the same as the current one.  term->set_color must also 
3052         invalidate the previous linetype so that the next call to term->linetype
3053         isn't ignored.
3054         Bug #1517932.
3055
3056 2006-07-07  Shigeharu Takeno  <shige@iee.niit.ac.jp>
3057
3058         * docs/gnuplot-ja.doc docs/term-ja.diff:
3059         Sync Japanese documentation to recent changes in English files.
3060
3061 2006-07-07  Daniel Sebald  <daniel.sebald@ieee.org>
3062
3063         * src/parse.c (parse_primary_expression): Partially back out patch of
3064         2006-06-11.  Do not check number of variables passed to a user function
3065         at the time of parsing - only at time of evaluation.
3066         Bug #1518553
3067
3068 2006-07-07  Ethan A Merritt  <merritt@u.washington.edu>
3069
3070         * src/help.c (FindHelp): Add missing pair of brackets to disambiguate
3071         if/if/else syntax.
3072
3073         * src/command.c (history_command): Fix segfault if re-execution of a
3074         previous command terminates via int_error().
3075         Bug #1514453
3076
3077         * demo/rectangle.dem: Add reset at end, and prompts at 'pause -1'.
3078
3079         * src/plot2d.c (get_data): HISTOGRAM plot styles must leave a slot for
3080         all entries, even if they are flagged as DF_MISSING. Otherwise the
3081         histogram plot elements do not line up properly.
3082
3083 2006-07-06  Daniel Sebald  <daniel.sebald@ieee.org>
3084
3085         * docs/gnuplot.doc term/*.trm: Remove redundant help keys; i.e. those
3086         that are distinguished only by one being a short form of the other.
3087         No change in help or documentation behavior is intended.
3088         E.g.
3089             ?set terminal cgm
3090             ?set term cgm         %% delete this one
3091
3092 2006-07-06  Ethan A Merritt  <merritt@u.washington.edu>
3093
3094         * term/pslatex.trm (EPSLATEX_linetype EPSLATEX_set_color):
3095         Keep track of last color and/or linetype set, and filter out
3096         duplicate requests for the same setting. It remains true that the
3097         color change command is sent to both the *.eps and *.tex output stream,
3098         whereas in general only one of the two needs to see it.
3099         Bug #1517932.
3100
3101         * tutorial/tutorial.tex tutorial/eg7.plt:  Make the file names
3102         of the 7th example plot match the other six examples.
3103
3104 2006-07-07  Timothee Lecomte  <timothee.lecomte@ens.fr>
3105
3106         * src/wxterminal/wxt_gui.h:
3107         * src/wxterminal/wxt_gui.cpp (wxtPanel::Draw):
3108         (wxtPanel::DrawToDC):
3109         (wxtPanel::OnPaint):
3110         Small rework of the double-buffering to fully comply with wxWidgets
3111         API.
3112
3113 2006-07-07  Petr Mikulik  <mikulik@physics.muni.cz>
3114
3115         * src/set.c docs/gnuplot.doc: New options 
3116         'set mouse {noruler|ruler {at x,y}}'.
3117
3118         * src/mouse.h src/mouse.c: New function set_ruler() to (un)set ruler
3119         (at a given position).
3120
3121 2006-07-06  James R. Van Zandt  <jrv@vanzandt.comcast.net>
3122
3123         * demo/bivariat.dem:
3124         - Adjust the step size so the range of integration is an integral
3125           number of steps
3126         - Use Simpson's rule rather than just taking the function value at
3127           one end of each step
3128         - Add points from the real erf(x) to the first plot, for comparison
3129         - For the second plot, define the integrand f(x)=cos(x)
3130           That way, the integral is sin(x) instead of being offset by a
3131           constant of integration
3132         - For the last plot, use "with impulses" to make the pattern more
3133           apparent, and because the function is only defined over the integers
3134
3135 2006-07-06  Petr Mikulik  <mikulik@physics.muni.cz>
3136
3137         * src/set.c (set_mouse) docs/gnuplot.doc: Command 'set mouse
3138         polardistance{deg|tan}' to flip between the two possibilities
3139         of displaying polar distance.
3140
3141 2006-07-05  Ethan A Merritt  <merritt@u.washington.edu>
3142
3143         * term/pdf.trm: Add {size xx,yy} option, exactly parallel to the
3144         option recently added for PostScript. Size can be given in inches
3145         or cm.
3146
3147 2006-07-05  Bastian Maerkisch  <bmaerkisch@web.de>
3148
3149         * config/makefile.nt: Add /DWIN32 to CFLAGS.
3150
3151 2006-07-04  Daniel Sebald  <daniel.sebald@ieee.org>
3152
3153         * demo/image.dem: Remove obsolete warning about terminal support.
3154
3155 2006-07-04  Bastian Maerkisch  <bmaerkisch@web.de>
3156
3157         * term/win.trm (WIN_enhanced_open):  (2nd try)
3158         Reset to _default_ font, not _current_ font!
3159         Bug #1510055
3160
3161 2006-07-04  Ethan A Merritt  <merritt@u.washington.edu>
3162
3163         * term/gd.trm (PNG_justify_text): Move the conditional test for
3164         HAVE_GD_TTF inside the PNG_justify_text() routine, rather than
3165         maintaining it in parallel in the PNG/JPEG/GIF TERM_TABLE entries.
3166         Actually, we were failing to maintain it in parallel, causing
3167         Bug #1515292.
3168
3169 2006-07-04  Petr Mikulik  <mikulik@physics.muni.cz>
3170
3171         * src/mouse.c (builtin_toggle_ruler, turn_ruler_off): New autogenerated
3172         variables MOUSE_RULER_X and MOUSE_RULER_Y.
3173
3174         * src/mouse.c (GetRulerString, builtin_toggle_polardistance): Let polar
3175         coordinates show either (distance,angle) or (distance,tangent) after
3176         multiple clicks of the default hotkey '5'.
3177
3178         * src/mouse.c (GetRulerString): Support polar coordinates in the
3179         mouse&ruler message string also for log-log plots.
3180
3181 2006-07-02  Daniel Sebald  <daniel.sebald@ieee.org>
3182
3183         * src/show.c (show_command): Place in some messages about "show data"
3184         and "show linestyle" being deprecated.
3185
3186 2006-06-30  Ethan A Merritt  <merritt@u.washington.edu>
3187
3188         * demo/image.dem demo/demo.edf:  Set binary flag in cvs repository.
3189         cvs admin -kb demo/image.dem demo/demo.edf
3190
3191 2006-06-30  Petr Mikulik  <mikulik@physics.muni.cz>
3192
3193         * src/breaders.c (edf_filetype_function): Don't print a debugging
3194         message.
3195
3196         * src/eval.c (update_gpval_variables): Added automatic read-only
3197         variables GPVAL_VERSION and GPVAL_PATCHLEVEL.
3198
3199 2006-06-29  Bastian Maerkisch  <bmaerkisch@web.de>
3200
3201         * term/win.trm (WIN_enhanced_open): Reset to _default_ font, not
3202         _current_ font!   Bug #1510055
3203
3204 2006-06-29  Ethan A Merritt  <merritt@u.washington.edu>
3205
3206         * src/set.c src/show.c: Less alarming error message if deprecated syntax
3207         is detected. Undeprecate "set key {below|above}".
3208         Bug #1514614.
3209
3210         * tutorial/Makefile.am.in eg4.plt eg5.plt eg6.plt eg7.plt test.plt 
3211         tutorial.tex header.tex makefile.dst linepoin.plot (removed):
3212         Replace deprecated syntax in tex example plots. Add an epslatex sample.
3213
3214         * src/save.c: Add missing newline after 'set pm3d depthorder'.
3215
3216         * docs/gnuplot.doc docs/gnuplot-ja.doc: Refer to current version as
3217         4.2 rather than 4.1.
3218
3219 2006-06-29  Daniel Sebald  <daniel.sebald@ieee.org>
3220
3221         * demo/airfoil.dem histograms.dem histograms2.dem image.dem multiplt.dem
3222         random.dem simple.dem starmap.dem: 
3223         Small changes to ensure demos do not use deprecated syntax.
3224
3225         * docs/gnuplot.doc: Clean up "set title" and "set xlabel" and remove
3226         any examples with non up-to-date syntax.
3227
3228 2006-06-29  Petr Mikulik  <mikulik@physics.muni.cz>
3229
3230         SF Patch [1488448] User-available GPVAL_ variables
3231
3232         * NEWS docs/gnuplot.doc src/command.c src/eval.c src/eval.h src/plot.c
3233         src/plot2d.c src/plot3d.c src/save.c src/set.c src/show.c src/unset.c:
3234         New routine update_gpval_variables() to create and update autogenerated
3235         read-only GPVAL_ variables, and its callers. New command option
3236         'show variables all'.
3237
3238 2006-06-28  Daniel Sebald  <daniel.sebald@ieee.org>
3239
3240         * src/history.c (write_history_n): Account for the case where the
3241         number of history entries is less than what the user asked for.
3242
3243 2006-06-28  Ethan A Merritt  <merritt@u.washington.edu>
3244
3245         * src/term.c (change_term) term/x11.trm: The x11 terminal driver has
3246         been carrying around two copies of TERM_TABLE, one named "x11" and
3247         the other named "X11". But the "X11" copy has suffered from bit rot.
3248         Delete this redundant copy, and instead replace "X11" with "x11"
3249         at the time the "set term" request is processed.
3250
3251 2006-06-27  Daniel Sebald  <daniel.sebald@ieee.org>
3252
3253         * src/unset.c (unset_minitics, reset_command): Change action of
3254         unset_minitics to MINI_OFF and set to MINI_DEFAULT after calling
3255         from reset_command().
3256         Bug #1346814.
3257
3258 2006-06-27  Shigeharu Takeno  <shige@iee.niit.ac.jp>
3259
3260         * docs/gnuplot-ja.doc docs/term-ja.diff:
3261         Sync Japanese documentation to recent changes in English files.
3262
3263 2006-06-27  Keith Hellman  <khellman@users.sourceforge.net>
3264
3265         * Accommodate new gnu autotools convention of installing read-only
3266         data relative to @datarootdir@
3267         Bug #1513675
3268
3269 2006-06-27  Timothee Lecomte  <timothee.lecomte@ens.fr>
3270
3271         * m4/pkg.m4: New files containing the pkg-config macros.
3272
3273 2006-06-26  Ethan A Merritt  <merritt@u.washington.edu>
3274
3275         * term/wxt.trm: Add index point for "help set term wxt".
3276
3277         * configure.in src/variable.c:  Only invoke kpsexpand if configuration
3278         option --with-kpsexpand is chosen at build time.
3279         Bug #1377786
3280
3281 2006-06-26  Daniel Sebald  <daniel.sebald@ieee.org>
3282
3283         * src/help.c (FindHelp): Fixed bug introduced on 2006-06-23 where
3284         strcpy() overwrote keyword, inadvertently losing the subtopic string.
3285         Now expand all abbreviated sub-keywords until end of keyword string.
3286
3287         * src/util.c (lower_case): Fix off-by-one bug in characters treated.
3288
3289 2006-06-25  Ethan A Merritt  <merritt@u.washington.edu>
3290
3291         * src/plot2d.c (get_data): If a data field matches the current setting
3292         of 'set datafile missing "foo"', then do not interrupt the plotted line
3293         spanning the adjacent points in the plot.  This was the behavior in 
3294         version 3.7, and is what the documents describe, but has not been the
3295         case in version 4.0.
3296         Bugs #775810 #918793 #969322 #1403945
3297
3298 2006-06-24  Ethan A Merritt  <merritt@u.washington.edu>
3299
3300         * src/datafile.c: Whitespace cleanup, comments.
3301
3302         * demo/contours.dem demo/vector.dem: Update demo to use "set view map".
3303
3304 2006-06-23  Daniel Sebald  <daniel.sebald@ieee.org>
3305
3306         * src/help.c (FindHelp): Return a pointer to an empty help key if the
3307         user help string is ambiguous.  Change the len computation from strlen()
3308         to strcspn() so that non ambiguous, sub-optioned strings work.
3309         (help): Only PrintHelp if text exists to prevent blank line at output.
3310
3311 2006-06-23  Daniel Sebald  <daniel.sebald@ieee.org>
3312
3313         * demo/image.dem: Clean up missing quotes.  Removed some resets so
3314         that the palette doesn't change except when necessary.
3315
3316         * src/graphics.dem src/set.c: Cosmetic changes.
3317
3318 2006-06-22  Ethan A Merritt  <merritt@u.washington.edu>
3319
3320         * configure.in src/datafile.c (df_readline): Check input values
3321         against NaN, but only if the system supports the isnan() test.
3322         NaN input values are treated as UNDEFINED.
3323         Bug #1490699
3324
3325 2006-06-21  Ethan A Merritt  <merritt@u.washington.edu>
3326
3327         * demo/scatter2.bin demo/sine.bin demo/using.bin demo/blutux.rgb:
3328         Flag these files as binary in the CVS repository
3329                  cvs admin -kb *.bin *.rgb
3330         Hopefully this will fix image.dem under Windows
3331
3332 2006-06-21  Timothee Lecomte  <timothee.lecomte@ens.fr>
3333
3334         * term/wxt.trm: Small correction in TERM_HELP.
3335
3336 2006-06-20  Timothee Lecomte  <timothee.lecomte@ens.fr>
3337
3338         * src/wxterminal/wxt_gui.cpp: Small cleanups to avoid -Wall warnings.
3339
3340 2006-06-20  Ethan A Merritt  <merritt@u.washington.edu>
3341
3342         * src/plot.c (main) src/term.c (init_terminal): Revisit fix of
3343         2004-08-25 - call term->option() on entry if the default terminal is set
3344         from GNUTERM. We have only been doing this for the libgd terminals, but
3345         it turns out to be necessary for PostScript also, and probably others.
3346         Bug #1509033
3347
3348         * demo/stringvar.dem demo/html/index.save demo/html/Makefile:
3349         Modify the stringvar demo for use with webify, and add it to the
3350         demo web page.
3351
3352         * src/set.c (load_tic_series): Fix parsing error that had the effect
3353         of requiring an explicit end point for the tic series unless this was
3354         the last thing on the command line.
3355
3356 2006-06-19  Ethan A Merritt  <merritt@u.washington.edu>
3357
3358         * term/post.trm: Initialize PS_default_font to "Helvetica,14".
3359         In the worst case scenario, this guarantees a non-zero font size
3360         and an actual PostScript font.
3361         Bug #1509033
3362
3363 2006-06-19  Timothee Lecomte  <timothee.lecomte@ens.fr>
3364
3365         * configure.in (GNUPLOT_PS_DIR): Do not pass GNUPLOT_PS_DIR in
3366         config.h .
3367
3368         * src/Makefile.am: Pass GNUPLOT_PS_DIR as a CPPFLAG.
3369
3370         * term/Makefile.am.in: Install the *.ps files the automake way.
3371
3372         * config/makefile.mgw (WXT): Do not install the PNG icons of the
3373         wxWidgets terminal (now embedded).
3374
3375 2006-06-19  Ethan A Merritt  <merritt@u.washington.edu>
3376
3377         * src/plot3d.c (get_3ddata): After reading in the data points, check
3378         that the axis ranges are legal.  If the input data contains NaN or Inf
3379         then the axis scaling may fail.
3380         Bug #1490699.
3381
3382 2006-05-18  Bastian Maerkisch  <bmaerkisch@web.de>
3383
3384         * src/win/wtext.c: Add mouse wheel scroll support for text window.
3385
3386 2006-06-18  Shigeharu Takeno  <shige@iee.niit.ac.jp>
3387
3388         * docs/gnuplot-ja.doc docs/README.ja docs/term-ja.diff
3389         src/win/README.win-ja src/win/wgnuplot-ja.mnu:
3390         Sync Japanese documentation to recent changes in English files.
3391
3392 2006-06-18  Ethan A Merritt  <merritt@u.washington.edu>
3393
3394         * src/show.c (show_version):  List additional configuration options.
3395         Make the show version output more compact (25 lines).
3396
3397         * term/emf.trm (EMF_linetype EMF_dashtype): It is necessary to set the
3398         line color and dash type every time either is changed.
3399         Bugfix.
3400
3401 2006-06-17  Timothee Lecomte  <timothee.lecomte@ens.fr>
3402
3403         * src/wxterminal/bitmaps/png/autoscale_png.h:
3404         * src/wxterminal/bitmaps/png/clipboard_png.h:
3405         * src/wxterminal/bitmaps/png/config_png.h:
3406         * src/wxterminal/bitmaps/png/grid_png.h:
3407         * src/wxterminal/bitmaps/png/help_png.h:
3408         * src/wxterminal/bitmaps/png/nextzoom_png.h:
3409         * src/wxterminal/bitmaps/png/previouszoom.h:
3410         * src/wxterminal/bitmaps/png/replot_png.h:
3411         New files containing the translation of the binary PNG files into
3412         C arrays to be included in the source code.
3413
3414         * src/wxterminal/bitmaps/png/README.embedding:
3415         Text file briefly explaining the purpose of the embedded PNG files.
3416
3417         * src/wxterminal/wxt_gui.cpp (wxtApp::OnInit): Remove the code to load
3418         the PNG files from standard paths (unreliable). Replace by the loading
3419         of the embedded files.
3420         (wxtPanel::UpdateModifiers): New routine to compare and update the
3421         state of the modifier keys as known by the core. It replaces the
3422         unreliable tracking of the press and release events. All wxMouseEvent
3423         and wxKeyEvent processing methods updated.
3424         (wxtPanel::OnKeyEvent):
3425         (wxt_init):
3426         (wxtConfigDialog):
3427         New variable wxt_ctrl to handle 'q' and <space>.
3428
3429         * src/wxterminal/wxt_gui.h:
3430         * src/wxterminal/wxt_term.h:
3431         Update prototypes and included wxWidgets headers according to the above
3432         changes.
3433
3434         * term/wxt.trm (wxt_options): New terminal option '{no}ctrl'.
3435         (TERM_HELP): Updated.
3436
3437         * src/Makefile.am (png_DATA): Do not install the PNG icons.
3438
3439 2006-06-17  Ethan A Merritt  <merritt@u.washington.edu>
3440
3441         * demo/Makefile.am.in: Clean up temp.dat
3442
3443         * share/Makefile.am: Attempt to install/uninstall Gnuplot.app-defaults
3444         properly.
3445
3446         * docs/Makefile.in: Add Japanese language files to EXTRA_DIST
3447
3448         * docs/gnuplot.doc: Replace old "bugs" section with current list of
3449         known bugs and limitations.
3450
3451         * docs/gnuplot.doc: Add pointers to 'set pm3d depthorder' in the 
3452         discussion of hidden surface removal.
3453
3454         * docs/gnuplot.texi docs/doc2texi.el: Regenerate gnuplot.texi
3455
3456 2006-06-16  Timothee Lecomte  <timothee.lecomte@ens.fr>
3457
3458         * src/command.h: Add missing statement about copyright holders (i.e
3459         the same as command.c, as command.h was created from this file).
3460
3461         * src/wxterminal/Makefile.am: New Makefile used to put all the
3462         wxterminal source files and bitmaps in the 'make dist' target.
3463
3464         * src/Makefile.am (SUBDIRS): Add wxterminal to take the new Makefile.am
3465         into account.
3466
3467         * configure.in (AC_OUTPUT): Include src/wxterminal/Makefile in the list
3468         of files to create.
3469
3470 2006-06-15  Ethan A Merritt  <merritt@u.washington.edu>
3471
3472         * src/show.c (show_version): Add the rest of the non-driver
3473         configuration option choices to the output of 'show version long'.
3474
3475 2006-06-15  Shigeharu Takeno  <shige@iee.niit.ac.jp>
3476
3477         * docs/gnuplot-ja.doc docs/README.ja term-ja.diff: Japanese translation
3478         of user manual and instructions for building the help system from it.
3479
3480         * src/win/wgnuplot-ja.mnu /src/win/README.win-ja: Instructions for
3481         building a Japanese language versino of wgnuplot for Windows, and a
3482         corresponding set of menus.
3483
3484 2006-06-15  Timothee Lecomte  <timothee.lecomte@ens.fr>
3485
3486         * src/wxterminal/gp_cairo.c: Fix a warning about gp_alloc() by
3487         including alloc.h
3488
3489 2006-06-15  Ethan A Merritt  <merritt@u.washington.edu>
3490
3491         * demo/all.dem demo/html/index.save demo/html/Makefile:
3492         Add demo hidden2.dem illustrating 'set pm3d depthorder'.
3493
3494 2006-06-15  Johannes Zellner <johannes@zellner.org>
3495
3496         * src/save.c src/set.c src/show.c src/tables.c src/tables.h:
3497         New option 'set p3md depthorder' to request depth-ordering of 
3498         pm3d quadrangles.
3499
3500         * src/graph3d.c: TBOOLEAN pm3d_order_depth tracks the new option.
3501
3502         * src/pm3d.c src/pm3d.h (pm3d_depth_queue_clear pm3d_depth_queue_flush)
3503         src/plot3d.c (calculate_set_of_isolines)
3504         src/color.h src/color.c (ifilled_quadrangle): New support routines.
3505
3506 2006-06-14  Daniel Sebald  <daniel.sebald@ieee.org>
3507
3508         * src/color.c (make_palette) src/term.c (term_start_plot):  
3509         Revert change of 9-Jun-2006, so that we are again optimizing color 
3510         palette usage by avoiding unnecessary calls to term->make_palette().
3511         However, make the PostScript terminal an exception by invalidating
3512         the previous palette at the start of every plot.
3513
3514 2006-06-14  Shigeharu Takeno  <shige@iee.niit.ac.jp>
3515
3516         * docs/faq-ja.tex:  Japanese translation of faq.tex
3517
3518         * NEWS docs/Makefile.in:  Include faq-ja.tex in list of distributed
3519         files, and in NEWS.
3520
3521 2006-06-13  Daniel Sebald  <daniel.sebald@ieee.org>
3522
3523         * demo/stat.inc: Overhaul of routines to add variable arguments,
3524         range checking and verify integer when appropriate.  The significant
3525         change is forcing some input vars to be an integer, rather than casting
3526         them to int() in the formulae.  (There are proper plot styles like
3527         "steps" to work with discrete r.v.s.)
3528
3529         * demo/prob.dem: Modified the discrete r.v. examples to look more like
3530         a mass function or scaled impulses.  More varied examples to show
3531         various plotting features.
3532
3533         * demo/prob2.dem demo/random.dem: Add input variables to p.d.f. and
3534         c.d.f. functions.  Added new Maxwell demo to random.dem.
3535
3536         * docs/gnuplot.doc: Added adjective "normalized" to igamma()
3537
3538 2006-06-13  Ethan A Merritt  <merritt@u.washington.edu>
3539
3540         * src/gplt_x11.c: Move export selection flags outside the the
3541         USE_MOUSE conditional code.  Bug #1505704
3542
3543         * src/term_api.h: DEFAULT_LP_STYLE_TYPE to lt -1 (makes arrows
3544         default to black rather than red).
3545         
3546
3547 2006-06-13  Daniel Sebald  <daniel.sebald@ieee.org>
3548
3549         * configure.in src/Makefile.am src/makefile.awc src/makefile.all:
3550         Add a configuration mechanism for including binary.c in list of
3551         gnuplot sources when appropriate.
3552
3553         * src/bin_hook.c:  Remove from source tree.
3554
3555 2006-06-13  Timothee Lecomte  <timothee.lecomte@ens.fr>
3556
3557         * src/win/wtext.c:
3558         * src/win/wgraph.c:
3559         * src/wxterminal/wxt_gui.cpp:
3560         * src/wxterminal/wxt_gui.h:
3561         * src/wxterminal/wxt_term.h:
3562         Fix failures when compiling the wxWidgets terminal with
3563         --disable-mouse, by putting more code and declarations inside #ifdef
3564         USE_MOUSE ... #endif
3565
3566 2006-06-12  Ethan A Merritt  <merritt@u.washington.edu>
3567
3568         * configure.in:  Move options marked EXPERIMENTAL to the end of the
3569         configuration summary printout.  Remove EXPERIMENTAL label from 
3570         string variables.
3571
3572 2006-06-11  Timothee Lecomte  <timothee.lecomte@ens.fr>
3573
3574         * demo/utf8.dem: Issue a 'reset' at the end of the file, as other demos
3575          do.
3576
3577         * src/wxterminal/gp_cairo.c (gp_cairo_draw_text): Use the Symbol to
3578         Unicode conversion step, as for the enhanced text mode.
3579         (gp_cairo_enhanced_flush): Small cleanup and fix a forgotten free().
3580
3581         * term/wxt.trm (TERM_HELP): Document the font requirements properly, in
3582         particular how the Symbol font is handled and where the fonts are taken
3583         from. Layout the whole help text so that lines are smaller than 80
3584         characters.
3585
3586 2006-06-11  Daniel Sebald  <daniel.sebald@ieee.org>
3587
3588         * src/eval.h: Added number of variables to user defined function struct.
3589
3590         * src/command.c (define): Recorded number of variables into udf entry.
3591
3592         * src/parse.c (add_is_udf, is_ud_functin, add_udf): 
3593         Slight rearranging of functions to allow code reuse.
3594
3595         * src/parse.c (parse_primary_expression): Check if function used in
3596         command is user defined.  If so, verify number of variables is correct.
3597
3598         * src/internal.c (f_call, f_calln): Added tests to catch variable
3599         mismatch at time of evaluation.
3600
3601 2006-06-10  Timothee Lecomte  <timothee.lecomte@ens.fr>
3602
3603         * docs/Mafefile.in (CORETERM): Add wxt.trm in the list of
3604         terminals.
3605
3606         * docs/gnuplot.doc : Add mentions of `wxt` among other terminals when
3607         useful (mouse, raise, lower, image, set_output, fillstyles).
3608
3609         * src/wxterminal/wxt_gui.cpp:
3610         Fix compilation with --disable-with-image.
3611
3612         * src/wxterminal/wxt_gui.h:
3613         Fix compilation with --disable-with-image.
3614         Cleanup includes.
3615
3616         * src/wxterminal/gp_cairo.c
3617         (gp_cairo_draw_polygon): Replace malloc by gp_alloc.
3618         (gp_cairo_draw_image): Likewise.
3619         (gp_cairo_convert_symbol_to_unicode): Likewise.
3620
3621 2006-06-09  Ethan A Merritt  <merritt@u.washington.edu>
3622
3623         * src/eval.c src/eval.h src/internal.c src/internal.h src/parse.c
3624         src/standard.c src/standard.h docs/gnuplot.doc NEWS:
3625
3626         Deprecate built-in pseudo-function  `if defined(foo)`
3627         Replace it with string function exists("foo")
3628         The previous version (defined) tried to bypass normal expression
3629         parsing, but succeeded only for the simplest cases. This variant,
3630         although deprecated, is still supported by BACKWARDS_COMPATIBLE.
3631         The new version handles the full general case by using string variables.
3632         Bugfix: #1497957
3633
3634         * src/color.c (make_palette): Revert optimization (18 Mar 2006) that
3635         only sent palette information for a plot if it had changed since the 
3636         previous plot.  This doesn't work for PostScript output, because the
3637         pages may be viewed out of order.  Bugfix.
3638
3639 2006-06-08  Timothee Lecomte  <timothee.lecomte@ens.fr>
3640
3641         * src/wxterminal/gp_cairo.h:
3642         * src/wxterminal/wxt_plot.h:
3643         * src/wxterminal/wxt_term.h:
3644         Remove "extern" for functions.
3645
3646 2006-06-07  Timothee Lecomte  <timothee.lecomte@ens.fr>
3647
3648         * configure.in (--with-wx-config=PATH): Fix wrong variable name.
3649
3650         * src/term.c (init_terminal) [WXWIDGETS]: Take DEFAULTTERM into account.
3651
3652         * src/wxterminal/bitmaps/xpm/cross.xpm:
3653         * src/wxterminal/bitmaps/xpm/right.xpm:
3654         * src/wxterminal/bitmaps/xpm/rotate.xpm:
3655         * src/wxterminal/bitmaps/xpm/size.xpm:
3656         Write the hotspot coordinates directly in the cursor files.
3657
3658         * src/wxterminal/wxt_gui.h (wxtApp::LoadCursor):
3659         * src/wxterminal/wxt_gui.cpp (wxtApp::LoadCursor):
3660         Remove hotpost arguments, take hotspot coordinates from the XPM files.
3661         (wxtApp::OnInit): Update calls to LoadCursor.
3662
3663         * src/wxterminal/gp_cairo.h (current_xmax): Rename to the more
3664         meaningful device_xmax.
3665         (current_ymax): Rename to device_ymax.
3666         * src/wxterminal/gp_cairo.c: All callers changed.
3667         * src/wxterminal/wxt_gui.cpp: Likewise.
3668
3669 2006-06-06  Ethan A Merritt  <merritt@u.washington.edu>
3670
3671         * configure.in src/setshow.h config/config.*: Move definition of
3672         BACKWARDS_COMPATIBLE into config.h and the various config.* files rather
3673         than setshow.h so that it is visible to all the source files.
3674
3675 2006-06-06  Timothee Lecomte  <timothee.lecomte@ens.fr>
3676
3677         * src/wxterminal/gp_cairo.c (device_y): Fix computation of
3678         coordinates.
3679         (gnuplot_y): Likewise.
3680
3681 2006-06-05  Peter Weilbacher  <paepse@users.sourceforge.net>
3682
3683         SF Patch [1498727] Remove duplicate entries in GNU readline history
3684
3685         * command.c (rlgets): Remove duplicate entries in GNU readline history.
3686
3687 2006-06-04  Timothee Lecomte  <timothee.lecomte@ens.fr>
3688
3689         * src/wxterminal/gp_cairo.c: Add Id.
3690         * src/wxterminal/gp_cairo.h: Likewise.
3691         * src/wxterminal/gp_cairo_term.h: Likewise.
3692         * src/wxterminal/wxt_gui.cpp: Likewise.
3693         * src/wxterminal/wxt_gui.h: Likewise.
3694         * src/wxterminal/wxt_plot.h: Likewise.
3695         * src/wxterminal/wxt_term.h: Likewise.
3696
3697 2006-06-04  Ethan A Merritt  <merritt@u.washington.edu>
3698
3699         * src/graphics.c (two_edge_intersect) Remove old debugging code.
3700
3701         * src/graphics.c (edge_intersect plot_filled_curves):  Bugfix.
3702         Fix clipping of filled curves. When a curve leaves the plot and 
3703         reenters via a different plot edge, we must add dummy points at the
3704         intervening plot corners.
3705
3706         * src/graphics.c (fill_missing_corners): New routine to support
3707         clipping of filled areas defined by a bounding curve.
3708
3709 2006-06-01  Ethan A Merritt  <merritt@u.washington.edu>
3710
3711         * src/unset.c (reset_command): Abandon the idea of automatic garbage
3712         collection for undefined user variables. The problem with this is that
3713         user-defined functions may still hold pointers to them for later use.
3714         E.g.:    f(x) = a+b; reset; print f(1)  - oops, no more a or b.
3715         Bugfix.
3716
3717         * demo/world.dat: Rearrange line segments to make more continuous
3718         boundaries. Now it almost works for filledcurves.
3719
3720 2006-05-29  Michael Ritzert  <ritzert@t-online.de>
3721
3722         * term/Makefile.am.in: Look for the postscript files to be installed
3723         relative to $(srcdir).
3724
3725 2006-05-26  Ethan A Merritt  <merritt@u.washington.edu>
3726
3727         * src/gadgets.c (clip_point): The code comments incorrectly described
3728         the bit values returned by clip_point().  
3729
3730 2006-05-24  Ethan A Merritt  <merritt@u.washington.edu>
3731
3732         * src/gplt_x11.c:  Treat LT_AXIS linetype as dotted even if the
3733         terminal is 'set term x11 solid'.  Do not try to set dash type or
3734         linewidth for LT_BACKGROUND because this will underflow the type arrays.
3735         Bugfix.
3736
3737         * share/Gnuplot.app-defaults:  Comment out settings for *ctrlq *raise
3738         and *background so that the default remains the same as having no
3739         app-defaults file.
3740
3741 2006-02-23  Timothee Lecomte  <timothee.lecomte@ens.fr>
3742
3743         * term/wxt.trm (TERM_HELP): Fix typos, thanks to Shigeharu Takeno.
3744
3745 2006-05-22  Timothee Lecomte  <timothee.lecomte@ens.fr>
3746
3747         * term/vgagl.trm (VGAGL_init_keytable): Fix bug #1492341 by
3748         replacing sizeof() on an array of int (which gives an overflow
3749         by writing four times more than the size of the array) by the 
3750         actual size of the array (KEYTABLE_SIZE).
3751         (VGAGL_truecolor): Declare as a TBOOLEAN instead of an integer,
3752         do not use the enums yes and no but TRUE and FALSE.
3753         (VGAGL_processing_graphics_events): Likewise.
3754         (VGAGL_interpolate): Likewise.
3755         (VGAGL_cursor_drawn): Likewise.
3756         (VGAGL_need_update): Likewise.
3757         (VGAGL_graphics_on): Likewise.
3758
3759 2006-05-22  Lars Hecking  <lhecking@users.sourceforge.net>
3760
3761         * configure.in: Reformat and bugfix wxwidgets section.
3762
3763         * docs/gnuplot.texi: Regenerated.
3764
3765         * share/Makefile.am: Add EXTRA_DIST.
3766
3767         * src/Makefile.am: Add wxterminal to EXTRA_DIST.
3768
3769         * src/makefile.all, src/makefile.awc: Regenerated.
3770
3771         * src/wxterminal/wxt_gui.cpp: Fix typos.
3772
3773         * term/estimate.trm: Add cvs Id.
3774
3775 2006-05-21  Daniel Sebald  <daniel.sebald@ieee.org>
3776
3777         * demo/random.dem: Examples to illustrate generating normal random
3778         data, generating data points not linked to grid using table,
3779         setting the contour lines to the same color as surface, and
3780         creating histograms.
3781
3782 2006-05-21  Hans-Bernhard Broeker  <broeker@physik.rwth-achen.de>
3783
3784         * term/win.trm (HELP): Got rid of some tabs.
3785         
3786         * docs/gnuplot.doc: Fixed some blank-only lines.
3787         (fit control, fit control variables, fit control environment,
3788         splot overview): Get rid of _ between words.  Suggested by Dan
3789         Sebald.
3790         
3791 2006-05-20  Timothee Lecomte  <timothee.lecomte@ens.fr>
3792
3793         * src/color.h (colorspec_t) [EXTENDED_COLOR_SPECS]: Declare the
3794         type before using it (fixes the compilation of linux.trm and
3795         vgagl.trm).
3796
3797 2006-05-20  Ethan A Merritt  <merritt@u.washington.edu>
3798
3799         * src/gplt_x11.c term/x11.trm: Allow user control of solid/dashed line
3800         setting via the usual three mechanisms
3801         new X resource              gnuplot*dashed: on 
3802         from command line          `gnuplot -dashed ...`
3803         from gnuplot command       `set term x11 {dashed|solid} ...`
3804
3805         * term/x11.trm: Bugfix: persist/raise/dashed terminal settings should
3806         not be conditional on mouse support.
3807
3808 2006-05-20  Ethan A Merritt  <merritt@u.washington.edu>
3809
3810         * share/Gnuplot.app-defaults share/Makefile.am:
3811         New X resources file, intended for installation in the system's
3812         default location for X resources.
3813         Bug #1376604.
3814
3815 2006-05-19  Timothee Lecomte  <timothee.lecomte@ens.fr>
3816
3817         * src/wxterminal/gp_cairo.c (gp_cairo_draw_enhanced_text):
3818         Remove unappropriate comments about enhanced_max_height.
3819         (gp_cairo_end_polygon): Remove useless comment.
3820         (gp_cairo_convert_symbol_to_unicode): Change C++-style
3821         comments to C style /* ... */.
3822         (gp_cairo_initialize_plot): To avoid overflows, change
3823         strcpy() to strncpy(), strcat() to strncat() and sprintf() to
3824         snprintf().
3825         (gp_cairo_set_font): Likewise.
3826         (gp_cairo_add_shape): Likewise.
3827         (gp_cairo_enhanced_flush): Likewise.
3828         (gp_cairo_enhanced_open): Likewise.
3829         (gp_cairo_draw_enhanced_text): Likewise.
3830
3831         * src/wxterminal/wxt_gui.cpp (wxt_set_font): Likewise.
3832
3833         * term/wxt.trm (wxt_options): Likewise.
3834
3835 2006-05-18  Timothee Lecomte  <timothee.lecomte@ens.fr>
3836
3837         * src/Makefile.am (AUTOMAKE_OPTIONS): Remove 'subdir-objects',
3838         not mandatory.
3839
3840         * configure.in (enable_wxwidgets): Remove test AM_PROG_CC_C_O,
3841         not needed now that 'subdir-objects' is not used.
3842
3843         * src/wxterminal/wxt_gui.cpp (wxt_waitforinput) [_Windows]:
3844         Rework event processing to avoid code duplication and handle
3845         more cases (pause, etc.).
3846         (wxt_waitforinput_pause) [_Windows]: Removed.
3847         (wxt_terminal_events) [_Windows]: New routine to process
3848         pending events from the wxWidgets terminal when it is selected
3849         and initialized. Its return code is used to stop a pause.
3850         (wxt_set_font): Use reasonable defaults for font name ("Sans")
3851         and size (10) instead of the wxWidgets system settings. It
3852         avoids to choose the inappropriate Courier font on Windows,
3853         where it is used by the console-like window.
3854
3855         * src/wxterminal/wxt_term.h (wxt_waitforinput_pause):
3856         Remove declaration.
3857
3858         * src/wxterminal/wxt_plot.h (wxt_terminal_events):
3859         Declaration.
3860
3861         * src/win/wpause.c (PauseBox) [WXWIDGETS]: Use
3862         wxt_terminal_events().
3863
3864         * src/win/wtext.c (TextGetCh) [WXWIDGETS]: Likewise.
3865
3866         * term/wxt.trm (help): Change the help text according to the
3867         change in the default font name and font size.
3868
3869 2006-05-18  Lars Hecking  <lhecking@users.sourceforge.net>
3870
3871         * docs/Makefile.in: Add titlepag.ipf to EXTRA_DIST.
3872
3873         * docs/gnuplot.texi: Regenerated.
3874
3875 2006-05-15  Timothee Lecomte  <timothee.lecomte@ens.fr>
3876
3877         * src/wxterminal/bitmaps/xpm/cross.xpm:
3878         * src/wxterminal/bitmaps/xpm/right.xpm:
3879         * src/wxterminal/bitmaps/xpm/rotate.xpm:
3880         * src/wxterminal/bitmaps/xpm/size.xpm:
3881         Cross-platform cursors.
3882
3883         * src/wxterminal/wxt_gui.h
3884         (wxt_cursor_cross, wxt_cursor_right, wxt_cursor_rotate,
3885         wxt_cursor_size): Cursors declarations.
3886         (wxtApp::LoadCursor): Routine to initialize a cursor.
3887
3888         * src/wxterminal/wxt_gui.cpp
3889         (wxtApp::LoadCursor): Likewise.
3890         (wxtApp::OnInit, wxt_set_cursor): Use new cursors.
3891         (wxt_reset): Clear the events list when receiving ctrl-c.
3892         (wxtPanel::DrawToDC): Fix zoom strings on Windows.
3893
3894         * src/wxterminal/gp_cairo.c (gp_cairo_linetype2color): Fix modulo
3895         operator to use the whole nine colors.
3896         (gp_cairo_draw_point): Fix position of triangles with the
3897         oversampling. Close the path for the filled triangle.
3898
3899         * configure.in (CPPFLAGS): Remove useless gtk and wxWidgets flags
3900         from the cppflags.
3901
3902 2006-05-15  Bastian Maerkisch  <bmaerkisch@web.de>
3903
3904         * config/makefile.os2: Define GIF_ANIMATION and HAVE_PDFLIB_H.
3905
3906         * config/config.os2: Sync to config.h created by `configure`. Define
3907         EAM_OBJECTS, GP_STRING_VARS = 2, HIDDEN3D_VAR_PTSIZE.
3908
3909         * src/os2/gclient.c (DisplayClientWndProc): Filter out WM_MOUSEMOVE
3910         events when the mouse hasn't been really moved. This eliminates
3911         excessive calls to gp_exec_event(GE_motion, ...) and subsequent
3912         unnecessary redraws of the plot.
3913
3914 2006-05-13  Bastian Maerkisch  <bmaerkisch@web.de>
3915
3916         * config/makefile.nt: Make sure that the same (basic) compiler options
3917         are used for compiling wgnuplot and pgnuplot. This is necessary since
3918         they both contain version.c.
3919
3920         * src/stdfn.h src/win/winmain.h src/win/wpause.c:  Implementation of a
3921         non-blocking sleep function (gnuplot's 'pause' command) for windows.
3922
3923         * term/win.trm (WIN_options, help text):
3924         Accept font request strings of the form
3925             set term win ... font "<fontface>,<fontsize>"
3926         Previous syntax
3927             set term win ... "<fontface>" <fontsize>
3928         remains valid as well. Update documentation.
3929
3930         * src/os2/4allterm.cmd: Fix broken argument parsing. Convert end of line
3931         to CR/LF pairs. This is a must for the script to be readable by the OS/2
3932         REXX interpreter.
3933
3934         * docs/doc2ipf.c docs/titlepag.ipf:
3935         - Increase depth of table of contents from 5 to 6. This fixes
3936           "unknown reference" errors during compilation.
3937         - Only replace '.' in first column by ipf tag, it's not needed
3938           otherwise.
3939         - Add an index: interactive help ('?') and explicit index entries ('=')
3940           are supported.
3941         - Table layout improvements:
3942             - omit table frame and horizontal lines
3943             - add additional horizontal spacing around table entries (1 char)
3944             - omit horizontal rules '_' (troff command)
3945             - entries are only interpreted as troff commands if they start with
3946               '.' and do not contain a table separator
3947             - try to filter out ipf tags when calculating column widths
3948             - always assume troff header at beginning of table. This fixes
3949               coloring of table headers, which has been broken since 17 Jun 1998
3950         - Change handling of paragraphs and verbatim sections: successive empty
3951           lines only yield one new paragraph :p. This eliminates large empty
3952           spaces (especially in front of tables).
3953         - End sections with an empty paragraph instead of starting with an empty
3954           paragraph. Eliminates empty space at beginning of section and (still)
3955           ensures non-empty sections.
3956         - Optionally add additional reference panels to make navigation with
3957           IBM's online viewer easier. Controlled by #define IPF_MENU_SECTIONS.
3958         - Add a title page (new file titlepag.ipf).
3959
3960 2006-05-12  Ethan A Merritt  <merritt@u.washington.edu>
3961
3962         * term/gd.trm (PNG_point):  Bugfix: Draw filled circles with 
3963         gdImageFilledArc rather than a 2-stage bound-and-fill.
3964
3965         * src/graph3d.c (draw_3d_graphbox):  Bugfix: Only draw vertical lines
3966         from base corners to surface if there really _is_ a surface.
3967         Having pm3d in surface mode is not sufficient.
3968         
3969         * demo/contours.dem: Where the above fix removes a vertical line along
3970         z, remove the z axis tics also.  Add a single-color contour demo.
3971
3972         * src/wxterminal/gp_cairo.c: Remove unused variables.
3973
3974 2006-05-04  Timothee Lecomte  <timothee.lecomte@ens.fr>
3975
3976         * configure.in (AC_PROG_CXX): Redefine AC_MSG_ERROR for
3977         AC_PROG_CXX, to prevent possible fatal errors in future autoconf
3978         versions.
3979         (WX_OBJ): Remove definition, let automake handle it.
3980
3981         * src/Makefile.am (BUILD_WXWIDGETS): Simplify conditional
3982         compilation of the wxWidgets terminal, using automake
3983         conditionals instead of gnuplot_DEPENDENCIES and gnuplot_LDADD.
3984
3985 2006-05-01  Timothee Lecomte  <timothee.lecomte@ens.fr>
3986
3987         * configure.in (AC_PROG_CXX): Check for C++ unconditionally,
3988         and workaround harmful autoconf settings if no compiler is found.
3989         (PANGO): Raise minimum version to 1.10.
3990
3991         * term.c (init_terminal): Make wxt the default terminal if it
3992         is available even if X11 is not defined.
3993
3994 2006-04-30  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
3995
3996         * config/makefile.mgw (DESTDIR): MSYS-ify the drive letter.
3997         (GNUSORT): Use Unix-ish path to MSYS port of GNU sort.
3998         (all): Refer to default target instead of copying all its entries.
3999         (default): Remove config.h dependency.
4000         ($(OBJS) $(WINOBJS) dbinary.$(O)): Add rule that they depend on
4001         config.h.
4002         ($(M)bf_test.exe): Chdir to $(M), not $(D).
4003         (dbinary.$(O)): Input file is $<, not $^.
4004         (install) [WXT]: Move WX-specific installation rules here.
4005
4006         * term/win.trm (WIN_enhanced_flush): Removed unused variables rc,
4007         cbR.
4008
4009         * term/pslatex.trm (PSTEX_common_init): Avoid warning by making
4010         compile-time test an #if rather than an if.
4011
4012         * config/makefile.mgw: Change this to expect MSYS tools to be used
4013         instead of the older native MINGW32 ports.  Necessitates some
4014         workarounds for MSYS quirks.
4015         (HCWPATH): Uncomment one definition, provide a usable default,
4016         remove the other.
4017         (pgnuplot.exe): Needs -HAVE_STDBOOL_H to avoid a warning.
4018         ($(HELPFILE)): Use `-' instead of `/' for $(HCW) options, to avoid
4019         MSYS translating them to drive letters.
4020         (doc2rtf.exe, doc2tex): Strip trailing `/' off macros holding
4021         `../docs/' and `../term/' --- MSYS/MINGW32 gets confused by it.
4022
4023 2006-04-29  Ethan A Merritt  <merritt@u.washington.edu>
4024
4025         * term/wxt.trm (wxt_options): Fix improper malloc for font name.
4026
4027 2006-04-29  Timothee Lecomte  <timothee.lecomte@ens.fr>
4028
4029         * configure.in: C++, wxWidgets, cairo and pango configuration
4030         tests.
4031
4032         * config/makefile.mgw: Likewise.
4033
4034         * src/command.c (raise_lower_command): Raise and lower commands
4035         for the wxWidgets terminal.
4036
4037         * src/command.h : Likewise.
4038
4039         * src/Makefile.am : wxWidgets terminal conditional compilation.
4040
4041         * src/plot.c (main): wxWidgets terminal hook on exit to handle
4042         the 'persist' behaviour.
4043
4044         * src/term.c (init_terminal): Make the wxWidgets terminal
4045         the default on Windows and X11.
4046
4047         * src/term.h: Include the wxWidgets terminal.
4048
4049         * src/win/wgnuplot.rc: Include wxWidgets ressources file.
4050
4051         * src/win/wpause.c (PauseBox): Process events from the wxWidgets
4052         terminal when in pause.
4053
4054         * src/wxterminal/bitmaps/png/autoscale.png
4055         * src/wxterminal/bitmaps/png/clipboard.png
4056         * src/wxterminal/bitmaps/png/config.png
4057         * src/wxterminal/bitmaps/png/grid.png
4058         * src/wxterminal/bitmaps/png/help.png
4059         * src/wxterminal/bitmaps/png/nextzoom.png
4060         * src/wxterminal/bitmaps/png/previouszoom.png
4061         * src/wxterminal/bitmaps/png/replot.png:
4062         PNG icons for the wxWidgets toolbar.
4063
4064         * src/wxterminal/bitmaps/xpm/icon16x16.xpm
4065         * src/wxterminal/bitmaps/xpm/icon32x32.xpm
4066         * src/wxterminal/bitmaps/xpm/icon64x64.xpm:
4067         XPM icons for the wxWidgets window icon.
4068
4069         * src/wxterminal/bitmaps/xpm/notfound.xpm:
4070         XPM icon for the wxWidgets toolbar.
4071
4072         * src/wxterminal/gp_cairo.c
4073         * src/wxterminal/gp_cairo.h
4074         * src/wxterminal/gp_cairo_term.h:
4075         Generic routines to render a plot to a cairo surface.
4076
4077         * src/wxterminal/wxt_gui.cpp
4078         * src/wxterlinal/wxt_gui.h
4079         * src/wxterminal/wxt_plot.h
4080         * src/wxterminal/wxt_term.h:
4081         Graphical user interface based on wxWidgets.
4082
4083         * term/wxt.trm:
4084         Terminal hooks between term.c and the wxWidgets and cairo
4085         files.
4086
4087 2006-04-28  Timothee Lecomte  <timothee.lecomte@ens.fr>
4088
4089         * src/gplot_x11.c (UNSET, no, yes): Remove enum declaration.
4090
4091         * src/term.c
4092         (enhanced_recursion, enh_err_check, do_enh_writec):
4093         Remove static declarations.
4094         (enhanced_text, enhanced_cur_text, enhanced_fontscale)
4095         (enhanced_escape_format, enhanced_min_height)
4096         (enhanced_max_height, ignore_enhanced_text):
4097         Remove static declarations.
4098         (UNSET, no, yes): Remove enum declaration.
4099
4100         * src/term_api.h: Declare here the above variables and functions
4101         related to enhanced text support. Variables are declared extern.
4102         (UNSET, no, yes): Declare enum.
4103
4104         * src/readline.c (msdos_getch) [_Windows && USE_MOUSE]:
4105         Call term->waitforinput() when appropriate, so that the wxWidgets
4106         terminal can process events.
4107
4108 2006-04-27  Timothee Lecomte  <timothee.lecomte@ens.fr>
4109
4110         * configure.in src/Makefile.am: Change PKG_MAJOR to
4111         VERSION_MAJOR to avoid a conflict with pkg-config macros.
4112         They will be used with cairo, pango, and gtk+ for the wxWidgets
4113         terminal.
4114
4115 2006-04-27  Hans-Bernhard Broeker  <broeker@physik.rwth-achen.de>
4116
4117         * src/plot2d.c (get_data): Initialize further elements of df_data
4118         depending on plot style, so datafile module can parse absolute
4119         time/data for xlow etc.  Similar fix for handling 'set ydata time;
4120         plot "-" u 2'.
4121
4122         * src/plot3d.c (eval_3dplots): Fix for 'set zdata time; plot "-" u
4123         2'.  Replicate realloc size fix from get_data (--> 2006-03-28)
4124         here.
4125
4126 2006-04-26  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
4127
4128         * docs/gnuplot.doc (fit control environment): Fix mention of
4129         command 'set fit logfile'.
4130
4131 2006-04-25  James R. Van Zandt  <jrv@vanzandt.comcast.net>
4132
4133         * term/cgm.trm (CGM_filled_polygon): Allow filled polygons with up
4134         to 8190 vertices (was only 50).  Also, allocate the
4135         polygon/polyline array from the heap, so it only takes space if
4136         the CGM terminal is used.
4137
4138         * term/cgm.trm (CGM_set_color): access colorspec->value only
4139         for type=TC_FRAC when it is defined.
4140         
4141 2006-04-25  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
4142
4143         * src/win/wgnuplot.hpj (COMPRESS): New option, enables compression
4144         of the generated .hlp file.
4145         (LCID): New option, fixed the language of generated help files to
4146         English.  Hopefully this will avoid incompatibilities like the one
4147         observed with the first binary release of 4.0 for Win32.
4148
4149 2006-04-24  Daniel Sebald  <daniel.sebald@ieee.org>
4150
4151         * src/graphics.c (plot_image_or_update_axes) config/config.cyg
4152         config/config.mgw config/config.nt config/config.os2 configure.in:
4153         Removed all use of WITH_IMAGE_VERIFY_ALL_PIXEL_LOCATIONS and any
4154         code associated with verifying pixel locations in the grid.
4155
4156 2006-04-19  Ethan A Merritt  <merritt@u.washington.edu>
4157
4158         * term/post.trm (PS_set_font): Do not write font change commands
4159         into the PostScript output stream of the TeX terminal variants
4160         (epslatex, pstex, pslatex). All font handling is done via the TeX
4161         output stream.  Bug #1472260
4162
4163         * demo/html/Makefile demo/html/index.save
4164         demo/html/gnuplot_demo.css: Update html display of gnuplot demos.
4165
4166 2006-04-18  Ethan A Merritt  <merritt@u.washington.edu>
4167
4168         * src/graphics.c (plot_c_bars) src/plot2d.c (eval_plots): Allow
4169         user to control the width of whiskerbars on candlestick plots.
4170         plot <foo> with candlesticks {whiskerbars {<width>}}
4171
4172         * demo/utf8.dem: Provide a demo for use in testing UTF-8 support
4173         by gnuplot terminals.  This demo will only produce reasonable
4174         output on a terminal that supports UTF-8 and a current UTF-8
4175         encoded font with the relevant character maps.
4176
4177 2006-04-17  Ethan A Merritt  <merritt@u.washington.edu>
4178
4179         * src/color.h: Add comments to document the meaning of TC_* flag
4180         values.
4181
4182 2006-04-16  Ethan A Merritt  <merritt@u.washington.edu>
4183
4184         * term/aquaterm.trm: Correct typos in help text.
4185
4186         * src/set.c (set_object): Fix segfault on incomplete command
4187         'set obj <new>'.
4188
4189         * src/term.c (init_terminal): Keep initial terminal setting in
4190         GNUTERM even if it did not actually come from environmental
4191         variable GNUTERM.
4192
4193 2006-04-14  Ethan A Merritt  <merritt@u.washington.edu>
4194
4195         * src/term.c (change_term init_term): Save value of GNUTERM into a
4196         user-defined variable on entry.  Use only first word of GNUTERM
4197         when calling change_term. This allows GNUTERM to contain extended
4198         terminal specs, e.g.  setenv GNUTERM "png truecolor transparent".
4199
4200 2006-04-12  James R. Van Zandt  <jrv@debian.org>
4201
4202         * term/cgm.trm (CGM_point): Update cgm_current.edge_visibility
4203         before cgm_current.edge_color (was displaying some point symbols
4204         with incorrect edge colors).
4205
4206 2006-04-10  Ethan A Merritt  <merritt@u.washington.edu>
4207
4208         * src/graph3d.c (draw_3d_graphbox):  Fix bug introduced when adding
4209         newpath/closepath around the border of 3D plots with 'set view map'.
4210         The top border was not getting drawn, and the individual border
4211         components were not being considered separately.
4212         Also, when in 'set view map' mode, honor 'set border {front|back}'.
4213
4214         * src/graphics.c (plot_border) src/gadgets.h:  Similar bugfix in 2D.
4215
4216         * src/misc.c (lp_parse): Don't fall into a recursion trap in the
4217         case that 'set style incr user' and  'set style line <foo> lt <baz>'.
4218         This should set the linetype of <foo> to <baz> even if <baz> itself
4219         has been assigned as another line style.
4220
4221 2006-04-08  Ethan A Merritt  <merritt@u.washington.edu>
4222
4223         * src/standard.c (f_tanh): Fix a two-fold error in bounds checking for
4224         tanh().  Bug #1452627
4225
4226 2006-04-08  Bastian Maerkisch  <bmaerkisch@web.de>
4227
4228         * src/win/pgnuplot.c: Patch for SF bug [1232950] "-persist option does
4229         not work in Version 4.0.0 (Windows)".  Omit sending `exit` from pgnuplot
4230         to wgnuplot when `-persist` is given on command line.
4231
4232 2006-04-08  Daniel Sebald  <daniel.sebald@ieee.org>
4233
4234         * src/set.c (set_palette_file) docs/gnuplot.doc: Binary palette files
4235         are supported as well. Example:
4236             set palette file "palette.bin" binary record=64 using 1:2:3
4237
4238 2006-04-08  Bastian Maerkisch  <bmaerkisch@web.de>
4239
4240         * config/config.os2: Define more features.
4241
4242         * config/makefile.os2:
4243           - add a list of required/recommended tools and libraries,
4244           - make use of pre-built version of libgd from hobbes.nmsu.edu,
4245           - change requirements for newer versions of PDFlib,
4246           - replace shell script to create allterm.h by 4allterm.cmd in Rexx.
4247
4248         * src/os2/4allterm.cmd: New Rexx script to create allterm.h, much faster
4249         than previous code and does not require the unix tool chain to be
4250         installed.
4251
4252 2006-04-07  laboratoryman  <laboratoryman@users.sourceforge.net>
4253
4254         * src/term.c (test_term): No terminal currently implements any head
4255         fill style (curr_arrow_headfilled) other than 0/1/2.  So don't use 3 as
4256         a test case.
4257
4258 2006-04-05  Ethan A Merritt  <merritt@u.washington.edu>
4259
4260         * term/svg.trm: New line-join terminal option {rounded|butt},
4261         with support for smooth joining of closed polygons via the recently
4262         added newpath()/closepath() mechanism.
4263
4264         * src/gadgets.c (draw_clip_arrow): Provide a routine in the core
4265         code that clips arrow head/tail to the canvas boundaries. This means
4266         we don't have to do the clipping in do_arrow(), which has been messy.
4267
4268         * src/graph3d.c (plot_arrows3d plot3d_vectors)
4269         src/graphics.c (place_arrows do_key_sample get_arrow)
4270         Draw arrows using new routine draw_clip_arrow.
4271         Addresses bug #1348015 and others.
4272
4273         * src/term.c (do_arrow): Add a note that the clipping here is now
4274         redundant, and can be removed.  Defer removal to a separate patchset.
4275
4276 2006-04-04  Ethan A Merritt  <merritt@u.washington.edu>
4277
4278         * src/plot2d.c (eval_plots): Fix inadvertant breakage due to an
4279         accidentally deleted call to arrow_parse().
4280
4281 2006-04-04  Harald Harders  <h.harders@tu-bs.de>
4282
4283         * src/term.c (do_arrow) src/term_api.h docs/gnuplot.doc
4284
4285         * src/graphics.c (get_arrow plot_boxes plot_vectors)
4286
4287         * src/misc.c (arrow_use_properties) src/show.c (show_arrow):
4288         Add an option "backhead" to arrow style that reverses the sense
4289         of the arrow. Modify flags to indicate the forward arrowhead and
4290         the backward arrowhead separately, so "heads" sets both flags.
4291         Patchset #1318546
4292
4293 2006-04-04  Ethan A Merritt  <merritt@u.washington.edu>
4294
4295         * src/term_api.h src/term.c (newpath closepath) term/README:
4296         Define a new terminal entry point term->path(foo), and wrapper routines
4297         newpath() == term->path(0);  closepath() == term->path(1).
4298         These are needed to ensure smooth line joins at the ends of a closed
4299         path in PostScript-like terminals.
4300
4301         * src/graph3d.c (do_3dplot draw_3d_graphbox) 
4302         * src/graphics.c (do_plot plot_boxes plot_cbars do_key_sample)
4303         * src/graphics.c (plot_border) src/color.c (draw_color_smooth_box):
4304         Enclose the vector commands that draw rectangles with a
4305         newpath()...closepath() pair. This guarantees a smooth join for the
4306         plot boundary, the key box, colorbox, boxes, and candlesticks.
4307
4308 2006-04-04  Ethan A Merritt  <merritt@u.washington.edu>
4309
4310         * src/gplt_x11.c (gpXLoadQueryFont): When trying to load a multibyte
4311         fontset, treat "missing charsets" as a non-fatal warning.  This seems
4312         necessary in order to handle en_US.UTF-8 and similar locales, which
4313         claim to require many exotic but trivial charsets.  Normally these are
4314         not needed, so it should not be a fatal error if they are missing.
4315         Bug #1458525
4316
4317         * term/x11.trm: Increase maximum allowed length of font names.
4318
4319 2006-04-04  Ethan A Merritt  <merritt@u.washington.edu>
4320
4321         * misc.c (lp_use_properties lp_parse): In "set style increment user"
4322         mode, an explicit linetype should be interpreted as a call for the
4323         corresponding line style. But if there is none, we should load a
4324         description of the linetype rather than failing to initialize the
4325         lp_style_type at all.
4326
4327 2006-03-28  Lars Hecking  <lhecking@users.sourceforge.net>
4328
4329         * docs/gnuplot.texi: Regenerated after recent documentation
4330         updates.
4331
4332         * term/Makefile.am.in: Add PostScript directory to EXTRA_DIST. Add
4333         uninstall support. Rename install target to install-data-local
4334         (don't use automake-generated targets in Makefile.am) and add
4335         $(DESTDIR) support.
4336
4337 2006-03-28  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
4338
4339         * config/makefile.oww (CPPFLAGS): Added -DEAM_OBJECTS.
4340
4341         * src/plot2d.c (get_data): Avoid small size increments on
4342         reallocation --- at least double, and add another 1000 entries for
4343         good measure.
4344
4345 2006-03-28  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
4346
4347         Revised handling of Windows "app data" and home directory
4348         settings by Bastian Maerkisch.
4349
4350         * src/win/winmain.c: WANT_GET_DLLVERSION hardcoded active.
4351         (CSIDL_APPDATA): Provide fallback definition.
4352         (ShutDown): Removed ancient cruft.
4353         (appdata_directory): New function.  Dynamically attach to
4354         shell32.dll and ask it for the "application data" directory.
4355         (WinMain): Have get_user_env() take care of finding $HOME.
4356         INIFILE_IN_APPDATA hardcoded.
4357
4358         * src/win/wcommon.h (INIFILE_IN_APPDATA, WANT_GETDLLVERSION):
4359         Definitions removed, hardcoded active now.
4360         (appdata_directory): Added prototype.
4361
4362         * src/plot.c: Added #includes of win/wgnuplib.h, win/wcommon.h.
4363         (get_user_env) [WIN32]: Call helper routine to find Windows'
4364         "application data" directory.
4365
4366 2006-03-27  Ethan A Merritt  <merritt@u.washington.edu>
4367
4368         * src/plot2d.c (cp_alloc) src/plot3d.c (sp_alloc): Initialize the
4369         line style, arrow style, and fill style fields of each new plot to
4370         something reasonable.
4371
4372 2006-03-26  Ethan A Merritt  <merritt@u.washington.edu>
4373
4374         * NEWS: List various new features added since last October.
4375
4376         * src/gplt_x11.c: Store text rotation angle internally as a double.
4377
4378 2006-03-26  Ethan A Merritt  <merritt@u.washington.edu>
4379
4380         SourceForge patchset #1143563  "Place arbitrary objects in plots".
4381         This patchset introduces a general infrastructure for placing
4382         individual geometric objects, similar to "set label" and "set arrow".
4383         However the only objects implemented at this point are rectangles.
4384
4385         set object <tag> rectangle
4386             {from <position> {to|rto} <position>
4387                 | center <position> size <w>,<h> | at <position> size <w>,<h>}
4388             {front|back|behind} {fc|fillcolor <colorspec>} {fs <fillstyle>}
4389             {default} {lw|linewidth <width>}
4390
4391         set style rectangle {front|back} {fillcolor <colorspec>}
4392             {fs <fillstyle>} {lw|linewidth <lw>}
4393
4394         * configure.in: Configuration option:    ./configure --enable-objects
4395         Conditional compilation flag EAM_OBJECTS
4396
4397         * demo/rectangle.dem docs/gnuplot.doc
4398
4399         * src/gadgets.h src/gadgets.c src/tables.h src/tables.c:
4400         Infrastructure.
4401
4402         * src/graph3d.c (do_3dplot) src/graphics.c (place_rectangles do_plot)
4403         src/graphics.h:  Shared routine to place rectangles in 2D and 3D.
4404
4405         * src/save.c (save_rectangle) src/set.c (set_object set_rectangle)
4406         src/unset.c (unset_object delete_object unset_style_rectangle)
4407         src/save.h src/show.c: General bookkeeping for objects.
4408
4409 2006-03-25  Ethan A Merritt  <merritt@u.washington.edu>
4410
4411         * src/graphics.c (plot_c_bars): Re-order the lines making up a
4412         candlestick so that line-joining terminals have some chance of
4413         recognizing that the body is a closed rectangle.
4414
4415         * term/PostScript/prologue.ps: Add a shorthand for closepath.
4416
4417         * src/graph3d.c src/graph3d.h: New routine map3d_position_double() will
4418         be used by "set object" code.
4419
4420         * src/color.c (draw_color_smooth_box): Use new routine
4421         map3d_position_double to avoid a mismatch of parameter types.
4422
4423         * src/unset.c: Replace "set no<foo>" with "unset <foo>" in comments and
4424         error messages; i.e. make them match current syntax.
4425
4426 2006-03-24  Ethan A Merritt  <merritt@u.washington.edu>
4427
4428         * src/datafile.c: Remove vestigial comments about df_timecol[].
4429
4430 2006-03-24  Ethan A Merritt  <merritt@u.washington.edu>
4431
4432         * configure.in term/Makefile.am.in term/PostScript/*.ps
4433         term/post.trm (PS_common_init PS_dump_prologue_file):
4434
4435         Install and maintain PostScript prologue and character encoding files
4436         in a separate directory, external to the gnuplot executable.  This
4437         removes a large chunk of text from the postscript driver, and allows
4438         local customization, editing, or patching of the postscript 
4439         configuration.  The directory in which these files are stored is taken
4440         from config.h:  #define GNUPLOT_PS_DIR
4441         but may be replaced at runtime by an environmental variable of the same
4442         name, or by a "set loadpath" command inside gnuplot.
4443         This change should result in no change to the postscript files output
4444         by gnuplot.
4445
4446 2006-03-24  Ethan A Merritt  <merritt@u.washington.edu>
4447
4448         * src/datafile.h src/datafile.c: Allow an input field expected to be
4449         a time format to be in quotes. Previously anything in quotes was
4450         assumed to be invalid as a numerical value.
4451
4452 2006-03-23  Ethan A Merritt  <merritt@u.washington.edu>
4453
4454         * docs/gnuplot.doc: New option "set style increment {user|default}"
4455
4456         By default, successive plots within the same graph will use successive
4457         linetypes from the default set for the current terminal type.
4458         However, choosing the "user" option allows you to step through 
4459         user-defined linestyles rather than through the default line types.
4460
4461         * src/gadgets.c src/gadgets.h: Global flag TBOOLEAN prefer_line_styles.
4462
4463         * src/save.c src/set.c src/show.c src/tables.c src/tables.h:
4464         Save/set/show preference for line styles rather than linetypes.
4465
4466         * src/plot2d.c (eval_plots) src/plot3d.c (eval_3dplots):
4467         If (prefer_lines_styles) then autoincrement successive plots by line
4468         style rather than linetype.
4469
4470         * src/misc.c: Missing line style is non-fatal error.
4471
4472 2006-03-23  Ethan A Merritt  <merritt@u.washington.edu>
4473
4474         * src/misc.c (lp_parse): Allow "bgnd" as shorthand for "lt -3".
4475
4476 2006-03-23  Daniel Sebald  <daniel.sebald@ieee.org>
4477
4478         * demo/pm3dcolors.dem: Make one example more happy.
4479
4480 2006-03-22  Ethan A Merritt  <merritt@u.washington.edu>
4481
4482         * src/unset.c (unset_axislabel): Fix memory leak from failure to
4483         free axis labels.
4484
4485 2006-03-22  Timothee Lecomte  <timothee.lecomte@ens.fr>
4486
4487         * src/gplt_x11.c (handle_selection_event): Fix typo in debug code.
4488
4489 2006-03-19  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
4490
4491         * src/graphics.c (boundary): Avoid strchr() on NULL x axis label
4492         text.
4493
4494 2006-03-18  Ethan A Merritt  <merritt@u.washington.edu>
4495
4496         Daniel Sebald has pointed out that when the same plot is being redrawn
4497         repeatedly, for instance during interactive rotation of 3D plots, the
4498         process is noticibly slowed by resending the color palette on each 
4499         refresh. The following set of changes insures that the palette is only
4500         sent if something has changed.
4501
4502         * src/color.c (make_palette): Do not call term->make_palette() unless
4503         either (a) the palette has changed, (b) the terminal has changed, or
4504         (c) the output device has changed.  New routine invalidate_palette()
4505         is available to signal that one of these conditions has occurred.
4506
4507         * src/set.c (set_output set_palette set_palette_defined):
4508         Call invalidate_palette().  Also fix a memory leak.
4509
4510         * src/term.c (change_term): Call invalidate_palette().
4511
4512 2006-03-17  Daniel Sebald  <daniel.sebald@ieee.org>
4513
4514         * src/gplt_x11.c (exec_cmd): Realigned conditional code to allow
4515         compilation with ./configure --with-image --disable-binary-x11-polygon.
4516         Fix conditional test associated whith ./configure --disable-with-image.
4517
4518 2006-03-17  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
4519
4520         * src/fit.c (splitpath): Reorder tests avoid possible read of
4521         uninitialized memory.
4522
4523         * src/alloc.c (gp_alloc): Cast to (generic *)
4524         (checked_free): Introduced new local variable to reduce number of
4525         horrible casts.
4526
4527         * src/hidden3d.c (build_networks): Initialize lp_style from
4528         lp_properties, regardless of whether the plot supposedly has point
4529         symbols drawn or not.  Needed because PM3D drops stuff inside that
4530         struct.
4531
4532 2006-03-17  Shigeharu Takeno  <shige@iee.niit.ac.jp>
4533
4534         * term/aquaterm.trm: Correction of misprints.
4535
4536 2006-03-16  Ethan A Merritt  <merritt@u.washington.edu>
4537
4538         * src/set.c (set_tic_prop): Another bandaid to protect against
4539         int_error() from inside try_to_get_string().  Bug #1434633.
4540
4541 2006-03-15  Ethan A Merritt  <merritt@u.washington.edu>
4542
4543         * src/plot3d.c (get_3ddata): Reorder code so that mutually exclusive
4544         conditions are handled in an if/elseif/else construct. No actual change
4545         in behavior, but it quiets valgrind warning messages.
4546
4547         * term/post.trm: Prevent segfault if someone passes off an undefined
4548         variable as an epslatex header.  This is a bandaid rather than a true
4549         fix, but it's better than segfaulting. The true problem is that an
4550         int_error() exit from expression parsing bypasses proper cleanup of
4551         storage for string variables, and also fails to return NULL to the
4552         caller.  Bug #1434633.
4553
4554 2006-03-15  Daniel Sebald  <daniel.sebald@ieee.org>
4555
4556         * src/datafile.c (plot_option_comma_separated):   Found by valgrind.
4557         Set an uninitialized tuple value to 0.0.
4558
4559         * src/set.c (parse_histogramstyle):   Found by valgrind.
4560         Set an unitialized text label to EMPTY_LABELSTRUCT
4561
4562 2006-03-11  Ethan A Merritt  <merritt@u.washington.edu>
4563
4564         * demo/html/index.save demo/html/Makefile: Add animate2 to the list
4565         of webified examples.
4566
4567 2006-03-11  Bastian Maerkisch  <bmaerkisch@web.de>
4568
4569         * term/pm.trm src/term_api.h src/mouse.h src/mouse.c src/plot.c
4570         src/set.c src/unset.c: Cleanup of the OS/2 menu stuff communicating
4571         gnuplot -> gnupmdrv. This eliminates some 'extern's in C files and moves
4572         code specific to pm terminal to pm.trm.
4573         1. Remove update_menu_items_PM_terminal() from mouse.c.
4574         2. Rename send_gpPMmenu() in mouse.c to PM_set_gpPMmenu() and move the
4575            actual communication with gnupmdrv to new routine
4576            PM_update_menu_items() in pm.trm.
4577            PM_set_gpPMmenu() now only updates the gpPMmenu struct.
4578         3. Replace all calls to update_menu_items_PM_terminal() with calls to
4579            PM_update_menu_items().
4580         4. Removed multiple definitions of PM_intc_cleanup() in plot.c and
4581            pm.trm to term_api.h.
4582
4583 2006-03-11  Ethan A Merritt  <merritt@u.washington.edu>
4584
4585         * src/datafile.c (df_open): If a requested input data file is missing,
4586         issue a warning and continue.  The old behaviour was to issue an error
4587         and bail to the command line.  df_open() now returns a negative number
4588         if the requested file cannot be opened.  Callers must test for error
4589         return.
4590
4591         * src/plot2d.c (eval_plots): If a requested file is missing or empty,
4592         create an empty plot structure for it, but plot other functions or
4593         datafiles as usual. May not work for some combinations of missing
4594         binary input files.
4595
4596         * src/plot3d.c (eval_3dplots): Treat a missing input file the same way
4597         as an input file with no usable data points.  This is not the same
4598         as skipping it cleanly as in the 2D case.  3D should be brought in line
4599         with 2D, but it will require revision of the data structure handling.
4600
4601         * src/fit.c (fit_command): Give an error message if an input data file
4602         is missing or not readable.
4603
4604         * src/graphics.c (do_plot): Re-indent code section dealing with
4605         empty plots.
4606
4607 2006-03-11  Ethan A Merritt  <merritt@u.washington.edu>
4608
4609         * src/plot2d.c (cp_alloc) src/plot3d.c (sp_alloc): Our plot structures
4610         have gained additional fields over the years, but not all of them were
4611         being initialized on allocation. Switch to zeroing the entire structure
4612         on allocation, then filling in the small number of non-zero fields.
4613         Fixes rare segfault found while debugging "skip missing file" code due
4614         to use of an uninitialized plot->p_count field.
4615
4616 2006-03-10  Petr Mikulik  <mikulik@physics.muni.cz>
4617
4618         * src/datafile.c (df_open): Shift misplaced call to gp_expand_tilde.
4619
4620 2006-03-06  Bastian Maerkisch  <bmaerkisch@web.de>
4621
4622         * src/command.c: #include direct.h if compiling with MSVC.
4623
4624 2006-03-06  Hans-Bernhard Broeker  <broeker@physik.rwth-achen.de>
4625
4626         * docs/titlepag.tex: The previous method of detecting pdflatex
4627         vs. normal latex no longer works (some clever guys decided that
4628         they should use pdflatex to make DVI files...).  Give up trying to
4629         sort out that mess.  Just assume that hyperref knows this on its
4630         own, these days.
4631
4632         * src/syscfg.h (OS): Provide a fallback definition to avoid using
4633         an undefined macro.
4634         (GP_EXCEPTION_NAME) [__WATCOMC__]: Define.
4635         
4636         * config/makefile.oww: Some changes to make better use of Watcom's
4637         Make tool.
4638         
4639         * src/win/wgraph.c (drawgraph): Add missing break.
4640         
4641         * term/win.trm (Win_Opts): Change abbreviations of option
4642         {no}enhanced.
4643         (WIN_Font, WIN_Fontsize): Initialize to sensible defaults.
4644         (WIN_enhanced_flush): Remove unused local variable mode.
4645         
4646 2006-03-04  Ethan A Merritt  <merritt@u.washington.edu>
4647
4648         * term/cgm.trm (CGM_options) term/emf.trm (EMF_options)
4649         term/pdf.trm (PDF_options) term/post.trm (PS_OPTIONS):
4650         Accept font request strings of the form
4651             set term <foo> ... font "<fontface>,<fontsize>"
4652         Whatever previous syntax each terminal used remains valid as well.
4653
4654 2006-03-04  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
4655
4656         Support for 'with image' plots in Windows, from Bastian Maerkisch.
4657         
4658         * term/win.trm (WIN_image): New function.  An edited copy of
4659         PM_image.
4660         (TERM_ENTRY): Add entry for WIN_image.
4661
4662         * src/win/wgraph.c (GraphOp, GraphOpSize): Moved body of previous
4663         GraphOp function to GraphOpSize, which has additional argument.
4664         GraphOp replaced by a call to the new function.
4665         (drawgraph): Handle new opcode W_image.
4666
4667         * src/win/wgnuplib.h (W_image): New wgraph operation code.
4668         (GraphOpSize): Added prototype.
4669
4670 2006-03-04  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
4671
4672         Bastian Maerkisch's enhanced text mode patch for Windows:
4673         
4674         * src/win/wgnuplib.h (W_font): New operation code macro.
4675         (struct tagGW): New members deffontname, deffontsize describing
4676         the default font.
4677         (GraphChangeFont, GraphGetTextLength, GraphGetFontScaling): Added
4678         prototypes.
4679
4680         * src/win/wgraph.c (SelFont): Write font to graphwin struct.
4681         (drawgraph): Use TA_BASELINE instead of TA_BOTTOM text alignment.
4682         Add handling of opcode W_font.
4683         (WriteGraphIni): Write default font instead of current font as
4684         GraphFont= entry.
4685         (ReadGraphIni): Read default font from GraphFont= entry.
4686         (GraphChangeFont, GraphGetTextLength): New functions.
4687         (GraphGetFontScaling): New function (#if'ed out).
4688
4689         * term/win.trm (enum WIN_id, WIN_opts): New option {no}enhanced.
4690         (WIN_font, WIN_fontsize, WIN_angle, WIN_x, WIN_y,
4691         WIN_justification): New variables duplicated out of graphwin
4692         struct.
4693         (ENHwin_opened_string, ENHwin_show, ENHwin_overprint,
4694         ENHwin_widthflag, ENHwin_sizeonly, ENHwin_base): New variables.
4695         (WIN_options): Pass font name and size on to struct graphwin.
4696         Accept new option {no}enhanced.
4697         (WIN_move, WIN_justify_text, WIN_text_angle): Save arguments to
4698         new variables.
4699         (WIN_set_font, WIN_enhanced_open, WIN_enhanced_flush,
4700         WIN_enhanced_put_text):
4701         (TERM_ENTRY): Add entries for new functions.
4702
4703 2006-03-04  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
4704
4705         * config/makefile.cyg (HCWPATH): Look for HCW in the default place
4706         where it installs itself.
4707         ($(OBJS) $(WINOBJS) dbinary.$(O)): Make these depend on config.h.
4708         (default, all): Generate config.h by real dependency.
4709         (show.$(O)): Don't assume .o extension.
4710
4711         * config/config.cyg: No, we don't HAVE_PWD_H.
4712
4713 2006-03-02  Mike Sutton  <mws116@usa.com>
4714
4715         * term/cgm.trm (CGM_set_color): Let the CGM driver set color
4716         when colorspec type is TC_LT.
4717
4718 2006-02-28  Ethan A Merritt  <merritt@u.washington.edu>
4719
4720         * src/term.c (term_close_output): Fix fatal double-close error
4721         triggered by error return from post.trm at any point where gppsfile
4722         and gpoutfile both point to the same file descriptor.
4723
4724         * term/post.trm: Fix broken linetype definitions loaded by
4725         set term epslatex oldstyle
4726
4727 2006-02-28  Lars Hecking  <lhecking@users.sourceforge.net>
4728
4729         * demo/Makefile.am.in: Add *.pdb and *.r3d to EXTRA_DIST generation.
4730
4731         * docs/gnuplot.texi: Regenerated after recent documentation updates.
4732
4733 2006-02-28  Per Persson  <persquare@mac.com>
4734
4735         * term/aquaterm.trm: Added encoding support to aqua terminal. Currently 
4736         supports iso_latin_1, iso_latin2, and cp1250. Default is iso_latin_1.
4737
4738 2006-02-27  Bastian Maerkisch  <bmaerkisch@web.de>
4739
4740         SF patch [1436005] WIN: change sequence of pointstyles
4741
4742         * src/win/wgnuplib.h src/win/wgraph.c: Change the sequence of poinstyle
4743         symbols such that it matches the sequence of terminals like postscript
4744         or gd.
4745
4746 2006-02-26  Ethan A Merritt  <merritt@u.washington.edu>
4747
4748         * demo/html/index.save: Update web site template for 4.1 demos.
4749
4750         * src/set.c(set_decimalsign) src/variable.c(locale_handler)
4751         src/show.c(show_command show_decimalsign show_locale) docs/gnuplot.doc:
4752         Work a little harder to show both the current input and output settings
4753         for decimal point handling (LC_NUMERIC locale setting).
4754
4755 2006-02-25  Ethan A Merritt  <merritt@u.washington.edu>
4756
4757         * graph3d.c (do_3dplot): Contour lines are supposed to be in different
4758         colors, but this was only working if the surface itself was drawn in a
4759         simple linetype.  Fix contour auto-coloring even for explicit rgb or
4760         other surface-coloring modes.
4761
4762 2006-02-25  Ethan A Merritt  <merritt@u.washington.edu>
4763
4764         * src/gadgets.h src/term_api.h:  Move line type definitions into
4765         term_api.h, since they exist to request specific terminal behavior.
4766         Remove definition of L_TYPE_NODRAW. It is now superseded by LT_NODRAW.
4767
4768         * src/misc.c (parse_colorspec);  Now that LT_BACKGROUND is safe to pass
4769         to all terminal drivers, allow it as a legal linetype (-3) in commands.
4770
4771 2006-02-24  Petr Mikulik  <mikulik@physics.muni.cz>
4772
4773         * src/tables.c (set_palette_tbl pm3d_color_names_tbl): Support both
4774         spellings of "gray" and "grey".
4775
4776 2006-02-23  Shigeharu Takeno  <shige@iee.niit.ac.jp>
4777
4778         * docs/gnuplot.doc term/post.trm: Correction of misprints.
4779
4780 2006-02-23  Petr Mikulik  <mikulik@physics.muni.cz>
4781
4782         * demo/pointsize.dem: Add 'reset' at the end.
4783
4784 2006-02-21  Daniel Sebald  <daniel.sebald@ieee.org>
4785
4786         * term/post.trm (PS_encode_image): The computation for the max number
4787         of required bytes for encoding the image didn't take into account that
4788         there is 8 bit alignment (potentially additional 7 bits) at the end
4789         of each image line. The encoded image was written outside memory on
4790         the heap and corrupted when cleared. Fixed, and added an assert()
4791         test, after the fact, to compare encode size against memory size.
4792
4793 2006-02-21  Daniel Sebald  <daniel.sebald@ieee.org>
4794
4795         * src/gplt_x11.c (scan_palette_from_buf): The read_input() status
4796         was ignored and consequently when a partial read of the pipe happened
4797         a full line was not removed from pipe. For long palettes garbage
4798         remained in pipe when done and next command was bogus.
4799
4800         * src/gplt_x11.c (read_input_line): A new routine that will check
4801         status of read_input and continue reading if only a partial read.
4802         If there are too many reads, the routine gives warning.
4803
4804 2006-02-21  Daniel Sebald  <daniel.sebald@ieee.org>
4805
4806         * src/getcolor.c (interpolate_color_from_gray): The index could go
4807         to one past the end of the array and cause a program crash. This
4808         was fixed with a bisecting routine as suggested by the old comment
4809         nearby, as opposed to the linear search.
4810
4811 2006-02-20  Ethan A Merritt  <merritt@u.washington.edu>
4812
4813         * term/imagen.trm (IMAGEN_cvts):  Obviously no one uses this driver,
4814         because if they had they would have noticed that it's been trampling
4815         on unallocated memory since version 3.7 times or earlier.  Fixed.
4816
4817         * term/metapost.trm (MP_filled_polygon MP_boxfill): solid fill density
4818         parameter was being interpreted incorrectly.
4819
4820 2006-02-20  Ethan A Merritt  <merritt@u.washington.edu>
4821
4822         * aed.trm ai.trm amiga.trm corel.trm debug.trm djsvga.trm dumb.trm 
4823         dxy.trm emf.trm excl.trm fg.trm fig.trm gd.trm ggi.trm gnugraph.trm 
4824         gpic.trm grass.trm hp26.trm hpgl.trm imagen.trm iris4d.trm latex.trm
4825         linux.trm metafont.trm mif.trm next.trm openstep.trm pbm.trm pc.trm
4826         pdf.trm post.trm pstricks.trm regis.trm rgip.trm sun.trm svg.trm 
4827         t410x.trm tex.trm texdraw.trm tgif.trm tkcanvas.trm tpic.trm unixpc.trm
4828         unixplot.trm vgagl.trm vws.trm win.trm 
4829
4830         Replace L_TYPE_NODRAW and explicit constants -2, and -1 with
4831         LT_NODRAW, LT_BLACK, and LT_AXIS respectively.
4832         
4833         Make sure all drivers check for legal linetype in term->linetype().
4834         Many drivers were not prepared to handle term->linetype(LT_BACKGROUND).
4835         Note that it was unsafe even to call term->linetype(LT_BLACK) or
4836         LT_AXIS on some older drivers (e.g. iris4d).
4837
4838 2006-02-19  Ethan A Merritt  <merritt@u.washington.edu>
4839
4840         * src/axis.c src/color.c src/gadgets.h src/graph3d.c src/graphics.c
4841         src/set.c src/show.c: Replace L_TYPE_NODRAW everywhere in core code
4842         with LT_NODRAW. 
4843
4844         * term/post.trm (PS_options): Fix a memory leak and a double-free
4845         in the code handling epslatex epslatex_header option. While there,
4846         update the code to handle string variables.
4847         Bug #1434633.
4848
4849 2006-02-19  Dennis Linse  <djlinse37@users.sourceforge.net>
4850
4851         * missing: Add work-around for parsing bug that cannot handle the
4852         "--output=<foof>" option to makeinfo. See also the change below,
4853         which removes gnuplot.info from the default make target.
4854         Bug #1422925.
4855
4856 2006-02-19  Ethan A Merritt  <merritt@u.washington.edu>
4857
4858         * term/gd.trm (image_do_crop): Move libgd version 2 dependency
4859         inside conditional code segment. Bug #1434658.
4860
4861         * docs/Makefile.in: Add an empty target for "install-exec", and
4862         remove gnuplot.info from the target "all".  These changes are needed
4863         in order for either a default "make" or "make install-exec" to 
4864         succeed on a system without emacs or makeinfo.
4865         Bug #1430819.
4866         Thanks to Dennis Linse  <djlinse37@users.sourceforge.net>
4867         
4868         Note: an alternative is not to use the .../missing script for
4869         makeinfo, or somehow make the fact that it's missing a non-fatal
4870         error.
4871
4872 2006-02-17  Bastian Maerkisch  <bmaerkisch@web.de>
4873
4874         SF patch [1432890] Win: rotated text at arbitrary angles
4875
4876         * src/win/wgnuplib.h src/win/wgraph.c term/win.trm: Rotated text at
4877         arbitrary angles for the windows terminals.
4878
4879 2006-02-16  Bastian Maerkisch  <bmaerkisch@web.de>
4880
4881         SF patch [1384525] Small fixes to gd terminals
4882
4883         * term/gd.trm: Fixes for Win32 to allow linking with bgd.dll or static.
4884         - Static linking with gdlib is now possible (again) on windows (NONDLL
4885           is taken into account).
4886         - A new define GD_NEED_LOCAL_FONT_POINTERS is added. When defined
4887           gd.trm will use local pointers to the fonts built into gdlib. This
4888           is highly recommended by Mr. Boutell on Windows platforms. Currently
4889           it is only activated on Windows when linking to bgd.dll.
4890
4891 2006-02-12  Daniel Sebald  <daniel.sebald@ieee.org>
4892
4893         * term/post.trm (PS_encode_image PS_image): Bug fix for the PostScript
4894         image using the five operand form (i.e., no palette). The bug was
4895         that the max colors was not set to 2^N, where N is 1, 2, 4, 8, or 12.
4896         So if the gray scale max was 128 (2^7) the brightness was lower than
4897         it should have been.
4898
4899 2006-02-12  Petr Mikulik  <mikulik@physics.muni.cz>
4900
4901         * src/graph3d.c (do_3dplot): Fixed the condition for which the message
4902         of missing blank lines in a datafile for pm3d plot is displayed.
4903
4904 2006-02-11  Timothee Lecomte  <timothee.lecomte@ens.fr>
4905
4906         * src/gplt_x11.c (handle_selection_event): Export a timestamp for each
4907         selection request, as per the X11 clipboard handling standard.
4908
4909 2006-02-06  Ethan Merritt  <merritt@u.washington.edu>
4910
4911         * docs/gnuplot.doc: Make "set xyplane" description more self-consistent.
4912
4913 2006-02-03  Petr Mikulik  <mikulik@physics.muni.cz>
4914
4915         * src/set.c (set_tics set_tic_prop): Draw nomirrored tics correctly for
4916         "reset; unset xtics; set xtics nomirror; splot x" and 
4917         "reset; unset tics; set tics nomirror; splot x".
4918
4919 2006-02-03  Ethan Merritt  <merritt@u.washington.edu>
4920
4921         * src/graphics.c (plot_c_bars): Clip candlesticks (financebars)
4922         to vertical plot boundaries.
4923
4924 2006-02-02  Ethan Merritt  <merritt@u.washington.edu>
4925
4926         * src/gplt_x11.c (handle_selection_event): Clean up yesterday's
4927         code a little, and separate the pixmap request from the mouse
4928         coordinate string request.  By making the string request
4929         separately, it seems that klipper now notices it. 
4930
4931 2006-02-01  Ethan Merritt  <merritt@u.washington.edu>
4932
4933         * src/gplt_x11.c (handle_selection_event): Fix bad interaction 
4934         between gnuplot_x11 and X11 clipboard management tool "klipper".
4935         Refuse to export the pixmap and colormap more than once per
4936         plot export. For unknown reasons, klipper continues to ask for
4937         copies of both ad infinitum.  Fixes bugs ##1225866 and #1420675.
4938
4939 2006-01-31  Ethan Merritt  <merritt@u.washington.edu>
4940
4941         * src/command.c: (VMS) replace MAILBOX with "PLOT$MAILBOX"
4942
4943         * src/set.c (set_timestamp): Use gp_strdup() rather than strdup().
4944
4945         * src/term_api.h: Remove trailing comma from definition of 
4946         t_termlayer.
4947
4948         * src/util.c (existdir): Special case VMS.
4949
4950         With these minor tweaks, the current gnuplot source will compile
4951         and build under VMS using DECC.  Not all drivers tested, though.
4952
4953 2006-01-28  Ethan Merritt  <merritt@u.washington.edu>
4954
4955         * src/term.c (parse_term_size): New routine intended to be shared
4956         by terminals with "set term <foo> size XX, YY" option. The routine
4957         itself supports size specification in inches, cm, or pixels. The
4958         calling terminal can limit which units are acceptable.
4959
4960         * term/post.trm (term_options): "set term ... size XX, YY" option.
4961         This is intended to replace the older mechanism:
4962         "set size ... ; set term ...".  The new code gets the bounding box
4963         right, which the old mechanism does not, and it rationalizes the use
4964         of screen coordinates to match that of other (but not all) terminals.
4965
4966 2006-01-26  Ethan Merritt  <merritt@u.washington.edu>
4967
4968         * src/datafile.c (df_read_matrix):  Bugfix for "every" option in plot
4969         "matrix ... every *:*:firstpoint:*".  If we are explicitly skipping
4970         input columns, it doesn't matter whether they contain legal input or
4971         not. Therefore test index against firstpoint before trying to parse
4972         it as a number.
4973
4974 2005-01-23  Daniel Sebald  <daniel.sebald@ieee.org>
4975
4976         * src/graphics.c (plot_image_or_update_axes): Fix for
4977         "plot [from:to] [from:to] ... with image".
4978
4979 2006-01-21  Petr Mikulik  <mikulik@physics.muni.cz>
4980
4981         * src/graph3d.c (do_3dplot): The mistake of missing blank lines in a
4982         datafile for pm3d plot is so frequently made that it really deserves
4983         a warning. 
4984
4985 2006-01-19  Ethan Merritt  <merritt@u.washington.edu>
4986
4987         * src/color.c src/color.h src/gadgets.c src/gadgets.h: Move color_box
4988         structure and associated definitions from color.* to gadgets.*. This
4989         resolves a circular header dependency if the structure is to be shared
4990         by 2D and 3D code. Add (struct position) entries to color_box structure
4991         to generalize the placement options.
4992
4993         * src/command.c src/command.h src/gadgets.c src/gadgets.h: Move the
4994         related TBOOLEAN flags is_3d_plot and is_cb_plot from command.* to
4995         gadgets.*.
4996
4997         * src/save.c src/show.c src/set.c src/unset.c: Convert the relevant
4998         routines to manipulate color_box position using new (struct position)
4999         fields.
5000
5001         * docs/gnuplot.doc: Document that color_box placement can now be
5002         specified in any of gnuplot's coordinate systems.
5003
5004 2006-01-15  Ethan Merritt  <merritt@u.washington.edu>
5005
5006         * docs/gnuplot.doc: Correct various typos and spelling errors.
5007
5008 2006-01-13  Ethan Merritt  <merritt@u.washington.edu>
5009
5010         * term/emf.trm: EMF_filled_polygon has the side-effect of
5011         changing the current line color.  Force re-evaluation of line
5012         properties the next time a line is drawn.
5013
5014 2006-01-13  Timothee Lecomte  <timothee.lecomte@ens.fr>
5015
5016         * demo/rainbow.dem:  Do not "unset mouse" inside demo.
5017
5018 2006-01-12  Ethan Merritt  <merritt@u.washington.edu>
5019
5020         * term/svg.trm: Avoid improper call to strcpy found by valgrind.
5021
5022         * term/emf.trm: Allow terminal to use LT_BACKGROUND as a line or
5023         fill color.
5024
5025         * term/xlib.trm (Xlib_reset): Give xlib its own reset function,
5026         because sharing one with x11 can lead to a double-free of the
5027         output file, resulting in a segfault (found by valgrind).
5028
5029 2006-01-11  Ethan Merritt  <merritt@u.washington.edu>
5030
5031         * src/plot3d.c (get3d_data):  Fix initialization code for 3D plot
5032         style `with vectors`.
5033
5034 2005-01-07  Mike Sutton  <mws116@usa.com>
5035
5036         * term/gd.trm: New terminal option {rounded|butt} controls line caps.
5037
5038         * src/color.c (draw_color_smooth_box): In splot in view map mode, have
5039         the colorbox extend the full height of the y axis by default. Placement
5040         in 3D plots is not affected. This was the old (pre-4.0) behaviour.
5041
5042 2005-01-07  Daniel Sebald  <daniel.sebald@ieee.org>
5043
5044         * term/gd.trm: Addtional processing of animated gifs to bring
5045         output file into compliance with the Gif89a standard.
5046
5047         * demo/animate2.dem demo/rotate.gnu: New demo of gif animation,
5048         showing transparency.  Revised rotation code for both animate
5049         and animate2 demos.
5050
5051 2006-01-07  Ethan Merritt  <merritt@u.washington.edu>
5052
5053         * src/term.c (term_end_multiplot): Free title string and clear
5054         multiplot title.
5055
5056 2005-01-07  Daniel Sebald  <daniel.sebald@ieee.org>
5057
5058         * src/gplt_x11.c (record):  Incorrect nesting of parentheses.
5059
5060 2006-01-02  Ethan Merritt  <merritt@u.washington.edu>
5061
5062         * term/gd.trm (PNG_options): Change default animation mode to 
5063         "nooptimize".  Disable optimization if the background is transparent,
5064         as this combination is not handled well by most viewing programs.
5065
5066 2006-01-02  Dennis Linse  <djlinse37@yahoo.com>
5067
5068         * term/x11.trm: Remove redundant #include <sys/select.h>
5069
5070 2005-12-30  Ethan Merritt  <merritt@u.washington.edu>
5071
5072         * term/gd.trm (PNG_options): Initialize and report animate {nooptimize}
5073         flag in terminal options string.
5074
5075 2005-12-29  Ethan Merritt  <merritt@u.washington.edu>
5076
5077         * term/gd.trm term/vgagl.trm:  Cleanup (#undef) definition of Y(coord)
5078         before leaving driver code.
5079
5080         * term/pdf.trm:  Correct signedness problem in call to PDF_open_image().
5081
5082         * term/svg.trm: Increase the internal resolution of terminal coordinates
5083         by adding a scale factor SVG_SCALE. This fixes the "wavy line" bug seen
5084         in svg plots.
5085
5086 2005-12-29  Petr Mikulik  <mikulik@physics.muni.cz>
5087
5088         * term/gd.trm: New routine image_do_crop(), extracted from png_text().
5089         Now shared for cropping all png/gif/jpeg images.
5090
5091 2005-12-26  Ethan Merritt  <merritt@u.washington.edu>
5092
5093         * src/graph3d.c (place_label3d):  Let write_label handle clipping to
5094         the page, rather than duplicating it in place_label3d.
5095
5096 2005-12-21  Ethan Merritt  <merritt@u.washington.edu>
5097
5098         * term/gd.trm (PNG_text): Work around unexpected behaviour in libgd,
5099         which does not copy transparent pixels during a copy operation.
5100         Fixes bug #1386553.
5101
5102 2005-12-17  Bastian Maerkisch  <bmaerkisch@web.de>
5103
5104         * src/win/wgraph.c (drawgraph): Fixed "splot x with line palette lw 10".
5105
5106 2005-12-17  Petr Mikulik  <mikulik@physics.muni.cz>
5107
5108         * src/version.c: Changed value of gnuplot_date[] from a useless 
5109         July 2004 day into "December 2005".
5110
5111         * src/mouse.h src/mouse.c: Added new field was_splot_map in structure
5112         t_zoom. It should fix yet another occurence of "set view map; plot x"
5113         and y-axis reversal when zooming by mouse and unzooming by hotkeys.
5114
5115 2005-12-15  Bastian Maerkisch  <bmaerkisch@web.de>
5116
5117         * term/win.trm (WIN_set_color) src/win/wgraph.c (drawgraph): Support for
5118         text color via RGB and via linetype color values.
5119
5120 2005-12-14  Bastian Maerkisch  <bmaerkisch@web.de>
5121
5122         * config/makefile.nt: Fixes for linking with bgd.dll.
5123
5124         * src/term.c: #include <io.h> for __MSC__.
5125
5126 2005-12-11  Ethan Merritt  <merritt@u.washington.edu>
5127
5128         * src/graph3d.c (do_3dplot): Add a BoundingBox structure to describe
5129         the plot boundaries in 'set view map' mode.
5130
5131 2005-12-06  Ethan Merritt  <merritt@u.washington.edu>
5132
5133         * src/graph3d.c (do_3dplot) src/graph3d.h src/plot3d.c (eval_3dplots)
5134         src/hidden3d.c (build_networks) docs/gnuplot.doc:   Add an option
5135         `with <plotstyle> nohidden3d` that allows you to exclude a particular
5136         plot from the global `set hidden3d` processing.
5137
5138 2005-12-06  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
5139
5140         * src/hidden3d.c (COORD_TO_TREECELL, COORD_TO_BITMASK): Avoid
5141         overflow by undoing effect of surface_scale before mapping to
5142         integers.
5143         (store_polygon): Add assert()s to internal macros GET_MIN,
5144         GET_MAX, to catch problems not handled by above changes.
5145         (in_front): Avoid accessing qlist[-1].  Make sure
5146         p_list[] is always filled, even if doing a single-vertex pseudo
5147         edge.
5148
5149 2005-12-05  Ethan Merritt  <merritt@u.washington.edu>
5150
5151         * src/hidden3d.c (build_networks):  Each plot with style LABELPOINTS
5152         contains a linked list of labels. But the first label in this list is
5153         a dummy entry used only as a placeholder for style parameters. The
5154         hidden3d code was incorrectly counting this as an actual label.
5155         Fixes at least some instances of bug #1372464.
5156
5157 2005-12-04  Ethan Merritt  <merritt@u.washington.edu>
5158
5159         * src/gadgets.h: Add new internal linetype LT_COLORFROMCOLUMN
5160
5161         * src/graph3d.c (do_3dplot): Remove warning if no surface is visible
5162         in plot with hidden3d set.
5163
5164         * src/hidden3d.c src/util3d.h: Modify struct vertex so that it contains
5165         a pointer (lp_style_type *)lp rather than simply an (int)style. This
5166         allows all the various point properties to be handled in hidden3d mode
5167         except for variable pointsize. Variable pointsize is handled by adding
5168         a new field (struct coordinate *)original. This, however, increases the
5169         size of struct vertex, so it can be configured out under the control of
5170         HIDDEN3D_VAR_PTSIZE.
5171         
5172         * demo/pointsize.dem demo/rgb_variable.dem: Update demos to show off
5173         use of 'set hidden3d' for 3D point plots.
5174
5175         * src/graph3d.c src/hidden3d.c: Handle 'splot with vectors' in
5176         hidden3d mode.
5177
5178         * demo/molecule.dem demo/GM1_bonds.r3d demo/GM1_sugar.pdb: New
5179         demo that shows off vector+point plots in hidded3d mode.
5180
5181 2005-12-02  Ethan Merritt  <merritt@u.washington.edu>
5182
5183         * src/gplt_x11.c src/gplt_x11.h: Move #include <sys/select.h> from
5184         gplt_x11.c to gplt_x11.h so that x11.trm can see it also.
5185         Bugfix #1365076.
5186
5187         * term/x11.trm: Remove duplicate #define for constants present in
5188         gplt_x11.h.
5189
5190 2005-12-01  Michael Williamson  <mwilliamson@users.sourceforge.net>
5191
5192         * src/set.c (set_size): Do not allow size values <= 0.
5193
5194 2005-11-29  Petr Mikulik  <mikulik@physics.muni.cz>
5195
5196         * src/mouse.c (apply_zoom): Fix for "set view map; plot x" and y-axis
5197         reversal when mouse zooming.
5198
5199 2005-11-28  Petr Mikulik  <mikulik@physics.muni.cz>
5200
5201         * src/datafile.c (df_set_datafile_binary): Give an error message for
5202         'set datafile binary' (without any option).
5203
5204 2005-11-27  Juergen Wieferink  <wieferink@freenet.de>
5205
5206         * src/parse.c (const_string_express parse_additive_expression)
5207         src/parse.h src/eval.c (pop_or_convert_from_string) src/eval.h 
5208         src/util.c (try_to_get_string) src/internal.c (f_minus)
5209         src/set.c (set_label set_xyzlabel load_tic_user):
5210
5211         Clean up parsing and evaluation of try_to_get_string() by moving the
5212         test against STRING_RESULT_ONLY into the actual parsing code. Now if
5213         a + or - operator is encountered while parsing something that is 
5214         supposed to be a string, no further tokens are processed. Before, this
5215         triggered an arithmetic operation on the string that had to be thrown
5216         out afterwards.
5217
5218 2005-11-27  Ethan Merritt  <merritt@u.washington.edu>
5219
5220         * src/set.c (set_arrow): Rewrite set_arrow() to behave the same as
5221         set_label() and other "set <foo>" routines; attribute changes for any
5222         one arrow are now incremental.
5223
5224         * src/misc.c (arrow_parse) src/plot2d.c src/plot3d.c src/set.c:
5225         Remove 2nd parameter of arrow_parse, since it is no longer used by
5226         any callers.
5227
5228         * src/axis.c (axis_checked_extend_empty_range) src/plot3d.c:
5229         Suppress warning message "empty z range" when mode is "set view map".
5230
5231 2005-11-27  Petr Mikulik  <mikulik@physics.muni.cz>
5232
5233         * demo/pm3d.dem: Change one splot from "with lp palette" to
5234         "with lines palette".
5235
5236 2005-11-26  Ethan Merritt  <merritt@u.washington.edu>
5237
5238         * src/plot2d.c (eval_plots) src/plot3d.c (eval_3dplots):
5239         Bugfix: Arrow style used by "with vector" was getting over-written
5240         during subsequent command line parsing.
5241
5242 2005-11-25  Daniel Sebald  <daniel.sebald@ieee.org>
5243
5244         * src/datafile.c (avs_filetype_function) docs/gnuplot.doc:
5245         Support AVS image file format.
5246         Example:
5247               plot '<convert foo.jpeg avs:-' binary filetype=avs with rgbimage
5248
5249 2005-11-25  Ethan Merritt  <merritt@u.washington.edu>
5250
5251         * src/graphics.c (do_plot do_key_sample)
5252         src/graph3d.c (key_sample_line key_sample_point key_sample_point_pm3d):
5253         Clip key to canvas unless TERM_CAN_CLIP flag is set.
5254
5255         * src/set.c (load_tic_user): Allow string variables and string functions
5256         in 'set {xyz}tics ( FOO <foo>, BAR(x) x, "string"."exp" <place> )
5257
5258         * src/datafile.c (plot_option_binary): Fix logic error in binary file
5259         initialization. Initialization was done inside a parsing loop, but the
5260         loop was never entered unless there were additional keywords on the 
5261         command line.  Bugfix.  "set style data rgbimage" now works.
5262
5263 2005-11-25  Petr Mikulik  <mikulik@physics.muni.cz>
5264
5265         * term/tgif.trm (TGIF_init): Message "Creator: gnuplot %s patchlevel %s"
5266         instead of (dollar)Header:(dollar) in output file header.
5267
5268 2005-11-24  Ethan Merritt  <merritt@u.washington.edu>
5269
5270         * src/gadgets.c (clip_point) src/term.c (do_arrow): If terminal
5271         flag TERM_CAN_CLIP is set, then set canvas clipping description 
5272         to NULL.
5273
5274         * src/term_api.h src/term.c: Export on_page() so that it can be
5275         used for clipping tests by other core modules.
5276
5277         * src/gadgets.c (write_label): If a label has an associated point,
5278         clip the point using the same test as was used for the label itself.
5279
5280 2005-11-24  Juergen Wieferink  <wieferink@freenet.de>
5281
5282         * src/util.c (parse_sq) src/scanner.c (scanner) docs/gnuplot.doc:
5283         Fixed \' in single-quoted strings.
5284
5285 2005-11-24  Daniel Sebald  <daniel.sebald@ieee.org>
5286
5287         * src/gplt_x11.c: Linked list of color maps separate from the linked
5288         list for x11 plots. Bugfix for different color palettes in different
5289         x11 terminal windows and resizing them.
5290
5291 2005-11-18  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
5292
5293         * src/hidden3d.c (build_networks): Fix handling of previousvertex
5294         variable for point-like objects, which don't need it.
5295
5296 2005-11-14  Juergen Wieferink  <wieferink@freenet.de>
5297
5298         * src/set.c (set_xyzlabel): Fix parsing error in backwards-compatible
5299         form "set xlabel 'foo' -1,-1".
5300
5301 2005-11-12  Ethan Merritt  <merritt@u.washington.edu>
5302
5303         * src/axis.c (gen_tics): Check whether user-specified tic is major
5304         or minor before choosing a line type for the corresponding grid line.
5305
5306         * term/gd.trm (ENHGD_put_text) term/pdf.trm (ENHPDF_put_text):
5307         Fix typos that caused justification to fail for rotated, enhanced
5308         mode text strings.
5309
5310 2005-11-11  Harald Harders  <h.harders@tu-bs.de>
5311
5312         * src/axis.c (axis_output_tics): Normally the tics are placed to
5313         dodge the border line.  If the border line is not drawn, then do
5314         not try to dodge it.
5315
5316 2005-11-11  Ethan Merritt  <merritt@u.washington.edu>
5317
5318         * term/metapost.trm: Update driver to support version 4.1 features.
5319         Implement general text rotation.
5320         Add partial density solid fill support for rectangles and polygons,
5321         with pattern fill implemented as incremental density solid fill.
5322         Fix bugs in terminal option font parsing.
5323         Keep track of dash pattern independent of line color
5324
5325 2005-11-09  Ethan Merritt  <merritt@u.washington.edu>
5326
5327         * src/term.c (do_arrow): Revert previous patch, since it seems
5328         the bad effects outweigh the good.
5329
5330 2005-11-08  Ethan Merritt  <merritt@u.washington.edu>
5331
5332         * src/term.c (do_arrow): Add a work-around for broken behaviour
5333         by the postscript terminal.  post.trm does not correctly report
5334         the current canvas size, so arrows cannot be clipped against the
5335         canvas boundaries if the current terminal is post.trm. The proper
5336         fix is probably in post.trm itself, but it potentially affects
5337         many aspects of plot layout so I am reluctant to make the change
5338         there.
5339
5340 2005-11-01  Ethan Merritt  <merritt@u.washington.edu>
5341
5342         * src/plot3d.c (eval_3dplots): Fix logic bug in vector style
5343         initialization.  Replicate vector line style properties stored
5344         in arrow_properties into plot's main lp_properties.
5345
5346 2005-10-31  Harald Harders  <h.harders@tu-bs.de>
5347
5348         * term/post.trm (PS_options): Add flags to track whether terminal
5349         options have been set; issue error on attempt set option twice.
5350
5351 2005-10-26  Petr Mikulik  <mikulik@physics.muni.cz>
5352
5353         * docs/gnuplot.doc: Updated 'help matrix' and 'help matrix ascii'.
5354
5355 2005-10-23  Ethan Merritt  <merritt@u.washington.edu>
5356
5357         * src/datafile.c (adjust_binary_use_spec): Interpret the command
5358         "plot <foo> matrix" as equivalent to "plot <foo> matrix using 1:3".
5359
5360 2005-10-22  Harald Harders  <h.harders@tu-bs.de>
5361
5362         * term/pslatex.trm (EPSLATEX_set_color): Fix bug in setting
5363         pure black or white via a gray value.
5364
5365 2005-10-22  Ethan Merritt  <merritt@u.washington.edu>
5366
5367         * src/datafile.c (df_open): Fix [very] long-standing bug
5368         that caused only the first 3 columns of ascii matrix data to
5369         be read after the command:   splot "data" using 1:2:3 matrix
5370         Bug #1264105.
5371
5372 2005-10-21  Ethan Merritt  <merritt@u.washington.edu>
5373
5374         * src/gp_types.h: Force enum for variable types to start at
5375         INTGR = 1, so that 0 (NULL) is guaranteed not to be a valid
5376         variable type.
5377
5378         * src/util.c src/util.h (type_udv): New function returning the
5379         type of a user-defined variable, or 0 if there is no such udv.
5380         Replaces isstringvar().
5381
5382         * datafile.c (plot_ticlabel_using df_readascii): Allow the
5383         using specs {x|y|z}ticlabel(<foo>) to accept an expression
5384         for <foo> rather than accepting only an integer constant.
5385
5386 2005-10-20  Petr Mikulik  <mikulik@physics.muni.cz>
5387
5388         * src/term.c (do_arrow): Moved misplaced declaration.
5389
5390         * config/config.cyg config/config.mgw: Updated.
5391
5392 2005-10-19  Ethan Merritt  <merritt@u.washington.edu>
5393
5394         * docs/gnuplot.doc: Update description of xticlabels(<col>).
5395
5396 2005-10-19  Petr Mikulik  <mikulik@physics.muni.cz>
5397
5398         * term/x11.trm (START_HELP): Update docs about window title.
5399
5400 2005-10-16  Ethan Merritt  <merritt@u.washington.edu>
5401
5402         * src/gadgets.h: Export (BoundingBox *)clip_area, so that gnuplot
5403         core routines can specify clipping boundaries before calling
5404         clip_point() and clip_line().
5405
5406         * src/term.c (do_arrow): clip all lines in arrow to the canvas.
5407         Bug #1187336.
5408
5409         * src/graph3d.c (get_arrow3d): Since arrow clipping is now
5410         handled properly in do_arrow(), remove the old cruder clipping test.
5411
5412         * term/pdf.trm (PDF_filled_polygon): Filled arrowheads can still
5413         protrude across the canvas boundary, and the pdflib routines 
5414         cannot deal with this due to the use of (unsigned int) for the
5415         polygon vertices.  Cast to (int) prevents segfaults or error
5416         exit by pdflib library.
5417
5418         * term/pdf.trm (PDF_point): Bugfix: Do not crash on pointsize 0.
5419
5420 2005-10-15  Ethan Merritt  <merritt@u.washington.edu>
5421
5422         * src/gadgets.h src/gadgets.c: Define a BoundingBox structure type,
5423         and create two instances: one for the plot boundary and one for the
5424         canvas boundary.  Also export a (BoundingBox *)clip_area  pointer to
5425         the currently active BoundingBox for clipping.  At this point,
5426         clip_area always points to plot_bounds.
5427
5428         * src/term.c (term_start_plot): Immediately after each call to
5429         term->graphics(), load terminal's coordinate range into canvas
5430         BoundingBox.
5431
5432         * src/gadgets.c (clip_point clip_line): Clip against the BoundingBox
5433         pointed to by clip_area. In the past this has always been the plot
5434         boundary, but now we will be able to use the same routines to clip
5435         against other areas.
5436
5437         * src/graphics.c src/graph3d.c src/mouse.c: Replace all instances of
5438         xright, xleft, ytop, ybot with references to those same fields in the
5439         plot_bounds BoundingBox.
5440
5441         * term/tkcanvas.trm: Replace xright, xleft, ytop, ybut here to.
5442         PLEASE FIX: But no terminal should be referring to these directly.
5443
5444 2005-10-15  Hans Grobler  <grobh@users.sourceforge.net>
5445
5446         * src/gplt_x11.c: Fix buffer overflow caused by incorrect size
5447         allocation for rdbuf.
5448
5449 2005-10-14  Ethan Merritt  <merritt@u.washington.edu>
5450
5451         * src/plot2d.c (eval_plots) src/plot3d.c (eval_3dplots): Explicitly
5452         initialize arrow style for "{s}plot with vector", since arrow_parse()
5453         no longer does this for us.
5454
5455 2005-10-13  Ethan Merritt  <merritt@u.washington.edu>
5456
5457         * term/dumb.trm: Fix dumb bug in dumb term. coords run from 0->xmax
5458         and 0->ymax, but array space was only allocated for xmax*ymax pixels.
5459         Correct this to (xmax+1)*(ymax+1). Fixes segfault triggered by
5460         "set size 2,2".
5461
5462 2005-10-12  Don Taber  <dtaber@topaflyers.com>
5463
5464         * term/pbm.trm: Update description of the PBMPLUS and NETPBM packages.
5465
5466 2005-10-12  Ethan Merritt  <merritt@u.washington.edu>
5467
5468         * term/pslatex.trm: Add TERM_CAN_CLIP to terminal flags, since the core
5469         routines cannot correctly estimate the length of TeX strings.
5470         Bug #1324794.
5471
5472 2005-10-12  Lars Hecking  <lhecking@users.sourceforge.net>
5473
5474         * src/beos/Makefile.in: Remove Makefile from EXTRA_DIST.
5475
5476 2005-10-11  Ethan Merritt  <merritt@u.washington.edu>
5477
5478         * src/graph3d.c (plot3d_points): Small code clean up in preparation
5479         for possible addition of a sorting step prior to plotting.
5480
5481 2005-10-10  Bastian Maerkisch  <bmaerkisch@web.de>
5482
5483         * src/win/winmain.c (win_lower_terminal_window): "lower" command for the
5484         Windows terminal.
5485
5486 2005-10-09  Harald Harders  <h.harders@tu-bs.de>
5487
5488         * src/misc.c (lp_parse arrow_parse) set.c (set_linestyle set_arrowstyle)
5489         src/plot2d.c (eval_plots) src/plot3d.c (eval_3dplots) docs/gnuplot.doc:
5490
5491         Bring "set style line ..." and "set style arrow ..." into agreement with
5492         other "set style <foo>" commands by retaining current properties, rather
5493         than resetting to the default style each time. The previous behavior was
5494         undocumented.  Add an explicit command "set style {line|arrow} default".
5495
5496 2005-10-09  Petr Mikulik  <mikulik@physics.muni.cz>
5497
5498         * term/pdf.trm term/svg.trm (START_HELP): Small changes.
5499
5500         * term/x11.trm (START_HELP): Reorganized list of options.
5501
5502 2005-10-08  Bastian Maerkisch  <bmaerkisch@web.de>
5503
5504         * src/os2/gclient.c term/pm.trm: "lower" command for the pm terminal.
5505
5506 2005-10-07  Ethan Merritt  <merritt@u.washington.edu>
5507
5508         * term/cgm.trm: Fix pattern-fill code, which was not working.
5509         If the user explicitly provides a background color, apply it to the
5510         entire canvas when plotting is started. The was documented, but
5511         apparently never implemented.  Bug #616167.
5512         Also update linetype code so that it is possible to give the 
5513         the background color as a line property.
5514
5515 2005-10-07  Daniel Sebald  <daniel.sebald@ieee.org>
5516
5517         SF patch [859716] new raise/lower commands
5518
5519         * NEWS docs/gnuplot.doc src/command.c src/command.h src/gplt_x11.c
5520         src/os2/gclient.c src/tables.c src/win/winmain.c term/pm.trm
5521         term/x11.trm: Commands "raise" and "lower" to raise and lower windows of
5522         interactive terminals.
5523
5524 2005-10-07  Petr Mikulik  <mikulik@physics.muni.cz>
5525
5526         * src/command.c (system_command): Remove superfluous c_token++.
5527
5528 2005-10-06  Petr Mikulik  <mikulik@physics.muni.cz>
5529
5530         * src/syscfg.h: Increased MAX_NUM_VAR from 5 to 12 (max number of
5531         parameters for functions).
5532
5533 2005-10-06  Amitha Perera  <amithaperera@users.sourceforge.net>
5534
5535         * term/pbm.trm (PBM_options): Re-order declarations to be strict ANSI C.
5536
5537 2005-10-05  Ethan Merritt  <merritt@u.washington.edu>
5538
5539         * src/graph3d.c (draw_3d_graphbox ztick_callback)
5540         src/save.c (save_set_all) src/set.c (set_command set_zeroaxis)
5541         src/show.c (show_command show_all show_zeroaxis) src/tables.c
5542         src/tables.h src/unset.c (unset_command unset_zeroaxis)
5543         demo/rgb_variable.dem:
5544
5545         Implement zzeroaxis, and rework the placement of axis tics and labels
5546         in 3D when the corresponding "set {xyz}tics axis" flag is set.
5547         Bug #1293118.
5548
5549 2005-10-05  Ethan Merritt  <merritt@u.washington.edu>
5550
5551         * term/gd.trm (PNG_options): Test for valid (>0) size of image.
5552
5553 2005-10-05  Bastian Maerkisch  <bmaerkisch@web.de>
5554
5555         SF RFE [1063878] Support for pre-compiled bgd.dll
5556         If gd.trm made use of the gdFontGetTiny() and related methods to read
5557         the font pointers instead of referencing them as extern, gnuplot could
5558         more easily be compiled to work with the pre-compiled GD library
5559         bgd.dll instead of having to download and compile zlib, libpng and
5560         libgd.
5561
5562         * config/makefile.nt: Support for binary version of gdlib (bgd.dll).
5563
5564         * term/gd.trm: New BGD_EXPORT_DATA_PROT and gp_gdXXX() for Win32.
5565
5566 2005-10-05  Bastian Maerkisch  <bmaerkisch@web.de>
5567
5568         * term/pm.trm src/os2/pm_msgs.h src/os2/gclient.c: Support for
5569         "with image" on pm terminal.
5570
5571 2005-10-04  Ethan Merritt  <merritt@u.washington.edu>
5572
5573         * term/pbm.trm (PBM_options): Add an option to set the output size.
5574         set term pbm size XXX,YYY
5575
5576 2005-10-04  Bastian Maerkisch  <bmaerkisch@web.de>
5577
5578         * src/win/wtext.c (DragFunc): Increase maximum length of filenames in
5579         drag and drop operations to MAX_PATH (bug found by Tim Chippington
5580         Derrick).
5581
5582 2005-10-03  Ethan Merritt  <merritt@u.washington.edu>
5583
5584         * configure.in: Issue a warning message if someone tries to build the
5585         PNG terminal without libgd.
5586
5587 2005-10-02  Ethan Merritt  <merritt@u.washington.edu>
5588
5589         * src/gadgets.h: Remove unused struct default_keybox_lp.
5590
5591         * src/graph3d.c src/graph3d.h src/mouse.c src/save.c src/set.c
5592         src/show.c src/tables.c src/unset.c docs/gnuplot.doc:
5593         Move global ticslevel into a global struct xyplane that also contains a
5594         flag indicating whether the value fixes the Z-intercept of the x/y plane
5595         at a fraction of the z range (old behaviour) or a specific value of
5596         Z (new option). To select a specific Z, use "set ticslevel at <zval>".
5597         This change also introduces "xyplane" as a synonym for "ticslevel",
5598         so the more easily remembered form of the command is
5599         "set xyplane at <zval>".
5600
5601         * src/graph3d.c (do_3dplot): Check for absolute placement of xyplane
5602         along Z axis, controlled by "set {ticslevel|xyplane} at <zval>".
5603
5604 2005-10-01  Ethan Merritt  <merritt@u.washington.edu>
5605
5606         Lines have more properties now than they used to. Rather than expanding
5607         the number of parameters to lp_parse() to pass default values for each
5608         property separately, change to requiring the caller of lp_parse() to
5609         preload default values into the lp_style_type structure being passed.
5610         This change should not by itself affect current syntax or behaviour,
5611         but will allow us to remove the style initialization from lp_parse().
5612         This in turn will allow different callers to have different default
5613         line styles while still sharing the same parsing routine.
5614
5615         * src/misc.h src/misc.c (lp_parse): Remove def_line and def_point
5616         parameters; instead assume they have been preloaded into lp.
5617
5618         * src/plot2d.c src/plot3d.c src/set.c: Modify all callers of lp_parse()
5619         to follow the new scheme.
5620
5621         * src/gadgets.h src/term_api.h src/graph3d.c src/graphics.c src/save.c
5622         src/plot2d.c src/plot3d.c: #define PTSZ_VARIABLE and PTSZ_DEFAULT as
5623         constants rather than passing magic values for lp_style_type.p_size.
5624
5625         * src/term.c (term_apply_lp_properties): Check explicitly for
5626         PTSZ_VARIABLE and PTSZ_DEFAULT.
5627
5628 2005-09-29  Ethan Merritt  <merritt@u.washington.edu>
5629
5630         * src/axis.c (axis_position_zeroaxis): More zeroaxis bugs; does nobody
5631         ever use this option?  Range terminating at 0.0 is a perfectly valid
5632         case in which to draw a zeroaxis.
5633         Bugfix.
5634
5635 2005-09-27  Ethan Merritt  <merritt@u.washington.edu>
5636
5637         * src/util3d.c (draw3d_line_unconditional): The code previously assumed
5638         that any 3D colored line is colored by Z value. This is no longer true.
5639         Bugfix.
5640
5641 2005-09-27  Petr Mikulik  <mikulik@physics.muni.cz>
5642
5643         * term/post.trm (PS_COMMON_DOC1): More details for 'color' and
5644         'monochrome' options.
5645
5646 2005-09-25  Ethan Merritt  <merritt@u.washington.edu>
5647
5648         Even when gnuplot honors a LOCALE setting for input of data or output
5649         of plots, gnuplot's own command syntax requires LC_NUMERIC == C. We
5650         must check for this anywhere that a command is generated or parsed.
5651
5652         * src/mouse.c (apply_zoom): Enforce C locale before creating 
5653         command sequence to do zooming.
5654
5655         * src/scanner.c (get_num): Enforce C locale before reading a number
5656         that is part of a command line.
5657
5658         * src/command.c (save_command test_palette_subcommand)
5659         src/show.c (show_command show_style): Enforce C locale before saving or
5660         showing state of internal variables.
5661
5662 2005-09-25  Petr Mikulik  <mikulik@physics.muni.cz>
5663
5664         * term/svg.trm (SVG_init): Encodings for OS/2 and Windows.
5665
5666 2005-09-24  Bastian Maerkisch  <bmaerkisch@web.de>
5667
5668         * src/os2/gclient.c term/pm.trm: Full RGB colour support for pm terminal
5669         (if display supports it).
5670
5671 2005-09-24  Ethan Merritt  <merritt@u.washington.edu>
5672
5673         * src/gplt_x11.c (process_event): Drain any backlog of keypress
5674         events from the current plot window every time we see an arrow key.
5675         This prevents hysteresis if the redraw rate is slower than the
5676         keyboard autorepeat rate.
5677         Bug #1111734.
5678
5679         * term/emf.trm: (EMF_dashtype): Make axis dotted by default, consistent
5680         with other terminal types.
5681
5682 2005-09-23  Ethan Merritt  <merritt@u.washington.edu>
5683
5684         * src/gplt_x11.c (exec_cmd) term/x11.trm (ENHX11_put_text):
5685         Change the vertical centering of enhanced mode text so that it matches
5686         that of non-enhanced text.
5687
5688 2005-09-23  Petr Mikulik  <mikulik@physics.muni.cz>
5689
5690         * src/set.c term/gd.trm: Always allow animated gif options in
5691         'set term gif ...'. Issue a warning if the gd library does not support
5692         animated gifs.
5693
5694 2005-09-22  Ethan Merritt  <merritt@u.washington.edu>
5695
5696         * src/graphics.c (boundary do_plot label_width): Correct the layout
5697         of the key title area for enhanced text super- and sub- scripts, and
5698         ensure the box is wide enough for the key title string.
5699         Bug/RFE #1002488.
5700
5701         NB: This fix reveals that the x11 driver has incorrect vertical
5702         centering for enhanced text; other drivers are fine.
5703
5704         * term/xlib.trm: Add enhanced text entry points to TERM_TABLE so that
5705         enhanced text handling by x11 driver can be debugged.
5706
5707 2005-09-21  Ethan Merritt  <merritt@u.washington.edu>
5708
5709         * term/svg.trm (SVG_init): Place encoding information in the 
5710         XML header record if an encoding is explicitly set in gnuplot.
5711         Bug #1231209.
5712
5713         * src/axis.c (gen_tics): Correct the calculation of last minitic
5714         position to be plotted on a log-scale axis. Bug #1223149.
5715
5716         * src/term.c (write_multiline): Fix trivial line-counting bug.
5717
5718 2005-09-20  Ethan Merritt  <merritt@u.washington.edu>
5719
5720         * src/set.c (parse_label_options): Fix incorrect ordering of
5721         declaration/initialization. Non-gcc compilers didn't like it.
5722
5723 2005-09-19  Ethan Merritt  <merritt@u.washington.edu>
5724
5725         * src/graphics.c (boundary): Allow space for zeroaxis tic labels when
5726         zeroaxis is near plot border.  Bug #219867 swatted after 5 years!
5727
5728 2005-09-17  Ethan Merritt  <merritt@u.washington.edu>
5729
5730         * src/axis.c (gen_tics add_tic_user) src/axis.h src/save.c (save_tics)
5731         src/setc.c (set_tic_prop load_tic_user load_tic_series)
5732         src/show.c (show_ticdef) src/unset.c (unset_tics) docs/gnuplot.doc:
5733
5734         Sourceforge patchset #1104018.
5735         Allow both user-specified axis tics and auto-generated tics at the
5736         same time.  No change to basic syntax or behaviour of tics, but the
5737         extra key word "add" in a "set [xuz]tics ..." command causes the
5738         requested tics to be added to the current ones rather than replacing
5739         them.
5740
5741 2005-09-17  Ethan Merritt  <merritt@u.washington.edu>
5742
5743         * src/graphics.c (plot_image_or_update_axes): Use gp_alloc rather
5744         than malloc. Bug #1254314.
5745
5746         * src/gplt_x11.c src/getcolor.c: Check for NULL return from malloc().
5747         Bug #1254314.
5748
5749         * demo/all.dem: Fixed mis-matched quotes around "rgb_variable.dem".
5750
5751 2005-09-16  Juergen Wieferink  <wieferink@freenet.de>
5752
5753         * src/command.c (string_expand):  Fix bug in macro handling; escaped
5754         quotes were not recognized.
5755
5756 2005-09-16  Ethan Merritt  <merritt@u.washington.edu>
5757
5758         * src/graph3d.c (draw_3d_graphbox): Treat placement of Z-axis label in
5759         the same way as those for the X and Y axes.
5760
5761 2005-09-15  Ethan Merritt  <merritt@u.washington.edu>
5762
5763         * src/term.c (write_multiline, on_page): New routine on_page(x,y) to
5764         check coordinates for being in range of entire terminal drawing area.
5765         Use this in write_multiline() to centralize text clipping (may extend
5766         it to single line text later). Fixes bug #1274007 and a lot of old
5767         complaints about segfaults in libpdf.
5768
5769         * src/term_api.h term/post.trm: But some terminals can clip text just
5770         fine on their own, and do it more cleanly than on_page() can do. Define
5771         a terminal flag TERM_CAN_CLIP for these cases, starting with post.trm.
5772         If the flag is set for the current terminal, on_page() always returns
5773         TRUE.
5774
5775         * src/graph3d.c (xtick_callback ytick_callback ztick_callback):
5776         Since write_multiline() now does its own clipping, it does not need to
5777         be wrapped by clip_put_text_just(). While we're here, apply text
5778         rotation for tic labels.
5779
5780         * src/gadgets.c src/gadgets.h src/color.c: This leaves no callers for
5781         clip_put_text_just(), so remove the routine altogether.
5782
5783 2005-09-15  Harald Harders  <h.harders@tu-bs.de>
5784
5785         * src/variable.c term/post.trm (PS_options, documentation):
5786         Fix bugs in fontfile handling of ps terminal. Document "nofontfiles".
5787         SourceForge patch #1269469.
5788
5789 2005-09-15  Ethan Merritt  <merritt@u.washington.edu>
5790
5791         * demo/html/Makefile demo/html/index.save: Add rgb_variable.dem to the
5792         autogenerated html set.  Also add dashcolor.dem, which is complicated
5793         by needing to generate an *.eps file and then convert it to *.png.
5794         
5795         * demo/all.dem: Add rainbow.dem and rgb_variable.dem
5796
5797         * src/gadgets.h: Initialize axis labels to use linetype -1, not 0.
5798
5799 2005-09-14  Ethan Merritt  <merritt@u.washington.edu>
5800
5801         * docs/gnuplot.doc: The histogram plot style was not being listed as an
5802         option under 'help plotting styles'.
5803
5804 2005-09-12  Ethan Merritt  <merritt@u.washington.edu>
5805
5806         * src/axis.c src/axis.h src/color.c src/gadgets.c src/gadgets.c
5807         src/graph3d.c src/graphics.c src/save.c src/set.c src/show.c src/term.c
5808         src/unset.c:
5809         Up till now gnuplot's axis labels, plot title, and timestamp have been
5810         stored in statically allocated instances of struct label_struct.
5811         All other labels use dynamically allocated struct text_label.
5812         This set of changes converts all users of struct label_struct to use
5813         stucture text_label instead. This saves space everywhere, and
5814         consolidates the label parsing and handling routines.
5815         
5816         * docs/gnuplot.doc NEWS:
5817         The y and y2 axis labels now allow explicit control over rotation angle;
5818         all labels now allow explicit control over {no}enhanced text processing.
5819
5820 2005-09-12  Bastian Maerkisch  <bmaerkisch@web.de>
5821
5822         * config/config.nt: Rearranged to comply with config.{h,cyg,mgw,os2}.
5823
5824 2005-09-11  Ethan Merritt  <merritt@u.washington.edu>
5825
5826         * src/save.c (save_set_all): Fix incorrect placement of newlines
5827         in "set pm3d" options.
5828
5829 2005-09-09  Lars Hecking  <lhecking@users.sourceforge.net>
5830
5831         * Makefile.am: Add DISTCLEANFILES.
5832
5833         * lisp/Makefile.am: Add $(ELS) to distclean-local target.
5834
5835         * share/LaTeX/Makefile.am: Install .cfg file under gnuplot's directory
5836         hierarchy rather than LaTeX's - it is the user's responsibility to
5837         update the latter. Add uninstall-hook.
5838
5839 2005-09-09  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
5840
5841         * config/config.nt: Added flags for GP_ISVAR, libPDF details,
5842         HAVE_STRINGIZE, string variables, datastrings, histograms, fit
5843         error variables, image mode, macros.  Added at least some
5844         comments.
5845
5846 2005-09-08  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
5847
5848         * config/makefile.nt: Add a rule that makes all *.obj files
5849         explicitly dependent on config.h.  Explain usage a bit more
5850         clearly.
5851
5852         * src/graphics.c (plot_image_or_update_axes): Don't dereference
5853         function pointer in test.
5854
5855         * docs/gnuplot.texi: Regenerated.
5856
5857         * docs/gnuplot.doc: Removed superfluous blanks, fixing some
5858         blank-only lines.
5859
5860         * src/beos/Makefile.in: New file.  Edited copy of previous
5861         Makefile to fix out-of-source 'make dist'.
5862
5863         * src/beos/Makefile: Removed.
5864
5865         * configure.in: Add src/beos/Makefile to AC_OUTPUT.
5866
5867 2005-09-07  Lars Hecking  <lhecking@users.sourceforge.net>
5868
5869         * Makefile.am, configure.in, share/Makefile.am: SUBDIRS in
5870         automake versions older than 1.9 can only contain direct
5871         children. Need a minimal, dummy Makefile.am in share/ to address
5872         this.
5873
5874         * configure.in, share/Makefile.am, share/LaTeX/Makefile.am: Fix
5875         building outside source directory.
5876
5877 2005-09-07  Lars Hecking  <lhecking@users.sourceforge.net>
5878
5879         * Makefile.am: Add share/LaTeX to SUBDIRS.
5880
5881         * depcomp, install-sh, missing, mkinstalldirs: Updated from
5882         automake.
5883
5884         * config/Makefile.am.in: Add MacOSX to EXTRA_DIST generation.
5885
5886         * demo/Makefile.am.in: Add *.cfg and html to EXTRA_DIST
5887         generation, remove webify.pl.
5888
5889         * share/LaTeX: Add top_srcdir, INSTALL_DATA, DISTFILES, install,
5890         distdir, clean, distclean. Clean up all and install targets.
5891
5892         * src/Makefile.am: Add makefile.awc to EXTRA_DIST.
5893
5894 2005-09-05  Petr Mikulik  <mikulik@physics.muni.cz>
5895
5896         * show.c (show_palette_palette): Take care that print_out is
5897         stderr for for both NULL and stderr.
5898
5899         * command.c (print_show_output): Make the test to print_out, not
5900         print_out_name (failed for stdout).
5901
5902 2005-09-05  Geoffrey Hausheer  <ghaushe@users.sourceforge.net>
5903
5904         SF patch [1264939] Adds bilinear interpolation to pm3d surfaces
5905
5906         * demo/pm3d.dem docs/gnuplot.doc src/pm3d.c src/pm3d.h src/save.c
5907         src/set.c src/show.c src/tables.c src/tables.h NEWS: When using
5908         pm3d with data files (rather than functions), a single color is
5909         used for each quadrangle (unless dgrid is used, but then you get
5910         weighted averages instead). This patch does bilinear interpolation
5911         to subdivide each quadrangle into nxn smaller quadrangles, and
5912         sets the color of each one independantly.
5913
5914 2005-08-30  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
5915
5916         * config/makefile.dj2 (TERMLIBS): Updated to current version of
5917         GRX.
5918         (LINKOPT): Fix it to actually use $(TERMLIBS).
5919         (CFLAGS): Add -DHAVE_SYS_STAT_H.
5920
5921 2005-08-30  Bastian Maerkisch  <bmaerkisch@web.de>
5922
5923         * src/os2/gclient.c (ReadGnu): implement stubs in pm terminal to
5924         map RGB colors to nearest color from current pm3d palette
5925         
5926 2005-08-22  Ethan Merritt  <merritt@u.washington.edu>
5927
5928         * src/color.c src/color.h: New routine set_rgbcolor().
5929
5930         * src/misc.c (parse_colorspec) src/graph3d.c: Allow color
5931         specification "rgb variable", in which case the RGB color is taken
5932         from an additional field of the "using" specifier.
5933
5934         * docs/gnuplot.doc demo/rgb_variable.dat demo/rgb_variable.dem NEWS:
5935         Explain and give example of reading rgb color from input data field.
5936
5937 2005-08-19  Ethan Merritt  <merritt@u.washington.edu>
5938
5939         * src/plot3d.c (get_3ddata) src/graph3d.c(plot3d_points): 
5940         Variable pointsize should be honored in plot style "linespoints" 
5941         exactly as in style "points".
5942
5943 2005-08-17  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
5944
5945         * docs/gnuplot.doc (multiplot): Extend description of how
5946         multiplot actually works on interactive displays.  Place a hint
5947         about using 'clear' for insets.  Closes RFE #1256148.
5948
5949 2005-08-16  Harald Harders  <h.harders@tu-bs.de>
5950
5951         * src/save.c (save_tics): Fix inconsistency in the syntax of the saved
5952         "set tics" command and the input "set tics" command. SF patch [1261165]
5953
5954 2005-08-12  Juergen Wieferink  <wieferink@freenet.de>
5955
5956         * src/datafile.c (initialize_use_spec df_open df_close)
5957           src/fit.c (error_ex fit_command) src/set.c (set_palette_function):
5958         Use free_at() rather than free() for action table pointers.
5959         Fixes minor memory leaks found by valgrind.
5960
5961         * src/eval.c (free_at): Handle null pointer gracefully.
5962
5963         * src/gadgets.h src/graphics.h src/plot2d.c src/plot3d.c:
5964         Consistent initialization of the title_no_enhanced flag.
5965
5966 2005-08-12  Bastian Maerkisch  <bmaerkisch@web.de>
5967
5968         SF patch [1234632] gnuplot history file without GNU readline
5969
5970         * NEWS src/gp_hist.h src/history.c src/plot.c src/set.c src/show.c
5971         src/syscfg.h src/unset.c: This patch enables GNUPLOT_HISTORY if gnuplot
5972         is not compiled with GNU readline. History is automatically saved on
5973         program exit and reloaded on start. "set/unset history" commands are
5974         supported.
5975
5976         * configure.in config/makefile.os2: Other makefiles should be adjusted
5977         to allow GNUPLOT_HISTORY to be defined when HAVE_LIBREADLINE is not.
5978
5979 2005-08-10  Ethan Merritt  <merritt@u.washington.edu>
5980
5981         * src/gplt_x11.c: Restore original background pixel setting after
5982         text rotation.
5983
5984 2005-08-10  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
5985
5986         * src/win/winmain.c: Define _WIN32_IE independent of particular
5987         compilers, conditional only on whether it's already defined.
5988         
5989 2005-08-08  Ethan Merritt  <merritt@u.washington.edu>
5990
5991         * term/pdf.trm: Keep track of current color regardless of whether
5992         it was set by term->set_color() or term->linetype().
5993
5994 2005-08-08  Bastian Maerkisch  <bmaerkisch@web.de>
5995
5996         * src/gp_hist.h src/history.c src/plot.c src/plot.h src/set.c
5997         src/show.c src/unset.c: Move variable gnuplot_history_size from
5998         plot.h to gp_hist.h.
5999
6000 2005-08-08  Petr Mikulik  <mikulik@physics.muni.cz>
6001
6002         * demo/datastrings.dem demo/epslatex.dem demo/histograms.dem
6003         demo/layout.dem demo/pm3d.dem: Update for "set tics scale".
6004
6005 2005-08-07  Ethan Merritt  <merritt@u.washington.edu>
6006
6007         * src/gplt_x11.c: Do away with special (GC *)gc_pm3d; use the same gc
6008         for all normal plot elements except pattern fill. Tweak the algorithm
6009         for text rotation as suggested long ago by Dave Denholm. The default
6010         method should now work on all TrueColor or DirectColor displays. The
6011         X resource "gnuplot*fastrotate: off" still allows fall-back to a slower
6012         but guaranteed algorithm if necessary.  Fixes bug #1251193.
6013
6014 2005-08-07  Petr Mikulik  <mikulik@physics.muni.cz>
6015
6016         Let PM3D be always compiled in. Thus, this patch removes all constructs
6017         #if(n)def PM3D and does a necessary code clean-up.
6018
6019         Files changed:
6020
6021         configure.in 
6022
6023         config/(11 files) config.amg config.cyg config.mgw config.os2 config.wc
6024         makefile.cyg makefile.mgw makefile.nt makefile.os2 makefile.oww
6025         makefile.win
6026
6027         demo/world2.dem
6028
6029         src/(37 files) axis.c axis.h color.c color.h command.c contour.c
6030         datafile.c gadgets.c gadgets.h getcolor.c getcolor.h gplt_x11.c
6031         gplt_x11.h gp_types.h graph3d.c graph3d.h graphics.c graphics.h
6032         hidden3d.c misc.c misc.h mouse.c plot2d.c plot3d.c plot.c pm3d.c save.c
6033         set.c setshow.h show.c tables.c tables.h term_api.h term.c unset.c
6034         util3d.c util3d.h
6035
6036         src/os2/gclient.c src/os2/pm_msgs.h
6037
6038         src/win/wgraph.c
6039
6040         term/(22 files) README aquaterm.trm cgm.trm dumb.trm emf.trm
6041         estimate.trm fig.trm gd.trm ggi.trm metapost.trm mif.trm pdf.trm pm.trm
6042         post.trm pslatex.trm pstricks.trm svg.trm tgif.trm vgagl.trm win.trm
6043         x11.trm xlib.trm
6044
6045 2005-08-06  Bastian Maerkisch  <bmaerkisch@web.de>
6046
6047         * src/set.c (set_tics): Fix non-ANSI ordering of declaration.
6048
6049 2005-08-06  Ethan Merritt  <merritt@u.washington.edu>
6050
6051         * src/color.c: Remove C++ style comments.
6052
6053         * src/gplt_x11.c: Replace non-standard type caddr_t with XPointer.
6054
6055         * src/set.c (set_tics) src/tables.c src/tables.h:  Do not consider
6056         use of old syntax as an error. (E.g. 'set key outside below')
6057
6058 2005-08-05  Ethan Merritt  <merritt@u.washington.edu>
6059
6060         * demo/starmap.dem: Change style slightly for use with webify.
6061
6062         * demo/html/index.save: Add tics demo.
6063         
6064         * demo/html/webify.pl: Use in-tree gnuplot executable, if available.
6065
6066 2005-08-05  Harald Harders  <h.harders@tu-bs.de>
6067
6068         SF patch [1245558] Different ticscale and ticpos for different axes
6069
6070         * NEWS docs/gnuplot.doc src/axis.c src/axis.h src/color.c src/graph3d.c
6071         src/graphics.c src/save.c src/set.c src/show.c src/term.c src/unset.c
6072         demo/all.dem demo/tics.dem demo/html/Makefile: This patch enables the
6073         user to specify different ticscales and tic-positions for each axis:
6074         - new: "set tics" can change most settings for {x|y|z|cb}tics at once;
6075         - new: tic scale can be set per axis using "set {x|y|z|cb}tics scale";
6076         - change: "set ticsscale" is deprecated, use "set tics scale" instead.
6077
6078 2005-08-04  Ethan Merritt  <merritt@u.washington.edu>
6079
6080         * src/plot2d.c(store_label get_data)  src/plot3d.c (get_3ddata):
6081         For 'plot with labels', instead of treating a missing label as an
6082         undefined point, treat it as a blank label. That allows putting a
6083         point on the plot even if there is no label to go with it.
6084         Bug #1251922.
6085
6086         * src/datafile.c: Better fix for mis-match of column header to column
6087         values in the case of `set style histogram errorbars` with
6088         `set key autotitle columnheader`. Supersedes 2005-07-30 patch.
6089
6090 2005-08-04  Bastian Maerkisch  <bmaerkisch@web.de>
6091
6092         SF patch [1233984] Directory selection dialog for Win32
6093
6094         * src/win/wgnuplot.mnu src/win/wmenu.c: Add new directory selection
6095         dialog to Win32 platform. If SHELL_DIR_DIALOG is defined the common
6096         directory dialog of the windows shell is used. Otherwise a modified
6097         version of the common file open dialog is used. The new code is only
6098         active if WITH_ADV_DIR_DIALOG is defined.
6099
6100         * src/win/wcommon.h: Make the new directory dialog the default by
6101         #defining WITH_ADV_DIR_DIALOG and SHELL_DIR_DIALOG.
6102
6103 2005-08-04  Bastian Maerkisch  <bmaerkisch@web.de>
6104
6105         SF patch [1233987] WIN32: save wgnuplot.ini to user's appdata dir
6106
6107         * src/plot.c src/plot.h src/win/winmain.c (WinMain): Change default
6108         location of wgnuplot.ini to the user's APPDATA directory on Win32
6109         platforms. This is necessary since the directory of the executable can
6110         not be assumed to be writable.
6111
6112         * src/win/wcommon.h: Make the new behaviour the default by #defining
6113         INIFILE_IN_APPDATA.
6114
6115 2005-08-04  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
6116
6117         * src/contour.c: CodeStyle cleanup (no superfluous pointer casts,
6118         sensible indentation).
6119         (contour): Logarithmize parameters of incremental
6120         contour specification to imitate the way other ticks on log axes
6121         behave.
6122         (edge_struct, poly_struct, cntr_struct): Typedef'd these structs,
6123         use typedef names all over the place to render source less wordy.
6124
6125 2005-08-03  Ethan Merritt  <merritt@u.washington.edu>
6126
6127         Move generation of html demo files into a separate subdirectory.
6128
6129         * demo/html/index.save demo/html/gnuplot_demo.css:
6130         Template files for html pages.
6131
6132         * demo/html/Makefile demo/html/webify.pl: Modify webify.pl to accept
6133         the "set term" parameters from environmental variable DEMOTERM. Create
6134         a separate Makefile just for generation of html pages.  Add special
6135         case terminal parameters for several demos.
6136
6137         * demo/multiplt.dem: Add a missing "pause -1" command so that the
6138         webify script works properly.
6139
6140 2005-08-03  Lars Hecking  <lhecking@users.sourceforge.net>
6141
6142         * docs/Makefile.in: Update CLEANFILES and clean-generic.
6143
6144 2005-08-03  Bastian Maerkisch  <bmaerkisch@web.de>
6145
6146         * config/makefile.nt: Introduce variable OPTIONS for compile time
6147         switches like PM3D, USE_MOUSE etc. This makes addition of options
6148         easier.
6149
6150         * src/win/winmain.c src/win/wcommon.h: Add new function GetDllVersion()
6151         which can determine the version of windows's shell and common control
6152         libraries. It is only included if WANT_GETDLLVERSION is defined.
6153
6154         * src/win/wprinter.c src/win/wgraph.c src/win/wgnuplib.h
6155         src/win/wcommon.h: Rename struct PRINT to GP_PRINT due to name
6156         collision with windows shlobj.h header file.
6157
6158 2005-08-02  Petr Mikulik  <mikulik@physics.muni.cz>
6159
6160         * config/config.mgw: Some more #(un)define for MingW >= 3.0.
6161
6162 2005-08-01  Ethan Merritt  <merritt@u.washington.edu>
6163
6164         * src/save.c (save_position): OK, so maybe we have to print out
6165         the full "offset ...." even if it specifies zero offset.
6166
6167 2005-07-31  Petr Mikulik  <mikulik@physics.muni.cz>
6168
6169         * src/history.c: Removed old comments.
6170
6171 2005-07-31  Bastian Maerkisch  <bmaerkisch@web.de>
6172
6173         * src/plot.c: #include gpexecute.h for OS/2 without USE_MOUSE.
6174
6175         * src/show.c (show_version): Correct spelling error HIDDEN3D_GRDBOX =>
6176         HIDDEN3D_GRIDBOX.
6177
6178         * src/term.h: Fix compilation with SHORT_TERMLIST.
6179
6180         * src/gplt_x11.c: Remove reference to os2/dialogs.h.
6181
6182         * src/mouse.c: Use OS/2 message definition file os2/pm_msgs.h.
6183
6184         * config/makefile.os2: Fix build of gplt_x11.exe on OS/2.
6185
6186 2005-07-30  Petr Mikulik  <mikulik@physics.muni.cz>
6187
6188         * config/config.mgw: Have HAVE_ERF, HAVE_ERFC for MingW >= 3.0.
6189
6190 2005-07-30  Ethan Merritt  <merritt@u.washington.edu>
6191
6192         * src/save.c (save_position and its callers): Move printout of the
6193         "offset" keyword into shared routine save_position().  That way we
6194         can efficiently skip the whole thing if the offset is zero.
6195
6196         * src/datafile.c (df_tokenise): Add back a copy and a comment
6197         corresponding to the old sscanf() input code.  This makes is easy if
6198         someone wants to compare new and old code paths.
6199
6200         * src/datafile.c (df_open): Fix mis-match of column header to
6201         column values in the case of `set style histogram errorbars` with
6202         `set key autotitle columnheader`.
6203
6204 2005-07-29  Petr Mikulik  <mikulik@physics.muni.cz>
6205
6206         * demo/pm3d.dem: Added missing text for a "pause -1".
6207
6208 2005-07-29  Daniel Sebald  <daniel.sebald@ieee.org>
6209
6210         * src/gadgets.h src/graph3d.c src/graphics.c src/save.c src/set.c
6211         src/show.c src/tables.c src/tables.h: Revamping of key placement
6212         routines. Backward compatible with previous placement options but now
6213         there are new, more flexible options.
6214
6215           {{inside | outside} | {lmargin | rmargin | tmargin | bmargin}
6216             | {at <position>}}
6217           {left | right | center} {top | bottom | center}
6218           {vertical | horizontal} {Left | Right}
6219
6220         controlling key placement and key element arrangement.
6221
6222         * docs/gnuplot.doc: Updated documentation about new key options.
6223         "at" for manual placement was included in the documentation even though
6224         leaving "at" out will still work.
6225
6226         * demo/bivariat.dem demo/electron.dem tutorial/eg3.plt tutorial/eg6.plt
6227         tutorial/tutorial.tex: Changed all uses of manual key placement to
6228         include "at".
6229
6230         * demo/key.dem demo/all.dem: Added demo to show variety of key
6231         placements, and added demo to the all demo file.
6232
6233         * NEWS:  Added note about more versatile key placement.
6234
6235 2005-07-28  Ethan Merritt  <merritt@u.washington.edu>
6236
6237         * src/term.c (term_start_multiplot mp_layout_size_and_offset):
6238         `set multiplot {title "string"} {layout ... }`
6239         Add a page title option for multiplots.  In auto-layout mode,
6240         reserve space at the top of the page for this title, and scale
6241         all the component plots accordingly.  RFE #992349
6242
6243         * demo/layout.dem: Add sample titles to the plots in this demo.
6244
6245         * src/graphics.c (place_histogram_titles): Fix bug that tried to get
6246         the title offsets from the wrong data structure.
6247
6248 2005-07-28  Petr Mikulik  <mikulik@physics.muni.cz>
6249
6250         * config/config.cyg config/config.mgw config/config.os2: Added #defines
6251         GP_MACROS, GP_STRING_VARS, HIDDEN3D_GRIDBOX, HIDDEN3D_QUADTREE,
6252         HAVE_PWD_H, __PROTOTYPES.
6253
6254 2005-07-28  Bastian Maerkisch  <bmaerkisch@web.de>
6255
6256         SF patch [1234634] OS/2: use generic enhanced text in pm terminal.
6257
6258         * config/config.os2 config/makefile.os2 src/os2/gclient.c
6259         src/os2/gnupmdrv.c src/os2/gnupmdrv.h src/os2/pm_msgs.h term/pm.trm:
6260         Use generic enhanced text in pm terminal -- Let pm terminal use the
6261         new generic routines for enhanced text. Currently the only new feature
6262         this provides is overprinted text. The binary interface between pm.trm
6263         and gnupmdrv has been extended slightly.
6264
6265         To switch back to the old behaviour compile with PM_OLD_ENHANCED_TEXT
6266         defined. The old code is compiled into gnupmdrv in any case to
6267         maintain binary compatibility with programs using gnupmdrv like GP/ARI
6268         or Term::Gnuplot (but I haven't acually checked that).
6269
6270 2005-07-27  Ethan Merritt  <merritt@u.washington.edu>
6271
6272         * src/set.c (set_timestamp) docs/gnuplot.doc:
6273         Drag the "set timestamp" code into the modern era by accepting options
6274         in any order. Add keyword "font" in front of the optional font string,
6275         but for backwards compatibility do not require it.  Update the
6276         documentation to reflect current treatment of offset and font options.
6277
6278 2005-07-26  Ethan Merritt  <merritt@u.washington.edu>
6279
6280         * src/set.c (set_xyzlabel): Check to see if next token is a valid
6281         keyword before trying to parse it as a string. Fixes bug on, e.g.
6282         'set title offset 1,1'
6283
6284         * src/save.c (save_set_all): Write out keyword "offset" where 
6285         appropriate.
6286
6287 2005-07-25  Ethan Merritt  <merritt@u.washington.edu>
6288
6289         * src/stdfn.c src/stdfn.h: Add a private function gp_strtod() in case
6290         there are platforms that do not have a working strtod().
6291
6292         * src/datafile.c (df_tokenise):  Use strtod(), via gp_strtod(),
6293         to parse values read from a data file.  On long input lines, this is
6294         substantially faster than using sscanf(). The previous fast path
6295         (non-Fortran) used atof() rather than strtod(), but that does not
6296         give a status return or character length consumed.
6297
6298 2005-07-25  Ethan Merritt  <merritt@u.washington.edu>
6299
6300         * term/pdf.trm (PDF_options PDF_linewidth): libpdf does not like zero
6301         linewidth. Limit linewidths to 0.1 or greater.
6302
6303         * src/command.c (exit_command) docs/gnuplot.doc:
6304         New command 'exit gnuplot' will unconditionally exit gnuplot immediately
6305         even if invoked from within several nested layers of input stream. This
6306         allows, for instance, binding a hotkey that can terminate gnuplot in
6307         response to a keystroke in the plot window.
6308
6309 2005-07-25  Ethan Merritt  <merritt@u.washington.edu>
6310
6311         * src/datafile.c src/datafile.h src/save.c src/set.c src/show.c
6312         src/unset.c docs/gnuplot.doc: 
6313         New command 'set datafile fortran' to enable parsing of input files
6314         containing Fortran D or Q floating constants. This was the default
6315         until now, but it requires a second check of every value parsed,
6316         which obviously slows down the input procedure. Now the second pass
6317         is disabled by default, and only occurs if the fortran parsing option
6318         is selected.  Addresses complaints of slow input from large files.
6319
6320 2005-07-23  Ethan Merritt  <merritt@u.washington.edu>
6321
6322         * src/command.c (print_command): Re-arrange code so that an expression
6323         being printed is only evaluated once, rather than twice.
6324         Fixes bug #1173508.
6325
6326 2005-07-23  Harald Harders  <h.harders@tu-bs.de>
6327
6328         * src/term.c (write_multiline): Use estimate_strlen rather than strlen.
6329
6330         * term/post.trm: Use a more foolproof method of estimating the width of
6331         strings containing overprint characters.
6332
6333 2005-07-22  Ethan Merritt  <merritt@u.washington.edu>
6334
6335         * src/parse.c (string_or_express): Remove unused variable.
6336
6337 2005-07-22  Ethan Merritt  <merritt@u.washington.edu>
6338
6339         Introduce a new terminal API routine (term->layer)(int layer). This 
6340         is used by the epslatex terminal (pslatex.trm) to handle the
6341         "front" or "back" text attribute. In the future it might be used to
6342         toggle other layering effects (transparency? contour levels?).
6343
6344         * src/term_api.h term/README: Define new entry point and a set of
6345         layer names to pass into it.
6346
6347         * src/graph3d.c (do_3dplot) src/graphics.c (do_plot):
6348         Call t->layer(TERM_LAYER_FRONTTEXT) and t->layer(TERM_LAYER_BACKTEXT)
6349         at the relevant stages of plot generation.
6350
6351         * src/term.c (term_start_plot term_end_plot):
6352         Call t->layer(TERM_LAYER_RESET) and t->layer(TERM_LAYER_END_TEXT)
6353         at start and end of each plot, respectively.
6354
6355         * term/pslatex.trm: Implement EPSLATEX_layer() mechanism.
6356
6357 2005-07-20  Juergen Wieferink  <wieferink@freenet.de>
6358
6359         * src/parse.c (string_or_express): Do not call int_error() for invalid
6360         expressions. Fixes "(s)plot 1/0".
6361
6362 2005-07-19  Ethan Merritt  <merritt@u.washington.edu>
6363
6364         * term/cgm.trm: Add a warning that Win2000 cannot handle filled
6365         polygons with more than 50 vertices. Not our fault! Bug #955074.
6366
6367 2005-07-18  Ethan Merritt  <merritt@u.washington.edu>
6368
6369         * src/datafile.c (df_parse_string_field): Fix tab-containing string
6370         constant which was broken when indent replaced tabs with spaces.
6371
6372         * configure.in src/term.h term/post.h term/post.trm term/pslatex.trm:
6373         Repair the ordering of configuration options for building the post,
6374         epslatex, and pslatex terminals.  This selection is now made at the top
6375         of term.h, as is selection of the enhanced text stringlength estimation
6376         pseudo-terminal.
6377
6378 2005-07-16  Juergen Wieferink  <wieferink@freenet.de>
6379
6380         * src/command.c (load_command): Issue an error message if any
6381         tokens or further commands follow a "load <file>" command.
6382         Sourceforge patch #1210835.
6383
6384 2005-07-16  Ethan Merritt  <merritt@u.washington.edu>
6385
6386         * demo/stringvar.dem: Add a demo showing a plot command that
6387         generates datafile names via a string-valued function, now possible
6388         because of the new string_or_expression code.
6389
6390 2005-07-16  Juergen Wieferink  <wieferink@freenet.de>
6391
6392         Allow a single plot or splot command to contain a mixture of 
6393         functions, e.g. sin(x), and constant expressions including
6394         string-valued constant expressions, e.g. sprintf("file.%d",n).
6395
6396         * src/datafile.c (df_open) src/datafile.h src/plot2d.c
6397         src/plot3d.c src/fit.c src/set.c:
6398         Parse filename from plot/splot/fit command before calling df_open(),
6399         and pass the resulting string to df_open() as a new argument.
6400
6401         * src/parse.c (string_or_expression) src/parse.h:
6402         New function that can safely parse either a constant expression
6403         or a dummy function.  string_or_expression() will return a pointer
6404         to a string if it successfully parsed a string-valued expression.
6405         It will return a pointer to an action table if it successfully
6406         parsed a dummy function. If it parsed a non-string expression, both
6407         the string pointer and the action table pointer will be NULL.
6408
6409         * src/eval.c (imag):
6410         The use of string_or_expression() by splot/plot/fit allows one to
6411         mix string-valued functions and "true" functions in the same command.
6412         However, a string-valued function containing what looks like a dummy
6413         variable (normally x or y) is not parsed correctly. This error is
6414         eventually discovered and reported in imag().
6415
6416 2005-07-16  John Bollinger <bbands@yahoo.com>
6417
6418         * demo/finance.dem demo/finance.dat: New demo illustrating
6419         various gnuplot features applied to display of financial data.
6420
6421 2005-07-15  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
6422
6423         * src/term.c (enhanced_recursion) [POSTSCRIPT_DRIVER]: added
6424         a conditional to allow builds without PostScript/pslatex drivers
6425         again.
6426
6427         * term/pslatex.trm (PSLATEX_DRIVER): Define this macro here, where
6428         it belongs.
6429
6430         * term/post.trm (POSTSCRIPT_DRIVER): Likewise.
6431
6432         * term/post.h: Remove #define PSLATEX_DRIVER --- it had no
6433         business sitting in here.
6434
6435         * src/term_api.h (PC_setup) [PC]: Add missing prototype.
6436
6437         * src/gadgets.c: Add missing #include "graph3d.h".
6438
6439         * src/datafile.c: Re-indented almost the entire file.  Was
6440         violating CodeStyle all over the place.
6441
6442         * src/term.h [DJGPP, DJSVGA]: Allow build without GRX (by setting
6443         DJSVGA to zero).
6444
6445         * config/makefile.dj2 (EXENAME): Removed version number from name.
6446         (TERMFLAGS): DJSVGA definition moved to front, explain that
6447         setting this to zero has a different effect now.
6448         (TERMLIBS): Renamed to usual name (was LDFLAGS).
6449         (CFLAGS): Updated to support build of current source.
6450         (LINKOPT): Removed entry for GRX library.
6451
6452         * src/breaders.h: Added missing HAVE_CONFIG_H conditional.
6453
6454 2005-07-14  Ethan Merritt  <merritt@u.washington.edu>
6455
6456         * src/internal.c src/term.c src/gplt_x11.c term/gd.trm: Fix mangled use
6457         of FPRINTF debugging macro.
6458
6459         * term/README term/gd.trm: Clarify documentation of term->suspend and
6460         term->resume. Remove TERM_CAN_MULTIPLOT flag from gd.trm, since it has
6461         no suspend/resume entry points.
6462
6463 2005-07-13  Ethan Merritt  <merritt@u.washington.edu>
6464
6465         * src/command.c (do_system_func): Fix incorrect placement of final
6466         return code outside of the main conditional code segment.
6467         Fixes compilation error under mingw reported by Dietmar Warning.
6468
6469         * src/graph3d.c (do_3dplot) src/graphics.c (do_plot) 
6470         src/term.c (test_term) term/post.trm term/pslatex.trm:
6471         Remove all epslatex-specific code from the gnuplot core routines.
6472         It was not working anyhow. This reverts the epslatex driver to
6473         the old behaviour of ignoring any distinction between "front" and
6474         "back" text labels.  It also clears the deck for a different
6475         approach that adds a terminal API routine to handle this sort of
6476         terminal-specific requirement (SourceForge patchset #1191202).
6477
6478 2005-07-11  Ethan Merritt  <merritt@u.washington.edu>
6479
6480         * src/breaders.h src/datafile.c src/datafile.h src/fit.c src/plot2d.c
6481         src/plot3d.c src/set.c: Simplify conditional compilation controlled by
6482         --enable-binary-data-file. Instead of having a different number of 
6483         parameters to df_readline() and plot_option_binary(), expost a uniform
6484         definition but add an auxilliary routine df_set_plot_mode() in the
6485         BINARY_DATA_FILE case. Also clean up the general coding style and remove
6486         redundant structure definitions. This prepares for easier implementation
6487         of Juergen Wieferink's "plot string or expression" patch.
6488
6489 2005-07-10  Harald Harders  <h.harders@tu-bs.de>
6490
6491         * docs/psdoc/ps_symbols.gpi: Spiffed up sample page for PostScript
6492         symbols and linetypes.
6493
6494 2005-07-10  Shigeharu Takeno  <shige@iee.niit.ac.jp>
6495
6496         * docs/gnuplot.doc: Fix typos.
6497
6498 2005-07-10  Ethan Merritt  <merritt@u.washington.edu>
6499
6500         * src/command.c src/graph3d.c src/graphics.c src/term.c:
6501         Whitespace cleanup.
6502
6503         * src/internal.c (f_gprintf): Use dynamic allocation for output buffer.
6504
6505 2005-07-10  Juergen Wieferink  <wieferink@freenet.de>
6506
6507         * src/command.c (do_system_func) src/command.h src/eval.c
6508         src/internal.c (f_system) src/internal.h src/scanner.c (substitute):
6509         New built-in string function system("command") which executes a shell
6510         command and returns the resulting output stream as a string variable.
6511         Consolidate this code with existing shell escape code (backticks) via
6512         a new routine do_system_func().
6513
6514         * docs/gnuplot.doc: Document new system("command") function.
6515
6516 2005-07-09  Juergen Wieferink  <wieferink@freenet.de>
6517
6518         * src/eval.c src/eval.h src/parse.c src/parse.h: Consolidate code
6519         in add_udv() and add_udv_by_name(). Move add_udv_by_name() from parse.c
6520         to eval.c so that lower level routines in internal.c and eval.c do not
6521         have to include parse.h.
6522
6523 2005-07-08  Juergen Wieferink  <wieferink@freenet.de>
6524
6525         * src/internal.c (f_call f_calln): Free all strings used as dummy
6526         variables; fixes memory leak.
6527
6528         * src/eval.h src/eval.c: New function free_at() that frees all strings
6529         stored in an old action table so that there is no memory leak when the
6530         table is re-used.
6531
6532         * src/command.c (define): Free old action table if a function is 
6533         redefined; fixes memory leak.
6534
6535         * src/parse.c (temp_at parse_primary_expression): Recode to use new
6536         free_at() routine.
6537
6538 2005-07-08  Ethan Merritt  <merritt@u.washington.edu>
6539
6540         * docs/gnuplot.doc src/internal.c (f_range f_strstrt) 
6541         src/parse.c (parse_primary_expression):
6542
6543         Switch convention of substring indexing from C-like (first character has
6544         index 0) to Fortran-like (first character has index 1).  This makes the
6545         routines strstrt() and word() consistent with each other, and makes the
6546         range specifier form string[beg:end] consistent with both of them.
6547
6548         * demo/stringvar.dem: Expand demo to illustrate use of the substring
6549         operator and the various string string functions.
6550
6551 2005-07-07  Ethan Merritt  <merritt@u.washington.edu>
6552
6553         * src/gp_types.h: Provide a pseudo-plot type NODATA to indicate that
6554         this plot is being skipped because the datafile was empty.
6555
6556         * src/plot2d.c (eval_plots): When no valid points are found in a data
6557         file, issue a warning message, mark the current plot as NODATA, but then
6558         process the rest of the command line as normal rather than bailing to 
6559         command line. This is a return to the behavior of 3.7.2, except that now
6560         there is an explicit warning message for each empty file. If other code
6561         sections code are sensitive to lack of data, they can test for NODATA.
6562         Addresses enhancement requests #1063873 and #1204125.
6563
6564 2005-07-06  Ethan Merritt  <merritt@u.washington.edu>
6565
6566         * src/internal.c (f_sprintf): Switch from using a fixed length output
6567         buffer to a dynamically-allocated one. The string output by sprintf is
6568         no longer limited to 80 characters.
6569
6570         * demo/stringvar.dem: Test dynamic extension of sprintf output buffer.
6571
6572         * src/datafile.c (df_readline): Only call add_key_entry() if the current
6573         plot is really a histogram; otherwise specifying 'using key(<n>)'
6574         causes a segfault on non-histogram plots.
6575
6576         * docs/gnuplot.doc: Clarify the method of auto-generating key titles
6577         and tic labels for columnstacked histogram style.
6578
6579 2005-07-03  Juergen Wieferink  <wieferink@freenet.de>
6580
6581         * src/command.c (system_command): Simplify code by using 
6582         try_to_get_string() to extract the command string from input line.
6583
6584         * docs/gnuplot.doc: Fix typo in the documentation for words(string).
6585         Add mention that `set style fill` applies to filledcurves.
6586
6587 2005-07-03  James R. Van Zandt  <jrv@debian.org>
6588
6589         * term/gd.trm: Document "set output '| display png:-'".
6590
6591 2005-07-02  Ethan Merritt  <merritt@u.washington.edu>
6592
6593         * src/eval.c src/internal.c src/internal.h src/parse.c:
6594         New string-related functions:
6595         + words("string") returns the number of whitespace-separated words in
6596           the string.  For example, words("A B C D") = 4
6597         + word("string",N) returns the Nth word in the string. For example,
6598           word("A B C D",3) = "C"
6599
6600         * docs/gnuplot.doc: Document new functions word() and words().
6601
6602 2005-06-29  Ethan Merritt  <merritt@u.washington.edu>
6603
6604         * src/util.c src/util.h: #define isstringvalue(c_token) to include both
6605         isstring() and, if enabled, isstringvar().
6606
6607         * src/plot2d.c src/plot3d.c src/set.c term/emf.trm term/gd.trm
6608         term/post.trm term/tgif.trm term/x11.trm: Modify all callers of
6609         isstring+isstringvar to either use the new combined routine or to call
6610         try_to_get_string() directly and handle both string and non-string
6611         returns.
6612
6613         * src/axis.h: And one caller was hiding in a macro.
6614
6615         Fixes the following bugs:
6616         + `plot func(x), FILENAME` gave an error
6617         + `set term pslatex font FONTNAME` should not have been legal
6618         + `set title "foo" -1,-1`  (old style syntax with no "offset" keyword)
6619           caused a parsing error
6620         + fixes order-dependence of options to `set term emf`
6621
6622         There are 60 odd instances of isstring() remaining, many of which are
6623         tests for format strings (e.g. `set format xy "format_string"`).
6624
6625 2005-06-28  Ethan Merritt  <merritt@u.washington.edu>
6626
6627         * docs/checkdoc.c: Allow for lines beginning with '=' in gnuplot.doc
6628         (now used to indicated an explicit index entry).
6629
6630 2005-06-27  Shigeharu Takeno  <shige@iee.niit.ac.jp>
6631
6632         * src/set.c (parse_label_options): Allow string variable or expression
6633         for font name.
6634
6635 2005-06-27  Ethan Merritt  <merritt@u.washington.edu>
6636
6637         * src/internal.c (f_calln): Prevent buffer overflow if more parameters
6638         than expected are passed to a function.
6639
6640 2005-06-26  Petr Mikulik  <mikulik@physics.muni.cz>
6641
6642         * docs/Makefile.in: Replace "sort" by "LC_ALL=C sort" when building
6643         allterm.h to avoid localized sorting.
6644
6645 2005-06-24  Petr Mikulik  <mikulik@physics.muni.cz>
6646
6647         * docs/gnuplot.doc: Rewritten section for "help exit".
6648
6649 2005-06-22  Ethan Merritt  <merritt@u.washington.edu>
6650
6651         * src/eval.c src/internal.h src/internal.c (f_strstrt): New built-in
6652         string function that searches for a substring within a longer string.
6653         Equivalent to C library function strstr(haystack,needle) except that
6654         rather than returning a pointer, it returns an index.  Example:
6655             n = strstrt("haystaneedleck","needle")
6656         sets n to 6.
6657
6658         * demo/stringvar.dem docs/gnuplot.doc: Document and add to string demo.
6659
6660         * NEWS: Update list of new features.
6661
6662 2005-06-20  Ethan Merritt  <merritt@u.washington.edu>
6663
6664         * src/set.c (set_xyzlabel): Allow string variable or expression for
6665         font name. This is a variant of a patch from Shigeharu TAKENO.
6666
6667         * src/plot2d.c (get_data histogram_range_fiddling): Clean up histogram
6668         code dealing with missing data or blank lines. Fixes an autoscaling bug
6669         if a data file ends with blank lines.
6670
6671 2005-06-19  Ethan Merritt  <merritt@u.washington.edu>
6672
6673         * docs/gnuplot.doc src src/set.c (set_decimalsign): New command option
6674             `set decimalsign {locale {"locale_spec"}}`
6675          takes the decimal sign character from the locale specified for the
6676          locale "locale_spec" or from the locale specified in the enviromental
6677          variables LC_NUMERIC, LC_ALL, or LANG.
6678
6679         * src/save.c (save_set_all): Save the current locale for LC_NUMERIC
6680         as well as the actual current value of decimalsign.
6681
6682          * src/show.c (num_to_str) src/util.c (gprintf): Allow for the
6683          possibility that the current decimal sign is a comma rather than a dot.
6684
6685          * src/variable.c (locale_handler): Expand output by `show locale` to
6686          show the current values of LC_NUMERIC LC_CTYPE and LC_TIME.
6687
6688          * src/unset.c (unset_decimalsign): If the decimalsign is reset using
6689          `unset decimalsign`, then set the internal locale to C.
6690
6691 2005-06-18  Harald Harders  <h.harders@tu-bs.de>
6692
6693         * docs/gnuplot.doc: Revise the section on "set arrow".
6694
6695 2005-06-16  Harald Harders  <h.harders@tu-bs.de>
6696
6697         * docs/gnuplot.doc: Document `set style line <n> linecolor <colorspec>`
6698
6699 2005-06-15  Ethan Merritt  <merritt@u.washington.edu>
6700
6701         * demo/stringvar.dem docs/gnuplot.doc src/eval.c: Rename substring
6702         built-in function to substr(string,beg,end).
6703
6704 2005-01-15  Bastian Maerkisch  <bmaerkisch@web.de>
6705
6706         * term/pm.trm src/os2/gclient.c src/os/pm_msgs.h: Move definition of
6707         message codes for communication between gnuplot (pm.trm) and gnupmdrv
6708         (gclient.c) to a new separate file pm_msgs.h. Replace hard-wired codes
6709         in gclient.c by symbolic names.
6710
6711         * term/pm.trm (PM_set_font): Fix font selection for pm terminal in case
6712         of empty font string.
6713
6714         * src/plot.c (RexxInterface): Replace input_line[] by gp_input_line[]
6715         in code sections which are only compiled on OS/2.
6716
6717         * src/os2/gclient.c (ParseText): Fix super- and subscripts in enhanced
6718         mode of the pm terminal.
6719
6720 2005-06-14  Ethan Merritt  <merritt@u.washington.edu>
6721
6722         New functions related to string variables:
6723          sub = "ABCDEF"[beg:end]
6724          sub = substring("ABCDEF",beg,end)
6725          len = strlen("ABCDEF")
6726
6727         * src/parse.c (parse_primary_expression): Check for a postfixed
6728         range specifier at the end of parsing an expression.
6729
6730         * src/internal.c (f_range) src/internal.h: New internal function
6731         f_range() that applies a range specifier to a string in order to
6732         extract a substring.  Used both by substring() and by [*:*]
6733
6734         * src/eval.c src/eval.h: Define an index code for the internal
6735         function f_range().  Make it accessible also as a function
6736         substring("string",beg,end). Also define a function strlen("string").
6737
6738         * demo/stringvar.dem demo/all.dem docs/gnuplot.doc:
6739         Document and provide examples of substring syntax.
6740         Add string variable demo to all.dem
6741
6742 2005-06-13  Frank Maas / Ethan Merritt
6743
6744         * docs/gnuplot.doc: Clarify histogram documentation to explain that
6745         histograms always use x1 axis coordinates, but other plot elements on
6746         the same plot may freely use either x1 or x2.
6747
6748 2005-06-13  KITA Toshihiro  <t-kita@cc.kumamoto-u.ac.jp>
6749
6750         * docs/gnuplot.doc: Update `set xlabel` example to use the `offset`
6751         keyword.
6752
6753 2005-06-04  Juergen Wieferink  <wieferink@freenet.de>
6754
6755         * src/parse.c eval.c eval.h internal.c command.c set.c:
6756         Code clean up: replace explicit test-and-free of string values with a
6757         call to gpfree_string().
6758
6759         * src/datafile.c (df_open): Clean up parsing of data file name,
6760         using generic functions try_to_get_string() and gpfree_string().
6761
6762 2005-06-04  Ethan Merritt  <merritt@u.washington.edu>
6763
6764         * src/eval.c src/eval.h src/show.c src/setshow.h: Move the routine
6765         disp_value() and its helper num_to_str() from eval.c to show.c. This
6766         reduces the need for mutual cross-referenced #includes, and anyway the
6767         routine belongs in either show.c or save.c because that's what it does.
6768
6769 2005-06-04  Juergen Wieferink  <wieferink@freenet.de>
6770
6771         * src/show.c (disp_value) src/setshow.h: Introduce an additional
6772         parameter to disp_value() that controls whether or not quotes are
6773         printed around strings on output.  This allows simplification of the
6774         code at all call sites.
6775
6776         * src/command.c (print_command) src/internal.c (DEBUG code only)
6777         save.c (save_variables__sum) show.c (disp_at show_variables):
6778         Modify call sites of disp_value() to explicitly request quoted strings
6779         if necessary.
6780
6781 2005-06-02  Ethan Merritt  <merritt@u.washington.edu>
6782
6783         * docs/README docs/titlepag.tex docs/doc2tex.c docs/doc2texi.el:
6784
6785         Add a mechanism to auto-generate an index for the documentation via the
6786         TeX package "makeindex". All TeX-derived documentation formats will
6787         include the index. Juergen Wieferink has similarly modified the
6788         generation of gnuplot.info.  A keyword is inserted in the index if
6789         it is found on a line of gnuplot.doc beginning with with '?' or '=',
6790         or if it appears as the final word of a phrase wrapped in backtics.
6791         This latter rule picks up cross-reference sites, but may be disabled
6792         by compiling doc2tex with -DNO_CROSSREFS.
6793
6794         * docs/doc2.gih.c docs/doc2hlp.c docs/doc2ipf.c docs/doc2ms.c docs/doc2rnh.c
6795         docs/doc2rtf.c: Ignore leading '=' character in input stream. These
6796         conversion tools do not know how to generate an index.
6797
6798         * docs/gnuplot.doc term/gd.trm term/x11.trm: Add some explicit indexing
6799         entries (keywords with a '=' in the first column of the line).
6800
6801         * docs/Makefile.in: Switch generation of html documentation to use
6802         latex2html toolchain rather than going via gnuplot.texi
6803
6804 2005-06-02  Juergen Wieferink  <wieferink@freenet.de>
6805
6806         * src/eval.c (Gstring gpfree_string) src/eval.h: Separate the freeing
6807         of an old string variable from the creation of a new one. New function
6808         gpfree_string().
6809
6810         * src/mouse.c src/internal.c (f_gprintf f_sprintf f_concatenate)
6811         src/command.c (define) src/mouse.c (load_mouse_variables): Convert to
6812         use new gpfree_string() function.  Fix memory leaks from re-use of
6813         string variable names.
6814
6815 2005-06-01  Ethan Merritt  <merritt@u.washington.edu>
6816
6817         * src/util.c docs/gnuplot.doc src/graphics.c: Update old comments and
6818         documentation; quiet compiler warnings about uninitialized variable.
6819
6820 2005-05-27  Daniel Sebald  <daniel.sebald@ieee.org>
6821
6822         * term/post.trm: Fix incorrect fprintf statement that was causing
6823         compiler warnings.
6824
6825 2005-05-25  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
6826
6827         * src/gplt_x11.c: Lots of coding style changes, mainly missing
6828         blanks after commas.
6829         (main) [USE_X11_MULTIBYTE]: Reset LC_NUMERIC locale to "C", after
6830         all others have been set to the user's selection for purposes of
6831         multi-byte font support.
6832
6833 2005-05-25  Daniel Sebald  <daniel.sebald@ieee.org>
6834
6835         SF Patch [1117060] Mod to post.trm for PostScript Level 1 images.
6836
6837         * term/post.trm: New routine PS_encode_image(), new postscript variable
6838         InterpretLevel1 and some other changes.
6839
6840 2005-05-24  Ethan Merritt  <merritt@u.washington.edu>
6841
6842         * src/tables.c: Allow shorthand for "set macros".
6843
6844         * src/term_api.h term/README: Add new terminal flag TERM_NO_OUTPUTFILE.
6845
6846         * src/term.c (term_init): As per discussion on gnuplot-beta, when
6847         changing to a new terminal type, check flags for TERM_NO_OUTPUTFILE
6848         associated with the new type.  If present, then close current output
6849         file cleanly rather than reopening and overwriting it.
6850         Fixes bug #1182499.
6851
6852         * term/x11.trm term/win.trm term/pm.trm term/be.trm term/aquaterm.trm:
6853         Mark terminal as TERM_NO_OUTPUTFILE.
6854
6855
6856 2005-05-23  Ethan Merritt  <merritt@u.washington.edu>
6857
6858         * term/estimate.trm (ENHest_put_text): Track estimated limits on
6859         string y extent also.
6860
6861 2005-05-22  Peter Weilbacher  <paepse@users.sourceforge.net>
6862
6863         * src/gp_hist.h src/readline.c: Fix conditional dependencies on
6864         READLINE and HAVE_LIBREADLINE so that ./configure + build is
6865         clean with all three readline options.
6866
6867 2005-05-22  Ethan Merritt  <merritt@u.washington.edu>
6868
6869         * term/gd.trm term/mif.trm term/pdf.trm: Code cleanup - remove static
6870         initializers from the TERM_PROTO code block. ggi.trm has these also,
6871         but I can't test for correctness after a change so I don't want to 
6872         change it. Remove obsolete comments.
6873
6874 2005-05-20  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
6875
6876         * src/util.c (PRINT_MESSAGE_TO_STDERR): New macro: invokes printf
6877         while protecting itself from current_prompt == NULL.
6878         (os_error, int_error, int_warn): Use new macro.
6879
6880 2005-05-20  Peter Weilbacher  <paepse@users.sourceforge.net>
6881
6882         SF Patch [981476] Get history functions working with GNU readline
6883
6884         * command.c (history_command): Let the "history" command be available
6885         also for GNU readline, i.e. HAVE_LIBREADLINE.
6886
6887         * history.c: Make routines for GNU readline compatible to those of
6888         gnuplot readline.
6889
6890 2005-05-19  Ethan Merritt  <merritt@u.washington.edu>
6891
6892         * src/datafile.c (df_readline) src/gadgets.h src/save.c (save_set_all)
6893         src/set.c (set_bars parse_histogramstyle) src/show.c (show_histogram) 
6894         src/plot2d.c (get_data histogram_range_fiddling) 
6895         src/graphics.c (do_plot plot_bars plot_boxes): New histogram plot mode
6896
6897             set style histogram errorbars {gap <g>} {linewidth {lw}}
6898
6899         Identical to 'set style histogram clustered' except that a second
6900         column of input data (required) is used to generate error bars at the
6901         top of each box belonging to the histogram.
6902
6903         * docs/gnuplot.doc: Document the addition of a new histogram
6904         plot mode and associated options for 'set bars'.
6905
6906 2005-05-18  Ethan Merritt  <merritt@u.washington.edu>
6907
6908         * src/set.c (set_allzeroaxis): Fix parsing error (bug #1204444).
6909
6910 2005-05-16  Ethan Merritt  <merritt@u.washington.edu>
6911
6912         * src/plot3d.c (eval_3dplots): Prevent parser from getting into an
6913         infinite loop when parsing 'splot with vectors' and no additional
6914         options (bug #1203139).
6915
6916         * src/graph3d.c (do_3dplot): Show key sample for 'splot with vectors'.
6917
6918 2005-05-15  Ethan Merritt  <merritt@u.washington.edu>
6919
6920         * src/set.c (set_terminal): That last change wasn't popular.
6921         Instead, provide additional (but not complete) backward
6922         compatibility by doing an implicit "unset table" whenever the
6923         terminal is changed.
6924
6925 2005-05-14  Ethan Merritt  <merritt@u.washington.edu>
6926
6927         * src/set.c (set_terminal): Give up on trying to provide backward
6928         compatibility for the old 'set term table' command; just issue a
6929         warning and leave the current terminal unchanged.
6930
6931 2005-05-13  Ethan Merritt  <merritt@u.washington.edu>
6932
6933         * src/term.c (ignore_enhanced): Force a return to the default font.
6934          Fixes bug #1194516.
6935
6936         * term/README: Document the fact that term->set_font("") is expected
6937         to restore the terminal's default font. This was already true, but
6938         not mentioned in README.
6939
6940 2005-05-13  Petr Mikulik  <mikulik@physics.muni.cz>
6941
6942         * term/fig.trm (FIG_linetype): Use the postscript sequence of linetype
6943         colors.
6944
6945 2005-05-11  Ethan Merritt  <merritt@u.washington.edu>
6946
6947         * src/gplt_x11.c (exec_cmd): Reorder variable declarations to allow
6948         building without binary-polygon support.
6949
6950 2005-05-09  Ethan Merritt  <merritt@u.washington.edu>
6951
6952         * src/gplt_x11.c: Rename static arrays Class[] -> X_Class[]  and
6953         Name[] -> X_Name[] to avoid conflict with gcc 4 build environment
6954         under OSX 10.4 as reported by Per Persson.
6955
6956         * docs/gnuplot.doc: Correct typo referring to 'set pause mouse'.
6957
6958         * term/post.trm term/pslatex.trm (PSTEX_text): Allow postscript-based
6959         terminals to use fractional font sizes; change ps_fontsize from int to
6960         float, and change relevant format statements from %d to %g.
6961
6962 2005-05-07  Ethan Merritt  <merritt@u.washington.edu>
6963
6964         * src/unset.c (reset_command): Don't include macro setting in general
6965         `reset`;  macro expansion is more likely to be chosen per-input-file
6966         than per-plot.
6967
6968 2005-05-06  Ethan Merritt  <merritt@u.washington.edu>
6969
6970         * src/plot2d.c (get_data histogram_range_fiddling): Treat all boxwidths
6971         as absolute when in HISTOGRAM plot mode. Be more thorough in checking
6972         for histogram entries that extend the X range in auto-scale mode.
6973         Fixes bugs reported by Andrew J Caird.
6974
6975 2005-05-05  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
6976
6977         * docs/gnuplot.doc (timecolumn): New documentation entry for this
6978         old "secret" function.
6979
6980         * src/datafile.c (f_timecolumn): Major brush-over, and lots of
6981         comments explaining just how broken this function currently is.
6982
6983 2005-05-02  Ethan Merritt  <merritt@u.washington.edu>
6984
6985         * src/util.c (isstringvar) src/util.h: Have this function always
6986         return FALSE if gnuplot is configured with --disable-stringvariables.
6987
6988         * term/tgif.trm (TGIF_options): Accept string variable for font name.
6989
6990         * src/hidden3d.c (build_networks): If vertex has previously been flagged
6991         as invalid, do not pass it on for further processing.
6992         Fixes bug #1194035 / #1194055
6993
6994 2005-04-29  Ethan Merritt  <merritt@u.washington.edu>
6995
6996         * term/x11.trm term/gd.trm term/pdf.trm src/misc.c src/gplt_x11.c:
6997         Whitespace cleanup.
6998
6999         * term/gd.trm (PNG_options): Accept string variable for font name.
7000
7001         * src/plot2d.c (get_data eval_plots): If the x-axis is in log mode,
7002         treat boxwidth as a constant visual width rather than as a constant
7003         number of units along x, which would produce narrower boxes as x
7004         increases.  Issue an error message if the x-axis is in log mode
7005         when the plot style is histograms.
7006
7007         * docs/gnuplot.doc: Document behaviour of 'set boxwidth' for log axes.
7008
7009         * docs/gnuplot.doc term/x11.trm term/post.trm: Clean up line length
7010         and other issues that cause errors during creation of TeX docs.
7011
7012 2005-04-29  Petr Mikulik  <mikulik@physics.muni.cz>
7013
7014         * pm3d.c (set_plot_with_palette): Fix for 'splot x, y with pm3d'.
7015
7016 2005-04-28  Ethan Merritt  <merritt@u.washington.edu>
7017
7018         * term/x11.trm (X11_options): Accept string variables for terminal
7019         options 'font <foo>' and 'title <bar>'.
7020
7021         * term/post.trm (PS_options) term/emf.trm (EMF_options): 
7022         Accept string variable for font name.
7023
7024 2005-04-28  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7025
7026         * config/makefile.wc: Update for more Watcom-like usage of tools.
7027
7028         * config/config.wc: New file.  Promised long ago, when I added
7029         makefile.wc, finally got round to doing it.
7030
7031         * config/config.oww, config/makefile.oww: Rewrite for more
7032         features and more Watcom-like usage of tools.
7033
7034         * src/readline.c [__WATCOMC__]: Add #include <conio.h> for getch()
7035         function.
7036
7037 2005-04-27  Ethan Merritt  <merritt@u.washington.edu>
7038
7039         * src/set.c (set_label): If the first option after 'set label' is an
7040         expression, handle it appropriately whether it is a numerical expression
7041         that provides the label id tag or a string expression that provides the
7042         label itself.
7043
7044 2005-04-27  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7045
7046         * src/command.c (call_kill_pending_Pause_dialog): Fix accidental
7047         removal of this function caused by yesterday's change.
7048
7049 2005-04-26  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7050
7051         * src/win/wgraph.c (drawgraph): Initialize local variable to avoid
7052         a -Wuninitialized.
7053
7054         * src/history.c (write_history_n): Only define local is_pipe if
7055         PIPES enabled.  Avoids a -Wunused.
7056
7057         * src/command.c (winsystem): Define this function only if
7058         USE_OWN_WINSYSTEM_FUNCTION is set.  Removes a -Wunused.
7059
7060 2005-04-24  Ethan Merritt  <merritt@u.washington.edu>
7061
7062         * term/x11.trm: Fix a typo in the example using enhanced text font sizes.
7063
7064 2005-04-24  Petr Mikulik  <mikulik@physics.muni.cz>
7065
7066         * src/pm3d.c (set_plot_with_palette): Show colorbox for 'splot ... with
7067         ... palette'.
7068
7069 2005-04-23  Ethan Merritt  <merritt@u.washington.edu>
7070
7071         Bug fix: Do not apply axis mapping (e.g. log scale) twice to the
7072         label coordinates in plot style 'with labels'.
7073
7074         * src/gadgets.h: Define a new "layer" LAYER_PLOTLABELS, which 
7075         allows the label-processing code to distinguish labels whose coords
7076         have already been axis-mapped from those where they have not.
7077
7078         * src/graphics.c (place_labels do_plot) src/plot2d.c (eval_plots) 
7079         src/graph3d.c (place_labels3d do_3dplot) src/plot3d.c (eval_3dplots):
7080         Mark the labels making up a 'with labels' plot as belonging to 
7081         LAYER_PLOTLABELS rather than to front or back layers.
7082
7083         * src/gplt_x11.c (exec_cmd): When setting a new font, set it for
7084         both the normal and pm3d graphics contexts.
7085
7086 2005-04-22  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7087
7088         * config/makefile.oww, config/config.oww, src/makefile.awc: New
7089         build files for Win32 build using OpenWatcom compiler.
7090
7091         * src/win/winmain.c (mktemp) [__WATCOMC__]: Added name override to
7092         _mktemp.
7093         (_argv, _argc) [__WATCOMC__]: Added name overrides to __argc and
7094         __argv.
7095
7096         * src/win/wgnuplib.h: Added #include <windows.h>
7097
7098         * src/win/pgnuplot.c (_setmode) [__WATCOMC__]: Added name override
7099         to setmode.
7100
7101         * src/term.c [__WATCOMC__]: Added #include <io.h>.
7102
7103         * src/syscfg.h [__WATCOMC__]: Added #include <dos.h>.
7104
7105         * src/stdfn.h [WIN32]: Added #include <windows.h> for necessary
7106         type declarations like DWORD.
7107
7108         * src/specfun.c (BIGENDIAN): Removed unused definition conflicting
7109         with system headers.
7110
7111         * src/mouse.c [_Windows]: Added #include "win/winmain.h" for
7112         kill_pending_Pause_dialog() prototype.
7113
7114         * src/fit.c (ERROR): Renamed to GP_ERROR to avoid conflict with
7115         some system headers.
7116         (FIXED): Renamed to GP_FIXED to avoid conflicts with system
7117         headers.
7118
7119         * src/command.c [__WATCOMC__]: Don't #include <dir.h>.
7120
7121         * src/bitmap.c (IN) Macro conflicts with names used by some system
7122         headers.  Removed.
7123         (b_setpixel): Replace usage of macro IN by simplified expansion.
7124
7125         * docs/xref.c (xmalloc): Fixed missing return from non-void
7126         function.
7127
7128 2005-04-21  Ethan Merritt  <merritt@u.washington.edu>
7129
7130         * src/command.c (pause_command) src/command.h docs/gnuplot.doc:
7131         Modify syntax of pause mouse command:
7132             pause mouse {<end_condition>}{,<end_condition>}... {"prompt"}
7133         where <end_condition> is one of
7134             keystroke, button1, button2, button3, any
7135
7136         * src/mouse.c (event_keypress event_buttonpress event_bottonrelease
7137         event_reset) src/term (term_reset) src/win/wpause.c term/x11.trm:
7138         Test individually for specific end conditions for `pause mouse`.
7139
7140 2005-04-18  Ethan Merritt  <merritt@u.washington.edu>
7141
7142         * src/save.c (save_linetype) src/save.h src/show.c:    Code cleanup.
7143         Provide a single routine to handle all the places that dump information
7144         from a structure of type lp_style_type. This cleans up 9 call sites in
7145         save.c and 9 more in show.c, many of which were not handling the recent
7146         extensions to line types in general.  The grid linetypes were not being
7147         saved at all.
7148
7149         * src/set.c (set_key): Fix parsing bug that caused next item after
7150         'set key title "Foo"' to be ignored.
7151
7152         * src/graphics.c (boundary): Fix for bug #1184989. Explicitly test for
7153         absence of any plot titles when sizing the key (avoid divide-by-zero).
7154
7155 2005-04-18  Petr Mikulik  <mikulik@physics.muni.cz>
7156
7157         * term/fig.trm (FIG_set_color): Support for "textcolor lt".
7158
7159 2005-04-16  Juergen Wieferink  <wieferink@freenet.de>
7160
7161         * term/pslatex.trm: Clean up macro definitions written to
7162         output file of 'set term epslatex'. 
7163         Fixes bug #1162038 "Wrong textcolor in epslatex terminal".
7164
7165 2005-04-14  Ethan Merritt  <merritt@u.washington.edu>
7166
7167         * src/set.c (set_border): Fix bug in new parsing loop.
7168
7169 2005-04-14  Ethan Merritt  <merritt@u.washington.edu>
7170
7171         * docs/gnuplot.doc src/gadgets.c src/gadgets.h
7172         src/graphics.c (do_plot) src/save.c (save_set_all) 
7173         src/set.c (set_border) src/show.c (show_border):
7174         Make parsing of 'set border' options independent of their order.
7175         New option 'set border {front|back}'.
7176
7177 2005-04-11  Ethan Merritt  <merritt@u.washington.edu>
7178
7179         * term/post.trm: Fix for bug #1180853, arrowheads drawn in wrong
7180         color if the arrow body has a specific line style or color.
7181
7182 2005-04-10  Ethan Merritt  <merritt@u.washington.edu>
7183
7184         * demo/histograms.dem:  Correct behaviour of the demo depended
7185         on a bug in the xrange code.  Now that the bug is fixed (26-Mar-05)
7186         the demo needs to be fixed also (don't set xrange to [0:*]).
7187
7188 2005-04-08  Ethan Merritt  <merritt@u.washington.edu>
7189
7190         * Makefile.am configure.in:  Continued attempts to make configure
7191         ignore lisp files altogether when --without-lisp-files is chosen.
7192         In this case skip ./lisp subdirectory during 'make' recursion.
7193
7194 2005-04-08  Petr Mikulik  <mikulik@physics.muni.cz>
7195
7196         * docs/gnuplot.doc: Improved 'help cbrange'.
7197
7198 2005-04-06  Petr Mikulik  <mikulik@physics.muni.cz>
7199
7200         * src/pm3d.c (set_plot_with_palette): Do not set the flag for displaying
7201         colorbox for 'splot ... with rgbimage'.
7202
7203 2005-04-06  Ethan Merritt  <merritt@u.washington.edu>
7204
7205         * term/README:  Show call order of enhanced text mode entry points
7206         and mention that 'set termoption' calls into term->options().
7207
7208 2005-04-03  Ethan Merritt  <merritt@u.washington.edu>
7209
7210         * src/set.c: Allow 'set termoption delay <n>' to change the interframe
7211         gap of a gif animation in progress.
7212
7213         * term/gd.trm (PNG_options):
7214         Add gif animation option 'loop <repeatcount>'. Protect current animation
7215         state from being reset by a 'set termoption' command, but alow the frame
7216         delay to be changed. List animation options in terminal options string.
7217
7218 2005-04-03  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7219
7220         * docs/gnuplot.doc: Remove blanks from whitespace-only lines.
7221
7222 2005-04-01  Juergen Wieferink  <wieferink@freenet.de>
7223
7224         * docs/doc2tex.c: Handle levels 5 and 6 of documentation text as
7225         paragraph and subparagraph, respectively.
7226
7227 2005-04-01  Ethan Merritt  <merritt@u.washington.edu>
7228
7229         * docs/gnuplot.doc: Add help keyword for 'newhistogram'.
7230
7231         * configure.in: If the user configures --without-lisp-files then
7232         do not try to run configure in the lisp subdirectory.
7233
7234 2005-03-30  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7235
7236         * src/gplt_x11.c (process_event) [!USE_MOUSE]: don't refer to
7237         objects and functions not defined in this case.
7238
7239         * src/plot3d.c (eval_3dplots) [!GP_STRING_VARS]: Don't call
7240         isstringvar() if feature disabled.
7241
7242         * src/plot2d.c (eval_plots) [!GP_STRING_VARS]: Likewise.
7243
7244         * src/show.c (show_command): Fix display of 'zeroaxis' settings
7245         reported by error message.
7246
7247         * src/set.c (set_command): Likewise.
7248
7249         * src/unset.c (unset_command): Likewise.
7250
7251 2005-03-29  Ethan Merritt  <merritt@u.washington.edu>
7252
7253         * demo/candlesticks.dem: Add demo of whiskerbars option.
7254
7255 2005-03-29  Petr Mikulik  <mikulik@physics.muni.cz>
7256
7257         * NEWS docs/gnuplot.doc src/plot3d.c src/pm3d.c src/pm3d.h src/save.c
7258         src/set.c src/show.c src/unset.c: Let pm3d drawing be always available
7259         without prior "set pm3d": now you can "splot x*y with pm3d" without
7260         prior "set pm3d". The "explicit" be the default pm3d value after reset.
7261         For compatibility (historical) reasons (color filled pm3d plot
7262         combined with mesh line plot): commands "set pm3d;" and "set pm3d at X
7263         other_opts;" switch pm3d to "implicit". No change for "set pm3d map".
7264
7265 2005-03-29  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7266
7267         * src/pm3d.c (set_plot_with_palette): Add a missing #ifdef
7268         WITH_IMAGE conditional.
7269
7270 2005-03-27  Ethan Merritt  <merritt@u.washington.edu>
7271
7272         * NEWS configure.in term/gd.trm: Allow storage of a sequence of plots
7273         into a single animated gif file.
7274             set term gif animate {delay <time>} {nooptimize}
7275         Requires libgd version 2.0.29 or better (2.0.33 is recommended).
7276
7277         * src/plot2d.c (histogram_range_fiddling): Make it more obvious in the
7278         code that histograms always use FIRST_X_AXIS.
7279
7280 2005-03-26  Ethan Merritt  <merritt@u.washington.edu>
7281
7282         SourceForge patch #1090199 "Extend hotkeys to all open plot windows"
7283
7284         Implement new option "bind all <key> <command>" that extends
7285         hotkeys to inactive plot windows in addition to the active window.
7286         The code is general, although currently only the x11 terminal
7287         tracks the ID of multiple windows in order to report who is who.
7288
7289         * src/command.c (bind_command): New keyword "bind {all$windows} ..."
7290
7291         * src/gpexecute.c (gp_exec_event) src/gpexecute.h:
7292         New parameter holds ID of window from which this event was triggered.
7293
7294         * src/gplt_x11.c (process_event): Pass ID of originating window to
7295         gp_exec_event() along with the x,y coordinates and keystroke.
7296         Distinguish between active and inactive window by using event code
7297         GE_keypress or GE_keypress_old. You get the window ID in either case.
7298
7299         * src/mousecmn.h: Add new field int winid to struct gp_event_t.
7300
7301         * src/mouse.c src/mouse.h:
7302         Add new TBOOLEAN allwindows to the bind_t structure.
7303         New routine bind_all() sets this flag from "bind all <foo> <baz>".
7304         Teach event_keypress() to distinguish between keystrokes from active
7305         or inactive windows, and to load originating window ID into udv
7306         MOUSE_KEY_WINDOW so that it is visible to user-defined commands.
7307
7308         * src/os2/gclient.c src/win/wgraph.c:
7309         Add extra parameter for window ID in all calls to gp_exec_event().
7310
7311         * docs/gnuplot.doc: Document new command option "bind all <key>
7312         <command>".
7313
7314         * src/mouse.c (event_buttonpress) term/x11.trm (X11_waitforinput):
7315         Do not terminate "pause mouse key" on mouse button clicks. This allows
7316         zoom, select, and other mouse-click operations during the pause.
7317
7318 2005-03-26  Ethan Merritt  <merritt@u.washington.edu>
7319
7320         SourceForge patch #1120626 (contributed by Frank Maas).
7321
7322         * src/plot2d.c (histogram_range_fiddling): When processing
7323         histograms, allow auto-scaling of either end of the X-range
7324         individually.
7325
7326 2005-03-25  Ethan Merritt  <merritt@u.washington.edu>
7327
7328         * config/makefile.amg config/term_pc.h docs/Makefile.in
7329         sec/makefile.all: Remove dependencies involving table.trm.
7330
7331         * term/table.trm: Remove this file.
7332
7333 2005-03-25  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7334
7335         * src/plot2d.c (eval_plots): Add a missing #ifdef EAM_DATASTRINGS
7336         protection block.
7337
7338 2005-03-25  Petr Mikulik  <mikulik@physics.muni.cz>
7339
7340         * src/plot2d.c (eval_plots) src/plot3d.c (eval_3dplots): Don't increment
7341         the default line/point properties for line/point plots if this_plot is
7342         an (rgb)image (the same is already happening for pm3d plots).
7343         Otherwise, "splot 'a.dat' with image,x*y with line" and "... x*y w line,
7344         'a.dat' with image" draw surface x*y in different colours.
7345
7346 2005-03-24  Ethan Merritt  <merritt@u.washington.edu>
7347
7348         * docs/gnuplot.doc src/set.c (set_table) src/unset.c (unset_table) 
7349         src/tables.h src/tables.c:
7350         New commands
7351             set table {"outfile"}
7352             unset table
7353         These replace the old 'set term table', which never worked in general.
7354
7355         * src/gadgets.c src/gadgets.h:  TBOOLEAM table_mode and output file
7356         pointer table_outfile shared by plot2d and plot3d in table mode.
7357
7358         * src/plot2d.c (print_table) src/plot3d.c (print_3dtable):
7359         If table_mode is set we send tabular output to table_outfile, if it was
7360         specified, otherwise send it to gpoutfile.
7361
7362         * src/set.c (set_terminal): Allow 'set term table' as a special case
7363         backwards compatibility option.  It doesn't work all that well, but then
7364         again the original didn't work either.
7365
7366         * demo/all.dem demo/vector.dem: Rework vector.dem to use the new
7367         commands.  This makes it safe to include as part of all.dem because
7368         unlike the old 'set term table' it doesn't trash the current state of
7369         the output device.
7370
7371         * src/term.c src/term.h: Remove table.trm from the list of terminals.
7372
7373 2005-03-24  Ethan Merritt  <merritt@u.washington.edu>
7374
7375         * term/post.trm: Initialize the data structure pointer ps_params to
7376         point to the normal postscript mode values; without this, setting
7377         environmental variable GNUTERM to any of the PostScript terminal modes
7378         will cause a segfault on entry.
7379
7380 2005-03-23  Aapo Lankinen  <aapo.lankinen@gmail.com>
7381
7382         * src/contour.c (contour): Bugfix: logscale on CB was being applied
7383         twice when calculating contour colors.
7384
7385 2005-03-23  Petr Mikulik  <mikulik@physics.muni.cz>
7386
7387         * NEWS src/plot2d.c src/plot3d.c docs/gnuplot.doc: SF patch #1098256
7388         "Ignore title string after notitle":
7389         Let the string in '{s}plot ... notitle "string"' be silently ignored.
7390
7391 2005-03-21  Petr Mikulik  <mikulik@physics.muni.cz>
7392
7393         * src/plot3d.c (eval_3dplots): Better fix for 'set pm3d at X;
7394         splot f(x,y), 'data_file' with pm3d at Y' for data_file with
7395         multiple surfaces.
7396
7397         * src/graph3d.c (do_3dplot): Remove fix from 2005-03-17. 
7398         Fix 'set pm3d at X; splot...with pm3d at Y'
7399         for data files with multiple surfaces.
7400
7401 2005-03-18  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7402
7403         * docs/gnuplot.doc (set title): Add missing keyword "font".
7404
7405 2005-03-17  Petr Mikulik  <mikulik@physics.muni.cz>
7406
7407         * src/graph3d.c (do_3dplot): Fix 'set pm3d at X; splot...with pm3d at Y'
7408         for data files with multiple surfaces.
7409
7410 2005-03-16  Ethan Merritt  <merritt@u.washington.edu>
7411
7412         * src/datafile.c (df_readline): Allow for embedded whitespace in the
7413         output of a string-valued expression inside a "using" spec.
7414
7415         * src/graph3d.c (plot3d_points_pm3d plot3d_points): Remove routine
7416         plot3d_points_pm3d, and handle pm3d-colored points in plot3d_points
7417         instead. This removes any special drawing order for the points.
7418
7419 2005-03-16  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7420
7421         * src/axis.h (AXIS_ACTUAL_MAX, AXIS_ACTUAL_MIN): New macros to
7422         access range endpoints correctly, even if 'set view map' has mixed
7423         up the internal status.
7424
7425         * src/util3d.c (IN_AXIS_RANGE): New macro, equivalent to calling
7426         inrange() with the two endpoints of any given axis' range.  Makes
7427         code a bit more readable.
7428         (edge3d_intersect): New local macros INTERSECT_PLANE,
7429         INTERSECT_DIAG to centralize lots of very similar code blocks.
7430         Implement fix for clipping of -VERYLARGE points in the presence of
7431         'set view map' reversed ranges, by using new axis.h macros.
7432         (two_edge3d_intersect): Use new macro IN_AXIS_RANGE, reindent, for
7433         readability.
7434
7435 2005-03-15  Petr Mikulik  <mikulik@physics.muni.cz>
7436
7437         * src/pm3d.c (set_plot_with_palette): Fix displaying colorbox also for
7438         'splot ... with image'.
7439
7440 2005-03-14  Petr Mikulik  <mikulik@physics.muni.cz>
7441
7442         * src/pm3d.c (set_plot_with_palette): Fix displaying colorbox for 'plot
7443         ... with image'.
7444
7445 2005-03-12  Ethan Merritt  <merritt@u.washington.edu>
7446
7447         * src/plot2d.c (eval_plots): Fix bug in initialization order that
7448         prevented "set style data labels" from working in 2D plots.
7449
7450 2005-03-09  Ethan Merritt  <merritt@u.washington.edu>
7451
7452         * term/emf.trm term/gd.trm term/pdf.trm term/pm.trm term/post.trm
7453         term/svg.trm term/x11.trm src/gplt_x11.c src/gplt_x11.h:
7454         Modify term->set_color() to handle colorspec type LC_LT.
7455         This has the effect of changing the current line color to that of
7456         default linetype <lc> without changing any other line properties.
7457
7458         * misc.c (lp_parse) save.c (save_set_all) show.c (show_linestyle)
7459         docs/gnuplot.doc:
7460         Allow line color {linecolor|lc} to be specified separately from the
7461         linetype. For example, this command will give a dashed black line:
7462             set style line 1 lt 2 lc -1
7463         and the following will give a dashed gold line:
7464             plot sin(x) with lines lt 2 lc rgb "gold"
7465
7466         * demo/dashcolor.dem: Demo of choosing both linetype (dot/dash pattern)
7467         and linecolor separately.
7468
7469         * src/misc.c (arrow_parse): Bugfix: Keep current linetype as the default
7470         when parsing possible additional line style options.
7471
7472 2005-03-06  Ethan Merritt  <merritt@u.washington.edu>
7473
7474         * src/datafile.c (df_readline) src/misc.c (parse_colorspec): 
7475         Clean up code to remove the remaining 2 compiler warnings in current cvs.
7476
7477 2005-03-05  Harald Harders  <h.harders@tu-bs.de>
7478
7479         * term/post.trm (PS_options): Patch #1121971. Avoid external 
7480         processing of escaped characters in the epslatex header string.
7481
7482 2005-03-05  Ethan Merritt  <merritt@u.washington.edu>
7483
7484         * src/datafile.c (df_readline): Plug a memory leak caused by evaluating
7485         a string-valued expression inside a "using" specification.
7486
7487         * configure.in /config/config.amg /config/config.cyg /config/config.mgw
7488         /config/config.os2 /src/eval.c /src/eval.h /src/internal.c
7489         /src/internal.h /src/parse.c /src/standard.c /src/standard.h:
7490
7491         Remove configuration option --disable-defined-var.
7492         Remove the #ifdef GP_ISVAR ... #endif bracketing the corresponding code.
7493
7494         * term/cgm.trm (CGM_linecolor): Force all line and point color requests
7495         to black if the terminal is in monochrome mode. Bug fix courtesy of 
7496         N Matsuda (Tokyo Denki University).
7497
7498 2005-03-04  Ethan Merritt  <merritt@u.washington.edu>
7499
7500         * src/datafile.c: Introduce a defined constant MAX_TOKEN_LENGTH
7501         rather than trusting multiple call sites to declare consistently
7502         sized character arrays.
7503
7504         * src/eval.c src/datafile.h src/datafile.c docs/gnuplot.doc:
7505         New internal function f_stringcolumn() usable only inside a "using"
7506         specification; pushes the content of a data column onto the evaluation
7507         stack as a string variable.
7508         Syntax:
7509             plot 'foo' using (stringcolumn(1) eq "baz" ? column(2) : column(3))
7510
7511         * src/datafile.c (df_readline df_3dmatrix df_readbinary):
7512         Set a flag to indicate that we are in the process of evaluating a
7513         "using" specification.
7514
7515         * src/datafile.c (f_column f_timecolumn f_stringcolumn):
7516         Report an error if any of the <xxx>column() functions  are called
7517         outside the context of a "using" specification.
7518
7519         * configure.in: Remove the "EXPERIMENTAL" warning from the histogram
7520         and datastrings options; they've had 2 years of testing.
7521
7522 2005-03-02  Ethan Merritt  <merritt@u.washington.edu>
7523
7524         * src/unset.c (unset_historysize): Rearrange #ifdefs for GNUPLOT_HISTORY
7525         to prevent compiler warnings about unused function definitions.
7526
7527         * src/term.h term/post.h term/post.trm: Introduce a statement 
7528         '#define PSLATEX_DRIVER' into post.h that controls whether or not the
7529         pslatex/epslatex terminal code is built.  Add #ifdef PSLATEX_DRIVER
7530         in appropriate places.  Without this it was impossible to build gnuplot
7531         with post.trm but not pslatex.trm.
7532
7533         * src/term.h: Remove aed.trm and tek.trm from SHORT_TERMLIST set of
7534         terminals, but add estimate.trm if it is enabled.
7535
7536         * configure.in src/graphics.c src/plot2d.c src/save.c src/set.c
7537         src/show.c src/unset.c src/plot2d.h:
7538
7539         Remove configuration option --disable-relative-boxwidth. 
7540         Remove the #ifdef USE_ULIG_RELATIVE_BOXWIDTH ... #endif brackets around
7541         code that implements it.
7542
7543         * config/config.amg config/config.cyg config/config.mgw config/config.nt
7544         config/config.os2 configure.in src/bitmap.c src/datafile.c src/gadgets.c
7545         src/gplt_x11.c src/gp_types.h src/graphics.c src/misc.c src/plot2d.c
7546         src/save.c src/show.c src/term_api.h src/term.c src/unset.c
7547         src/win/wgraph.c term/aquaterm.trm term/cgm.trm term/fig.trm term/gd.trm
7548         term/mif.trm term/pdf.trm term/post.trm term/svg.trm term/win.trm
7549         term/x11.trm:
7550
7551         Remove configuration option --disable-filledboxes
7552         Remove the #ifdef USE_ULIG_FILLEDBOXES ... #endif brackets around code
7553         that implements it.
7554
7555 2005-02-28  Ethan Merritt  <merritt@u.washington.edu>
7556
7557         * term/pslatex.trm: EPSLATEX_set_color must be protected by #ifdef PM3D.
7558
7559 2005-02-26  Ethan Merritt  <merritt@u.washington.edu>
7560
7561         * src/pm3d.c (set_plot_with_palette): Don't trigger display of the
7562         colorbox in 2D plots just because an explicit line color was set.
7563
7564         * misc.c (parse_fillstyle): accept full keyword "fillstyle" in addition
7565         to short form "fs".
7566
7567 2005-02-24  Ethan Merritt  <merritt@u.washington.edu>
7568
7569         * src/graphics.c(plot_c_bars) src/plot2d.c(eval_plots) docs/gnuplot.doc:
7570         New keyword  '... with candlesticks {whiskerbars}' that draws horizontal
7571         crossbars at the top and bottom of the whiskers. This is typical for
7572         box-and-whisker plots.  The new keyword is in lieu of adding a
7573         separate "boxplots" plot style (patch #624000).
7574
7575         * src/gplt_x11.c (pr_fastrotate) term/x11.trm (documentation):
7576         The fully general implementation of text rotation added in version 4.0
7577         is *much* slower than it used to be. This patch adds a new X resource
7578         gnuplot*fastrotate: {on|off} that reverts to the faster but imperfect
7579         rotation method.  The default is "on", which favors fast rendering at
7580         the cost of possibly corrupting colors of nearby plot elements.
7581
7582 2005-02-22  Ethan Merritt  <merritt@u.washington.edu>
7583
7584         * term/x11.trm: Fix botched optimization in previous patch.
7585
7586 2005-02-21  Ethan Merritt  <merritt@u.washington.edu>
7587
7588         * term/x11.trm: Implement solid fill rectangles and polygons as a
7589         true solid color, with variable fading toward background color, rather
7590         than approximating by a set of 3 half-tone patterns.
7591
7592         * docs/gnuplot.doc: Explain that for some terminals the size of a "dot"
7593         can be changed using linewidth.
7594
7595 2005-02-18  Ethan Merritt  <merritt@u.washington.edu>
7596
7597         * term/pdf.trm:  Allow "lw" as an abbreviation for "linewidth"
7598         * term/post.trm: Make dash styles 6 and 7 a bit more distinctive
7599         * term/emf.trm:  Add option 'set term emf {linewidth <factor>}'
7600         * term/gd.trm:   Solid fill with density < 1 was not working with 
7601                          rgb colors.  Trivial fix.
7602         * term/gd.trm:   Add option 'set term ... {linewidth <factor>}';
7603                          increase maximum linewidth from 6 to 12
7604
7605         * src/graphics.c (boundary): When estimating the length and height
7606         of xlabel, increase the number of lines by one if we're in enhanced text
7607         mode and there seems to be a subscript. This test can be fooled if the
7608         label has disabled enhanced text processing.
7609
7610 2005-02-18  Petr Mikulik  <mikulik@physics.muni.cz>
7611
7612         * src/command.c src/tables.c src/set.c src/unset.c docs/gnuplot.doc: Let
7613         command '{un}set historysize' be always available, but report a
7614         descriptive error if gnuplot has not been configured with GNU readline.
7615
7616 2005-02-17  Ethan Merritt  <merritt@u.washington.edu>
7617
7618         * term/pdf.trm: Add terminal options for monochrome and for dashed
7619         lines:
7620             set term pdf {mono|color|colour} {solid|dashed {dl dashlength}}
7621
7622         The defaults remain the same as before (color solid). The monochrome
7623         option only affects linetypes; you can still use color explicitly
7624         in filled areas or by using rgb specifications for line styles.
7625
7626         * configure.in: Check for dashed line support in pdflib.
7627
7628 2005-02-16  Harald Harders  <h.harders@tu-bs.de>
7629
7630         * term/post.trm: Patch #1122014 "Improve dashed linetypes in Postscript
7631         terminals".
7632
7633 2005-02-16  Ethan Merritt  <merritt@u.washington.edu>
7634
7635         * term/pdf.trm: Correct the driver docs to say font limitations
7636         and font installation instructions must be sought in the pdflib
7637         documention.
7638
7639 2005-02-16  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7640
7641         * src/variable.c (loadpath_handler, fontpath_handler):
7642         Re-initialize limit to NULL, too, as p reaches it.
7643
7644 2005-02-15  Ethan Merritt  <merritt@u.washington.edu>
7645
7646         * src/save.c src/save.h: New routine save_fillstyle consolidates
7647         redundant code to convert a fill_style_type into a text description.
7648
7649         * src/save.c src/save.h: New routine save_pm3dcolor consolidates
7650         redundant code to convert a colorspec struct into a text description.
7651
7652         * src/save.c (save_set_all save_textcolor) src/show.c (show_linestyle):
7653         Call shared routines rather than duplicate code in-line.
7654
7655 2005-02-14  Ethan Merritt  <merritt@u.washington.edu>
7656
7657         * term/pdf.trm (PDF_options PDF_init PDF_dot): Add terminal option
7658         {rounded|butt} exactly parallel to post.trm. The default is butt
7659         ends and mitred line joins. "rounded" switches to rounded ends and
7660         rounded joins.
7661
7662 2005-02-14  Petr Mikulik  <mikulik@physics.muni.cz>
7663
7664         * src/term.c: Added #include "getcolor.h".
7665
7666         * term/aquaterm.trm term/pdf.trm term/post.trm term/svg.trm: Removed
7667         #include "getcolor.h".
7668
7669         * term/x11.trm: Removed #include "getcolor.h", #ifdef WITH_IMAGE_BUG
7670         #include "graphics.h".
7671
7672         * term/vgagl.trm: Removed #include "driver.h", "pm3d.h", "mousecmn.h".
7673
7674 2005-02-14  Harald Harders  <h.harders@tu-bs.de>
7675
7676         * term/pslatex.trm: SourceForge patch #1121972 "Improve input encoding
7677         in epslatex terminal". Added the koi8-u encoding to epslatex. Added
7678         \inputencoding{...} to the output file. This enables the user to use
7679         different input encodings in the surrounding LaTeX file and in the plot.
7680         Added a user-friendly error message if the package graphicx.sty or
7681         graphics.sty is not loaded.
7682
7683 2005-02-13  Harald Harders  <h.harders@tu-bs.de>
7684
7685         * term/post.trm term/pslatex.trm: Clean up code in accordance with
7686         compiler warnings.
7687
7688 2005-02-13  Shigeharu Takeno  <shige@iee.niit.ac.jp>
7689
7690         * configure.in: New configuration option --enable-x11-mbfonts
7691         (enabled by default).  Interpretation of character encodings
7692         is determined at run time by the LC_CTYPE locale setting.
7693
7694         * src/gplt_x11.c: All calls to x11 font handling routines are
7695         conditionally substituted by the equivalent calls to multi-byte
7696         routines if --enable-x11-mbfonts is configured, and a multi-byte
7697         font has in fact been selected.
7698
7699         * NEWS term/x11.trm: Add documentation that describes the specification
7700         of multi-byte fonts:
7701             set term x11 font "mbfont:<primary font>;<secondary font>"
7702             set label "foo" font "mbfont:<primary font>;<secondary font>"
7703
7704 2005-02-10  Ethan Merritt  <merritt@u.washington.edu>
7705
7706         * src/graph3d.c (plot3d_lines_pm3d key_sample_line_pm3d): 
7707         If the graph specifies a solid rgb color, fall back to equivalent
7708         single-color routine.
7709
7710 2005-02-11  Petr Mikulik  <mikulik@physics.muni.cz>
7711
7712         * src/pm3d.h src/pm3d.c: New global routine is_plot_with_colorbox().
7713         New local variable plot_wants_colorbox. Color box is wanted for all draw
7714         elements using palette except those with TC_RGB.
7715
7716         * src/graphics.c src/graph3d.c: No colorbox for 2D and 3D plots with
7717         elements using "rgbcolor".
7718
7719 2005-02-10  Ethan Merritt  <merritt@u.washington.edu>
7720
7721         * src/misc.c (lp_parse): Accept full keyword "rgbcolor" for the line
7722         attribute.
7723
7724 2005-02-09  Harald Harders  <h.harders@tu-bs.de>
7725
7726         SourceForge patch #1040192 "Merge post, epslatex, pslatex, pstex
7727         terminals".
7728
7729         * NEWS demo/Makefile.am.in docs/Makefile.in docs/gnuplot.doc
7730         src/graph3d.c src/graphics.c src/makefile.all src/term.c src/term.h
7731         term/post.h term/post.trm: Miscellaneous changes.
7732
7733         * demo/epslatex.dem demo/gnuplot.cfg: New demo and its LaTeX
7734         configuration file for usage with gnuplot-generated LaTeX files
7735         (epslatex terminal with standalone option).
7736
7737         * term/pslatex.trm: Now includes code for all of the following
7738         terminals:
7739           pslatex:  LaTeX with embedded postscript
7740           pstex:    plain TeX with embedded postscript
7741           epslatex: LaTeX using \includegraphics, postscript part in an external
7742                     file
7743
7744         * term/epslatex.trm: Removed.
7745
7746         * share/: New directory.
7747
7748         * share/LaTeX/Makefile share/LaTeX/README share/LaTeX/gnuplot.cfg:
7749         New directory LaTeX/. New files for supporting the epslatex terminal.
7750
7751 2005-02-05  Ethan Merritt  <merritt@u.washington.edu>
7752
7753         * src/color.h src/save.c (save_textcolor) src/gadgets (apply_pm3dcolor)
7754         src/misc.c (lp_use_properties) docs/gnuplot.doc:
7755         New internal flag TC_LINESTYLE allows text to take its color from a
7756         line style. For example:    set label "foo" textcolor linestyle 2
7757
7758 2005-02-04  Ethan Merritt  <merritt@u.washington.edu>
7759
7760         * src/graphics.c (do_key_sample plot_boxes)
7761         src/term.c (term_apply_lp_properties):
7762         Apply linetype properties (color *AND* dot/dash/solid) before applying
7763         pm3d color, if any.
7764
7765 2005-02-02  Ethan Merritt  <merritt@u.washington.edu>
7766
7767         * src/plot3d.c (get_3ddata): Ignore blank lines in data file input to
7768         "splot with vectors".
7769
7770         * src/set.c (set_xyzlabel): Allow set label textcolor rgb <foo>.
7771
7772         * src/gplt_x11.c (display): Always initialize gc_pm3d, in case we need
7773         it to handle individual rgb colors even in the absence of a palette.
7774
7775         * src/save.c (save_textcolor) src/save.h 
7776         src/show.c (show_label show_xyzlabel): Export save_textcolor() so
7777         that various "show ...label" routines can use it also. Also fixes
7778         compile error if configured --disable-pm3d.
7779
7780 2005-02-01  Ethan Merritt  <merritt@u.washington.edu>
7781
7782         * src/graphics.c (plot_boxes): Plot with boxerrorbars and three columns
7783         of input data hit a rare code path that set the boxwidth wrong in some
7784         cases. Fixes bug #1101409.
7785
7786 2005-02-01  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7787
7788         * src/time.c (xstrftime): Shift reply range of %I and %l time
7789         formats from [0:11] to [1:12].
7790
7791         * docs/gnuplot.doc (time/date specifiers): Fix descriptions of
7792         hour format specifiers (explain 0-filled vs. non-filled default,
7793         give correct output ranges).
7794
7795 2005-02-01  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7796
7797         * src/set.c (set_separator): Replace literal TAB character in
7798         source by a \t.
7799
7800         * src/command.c (input_line, input_line_len): Renamed to
7801         gp_input_line and gp_input_line_len respectively, to avoid a
7802         conflict of input_line with a like name non-standard library
7803         function on QNX.
7804
7805         * src/command.h: Renamed declarations of these, too.
7806
7807         * all over the place: Renamed usages of these variables.  Some
7808         CodeStyle cleanups, while at it.
7809
7810 2005-01-31  Ethan Merritt  <merritt@u.washington.edu>
7811
7812          * util.c (getusername): Don't try to free a string pointer that may
7813          have been returned by getenv.  Fixes bug #1111804.
7814
7815 2005-01-27  Petr Mikulik  <mikulik@physics.muni.cz>
7816
7817         * config/config.mgw: Mingw 2.x does not HAVE_SYS_PARAM_H.
7818
7819         * src/win/wgnuplib.h: Mingw 2.x needs to #define _fstr* functions.
7820
7821 2005-01-26  Petr Mikulik  <mikulik@physics.muni.cz>
7822
7823         * demo/pm3d.dem: Remove deprecated references to "set pm3d solid" and
7824         "set pm3d transparent".
7825
7826 2005-01-26  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7827
7828         * src/win/pgnuplot.c (PostString): Fix transmission of 8-bit
7829         characters to function taking ints by cast to unsigned char.
7830
7831 2005-01-25  Ethan Merritt  <merritt@u.washington.edu>
7832
7833         * term/ai.trm (AI_reset) term/corel.trm (COREL_reset) term/epslatex.trm
7834         (EPSL_init EPSL_text): Remove extraneous % characters in strings output
7835         by fputs().
7836
7837 2005-01-24  Petr Mikulik  <mikulik@physics.muni.cz>
7838
7839         * src/command.c (save_command): Remove extraneous c_token++.
7840
7841 2005-01-20  Dietmar Warning  <warning@danalyse.de>
7842
7843         * src/gnuplot.opt: Add breaders.obj to the list.
7844
7845 2005-01-19  Dietmar Warning  <warning@danalyse.de>
7846
7847         * src/util.c: Correct the GetUserName call for windows.
7848
7849 2005-01-11  Shigeharu Takeno  <shige@iee.niit.ac.jp>
7850
7851         * term/tgif.trm: Fix two bugs related to font handling.
7852
7853 2005-01-11  Ethan Merritt  <merritt@u.washington.edu>
7854
7855         * demo/mousevariables.dem demo/keystroke.dem: Fix incorrect termination
7856         logic in the keystroke demo.
7857
7858         * src/graphics.c (boundary): Rather than turning off the key altogether
7859         if the contents seem to be too big to fit, fall back to something half
7860         way plausible and also print an warning message. Fixes (or at least
7861         addresses) bug #1058117.
7862
7863 2005-01-11  Harald Harders  <h.harders@tu-bs.de>
7864
7865         Apply updated SourceForge patch #1023783
7866
7867         * configure.in: Check for which libpdf version is present; check
7868         whether <pwd.h> is present.
7869
7870         * src/util.c src/util.h: New routine (char *) getusername() gets
7871         user name from environment or from passwd file.
7872
7873         * term/pdf.trm (PDF_init) term/post.trm (PS_init): Store username
7874         and other envelope information in the PDF dictionary structure of
7875         the output file.  New routine PS_escape_string() to ensure that 
7876         character strings entered in the PDF dictionary are legal strings.
7877
7878         * term/pdf.trm (PDF_init PDF_reset): Use either PDF_begin_document
7879         or PDF_open_file depending on which version of libpdf is available.
7880         Ditro for PDF_end_document or PDF_close.
7881
7882 2005-01-11  Harald Harders  <h.harders@tu-bs.de>
7883
7884         * src/src/set.c src/term.c src/unset.c term/post.h term/post.trm
7885         term/pslatex.trm: SF patch #1098256 "Introduce struct that takes all
7886         postscript terminal options". This patch introduces the struct
7887         ps_params_t that takes all postscript terminal options, e.g., color,
7888         blacktext, pslevel, rounded, fontsize, ... This is useful when
7889         different terminals share the same portion of code.
7890
7891 2005-01-10  Daniel Sebald  <daniel.sebald@ieee.org>
7892
7893         * src/gadgets.c src/gadgets.h src/set.c (set_margin) src/show.c
7894         (show_margin) src/unset.c (unset_margin): Specify and store plot
7895         margins as float rather than int.
7896
7897 2005-01-10  Daniel Sebald  <daniel.sebald@ieee.org>
7898
7899         * src/graphics.c demo/image.dem: Correct a problem with scaling of
7900         images from 'with image'.
7901
7902 2005-01-08  Ethan Merritt  <merritt@u.washington.edu>
7903
7904         * src/term.c (term_start_multiplot): Replace keywords "rowmajor" and
7905         "columnmajor" with "columnsfirst" and "rowsfirst", respectively.
7906
7907         * docs/gnuplot.doc: Correct the description of row and column layout
7908         'set term multiplot layout <rows>,<cols> {rowsfirst|columnsfirst}'
7909
7910 2005-01-08  Harald Harders  <h.harders@tu-bs.de>
7911
7912         * src/pm3d.c src/term.c src/term_api.h term/epslatex.trm term/post.trm
7913         term/pslatex.trm: SF patch #1098252 "Use variable gppsfile for
7914         postscript output". This patch uses the variable gppsfile (formerly
7915         postscript_gpoutfile) instead of gpoutfile for all PostScript output.
7916         This is very useful for terminals that produce two files where one of
7917         them is PostScript (for example pslatex and epslatex).
7918          
7919         * src/color.c src/pm3d.c src/term.c src/term_api.h term/epslatex.trm
7920         term/post.trm term/pslatex.trm: SF patch #1098249 "Rename
7921         postscript_gpoutfile to gppsfile". This patch renames the handler
7922         'FILE *postscript_gpoutfile' to 'gppsfile' since the old variable name
7923         is too long for more often use.
7924
7925 2005-01-05  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
7926
7927         * src/util.h (try_to_get_string): Add missing 'void' to prototype
7928         argument list.
7929
7930         * term/x11.trm: #include <sys/select.h>, if it exists.
7931
7932         * src/stdfn.h: #include <sys/param.h> before checking if PATH_MAX
7933         is defined (definition may be in there...), rather than inside the
7934         fallback definition only.
7935
7936         * term/svg.trm (SVG_init): Updated DOCTYPE name and reference to
7937         current standard: SVG 1.1. Added an XMLNS namespace declaration to
7938         satisfy requirements for XML documents.
7939
7940 2005-01-05  Bastian Maerkisch  <bmaerkisch@web.de>
7941
7942         * src/os2/gclient.c: Some more cleanup: Removed some unused variables
7943         and unused code which eliminates a lot of compiler warnings.
7944
7945 2005-01-04  Ethan Merritt  <merritt@u.washington.edu>
7946
7947         * src/term.c src/term_api.h: Instead of exporting ignore_enhanced_text
7948         from term.c as a global TBOOLEAN, provide a wrapper routine
7949         ignore_enhanced(TBOOLEAN flag);
7950
7951         * src/graphics.c (do_plot) src/graph3d.c (do_3dplot): Call new routine
7952         ignore_enhanced() rather than directly setting a variable inside term.c.
7953
7954         * src/gadgets.h: Add TBOOLEAN noenhanced flag to label_struct.
7955
7956         * docs/gnuplot.doc src/set.c (set_xyzlabel) src/save.c (save_set_all)
7957         src/show.c (show_xyzlabel): New suboption `set ... {{no}enhanced}` for
7958         plot title and axis labels, analogous to the noenhanced option for the
7959         plot key entries.  This allows, for example, using a filename with
7960         underscores as part of the plot title.
7961
7962         * src/graphics.c (do_plot) src/graph3d (do_3dplot): Disable enhanced
7963         text processing while writing out plot title or axis label text if the
7964         noenhanced flag is set in the corresponding label_struct.
7965
7966         * docs/gnuplot.doc: Correct the documentation to say
7967         'set multiplot layout <rows>,<cols>' (rows/cols were reversed in the
7968         previous version, and mis-described in the example).
7969
7970 2005-01-04  Bastian Maerkisch  <bmaerkisch@web.de>
7971
7972         * src/os2/gclient.c: Contains my attempt to implement pattern filling
7973         for the pm terminal. I gave this a bit of testing, but I have to admit
7974         that the result looks ugly together with the widelines option. But
7975         here you go anyway as 'widelines' has to be improved later anyway. It
7976         should work fine without 'widelines'...
7977
7978         * src/os2/gnupmdrv.c: Newer versions of gcc on OS/2 no longer have
7979         fcloseall(), but _fcloseall().
7980
7981         * src/os2/gclient.c src/os2/dialogs.c src/os2/print.c: Clean up by
7982         removing some unused variables and code (some put into #if 0/#endif);
7983         some minor changes to layout - this basically removes anoying warning
7984         messages during compilation.
7985
7986 2004-12-31  Ethan Merritt  <merritt@u.washington.edu>
7987
7988         * term/estimate.trm src/term.h: New pseudo-terminal driver whose sole
7989         function is to parse a string in enhanced text mode and return the
7990         number of character-widths in the resulting output text.
7991
7992         * configure.in NEWS src/term_api.h src/term.c (estimate_strlen):
7993         New routine estimate_strlen(char *text). Its default behaviour is to
7994         return strlen(text). But if the currently active terminal is in
7995         enhanced text mode, and the current plotting context does not disable
7996         enhanced text, then instead it calls the estimate.trm pseudo-terminal
7997         term->put_text(text) in order to determine the approximate width of
7998         the eventual output string.  This feature may be disabled using
7999         ./configure --disable-strlen_estimation
8000
8001         * src/graph3d.c src/graphics.c: Where strlen(text) is used to reserve
8002         space on the plot (e.g. leaving room for tic labels or key box entries)
8003         call the new routine estimate_strlen(text) instead.  This allows more
8004         accurate plot layout in enhanced text mode. The improvement is 
8005         particularly noticible if the y-axis tic format uses enhanced text mode.
8006
8007         * term/x11.trm (X11_options ENHX11_put_text): Try harder to determine
8008         what the default fontsize is so that string lengths can be estimated.
8009
8010 2004-12-30  Ethan Merritt  <merritt@u.washington.edu>
8011
8012         * src/term_api.h term/README: Add a new terminal flag bit 
8013         TERM_ENHANCED_TEXT that is set whenever the terminal is currently
8014         operating in enhanced text mode. The will allow improved estimation of
8015         text string length by the core code.
8016
8017         * aquaterm.term dumb.trm gd.trm pdf.trm pm.trm post.trm svg.trm x11.trm:
8018         Set or clear TERM_ENHANCED_TEXT flag in term->options() code
8019         that parses the "{no}enhanced" terminal option.
8020
8021 2004-12-29  Ethan Merritt  <merritt@u.washington.edu>
8022
8023         * src/mouse.c (MKSTR): Do not allow embedded newlines in the format
8024         used for tracking mouse motion via an extra status line at the bottom
8025         of the plot window. Extra newlines freeze gnuplot_x11 badly.
8026
8027 2004-12-23  Ethan Merritt  <merritt@u.washington.edu>
8028
8029         * term/ggi.trm (GGI_fillbox GGI_set_color): Implement color selection
8030         by RGB values. Implement filled boxes.  The GGI project seems moribund,
8031         so support of other new gnuplot features like polygons is unlikely.
8032
8033 2004-12-22  Ethan Merritt  <merritt@u.washington.edu>
8034
8035         * src/mouse.c: Remove unused routine event_print().
8036
8037         * src/mousecmn.h: Remove unused event types GE_stderr, GE_stdout,
8038         GE_cmd, and unused field text[100] in struct gp_event_t.
8039
8040 2004-12-21  Ethan Merritt  <merritt@u.washington.edu>
8041
8042         * term/ggi.trm (GGI_replot) src/mousecmn.h src/mouse.c (do_event):
8043         Remove the one and only instance of GE_cmd as an event type, used
8044         by ggi.trm to trigger a replot. Create new type GE_replot instead.
8045
8046         * term/ggi.trm (GGI_set_color): Convert to newer API for set_color.
8047
8048 2004-12-21  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
8049
8050         * term/emf.trm (EMF_filled_polygon): Renamed macro META_POLYGON to
8051         EMF_POLYGON, to avoid conflict with Win32 headers.
8052
8053 2004-12-21  Petr Mikulik  <mikulik@physics.muni.cz>
8054
8055         * NEWS docs/gnuplot.doc src/pm3d.h src/pm3d.c src/save.c src/set.c
8056         src/show.c: New suboptions 'set pm3d corners2color min|max'.
8057
8058 2004-12-20  Ethan Merritt  <merritt@u.washington.edu>
8059
8060         * term/fig.trm (FIG_put_text) term/gd.trm (PNG_put_text, ENHGD_FLUSH):
8061         Modify vertical centering text to match most other terminal types.
8062         This causes text rotation to occur about the vertical midpoint, as in
8063         the post, x11, pdf, and other terminals. (Bug #1086549)
8064
8065 2004-12-20  Bastian Maerkisch  <bmaerkisch@web.de>
8066
8067         * term/pm.trm (PM_set_color): Reflect recent changes of parameters in
8068         term entries.
8069
8070         * src/os2/gnupmdrv.h src/os2/gclient.c: gnupmdrv.c and gclient.c both
8071         used to define variable bWidelLines, but it should be the same one.
8072         This patch adds an 'external' declaration in gnupmdrv.h, and removes
8073         the definition from gclient.c.
8074
8075         * src/os2/gclient.c: Within GnuplotPM  "Options->Gnuplot docs...", it
8076         did not open gnuplot.inf when using NewView, a widely used view.exe
8077         replacement. Replaced the fixed sized buffer solution with code using
8078         a dynamic buffer.
8079
8080         * src/os2/gclient.c: This fixes text rotation for the pm terminal. The
8081         variable bHorz, which used to indicate horizontal text, has now been
8082         removed completely. Now pm terminal behaves similar to the postscript
8083         terminal.
8084
8085 2004-12-15  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
8086
8087         * src/parse.c (push_vars): Conditionalize definition on GP_ISVAR.
8088         (parse_primary_expression): Conditionalize use of push_vars and
8089         action PUSHV on GP_ISVAR.
8090
8091 2004-12-14  Ethan Merritt  <merritt@u.washington.edu>
8092
8093         * demo/Makefile.am.in: Add rainbow.html and pointsize.html to the
8094         target list for "make html".
8095
8096 2004-12-10  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
8097
8098         * src/command.c (update_command): Fixed handling of optional
8099         second filename argument broken during introduction of
8100         try_to_get_string().
8101
8102 2004-12-08  Shigeharu Takeno  <shige@iee.niit.ac.jp>
8103
8104         * term/tgif.trm: Update option parsing to be order-independent.
8105         Add monochrome and linewidth options.
8106
8107 2004-12-07  Ethan Merritt  <merritt@u.washington.edu>
8108
8109         * term/emf.trm: Implement term->set_color(), term->filled_polygon,
8110         and term->fillbox() for the emf terminal.  This does not provide PM3D
8111         palette support, but it does allow coloring by explicit RGB and plot 
8112         styles that use filled boxes.
8113
8114 2004-12-07  Petr Mikulik  <mikulik@physics.muni.cz>
8115
8116         * demo/pm3d.dem: Turn on colorbox in the demo of corners2color, and
8117         position it at the bottom of the page.
8118
8119 2004-12-05  Ethan Merritt  <merritt@u.washington.edu>
8120
8121         Run valgrind to find memory leaks.
8122
8123         * term/x11.trm (X11_make_palette): Free palette gradient after sending
8124         it to gnuplot_x11.  Do other drivers have similar leaks?
8125
8126         * src/set.c (set_cntrparam): Free old dynamic contour level array before
8127         getting a new one.
8128
8129         * src/set.c (set_xyzlabel): Free dynamic label string after copying it
8130         to a static label structure.
8131
8132         * src/parse.c (temp_at): Add a garbage-collection step to the 
8133         deallocation of temporary storage for expression evaluation. I wish I
8134         understood this well enough to guarantee the correctness of scavenging,
8135         but empirical tests indicate that no double-free errors are triggered.
8136
8137 2004-12-04  Ethan Merritt  <merritt@u.washington.edu>
8138
8139         Run valgrind to find codepaths that trip over uninitialized variables.
8140
8141         * src/parse.c (const_express) src/set.c (set_xyzlabel set_label):
8142         src/eval.c src/eval.h: Move set/clear of flag STRING_RESULT_ONLY up
8143         one level in the call chain.
8144
8145         * src/temp_api.h src/color.h src/graphics.c (init_histogram)
8146         src/plot2d.c (cp_alloc) src/plot3d.c (sp_alloc):
8147         More complete initialization of dynamic and gp_alloc()ed structures.
8148
8149 2004-12-03  Ethan Merritt  <merritt@u.washington.edu>
8150
8151         * src/graphics.c (xtick2d_callback ytick2d_callback): Fix bug
8152         reported by Mike Kay: if the grid was active and the key box was
8153         entirely above or to the left of the graph itself, then an extraneous
8154         grid line was drawn connecting the key box to the graph.
8155
8156         * src/set.c (set_palette): Fix bug #1077699 - parser was skipping
8157         whatever token came after  "gamma <val>".
8158
8159 2004-12-03  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
8160
8161         * term/fig.trm (FIG_set_color): Fix a C99-ism. Thanks to Shigeharu
8162         Takeno for spotting this.
8163
8164 2004-12-02  Ethan Merritt  <merritt@u.washington.edu>
8165
8166         * term/gd.trm: Keep track of current rgb values in parallel to the
8167         current linetype, since we can no longer count on regenerating the
8168         former from the latter.
8169
8170         * term/x11.trm: Add missing X resource to the table in the docs.
8171
8172         * configure.in: Remove obsolete messages relating to old png driver.
8173
8174 2004-12-01  Ethan Merritt  <merritt@u.washington.edu>
8175
8176         Add colorspec to linetype, and hence to all 2D and 3D plot elements.
8177         These changes all depend on configuration with --enable-pm3d
8178         Add support and demo example of using explicit RGB colors or gnuplot's
8179         internal pre-defined color names:
8180             set style line 1 lt rgbcolor "violet" lw 2
8181             set style line 2 lt rgbcolor "#FFA080" lw 2   # salmon pink
8182
8183         * src/term_api.h: 
8184         Add new field "struct t_colorspec pm3d_color" to lp_style_type, so that
8185         any plot element with an associated line type can use palette-based or
8186         RGB colors.
8187
8188         * src/term.c (term_apply_lp_properties):
8189         Check lp_style_type.use_palette flag, and if set apply the colorspec
8190         rather than a simple linetype color.
8191
8192         * src/misc.c (lp_parse parse_colorspec):
8193         Call parse_colorspec() as part of normal line type parsing. This allows
8194         "lt {rgbcolor 'name'} | {palette {cb <val> | frac <val> | z}}" anywhere
8195         that "lt <val>" is currently valid.
8196
8197         * src/graphics.c (do_plot plot_boxes plot_c_bars do_key_sample):
8198         Everywhere that we would normally call t->linetype(), check use_palette
8199         and instead call apply_pm3dcolor()
8200         Everywhere that we would normally call t->fillbox(), check use_palette
8201         and instead call t->filled_polygon() via new routine fill_corners()
8202
8203         * src/plot2d.c (eval_plots): Do not allow "lt palette z" in 2D plots
8204
8205         * src/save.c src/show.c: 
8206         save/show colorspec options associated with line styles and text colors
8207
8208         * src/set.c:
8209         Allow text color to use full colorspec options.
8210
8211         * src/tables.c src/tables.h: New function reverse_table_lookup() that
8212         returns the keyword associated with a table value; this is used to look
8213         up the colorname associated with an RGB value.
8214
8215         * NEWS docs/gnuplot.doc: Document new functionality and syntax.
8216
8217         * demo/colorwheel.dem:
8218         Set palette mode to standard HSV color wheel and define common colors as
8219         macros. Allows terminal-independent commands such as
8220                 plot sin(x) with lines @orange
8221
8222         * demo/rainbow.dem:
8223         Demonstrate two approaches to defining terminal-independent colors for
8224         plot elements. (1) Load 'colorwheel.dem' to create a palette from which
8225         colors can be selected. (2) Use the new colorspec type RGB to request
8226         specific named colors, as in
8227             set style line 1 lt rgbcolor "sea-green"
8228         This only works well on terminals that support full RGB color modes.
8229         Some palette-based terminals will approximate the requested color using
8230         whatever palette color is closest, but the results may not be pleasing.
8231
8232 2004-12-01  Ethan Merritt  <merritt@u.washington.edu>
8233
8234         * src/plot2d.c (eval_plots) src/plot3d.c (eval_3dplots): Add 
8235         END_OF_COMMAND check before trying to parse possible backwards
8236         compatibility options.  Fixes incorrect error message if text
8237         option parsing consumes the rest of the command line.
8238
8239 2004-11-30  Petr Mikulik  <mikulik@physics.muni.cz>
8240
8241         * term/post.trm docs/Changes.doc: Typos.
8242
8243 2004-11-29  Petr Mikulik  <mikulik@physics.muni.cz>
8244
8245         * term/pm.trm src/os2/gclient.c: Changes for the new colorspec type
8246         TC_RGB. Currently, they are dummy in gclient.c -- to be implemented.
8247
8248 2004-11-27  Ethan Merritt  <merritt@u.washington.edu>
8249
8250         * docs/gnuplot.doc docs/gnuplot.texi: Re-format a large section of text
8251         dealing with binary files.  The previous layout caused PDF output to
8252         treat the whole section as quoted monospace text, as for a code example.
8253
8254 2004-11-27  Ethan Merritt  <merritt@u.washington.edu>
8255
8256         * src/color.h: Add new colorspec type TC_RGB, allowing colors to
8257         be specified as an RGB triple stored as (RR<<16)+(GG<<8)+BB with
8258         red, green, and blue components running from 0 - 255.
8259
8260         * src/gadgets.c (apply_pm3dcolor) src/gadgets.h: Pass RGB color
8261         specifications to terminals via the new API for term->set_color().
8262
8263         * src/gplt_x11.c src/gplt_x11.h term/*.trm (set_color):
8264         Implement set color to specified RGB triple in these terminals
8265                 aquaterm gd metapost pdf post svg x11
8266         Somebody please have a look at doing the same for
8267                 cgm pstricks win
8268
8269 2004-11-26  Ethan Merritt  <merritt@u.washington.edu>
8270
8271         * src/term_api.h term/README: Change from term->set_color(double gray)
8272         to term->set_color(struct t_colorspec *colorspec).  This sets the stage
8273         for allowing color specification mechanisms other than a PM3D palette.
8274         The immediate intent is to allow direct requests for RGB color values.
8275
8276         * term/*.trm: Convert all terminal types providing set_color() to the
8277         new API. No change in terminal behavior or capabilities.
8278         Terminals affected:
8279                 aquaterm cgm fig gd metapost pdf post pslatex svg 
8280                 tgif vgagl win x11 pstricks
8281
8282         * src/color.c (set_color): This is the only routine that calls 
8283         term->set_color. Convert it to pass a colorspec pointer rather than a
8284         palette gray value.
8285
8286 2004-11-25  Ethan Merritt  <merritt@u.washington.edu>
8287
8288         * src/util3d.h: map3d_xy_double is needed independent of WITH_IMAGE.
8289
8290 2004-11-24  Ethan Merritt  <merritt@u.washington.edu>
8291
8292         src/gplt_x11.c: Set background color for pattern-fill explicitly each
8293         time.
8294
8295         term/svg.trm (SVG_GroupOpen SVG_DefineFillPattern): Allow palette colors
8296         to be used in pattern fill.
8297
8298 2004-11-23  Ethan Merritt  <merritt@u.washington.edu>
8299
8300         src/gplt_x11.c: Initialize mouse_format to null string. Fixes bug that
8301         in some circumstances the mouse position is printed as random garbage.
8302
8303 2004-11-21  Ethan Merritt  <merritt@u.washington.edu>
8304
8305         Rearrange code so that pm3d support routines are available to both 2D
8306         and 3D plots.  The addition of pm3d code to 2D plots began in portions
8307         of the WITH_IMAGE patch; remove the dependence on WITH_IMAGE to prepare
8308         for more general use of pm3d colorspecs in 2D plots.
8309         Introduce general checking for pm3d colorspecs in 2D plots. This fixes
8310         a bug that the colorbox could only be drawn for "with image" plots if
8311         the *first* plot used pm3d; subsequent plots were not checked.
8312         Also, pm3d colorspecs were already usable for text coloring in 2D, but
8313         no colorbox was drawn if they were used.  Now it is.
8314
8315         * src/color.h src/gadgets.h  : Move definition of t_colorspec to color.h
8316
8317         * src/color.h src/color.c src/graph3d.c src/graphics.c plot2d.c: 
8318         Remove #ifdef WITH_IMAGE from several code segments that are useful for
8319         plot styles other than image.
8320
8321         * src/misc.c src/set.c src/misc.h: Move parse_colorspec from set.c
8322         to misc.c and export it for use when parsing "with" options in both 
8323         2D and 3D.
8324
8325         * src/plot3d.c src/pm3d.c src/pm3d.h src/graph3d.c: 
8326         Move set_plot_with_palette and is_plot_with_palette from plot3d.c into 
8327         pm3d.c so they can be shared by 2D and 3D code.
8328
8329         * src/graphics.c: Check for is_plot_with_palette() and modify layout of
8330         2D plots to include colorbox if it returns TRUE.
8331
8332         * src/color.c src/gadgets.c src/gadgets.h src/graph3d.c src/graphics.c:
8333         Rename apply_textcolor() to be apply_pm3dcolor(), since it is usable for
8334         any plot element requiring a palette-based color.
8335
8336 2004-11-20  Ethan Merritt  <merritt@u.washington.edu>
8337
8338         * src/datafile.c (add_key_entry): Make sure all fields of newly
8339         allocated structure are initialized.
8340
8341         * src/graph3d.c (do_3dplot) src/plot3d.h: Call utility function 
8342         is_plot_with_palette rather than making plot_has_palette a global int.
8343
8344         * src/util3d.h: map3d_xy_double is needed independent of WITH_IMAGE.
8345
8346         * demo/pm3d.dem: Turn off colorbox in the demo of corners2color.
8347
8348 2004-11-13  Ethan Merritt  <merritt@u.washington.edu>
8349
8350         * src/specfun.c (f_erf f_erfc f_normal): Replace in-line rough
8351         approximation for erf() and erfc() with calls to the internal
8352         routines that compute these values more accurately. This is only
8353         relevant to platforms that do not already provide math library
8354         routines erf() and erfc(). Empirical tests show that this change
8355         decreases the error relative to the double precision library
8356         erf routine from O(10^-8) to O(10^-16).
8357         Thanks to Dietmar Warning <warning@danalyse.de>
8358
8359 2004-11-12  Ethan Merritt  <merritt@u.washington.edu>
8360
8361         * term/svg.trm (ENHsvg_writec): Escape character & to be &amp; in
8362         output stream. '<' and '&' are the only escaped characters so far,
8363         and only in enhanced text mode.
8364
8365 2004-11-12  Dietmar Warning  <warning@danalyse.de>
8366
8367         * src/specfun.c (inverse_error_func): Replace obsolete attribution of 
8368         algorithm used for this function.
8369
8370         * src/util3d.c (map_xy_double): This function is needed independent of
8371         the image code, so remove #ifdef WITH_IMAGE.
8372
8373 2004-11-11  Ethan Merritt  <merritt@u.washington.edu>
8374
8375         * demo/datastrings.dem: Add example of using a column both as a 
8376         numerical value and a string (use y value as a label).
8377
8378         * src/graphics.h: New TBOOLEAM title_is_suppressed in plot structure
8379         src/graphics.c (find_maxl_keys do_plot) 
8380         src/datafile.c (df_set_key_title) plot2d.c (cp_alloc eval_plots):
8381         Keep an explicit flag indicating whether or not the key should contain
8382         an entry for this plot.
8383
8384 2004-11-11  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
8385
8386         * docs/doc2texi.el (d2t-get-terminals): Fix search pattern for
8387         point where to insert terminal drivers after change of indentation
8388         level in gnuplot.doc.
8389
8390         * docs/Makefile.in (TERM_H): New variable, points to term.h file
8391         in the src directory.
8392         (term.h): Rule generating this file disabled.
8393         (gnuplot.html, gnuplot.info): Removed superfluous dependencies on
8394         gnuplot.doc.
8395         (gnuplot.texi): Run Emacs inside source directory --- building
8396         gnuplot.texi in an out-of-source build tree is futile, and never
8397         really worked.
8398         (doc2gih.o, doc2hlp.o, doc2ipf.o, doc2rnh.o, doc2rtf.o): Build
8399         online documentation tailored to actual program by including the
8400         real term.h, instead of a mangled copy.
8401         (BUILT_SOURCES): Removed term.h from the list.
8402
8403         * docs/gnuplot.texi: Rebuilt.
8404
8405         * docs/gnuplot.doc: Cleared some whitespace-only lines.
8406
8407 2004-11-10  Ethan Merritt  <merritt@u.washington.edu>
8408
8409         * src/stdfn.h
8410         * src/eval.c (gp_exp) src/specfun.c (f_gamma) src/standard.c (f_tanh):
8411         Rename constant MINEXP to be E_MINEXP, since this is more in line with
8412         the terminology used in standard math libraries. Only fall back to the
8413         current assumption that E_MINEXP == -88 if the build environment does
8414         not provide a definition for DBL_MIN_10_EXP, probably in <float.h>.
8415         On most machines this means that gnuplot's gamma() function should now
8416         have the same allowed input domain as exp(lgamma()).
8417
8418 2004-11-10  Petr Mikulik  <mikulik@physics.muni.cz>
8419
8420         * src/save.c: Fix y-axes reversal when saving during 'set view map'.
8421
8422 2004-11-08  Ethan Merritt  <merritt@u.washington.edu>
8423
8424         * src/term.c (do_arrow test_term): Do not attempt filled arrowheads if
8425         the current terminal does not provide term->filled_polygon(). Exercise
8426         filled arrowhead code in the 'test' command.
8427
8428         * src/graphics.c (plot_image_or_update_axes): Do not attempt to draw
8429         rotated quadrangles if the current terminal does not provide
8430         term->filled_polygon().
8431
8432         * docs/gnuplot.doc: Not all terminals support double-headed arrows.
8433
8434 2004-11-08  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
8435
8436         * src/hidden3d.c (build_networks): Fix 'with impulses' drawing
8437         style --- was off by one.
8438
8439 2004-11-07  Ethan Merritt  <merritt@u.washington.edu>
8440
8441         * src/term.c (enhanced_recursion): Always allow backslash to escape the
8442         5 special formatting characters @^_~& in postscript enhanced text mode.
8443         This breaks certain character sequences in Shift-JIS, but the 
8444         alternative makes these characters unavailable for all other encodings.
8445
8446         * src/graphics.c (plot_vectors): Fix bug which drew a head on the tail
8447         of arrows whose original heads were clipped. Bug #1062158.
8448
8449 2004-11-07  Petr Mikulik  <mikulik@physics.muni.cz>
8450
8451         * docs/gnuplot.doc: Typos.
8452
8453         * term/tgif.trm: Replace "set nomultiplot" by "unset multiplot" in the
8454         docs section.
8455
8456 2004-11-06  Ethan Merritt  <merritt@u.washington.edu>
8457
8458         String variables - command line macros
8459         --------------------------------------
8460         Command line macros are indicated by the character @ preceding a
8461         string variable. When the command line is read in, these macros are
8462         expanded by replacing the string @<varname> with the contents of the
8463         string variable <varname>. Macros can be nest up to 4 levels deep.
8464         Macros are not expanded inside single quotes or double quotes, but
8465         they are expanded inside backquotes.
8466
8467         * configure.in: --enable-macros selects #define GP_MACROS
8468
8469         * demo/macros.dem docs/gnuplot.doc: Examples and documentation.
8470
8471         * src/command.c (do_line): Call new routine string_expand() that steps
8472         through input_line, expanded macros as it goes. 
8473
8474         * src/save.c (save_variables__sub): Save STRING variables in single
8475         quotes rather than in double quotes.  That way when the saved values
8476         are loaded, no backquote substitution is triggered.
8477
8478         * src/save.c src/set.c src/show.c src/unset.c src/tables.h src/tables.c
8479         src/command.c src/command.h: Global TBOOLEAN expand_macros to turn
8480         expansion on or off via new commands '{un}set macros'.
8481
8482 2004-11-02  Ethan Merritt  <merritt@u.washington.edu>
8483
8484         * src/set.c: Use 0 rather than NULL in initializing a union, to make
8485         gcc happy.
8486
8487         * src/plot3d.c: #include "plot2d.h" so that store_label is imported.
8488
8489         * src/internal.c (sprintf_specifier): Add a useless return statement
8490         to make gcc happy.
8491
8492 2004-11-01  Daniel Sebald  <daniel.sebald@ieee.org>
8493
8494         * src/datafile.c (df_readbinary): Do not try to access Z coordinate
8495         data in 2D mode.
8496
8497 2004-10-31  Ethan Merritt  <merritt@u.washington.edu>
8498
8499         * src/datafile.c (df_readbinary): Fix incorrect indexing of 2D
8500         rotation matrix.
8501
8502         * src/mousecmn.h: Remove trailing comma from enum definition.
8503
8504         * src/color.c (cbtick_callback) src/graph3d.c (do_3dplot xtick_callback
8505         ytick_callback ztick_callback map3d_position plot3d_vectors)
8506         src/mouse.c (nearest_label_tag):
8507         DEC cc is much pickier about mixing (unsigned int) and (int) across
8508         function calls or call-backs. Clean up the parameter usage to allow
8509         compilation under DU 4.0
8510
8511         * src/internal.c (f_concatenate f_sprintf): Provide fallback for 
8512         configurations that don't support snprintf().
8513
8514 2004-10-29  Ethan Merritt  <merritt@u.washington.edu>
8515
8516         * docs/gnuplot.doc: Fix indentation level of terminal types when
8517         converted to pdf.  Add mention of string variables in the documentation
8518         for 'set label'.
8519
8520         * src/gplt_x11.c (pr_exportselection) term/x11.trm:
8521         Add a test for X resource gnuplot*exportselection and disable exporting
8522         the plot windows to the X clipboard if it is set to "off" or "false".
8523
8524         * NEWS: Catch up with recent work.
8525
8526 2004-10-29  Petr Mikulik  <mikulik@physics.muni.cz>
8527
8528         * src/term.c docs/gnuplot.doc: Reset values of 'set size' and
8529         'set origin' after 'unset multiplot' to the values as they were at
8530         'set multiplot layout'.
8531
8532 2004-10-28  Ethan Merritt  <merritt@u.washington.edu>
8533
8534         * src/datafile.c (df_open): initialize_user_spec() is needed whether or
8535         not the input mode is binary. Fixes bug reported under Windows.
8536
8537 2004-10-27  Ethan Merritt  <merritt@u.washington.edu>
8538
8539         String variables - extra features
8540         ---------------------------------
8541         Autoconversion of strings to numerical values if encountered during
8542         evaluation of a numerical expression.  ("3" + "4.5" == 7.5) is true.
8543         Autoconverion of integers to strings if encountered as an operand for
8544         string concatenation. ("file" . 4 eq "file4") is true.
8545
8546         * configure.in: GP_STRING_VARS is #defined as 2 if these extra features
8547         are desired. Defining it as 1 leaves the basic feature set enabled but
8548         disables the extra stuff.
8549
8550         * docs/gnuplot.doc src/eval.c src/eval.h src/internal.c src/standard.c:
8551         New routine pop_or_convert_from_string(), aliased to pop() during
8552         numerical evaluation. Treat INTGR operand to f_concatenate as a
8553         special case, promoting it to STRING.
8554
8555         * src/parse.c (const_express):
8556         Suppress possible autoconversion to a number if the caller specifically
8557         expects a string value to be returned.
8558
8559 2004-10-27  Petr Mikulik  <mikulik@physics.muni.cz>
8560
8561         * src/term.c docs/gnuplot.doc: New 'set multiplot layout' options
8562         'downwards' and 'upwards'.
8563
8564 2004-10-26  Ethan Merritt  <merritt@u.washington.edu>
8565
8566         * docs/gnuplot.doc: Add separate section with indexed entry for 
8567         discussion of quote marks.
8568
8569 2004-10-25  Ethan Merritt  <merritt@u.washington.edu>
8570
8571         String variables - basic functionality
8572         --------------------------------------
8573         Allow gnuplot variables to contain strings, and allow expressions
8574         to operate on strings. Provide two pre-defined string-valued functions;
8575         sprintf() is a wrapper for the the C language formatting routine of the
8576         same name, gprintf() is a wrapper for the existing gnuplot-defined
8577         format specifiers.  All changes are bracketed by #ifdef GP_STRING_VARS.
8578         Most places where gnuplot previously required a string constant will
8579         now also accept a string variable or a string-valued expression.
8580
8581         * docs/gnuplot.doc: 
8582         * src/gp_types.h: STRING variable type
8583
8584         * src/internal.c src/internal.h src/eval.c src/eval.h src/parse.c
8585         string operators (A . B) (A eq B) (A ne B) 
8586         string functions sprintf() gprintf()
8587
8588         * src/util.c (try_to_get_string) src/util.h: Modify the routine
8589         try_to_get_string to accept string variables and functions. This one
8590         place handles the syntax change for most gnuplot commands.
8591         The main exceptions are 'plot', 'splot', and 'set label', which are
8592         handled separately.
8593
8594         * src/scanner.c: accept . as a binary operator (string concatenation)
8595
8596         * src/datafile.c: evaluate string-valued functions in a 'using' spec
8597
8598         * src/mouse.c: set string variable MOUSE_CHAR when a key is pressed
8599
8600         * src/plot2d.c: accept a string variable 'plot <foo>'
8601
8602         * src/plot3d.c: accept a string variable 'splot <foo>'
8603
8604         * src/set.c: accept a string variable in 'set label <foo>'
8605
8606         * src/standard.c: int_error if a unary arithmetic operator is
8607         applied to a string.
8608
8609         * demo/mousevariables.dem demo/keystroke.dem: Demo use of MOUSE_CHAR
8610         to treat keystrokes in the plot window as strings.
8611
8612         * demo/stringvariables.dem: Demo use of constant strings or string-
8613         valued functions as plot symbols.
8614
8615 2004-10-25  Harald Harders  <h.harders@tu-bs.de>
8616
8617         * docs/gnuplot.doc: Add labels for "set term push", "set term pop".
8618         SourceForge patch #1052788.
8619
8620 2004-10-23  Ethan Merritt  <merritt@u.washington.edu>
8621
8622         * docs/gnuplot.doc: Reorganize the docs to give a separate section to
8623         the list of terminal types. This change is not visible to the internal
8624         'help' command, but improves the usability of the pdf and tex-based
8625         documentation.
8626
8627 2004-10-22  Ethan Merritt  <merritt@u.washington.edu>
8628
8629         * docs/gnuplot.doc: A very preliminary update of the "What's New"
8630         section of the docs to track changes since the version 4.0 release.
8631
8632 2004-10-21  Harald Harders  <h.harders@tu-bs.de>
8633
8634         This patch introduces the possibilty to move many kinds of texts by an
8635         offset in an arbitrary coordinate system. For example, tic marks, the 
8636         title, and labels can be moved by an offset given in 'character',
8637         'screen', 'graph', 'first', or 'second' coordinate system.
8638         SourceForge patch #993422.
8639
8640         * docs/gnuplot.doc
8641
8642         * src/axis.c (get_position get_position_default):
8643         New routine that accepts a default coordinate type when parsing offsets.
8644
8645         * src/axis.h: Add offset structure to axis tics.
8646         * src/gadgets.h: Add offset structure to text labels.
8647
8648         * src/color.c (cbtick_callback draw_color_smooth_box)
8649         * src/gadgets.c (get_offsets)
8650         * src/save.c (save_set_all save_tics)
8651         * src/set.c (set_label set_timestamp set_tic_prop set_xyzlabel 
8652                      new_text_label parse_label_options parse_histogramstyle)
8653         * src/show.c (show_label show_histogram show_xyzlabel show_ticdef)
8654         * src/unset.c (unset_tics unset_axislabel_or_title)
8655
8656 2004-10-20  Harald Harders  <h.harders@tu-bs.de>
8657
8658         Introduce a new coordinate system 'character' that uses character width
8659         and height as units. It is a 2d coordinate system similar to 'screen'.
8660         The origin is the same as for 'screen'. SourceForge patch #993411.
8661         The intended use is for setting label and text offsets in terms of 
8662         character size, and generalizing this to all places where an offset is
8663         legal.
8664
8665         * NEWS docs/gnuplot.doc:
8666         * src/axis.h src/axis.c (get_position_type) src/gadgets.h:
8667         New coordinate system "character".
8668
8669         * src/graph3d.c (get_arrow3d place_labels3d place_arrows3d): 
8670         * src/graph3d.c (map3d_getposition map3d_position):
8671         Track 3D coordinates internally as (int) rather than (unsigned int) so
8672         that out-of-bounds on the negative side can be detected. Interpret
8673         character offsets.
8674
8675         * src/save.c (save_set_all) src/show.c (show_position show_arrowstyle):
8676         * src/graphics.c (map_position_double): Interpret character offsets.
8677
8678 2004-10-20  Ethan Merritt  <merritt@u.washington.edu>
8679
8680         * src/gplt_x11.c (pr_font): Fix bug that whatever fallback font was used
8681         for an unrecognized font request, that fallback would become the default
8682         font for all future requests.
8683
8684 2004-10-19  Juergen Wieferink  <wieferink@freenet.de>
8685
8686         * src/set.c (parse_label_options): If the label has an associated point,
8687         allow its type to be specified by "linestyle <n>".
8688
8689 2004-10-19  Per Persson  <persquare@mac.com>
8690
8691         Adding enhanced text support to terminal aqua.
8692
8693         * term/aquaterm.trm (ENHAQUA_put_text, ENHAQUA_open, ENHAQUA_flush,
8694         ENHAQUA_writec): Added.
8695
8696         * docs/gnuplot.doc Add aqua to list of terminals with enhanced option.
8697
8698 2004-10-18  Volker Dobler  <v.dobler@web.de>
8699             Ethan Merritt  <merritt@u.washington.edu>
8700
8701         New plot style variant that reads individual point sizes from specified
8702         input column. Examples:
8703
8704             plot 'foo' using 1:2:3 with points pt 5 pointsize variable
8705             splot 'foo' using 1:2:3:4 with linespoints pt 5 ps variable
8706             splot 'foo' using 1:2:3:4:5 with points pt 5 ps variable lt palette
8707
8708         * NEWS docs/gnuplot.doc: Document new variant of line/point style in
8709         which the point size is variable, with the size of each point read from
8710         an extra column in the input file.
8711
8712         * demo/all.dem demo/pointsize.dem: Demo for 2D and 3D plots with 
8713         variable point size and pm3d colors.
8714
8715         * src/gp_types.h: Define storage location for point size info in
8716         struct coordinate (overload xlow).
8717
8718         * src/graph3d.c (plot3d_points plot3d_points_pm3d): Check for variable
8719         pointsize request and change point size before plotting.
8720
8721         * src/graphics.c (do_plot plot_points): Check for variable pointsize
8722         request and change point size before plotting and in plot key.
8723
8724         * src/misc.c (lp_parse): Parse "pointsize variable" in with spec.
8725
8726         * src/plot2d.c (get_data eval_plots): Allow 3 columns of input for points,
8727         with the extra column holding point size.
8728
8729         * src/plot3d.c (get_3ddata): Allow 4 columns of input for points with
8730         variable point size in 4th column, plus a possible 5th column of pm3d
8731         color information.
8732
8733         * src/save.c (save_set_all) src/show.c (show_linestyle): Print or save
8734         "pointstyle variable" characteristic of line style.
8735
8736 2004-10-18  Ethan Merritt  <merritt@u.washington.edu>
8737
8738         * term/be.trm term/cgm.trm term/emf.trm term/epslatex.trm term/fig.trm
8739         term/gd.trm term/metapost.trm term/tgif.trm term/win.trm term/x11.trm:
8740         Add a check in TERM_pointsize() so that negative point size is reset to
8741         size 1.0.  This has always been the case for the generic do_pointsize()
8742         routine in term.c, but not all of the individual terminals did likewise.
8743
8744 2004-10-17  Ethan Merritt  <merritt@u.washington.edu>
8745
8746         * src/plot2d.c (eval_plots) src/plot3d.c (eval_3dplots):
8747         More stringent syntax test for bare numbers indicating line
8748         type in backwards-compatibility mode.
8749
8750 2004-10-17  Juergen Wieferink  <wieferink@freenet.de>
8751
8752         * src/scanner.c (scanner): Terminate scan properly if an empty
8753         substitution occurs at the end of a line. bug #1045695 
8754
8755 2004-10-16  Ethan Merritt  <merritt@u.washington.edu>
8756
8757         * src/plot3d.c (get_3ddata):  Reorganize the code so that fewer
8758         assumptions are made about what the plot must be based on the
8759         number of columns, and so that the various 3D mapping modes share
8760         the interpretations of columns other than the first three.
8761
8762         src/plot3d.c (get_3ddata): Initialize variables to shut off stupid
8763         compiler warnings.
8764
8765         src/unset.c: #include hidden3d.c to pick up reset_hidden3doptions.
8766
8767 2004-10-15  Ethan Merritt  <merritt@u.washington.edu>
8768
8769         * src/save.c (save_set_all):  Do not try to save the current title and
8770         text properties of histograms.  This is not part of the permanent style.
8771         Fixes strangeness with "test palette".
8772
8773 2004-10-14  Ethan Merritt  <merritt@u.washington.edu>
8774
8775         * src/plot2d.c (get_data eval_plots): Defer adjustment of histogram 
8776         ranges until after the input file has been checked for valid data.
8777         (fixes bug #1046894)
8778
8779         * src/datafile.c (df_parse_string_field): Handle missing field in 
8780         input file more gracefully. (bug #1046894)
8781
8782         * src/graph3d.c (map3d_position_r): Remove unused variables.
8783
8784 2004-10-13  Harald Harders  <h.harders@tu-bs.de>
8785
8786         * src/graph3d.c (map3d_position_r get_arrow3d):
8787         Change the interface of the function map3d_position_r() to be similar 
8788         to map_position_r().  Now, map3d_position_r() does not need to get the 
8789         startpoint.  This will make it easier to use it for all kinds of 
8790         relative coordinates as text offsets.
8791
8792         * src/graphics.c (get_arrow):  map_position_r already handles the
8793         relative position; no need to duplicate it in get_arrow.
8794
8795         * docs/gnuplot.doc: Mention that relative coordinates in log scale
8796         imply a multiplicative rather than an additive offset.
8797
8798 2004-10-12  Ethan Merritt  <merritt@u.washington.edu>
8799
8800         * src/graphics.c (place_labels): Add a TBOOLEAN flag to indicate whether
8801         labels should be clipped against the current axis limits. Labels
8802         generated by "set label <foo>" are never clipped; labels generated by 
8803         'plot with labels' are clipped.
8804
8805         * src/graphics.c (fill_between): Improve clipping to handle 1st/2nd axes
8806         and inverted axis range.
8807
8808 2004-10-11  Petr Mikulik  <mikulik@physics.muni.cz>
8809
8810         * src/mouse.c (apply_zoom): Fix for reversed y-range in zoom by mouse
8811         and "set view map".
8812
8813         * src/graphics.c (do_plot): Better warning for trying to use pm3d in a
8814         2d plot.
8815
8816 2004-10-08  Petr Tobiska  <tobiska@ure.cas.cz>
8817
8818         * term/metapost.trm (MP_arrow): Handle double-ended arrows also.
8819
8820 2004-10-05  Ethan Merritt  <merritt@u.washington.edu>
8821
8822         * src/gplt_x11.c (pr_font): Release previous font every time a new one
8823         is requested. This feels wrong to me since we know the old font will be
8824         used again very soon, but otherwise there is a serious memory leak.
8825
8826         * src/gplt_x11.c (PaletteMake): (Daniel Sebald <daniel.sebald@ieee.org>)
8827         Fix another tiny memory leak.
8828
8829         * src/plot3d.c (get_3ddata): Add missing #ifdef EAM_DATASTRINGS.
8830
8831         * configure.in: If --disable-datastrings is selected, then turn off 
8832         histogram support also since it is crippled without the 
8833         datastrings code.
8834
8835 2004-10-05  Petr Mikulik  <mikulik@physics.muni.cz>
8836
8837         * config/config.cyg config/config.mgw config/config.os2: Added #defines
8838         EAM_DATASTRINGS and EAM_HISTOGRAMS.
8839
8840         * src/makefile.all: Added breaders.$(O) to COREOBJS.
8841
8842 2004-10-04  Ethan Merritt  <merritt@u.washington.edu>
8843
8844         * term/x11.trm (X11_graphics): Initialize font-tracking variable at the
8845         start of each plot (fixes problems seen with opening multiple plot 
8846         windows with different default fonts).
8847
8848 2004-10-04  Petr Mikulik  <mikulik@physics.muni.cz>
8849
8850         * src/gplt_x11.c (process_event): Added missing cmd_tried = 1.
8851
8852 2004-10-03  Daniel Sebald  <daniel.sebald@ieee.org>
8853
8854         * src/gplt_x11.c (delete_plot): Fix small memory leak.
8855
8856 2004-10-01  Ethan Merritt  <merritt@u.washington.edu>
8857
8858         * src/plot3d.c (get_3ddata): Allow explicit pm3d palette colors for line
8859         and point styles in non-Cartesian mapping modes. (bug #1005775)
8860
8861 2004-09-30  Ethan Merritt  <merritt@u.washington.edu>
8862
8863         * term/gd.trm: Change #ifdef GD2_VERS to #if (GD2_VERS >= 2) everywhere.
8864
8865         * term/emf.trm (EMF_set_font) term/tgif.trm (TGIF_set_font):
8866         Fix longstanding problems with the set_font routines;
8867         interpret font requests of the form ",<size>" as a request to rescale
8868         the current font to <size>.
8869
8870 2004-09-29  Ethan Merritt  <merritt@u.washington.edu>
8871
8872         * demo/all.dem:  Remove vector.dem again, since it turns out that it
8873         breaks for any terminal type whose default value of 'set output' is
8874         not the current display.
8875
8876         * demo/world2.dem: Set font explicitly to "Helvetica,7", since some
8877         terminal drivers do not like the partial font spec ",7".
8878
8879         * src/hidden3d.c (set_hidden3doptions) src/hidden3d.h 
8880         src/unset.c (reset_command): New routine reset_hidden3doptions()
8881         called by "set hidden defaults" and also by "reset".
8882
8883         * term/post.trm (PS_set_font ENHPS_set_font) term/pdf.trm (PDF_set_font)
8884         term/svg.trm (SVG_set_font): Do not allow the font to be set to "";
8885         interpret font requests of the form ",<size>" as a request to rescale
8886         the current font to <size>.
8887
8888 2004-09-29  Petr Mikulik  <mikulik@physics.muni.cz>
8889
8890         * src/datafile.c (df_show_binary): In fprintf(), use "%f" not "%lf" for
8891         doubles.
8892
8893 2004-09-27  Ethan Merritt  <merritt@u.washington.edu>
8894
8895         * demo/airfoil.dem demo/fillcrvs.dem demo/histograms.dem
8896         demo/histograms2.dem demo/spline.dem demo/world.dem:
8897         Replace all instances of outdated syntax, i.e. everything that causes
8898         errors or warnings if BACKWARDS_COMPATIBLE is not defined.
8899
8900         * src/plot2d.c (eval_plots) src/plot3d.c (eval_3dplots): Wrap the code
8901         which interprets bare line+point types with #ifdef BACKWARDS_COMPATIBLE
8902         (e.g. plot 'foo' with linespoints 3 4).
8903
8904 2004-09-27  Petr Mikulik  <mikulik@physics.muni.cz>
8905
8906         * src/os2/gclient.c: Fix typo in a #define from the previous massive
8907         whitespace changes.
8908
8909         * config/config.os2: Let #define STDC_HEADERS 1.
8910
8911 2004-09-26  Ethan Merritt  <merritt@u.washington.edu>
8912
8913         * src/plot3d.c (eval_3dplots): Fix logic of default arrow style in the
8914         case of splot with vectors.
8915
8916 2004-09-25  Ethan Merritt  <merritt@u.washington.edu>
8917
8918         * src/util3d.c src/util3d.h: Add a text_label pointer to the p_vertex
8919         structure in order to support labels in hidden3d mode.
8920
8921         * hidden3d.c (build_networks draw_vertex): Add code to handle plot style
8922         "with labels" in hidden3d mode.
8923
8924         * demo/world2.dem demo/srl.dat: New demo to show use of labels with pm3d
8925         colors and hidden3d mode.
8926
8927         * demo/all.dem demo/Makefile.am.in: Add vector.dem and world2.dem.
8928
8929 2004-09-24  Ethan Merritt  <merritt@u.washington.edu>
8930
8931         * src/graphics.c (get_offsets place_labels) src/graphics.h:
8932         Simplify place_labels by calling a new shared routine.
8933         Move the support routine get_offsets into gadgets.c as well.
8934
8935         * src/graph3d.c (plot_labels3d): Simplify place_labels3d by calling
8936         a new shared routine.
8937
8938         * src/gadgets.c (get_offsets write_label) src/gadgets.h:
8939         New routine write_label that is shared by both the 2D and 3D code.
8940
8941         * demo/fit.dem demo/vector.dem demo/histograms2.dem:
8942         Revise demo instructions slightly to work with the webify script.
8943
8944         * demo/webify.pl: Use "pause 0" in demo scripts to signal that the
8945         output file needs to be reset during web page generation.
8946
8947         * demo/Makefile.am.in: Update list of demos to include in web page
8948         generation ("make html").
8949
8950 2004-09-20  Ethan Merritt  <merritt@u.washington.edu>
8951
8952         * configure.in: --enable-with-image requires both pm3d and binary file
8953         support. Enforce this in the configure script by not allowing with-image
8954         to be enabled if the other two options have not also been enabled.
8955
8956 2004-09-21  Petr Mikulik  <mikulik@physics.muni.cz>
8957
8958         * docs/gnuplot.doc: Fix documentation for multiplot.
8959
8960         * src/term.c: Better error message for an invalid option of multiplot.
8961
8962 2004-09-20  Ethan Merritt  <merritt@u.washington.edu>
8963
8964         * docs/gnuplot.doc: Fix some minor errors that interfered with 
8965         latex processing.
8966
8967 2004-09-19  Ethan Merritt  <merritt@u.washington.edu>
8968
8969         * src/graph3d.c (do_3dplot plot3d_vectors) src/graph3d.h 
8970         src/plot3d.c (get_3ddata eval_3dplots):  Extend the plotting style
8971         "with vectors" to apply to 3D plots as well.
8972             splot 'data' using <x>:<y>:<z>:<delx>:<dely>:<delz> with vectors \
8973                   <arrowstyle>
8974         Only cartesian coordinate mapping is currently supported.
8975
8976         * docs/gnuplot.doc NEWS: Document extension to 3D.
8977
8978 2004-09-17  Harald Harders  <h.harders@tu-bs.de>
8979
8980         * term/README term/debug.trm term/gd.trm: Fix typos and add 
8981         information about enhanced text mode callback entries in TERM_TABLE.
8982
8983         * term/post.trm:  Move definition of /Rounded to the top of the
8984         prolog so that it is with the other user-editable definitions.
8985
8986 2004-09-17  Petr Mikulik  <mikulik@physics.muni.cz>
8987
8988         * NEWS docs/gnuplot.doc src/misc.c: New automatic variable $# gets
8989         expanded to number of arguments after "call <file>". SF patch #943749.
8990
8991 2004-09-16  Ethan Merritt  <merritt@u.washington.edu>
8992
8993         * src/set.c (set_timestamp set_xyzlabel) src/save.c (save_set_all)
8994         demo/contours.dem demo/surface1.dem docs/gnuplot.doc:
8995         Add keyword "offset" to commands of the form
8996             old: set xlabel "foo" -1,-1
8997             new: set xlabel "foo" offset -1,-1
8998         This is necessary to pave the way for string variables, as otherwise
8999         "set title var -1" is mis-parsed as containing the arithmetic expression
9000         (var-1). To maintain backward compatability, the keyword is optional.
9001
9002 2004-09-16  Harald Harders  <h.harders@tu-bs.de>
9003
9004         * term/post.trm (delete_ps_fontfile): Remove debugging printout line.
9005
9006 2004-09-15  Ethan Merritt  <merritt@u.washington.edu>
9007
9008         * src/plot3d.c (get_3ddata) src/graphics.c (boundary) term/x11.trm:
9009         Add #ifdefs so that ./configure --disable-pm3d will build successfully.
9010
9011         * term/fig.trm term/epslatex.trm term/pslatex.trm term/metapost.trm
9012         term/tgif.trm term/pstricks.trm:  Disentangle the ordering of #ifdefs
9013         in the TERM_TABLE entries (MOUSE is not a subset of PM3D).
9014
9015         * term/emf.trm: Remove unused label to quiet compiler warnings.
9016
9017 2004-09-15  Konstantin Korikov  <lostclus@ua.fm>
9018
9019         * NEWS docs/gnuplot.doc src/gplt_x11.c src/set.c src/term_api.h
9020         src/term.c term/post.trm: Add support for character encoding koi8-u
9021         (cyrillic koi8 for Ukrainian users).
9022         SourceForge patch #966815.
9023
9024 2004-09-14  Ethan Merritt  <merritt@u.washington.edu>
9025
9026         * demo/borders.dem demo/Makefile.am.in: Rewrite the borders demo to 
9027         terminate after 16 possible settings, to display the border setting in
9028         a label, and to execute from inside a single demo file rather than a 
9029         combination of two.  Thanks to Daniel Sebald for identifying that it
9030         needed an update.
9031
9032         * src/term.c (do_arrow): Interpret (head < 0) as "draw arrowhead only".
9033         This allows us to retrace the arrowhead in a different linestyle if
9034         necessary.
9035
9036         * term/post.trm (PS_arrow): Add a wrapper for the do_arrow() routine
9037         so that if the current linestyle is dashed we can retrace the arrowhead
9038         with a solid line. Addresses bug report #963213.
9039
9040         * term/pslatex.trm (PSLATEX_arrow): Piggyback on PS_arrow to apply
9041         the same fix for pslatex.  Any other terminals with dashed lines will
9042         have to be fixed separately.
9043
9044 2004-09-13  Daniel Sebald  <daniel.sebald@ieee.org>
9045
9046         * src/datafile.c: Rework the layout of the df_bin_default_columns
9047         array, so that the binary input code is not sensitive to the order of
9048         defining plot styles in gp_types.h.
9049
9050 2004-09-13  Ethan Merritt  <merritt@u.washington.edu>
9051
9052         * src/gplt_x11.c: Trivial cleanup to remove compiler warnings.
9053
9054         * term/post.trm: Keep track of whether or not the macro definitions
9055         required for enhanced text mode have been written to the output file
9056         yet.  If enhanced text mode is enabled after the terminal has already
9057         been initialized, make sure that the macros are added to the next
9058         output page.  This allows, for example,
9059             setenv GNUTERM post;  gnuplot all.dem > all.ps
9060         Without this fix, the output pages following the enhanced text demo
9061         are corrupted. An alternative would be to write the enhanced text
9062         macros in the %%Prolog for every PostScript output file regardless of
9063         whether enhanced text mode has been selected.
9064
9065 2004-09-11  Ethan Merritt  <merritt@u.washington.edu>
9066
9067         * src/command.c src/mouse.c src/parse.c src/parse.h: Rename utility
9068         function get_udv(char *name) to be add_udv_by_name(char *name), since
9069         this is what it really does.
9070
9071         * src/fit.c (setvar): Simplify existing code by using add_udv_by_name.
9072
9073         * src/set.c (set_termoptions): Update comment explaining this routine.
9074
9075         * src/plot3d.c (eval_3dplots): Surface plots are no longer the only
9076         plot style that can have four 'using' specs; remove the error check 
9077         that incorrectly prevents this.
9078
9079         * src/plot3d.c (get_3ddata set_plot_with_palette) 
9080         src/plot2d.h src/plot2d.c (store_label): Allow palette color options
9081         for text in "{s}plot with labels textcolor palette ...".
9082
9083         * src/set.c (parse_colorspec): If "tc palette" is specified with no
9084         further suboptions, default to "tc palette z".
9085
9086         * src/plot3d.c (get_3ddata): Allow palette color options in cylindrical
9087         and spherical coordinate modes also.
9088
9089 2004-09-09  Harald Harders  <h.harders@tu-bs.de>
9090
9091         * term/post.trm: Update the comment on plot-time evaluation of 
9092         PostScript language level support.
9093
9094 2004-09-09  Shigeharu Takeno  <shige@iee.niit.ac.jp>
9095
9096         * docs/gnuplot.doc, term/cgm.trm, term/eepic.trm, term/emf.trm,
9097         term/epslatex.trm, term/post.trm: Fix misprints in gnuplot manual (#15).
9098
9099 2004-09-07  Ethan Merritt  <merritt@u.washington.edu>
9100
9101         * src/gplt_x11.c (process_event) term/x11.trm: Provide a command line
9102         option (-ctrlq) and an X resource (gnuplor*ctrlq: true) that disable
9103         trapping the 'q' and '<space>' keystrokes in the plot window, instead
9104         trap <ctrl>q and <ctrl><space>.  This option allows the 'q' and 
9105         '<space>' keystrokes to be treated like all other keystrokes during 
9106         "pause mouse key" and other mousing operations.
9107
9108
9109 2004-09-06  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9110
9111         * configure.in (AC_PREREQ): Bumped to 2.58, to avoid problems with
9112         missing AC_HEADER_STDBOOL.
9113
9114 2004-09-06  Daniel Sebald  <daniel.sebald@ieee.org>
9115
9116         * configure.in: The --enable-image option requires general binary data
9117         file code. Ensure --disable-binary-data-file is not in the option list
9118         if only --enable-image is activated.
9119
9120 2004-09-06  Petr Mikulik  <mikulik@physics.muni.cz>
9121
9122         * config/config.cyg config/config.mgw config/config.os2: Added #defines
9123         for "with image".
9124
9125 2004-09-03  Daniel Sebald  <daniel.sebald@ieee.org>
9126
9127         * src/breaders.c src/datafile.c: Get rid of compiler warnings.
9128
9129 2004-09-03  Petr Mikulik  <mikulik@physics.muni.cz>
9130
9131         * src/datafile.c: Changed default value of datafile endianess after
9132         reset: from variable df_bin_file_endianess_reset = DF_LITTLE_ENDIAN to
9133         #define DF_BIN_FILE_ENDIANESS_RESET THIS_COMPILER_ENDIAN.
9134
9135 2004-09-03  Shigeharu Takeno  <shige@iee.niit.ac.jp>
9136
9137         * demo/image.dem: Added endian=little where necessary.
9138
9139 2004-09-02  Ethan Merritt  <merritt@u.washington.edu>
9140
9141         * demo/all.dem: Include demos for candlesticks, multiplot, and
9142         enhanced text mode in the all.dem script used by "make check".
9143
9144 2004-09-01  Ethan Merritt  <merritt@u.washington.edu>
9145
9146         * term/gd.trm (PNG_set_color PNG_image) term/pdf.trm (PDF_image)
9147         term/post.trm (PS_image): Change call from rgb255_from_gray() to
9148         rgb255maxcolors_from_gray(). Fixes color mapping with 'set palette
9149         maxcolors'.
9150
9151         * src/getcolor.c: Remove unused routine rgb255_from_gray.
9152
9153         * term/gd.trm: Add WITH_IMAGE support for gif terminal also.
9154
9155 2004-09-01  Lars Hecking  <lhecking@nmrc.ucc.ie>
9156
9157         * demo/Makefile.am.in: Add new binary demo files to Makefile.am
9158         target.
9159
9160         src/Makefile.am: Add missing binary.h to bf_test_SOURCES.
9161
9162 2004-09-01  Daniel Sebald  <daniel.sebald@ieee.org>
9163
9164         * NEWS: Updated.
9165
9166         * configure.in: Added enable and define switches to activate new
9167         portions of code:
9168           WITH_IMAGE (--enable-with-image) code for plotting images
9169           WITH_IMAGE_VERIFY_ALL_PIXEL_LOCATIONS (--enable-image-grid-verify)
9170             code for verifying every point in image grid is uniformly spaced
9171           BINARY_DATA_FILE (--enable-binary-data-file) code to allow reading
9172             general binary data files
9173           BINARY_X11_POLYGON (--enable-binary-x11-polygon) code for X11 that
9174             allows transferring polygon information as binary values rather
9175             than ASCII, to save space in plot buffers
9176
9177         * demo/all.dem: Added inclusion of image.dem.
9178
9179         * demo/asciimat.dat demo/blutux.rgb demo/demo.edf demo/scatter2.bin
9180         demo/sine.bin demo/using.bin: New datafiles required by image.dem.
9181
9182         * demo/image.dem: New demo to illustrate and test various new image
9183         and binary and matrix data file features.
9184
9185         * docs/gnuplot.doc: Added documentation for image features and general
9186         binary file syntax.  Also, removed language indicating gnuplot matrix
9187         binary is restricted to `splot`, as it now can be used for images in
9188         `plot`.
9189
9190         * src/Makefile.am: Added gplt_x11.h to gnuplot_SOURCES list and
9191         gnuplot_x11_SOURCES list.  Added bin_hook.c to gnuplot_SOURCES list and
9192         removed binary.c and binary.h from this list.
9193
9194         * src/README: Added a discussion of technical details about how the
9195         formulas for properly orienting an image and passing that to the
9196         terminal driver are derived.  They can be arcane if just looking at the
9197         code inside plot_image_or_update_axes().  Same goes for the details
9198         about sending binary data to gnuplot_x11 for images.  It requires a
9199         simple heuristic encoding scheme to avoid a few particular characters
9200         from the data stream and can appear confusing at first sight.
9201
9202         * src/bin_hook.c: A new, short file to include binary.c in the source
9203         tree if BINARY_DATA_FILE is not defined.  Otherwise, binary.c is no
9204         longer required.
9205
9206         * src/breaders.h: An example of how to read a header in a particular
9207         file format and fill in the general binary structure details.  Not
9208         completely sure just yet how this should be integrated into gnuplot.
9209
9210         * src/color.c (draw_color_smooth_box): Added an option for `plot` mode
9211         for use in images with a palette.
9212
9213         * src/color.h: Adjusted function definition for change noted above.
9214
9215         * src/command.c: Now save a new property is_cb_plot to determine if a
9216         color box can be part of the plot in question.
9217
9218         * src/command.h: Added declaration of is_cb_plot variable.
9219
9220         * src/datafile.c: Extensive additional code for interpreting general
9221         binary keyword syntax.  Changed df_readline() to df_readascii() and
9222         added a new file df_readbinary() analogous to df_readascii().  A new
9223         df_readline() chooses which of these two to utilize.  Code for reading
9224         binary and ASCII matrix format file was moved to df_readbinary().  This
9225         means other files in the source tree could be restructured so that the
9226         routine df_readline() is the only method to bring data into gnuplot.
9227
9228         * src/datafile.h: Declarations for new functions as part of code noted
9229         above.  Also, there are a few new enumerations and, most importantly,
9230         the definition for the structure containing information about general
9231         binary records.
9232
9233         * src/fit.c (fit_command): Altered df_open() argument to include the
9234         plot mode MODE_QUERY.
9235
9236         * src/getcolor.c: Reactivated rgb255_from_gray(), required for images.
9237
9238         * src/gp_types.h: Added IMAGE and RGBIMAGE to PLOT_STYLE enumeration.
9239
9240         * src/gplt_x11.c: Extensive additional code for handling images in
9241         binary data format, polygons in binary data format, and an endianess
9242         check to determine if bytes need be swapped.  A simple, short encoding
9243         scheme is used for binary data to avoid a couple special characters in
9244         the data stream.
9245
9246         * src/gplt_x11.h: A new header file to go along with gplt_x11.h
9247         containing definitions for code characters sent across pipe.  Also some
9248         definitions for translation characters in the binary encoding scheme.
9249
9250         * src/graph3d.c (do_3dplot): Added a plot_mode of MODE_SPLOT to
9251         argument of draw_color_smooth_box(), as now that can also be done for
9252         `plot`.  Also, added cases of IMAGE and RGBIMAGE to plot style switch.
9253
9254         * src/graphics.c: Added plot_image_or_update_axes(), a new image
9255         plotting routine.  The new routine is fairly long and arcane in spots.
9256         The README file contains details to clear up obscure parts.  Added the
9257         cases IMAGE and RGBIMAGE to the switch statement for plot style.  Also,
9258         there is code for making room for a color box on the plot, followed by
9259         a call to draw_color_smooth_box() where appropriate.
9260
9261         * src/graphics.h: Added definitions PLOT_IMAGE(), SPLOT_IMAGE() and
9262         UPDATE_AXES_FOR_PLOT_IMAGE() to make plot_image_or_update_axes() seem
9263         more intuitive.
9264
9265         * src/misc.c: Added 'image' and 'rgbimage' to list of plot styles in
9266         error message indicating valid styles.
9267
9268         * src/mouse.c (builtin_toggle_log): For plots having a color box
9269         property, allow changing the color box to logarithmic scale.
9270
9271         * src/plot2d.c: Many small alterations to case statements, etc. to
9272         integrate IMAGE and RGBIMAGE plot styles.  Also, added MODE_PLOT to
9273         df_open() argument list for binary data files.
9274
9275         * src/plot3d.c: Similar to plot2d.c, many little changes made to
9276         incorporate IMAGE and RGBIMAGE plot styles.  Also, for general binary
9277         there is no longer need for df_3dmatrix(), so that call was removed.
9278         Added MODE_SPLOT to argument list of df_open().
9279
9280         * src/save.c (save_data_func_style): Write `image` or `rgbimage` to
9281         file if appropriate plot style.
9282
9283         * src/set.c (set_command/set_palette_file): Added call to routine
9284         setting defaults for binary data files if `binary` is specified as
9285         part of `set` command. / Added MODE_QUERY to list of arguments for
9286         df_open().
9287
9288         * src/show.c (show_datafile): Now show information about binary data
9289         file settings and details about binary variable sizes in bytes for the
9290         compiler under which gnuplot was built.
9291
9292         * src/tables.c (show_style_tbl): Added `image` and `rgbimage` to table.
9293
9294         * src/term_api.h (TERMENTRY): Added image() prototype function to
9295         TERMENTRY structure as well as an enumeration for image type as an
9296         argument to image() routine.
9297
9298         * src/unset.c (unset_command/reset_command): Added call to routine that
9299         clears the binary data file record information.
9300
9301         * src/util3d.c: Added a routine map3d_xy_double() to retain more
9302         accurate coordinates necessary for checking uniformity of the image
9303         grid via hyperplane concepts.  It is repetition of existing code,
9304         but there is a note and define switch for code-reuse.
9305
9306         * src/util3d.h: Added declaration for map3d_xy_double().
9307
9308         * term/README: Added note about how to properly use image() terminal
9309         function.
9310
9311         * term/aquaterm.trm: Per Persson added an implementation of the image()
9312         terminal function, AQUA_image().
9313
9314         * term/dumb.trm: Ethan Merritt added a space filler for the image()
9315         terminal function location of TERM_TABLE.
9316
9317         * term/epslatex.term: Added PS_image() to structure for image() in
9318         TERM_TABLE.  PS_image() is in post.trm.
9319
9320         * term/gd.trm: Ethan Merritt added a routine PNG_image() for the
9321         TERM_TABLE entry of image().  Also, a supporting routine PNG_set_color
9322         was created.
9323
9324         * term/pdf.trm: Ethan Merritt added a routine PDF_image() and entry
9325         into the TERM_TABLE for image support for PDF files.
9326
9327         * term/post.trm: Added a routine PS_image() and appropriate entry in
9328         the TERM_TABLE for image support in PostScript files.  There is also a
9329         supporting routine PS_encode85() for encoding binary image data in
9330         ASCII85 data format.
9331
9332         * term/pslatex.trm: Added PSLATEX_image() to structure for image() in
9333         TERM_TABLE.  It uses a simple call to PS_image(), which is in post.trm.
9334
9335         * term/svg.trm: Added space filler in TERM_TABLE for image() function.
9336
9337         * term/x11.trm: Added X11_image() function and entry in TERM_TABLE.
9338         The new image routine contains code for a simple, heuristic encoding
9339         scheme to prevent a couple specific bytes from being in the image data
9340         stream.  Similarly, X11_filled_polygon() and X11_set_color() were
9341         altered to use the same scheme to reduce the amount of characters
9342         inside the plot buffer.
9343
9344 2004-08-27  Per Persson  <persquare@mac.com>
9345
9346         * src/term.c (init_terminal): Make aqua the default terminal on
9347         Mac OS X if AquaTerm is installed.
9348
9349 2004-08-27  Ethan Merritt  <merritt@u.washington.edu>
9350
9351         * term/gd.trm (PNG_vector): More specific test for libgd support of
9352         antialiasing.  Versions 2.0.0 -> 2.0.11 were not correctly handled by
9353         the previous test.
9354
9355 2004-08-25  Ethan Merritt  <merritt@u.washington.edu>
9356
9357         * src/plot.c (main): Call term->options() on entry if the default
9358         terminal type is png, jpeg, or tgif.  Without this, setting GNUTERM
9359         to this driver type causes a segfault due to incomplete initialization
9360         of the driver data structures.  I believe this call to term->options()
9361         would be OK for all other drivers as well, but to be on the safe side
9362         I added it only for the drivers I know will segfault without it.
9363
9364         * term/gd.trm: New option to generate truecolor png images.
9365             set term png .. {{no}truecolor} ..
9366
9367         * term/gd.trm (PNG_vector): Use anti-aliasing for vectors if possible.
9368         This does not affect palette-based PNG images, so far as I can tell,
9369         but does work for both JPEG and TrueColor PNG images.
9370
9371 2004-08-25  Per Persson  <persquare@mac.com>
9372
9373         * term/aquaterm.trm (AQUA_options): make options order-independent;
9374         replace isstring+quote_str with try_to_get_string();
9375         allow "font" as a synomym for "fname".
9376
9377 2004-08-23  Ethan Merritt  <merritt@u.washington.edu>
9378
9379         * term/xlib.trm (Xlib_text): Leave output file open so that it is
9380         possible to plot multiple frames without another 'set term xlib'.
9381
9382         * svg.trm (SVG_options): allow "font" as a synonym for "fname";
9383         replace isstring+quote_str with try_to_get_string();
9384         new option "linewidth <n>".
9385
9386         * pdf.trm (PDF_options): make options order-independent;
9387         replace isstring+quote_str with try_to_get_string();
9388         allow "font" as a synomym for "fname";
9389         new option "linewidth <n>".
9390
9391         * post.trm (PS_options): allow "font" as a synonym for "fname"
9392
9393         * fig.trm (FIG_options): allow "linewidth" as a synonym for "thickness".
9394
9395 2004-08-23  Shigeharu Takeno  <shige@iee.niit.ac.jp>
9396
9397         * docs/gnuplot.doc: Fix misprints in gnuplot manual (#14).
9398
9399 2004-08-20  Ethan Merritt  <merritt@u.washington.edu>
9400
9401         * src/set.c (set_termoptions):  Only call term->options for
9402         terminals that actually support the option in question.
9403
9404         * src/term.c (write_multiline) term/driver.h: Remove unused 
9405         function set_font_null; instead mark lack of font support by 
9406         initializing this TERM_TABLE entry to NULL.  Fixes segfault
9407         if font is checked before terminal is initialized, and allows
9408         non-destructive test of font support.
9409
9410 2004-08-20  Ethan Merritt  <merritt@u.washington.edu>
9411
9412         * src/set.c (set_termoptions):  Quietly ignore the command if there
9413         is no current terminal.
9414
9415 2004-08-19  Ethan Merritt  <merritt@u.washington.edu>
9416
9417         * src/set.c (set_termoptions):  Fill in basic implementation of this
9418         function that allows changing one characteristic of the current 
9419         terminal. So far the only allowed changes are the default font and
9420         {no}enhanced text mode.
9421
9422         * demo/enhancedtext.dem:  Use 'set termoption enhanced' (new command)
9423         to force enhanced text mode regardless of current terminal type.
9424
9425         * docs/gnuplot.doc:  Document 'set termoption <foo>'.
9426
9427         * NEWS:  Update NEWS file to cover post-4.0 development work.
9428
9429 2004-08-18  Volker Dobler  <v.dobler@web.de>
9430
9431         * src/term.c (term_end_plot term_start_multiplot term_end_multiplot):
9432         Implement auto-layout of multiplots with specified number of rows
9433         and columns.
9434
9435         * docs/gnuplot.doc demo/layout.dem:  Document and illustrate use 
9436         of 'set multiplot layout'.
9437
9438 2004-08-18  Ethan Merritt  <merritt@u.washington.edu>
9439
9440         * term/svg.trm: More consistent handling of default background and font.
9441
9442 2004-08-17  Ethan Merritt  <merritt@u.washington.edu>
9443
9444         * src/eval.c (real imag magnitude angle):  Move error message handling
9445         into default case of switch statements (prevents compiler warnings).
9446
9447         * src/plot2d.c (eval_plots) src/graphics.c (init_histogram):
9448         Replace instance of isstring + quote_str with try_to_get_string().
9449         Make histogram_title a dynamically allocated string rather than a fixed
9450         length char constant. 
9451
9452 2004-08-15  Ethan Merritt  <merritt@u.washington.edu>
9453
9454         * demo/histograms.dem: Revise bmargin settings to work with the revised
9455         bmargin handling in graphics.c (2004-07-25).
9456
9457         * src/plot2d.c (eval_plots): Fixed bug in "newhistogram 'title' ..."
9458         that caused the title to be ignored if there were no other options
9459         specified.
9460
9461 2004-08-13  Shigeharu Takeno  <shige@iee.niit.ac.jp>
9462
9463         * src/term.c (enhanced_recursion): Pass unescaped backslash character
9464         through to PostScript output in enhanced text mode. This is necessary
9465         for Shift-JIS character encoding to work in enhanced mode (the non-
9466         enhanced mode already does this). Bug report #998479.
9467
9468 2004-08-13  Ethan Merritt  <merritt@u.washington.edu>
9469
9470         * docs/gnuplot.doc:  Re-word the filledcurves section according to
9471         suggestions from Petr Mikulik.
9472
9473         * term/post.trm:  Rename new option once again: set term post {level1}
9474         (naming history: nolevel2 -> ai -> level1). Audit code to confirm that
9475         in fact it excutes only commands required by PostScript Level 1.
9476
9477         * src/save.c (save_tics) src/show.c (show_tics): Save tic level for 
9478         each explicit user-added tic. Fixes bug #1008869.
9479
9480 2004-08-12  Ethan Merritt  <merritt@u.washington.edu>
9481
9482         * term/post.trm: Rename 'nolevel2' option to 'ai', since its primary
9483         use may be to generate output compatible with Adobe Illustrator.
9484
9485 2004-08-11  Ethan Merritt  <merritt@u.washington.edu>
9486
9487         * src/gplt_x11.c (exec_cmd): Set line properties to CapRound, JoinRound
9488         while drawing plot symbols. This works around a very odd bug that
9489         causes the symbols to be drawn incorrectly for some X-server settings.
9490         Also modify plot symbol code so that the symbols are always drawn with
9491         a 1:1 aspect ratio (crosses always fit in a square) rather than 
9492         tracking the aspect ratio of the current plot window.
9493
9494 2004-08-10  Ethan Merritt  <merritt@u.washington.edu>
9495
9496         * src/set.c (parse_colorspec): Allow people to set the text color
9497         to background (tc lt -2) if they really want to.
9498
9499 2004-08-09  Ethan Merritt  <merritt@u.washington.edu>
9500
9501         * src/command.c: Remove unused prototype.
9502
9503         * src/getcolor.c: Conditionally remove unused prototype during 
9504         compilation of gnuplot_x11.
9505
9506         * src/plot2d.c (eval_plots) src/plot3d.c (eval_3dplots)
9507         src/set.c (set_tic_prop): Continue replacement of isstring +
9508         m_quote_capture with try_to_get_string().
9509
9510         * src/command.c (history_command): Code cleanup; convert to use
9511         try_to_get_string(). Code is still full of little memory leaks.
9512
9513         * term/post.trm: Fix '%' characters in output format.
9514
9515 2004-08-08  Ethan Merritt  <merritt@u.washington.edu>
9516
9517         * src/util.c src/util.h: New routine try_to_get_string() that combines 
9518         isstring() and m_quote_capture(). The intent is to switch call sites
9519         over to using this new routine, and then extend it to handle string
9520         variables as well as quoted inline string constants.
9521
9522         * src/contour.h: Revised declaration of contour_format[].
9523
9524         * src/set.c src/command.c: Begin wholesale replacement of isstring()
9525         and m_quote_capture/quote_string with new routine try_to_get_string().
9526
9527 2004-08-07  Ethan Merritt  <merritt@u.washington.edu>
9528
9529         * src/set.c (set_print set_output):  Do not chop whitespace from the
9530         front of input string; it causes a segfault when the string is freed.
9531         If we really need to strip whitespace from filenames, it should be done
9532         in a routine shared by all callers.
9533
9534 2004-08-06  Ethan Merritt  <merritt@u.washington.edu>
9535
9536         * term/graphics.c (place_arrows): Restore default text color after
9537         drawing all the arrows. Fixes bug #1004765.
9538
9539 2004-08-02  Ethan Merritt  <merritt@u.washington.edu>
9540
9541         * term/gd.trm src/term.h configure.in src/show.c (show_version):
9542         GIF support is back in libgd as of version 2.0.28 (July 2004).
9543         At last we can use the same driver for png, gif, and jpeg.
9544
9545         * term/gif.trm term/png.trm:  Remove these old drivers.
9546
9547         * src/makefile.all docs/Makefile.in: And remove them as make targets.
9548
9549         * src/command.h src/command.c (load_command): Remove macro that was
9550         used in only one place; clean up code order as prep for applying
9551         string variable patches.
9552
9553 2004-08-01  Ethan Merritt  <merritt@u.washington.edu>
9554             Harald Harders  <h.harders@tu-bs.de>
9555
9556         * term/post.trm: Introduce a boolean value PSLevel2 into the PostScript
9557         prolog, and use it to determine whether pattern-fill is defined using
9558         PostScript Level 2 primitives or via a Level 1 solid fill. Introduce a
9559         corresponding option 'set term post ... {no}level2'.  Setting level2
9560         to false either via 'set term' or by editing the output PostScript file
9561         accommodates older printers and older versions of Adobe Illustrator.
9562
9563 2004-07-31  Harald Harders  <h.harders@tu-bs.de>
9564
9565         * term/post.trm (PS_common_init PS_put_text ENHPS_put_text):
9566         Check for black text only option in the PostScript code itself, 
9567         rather than at the time the plot is generated. This allows you to
9568         change your mind later by editing one line in the PostScript file.
9569
9570 2004-07-30  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9571
9572         * src/show.c (show_key): Fix memory leak by making the variable in
9573         question a local to the switch case that uses it.
9574         (show_styles): Remove const-ness modifying cast.
9575
9576         * src/save.c (save_data_func_style): Marked pointer argument
9577         'which' as const.
9578
9579         * src/save.h (save_data_func_style): Prototype updated
9580         accordingly.
9581
9582 2004-07-29  Ethan Merritt  <merritt@u.washington.edu>
9583
9584         * docs/gnuplot.doc: Fix the alphabetical order of plot style
9585         doc sections.
9586
9587 2004-07-29  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9588
9589         * src/util.c (PRINT_SPACES_UNDER_PROMPT): Protect against
9590         NULL prompt.
9591
9592 2004-07-27  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9593
9594         Bugfix: caret position of error messages in multiplot modes was
9595         wrong.
9596
9597         * src/util.c (current_prompt): New variable holding the currently
9598         used prompt string.
9599         (PRINT_SPACES_UNDER_PROMPT): Use current_prompt instead of global
9600         PROMPT macro.  Use a pointer loop instead of a counter.
9601         (PRINT_SPACES_UNDER_PROMPT, PRINT_SPACES_UPTO_TOKEN): Enclosed
9602         macro body in do .. while(0).
9603         (os_error, int_error, int_warn): Use current_prompt instead of
9604         global macro PROMPT.
9605
9606         * src/util.h (current_prompt): Declare.
9607
9608         * src/command.h (PROMPT): Moved this global macro into command.c.
9609
9610         * src/command.c (PROMPT): Moved macro to here.
9611         (read_line) [VMS]: Update new global variable current_prompt.
9612         (read_line) [!VMS]: Likewise.
9613
9614 2004-07-25  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9615
9616         Code style changes: get rid of register keywords. Don't put
9617         parens around simple variables or term->element names.
9618
9619         * src/graphics.c (boundary): If bmargin was set by user, key below
9620         should not modify ybot.  Reindented.
9621
9622         (key_cols): Made local to boundary(), the only function using it.
9623
9624 2004-07-24  Ethan Merritt  <merritt@u.washington.edu>
9625
9626         * src/parse.c (cleanup_udvlist): Fix memory leak; if udv structure
9627         is freed, free its dynamically allocated name also.
9628
9629         * src/command.c (print_set_output): Fix memory leak; free old 
9630         filename before setting a new one.
9631
9632         * src/plot3d.c: Remove unnecessary #include "plot2d.h".
9633
9634 2004-07-22  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9635
9636         * src/util.h (os_error, int_error, int_warn, graph_error):
9637         Reverted change to prototypes for non-ANSI case back from (void)
9638         to ().
9639
9640         * src/fit.c (Dblfn): Likewise.
9641
9642 2004-07-21  Ethan Merritt  <merritt@u.washington.edu>
9643
9644         * src/graphics.c (plot_bars plot_betweencurves): If the current
9645         terminal does not support filled_polygons, then fall back to
9646         yerrorbars plot style as per the documentation.
9647
9648 2004-07-21  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9649
9650         * term/post.trm (PS_make_header): Moved prototype into PM3D-only
9651         section.
9652
9653 2004-07-21  Lars Hecking  <lhecking@nmrc.ucc.ie>
9654
9655         * demo/Makefile.am.in: Add labelplot.pdb and nearmap.csv to
9656         Makefile.am target.
9657
9658 2004-07-19  Ethan Merritt  <merritt@u.washington.edu>
9659
9660         * src/graphics.c (do_plot): Write the key titles using 
9661         write_multiline() rather than calling term->put_text() directly.
9662
9663         * src/set.c (set_key): Fix order-dependence of 'set key' command.
9664
9665 2004-07-18  Ethan Merritt  <merritt@u.washington.edu>
9666
9667         * term/pdf.trm: Update "Creator: " field to report version 4.1
9668
9669         * term/post.trm: Petr's optimized format for solid pm3d quadrangles
9670         can be generated even outside the pm3d code, so the \h macro it uses
9671         must be defined in the header regardless of whether pm3d is in use.
9672
9673 2004-07-17  Ethan Merritt  <merritt@u.washington.edu>
9674
9675         * term/post.trm (PS_filled_polygon): Remove extraneous gsave
9676         introduced by previous patch, which fixes the observed slowdown.
9677
9678 2004-07-16  Ethan Merritt  <merritt@u.washington.edu>
9679
9680         * term/post.trm (PS_filled_polygon): The polygon fill code was
9681         mis-nesting gsave/grestore pairs, leading to several rather odd
9682         results. Fixes bug #992565 and also the loss of color information
9683         in pattern-filled fillcurves.
9684
9685         * term/post.trm (PS_filled_polygon): Restore Petr's preferred
9686         compact format for the quadrangles that make up a pm3d surface,
9687         and add a gsave/grestore pair around the fill command. Fixes the
9688         moiré effect observed in ghostscript/gv with antialiasing enabled.
9689         Downside: takes longer to render; noticeable on a slow machine.
9690
9691 2004-07-15  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9692
9693         * term/fig.trm (FIG_arrow): Use actual linetype variables rather
9694         than those in FIG_line --- those are only set by FIG_vector, which
9695         isn't being called by FIG_arrow.
9696
9697 2004-07-13  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9698
9699         * src/show.c (show_version): Removed text about backwards
9700         compatibility of pre-4.0 syntax from startup message.
9701
9702         * term/x11.trm (transmit_gradient): Made static.  Missing
9703         prototype added.
9704
9705         * term/post.trm: General CodeStyle cleanup.
9706         (ps_fontfile_def): Made static.
9707         (PS_make_header): made static.
9708
9709         * term/gd.trm (png_smooth_color): Made static.
9710
9711         * src/variable.c (fontpath_tbl): All 5 instances made static.
9712
9713         * src/util.h (chr_in_str): Unused, prototype commented out.
9714
9715         * src/util.c (chr_in_str): Unused, commented out.
9716
9717         * src/term_api.h (change_term): Removed prototype from here.
9718
9719         * src/term.c (enhanced_recursion): Made static.
9720         (change_term): Made static. Prototype moved here from term_api.h.
9721         (term_count): Unused, commented out.  Removed GP_INLINE flag.
9722
9723         * src/specfun.c (merror, erf): Made static.
9724
9725         * src/set.c (pm3d_last_set_palette_mode): Made static.
9726         (parse_histogramstyle): Made static.
9727
9728         * src/save.h: Added missing #include "axis.h".
9729
9730         * src/save.c: Moved #include "axis.h" to header.
9731
9732         * src/plot2d.c (histogram_range_fiddling): Made static.
9733
9734         * src/mouse.c (usual_special_keys): Made static.
9735
9736         * src/misc.c (recursivefullname): Added missing prototypes.
9737         (arrow_use_properties): Made static. Moved prototype here, from
9738         misc.h.
9739
9740         * src/graphics.c (place_histogram_titles, style_from_fill): Made
9741         static.
9742
9743         * src/gplt_x11.c (process_configure_notify_event): Added missing
9744         prototype.
9745         (getMultiTabConsoleSwitchCommand): Fixed used of __PROTO() macro
9746         in prototype.
9747
9748         * src/getcolor.h: Added missing #include "color.h".
9749         (color_components_from_gray, calculate_color_from_rgb_formulae,
9750         color_to_str, str_to_color, rgb255_from_gray): Removed prototypes.
9751
9752         * src/getcolor.c: Removed #include "color.h" --- done in
9753         getcolor.h now.  Massive reindentation and CodeStyle cleanup.
9754         (color_components_from_gray, color_to_str, str_to_color): Made
9755         static.  Prototypes moved in here, from getcolor.h.
9756         (calculate_color_from_formulae): Added missing prototype.
9757         (rgb255_from_gray): Unused, commented out.
9758
9759         * src/gadgets.h (suppressMove):  Unused, commented out.
9760
9761         * src/gadgets.c (suppressMove): Unused, commented out.
9762         (draw_clip_line): Usage of suppressMove commented out.
9763
9764         * src.fit.c(log_axis_restriction): Added missing prototype.
9765
9766         * src/datafile.c (df_no_tic_specsm, df_column,
9767         df_parse_string_field): Made static.
9768
9769         * src/command.c (capture_filename_and_pfopen): Added missing
9770         prototype.
9771
9772 2004-07-10  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9773
9774         * src/unset.c (unset_mtics): Renamed to unset_minitics, for
9775         clarity.
9776         (unset_month_day_tics): New function, to implement 'unset xmtics'
9777         and friends.
9778         (unset_command): Change all calls of unset_mtics to the new name.
9779         Implement previously missing 'unset xmtics' and friends by calling
9780         new function.
9781
9782 2004-07-09  Ethan Merritt  <merritt@u.washington.edu>
9783
9784         * src/util.c (parse_esc): Limit size of octal constants to 3 chars,
9785         possibly with a leading 0. This prevents consuming additional 
9786         numerical characters from input stream.
9787
9788 2004-07-08  Ethan Merritt  <merritt@u.washington.edu>
9789
9790         * src/gplt_x11.c (pr_font): Before falling back all the way to a fixed
9791         width font, try two common scalable fonts (helvetica, arial) as a last
9792         resort. Fixes bug #963211 on systems with either of these fonts.
9793
9794         * src/gplt_x11.c (exec_cmd)  term/gd.trm (PNG_point): Apply current
9795         linewidth to point symbols.
9796
9797         * src/misc.c (get_style): Add new styles 'labels' and 'histograms' to
9798         the error message listing possible styles.
9799
9800         * configure.in: Make --enable-histograms the default.
9801
9802         * demo/all.dem: Add fillbetween, datastrings, and histograms demos.
9803
9804 2004-07-08  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9805
9806         * term/pdf.trm (PDF_init): Call PDF_open_file() instead of
9807         no longer existing function PDF_open_fp().
9808
9809         * demo/datastrings.dem, demo/starmap.dem: Replaced Windows-only
9810         font name Arial by Helvetica.
9811
9812         * docs/gnuplot.doc: Remove whitespace-only lines.
9813         (contour): Remove outdated info on limited number of contour
9814         lines.
9815
9816 2004-07-08  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9817
9818         Integrated SF patch #976546 by Stephane Barbaray, with some
9819         additional changes by me.
9820
9821         * term/emf.trm: Reindented.  Ancient hacks for NeXT and <assert.h>
9822         purged.
9823         (EMF_PX2HM): Changed to 26.37.
9824         (EMF_HCHAR, EMF_VCHAR): Changed by factors 0.6 and 1.3,
9825         respectively.
9826         (EMF_set_font): Multiply recomputed values for h_char and v_char
9827         by 0.6 and 1.3, respectively.
9828         (EMF_setfont): Output correct font struct size with some fields
9829         previously missing.
9830         (EMF_graphics): Divide by EMF_PX2HM instead of 20.  Make reference
9831         device 1024x768 pixels, 270x200 mm.
9832         (EMF_put_text): Use ExtTextOutA instead of ExtTextOutW, include
9833         array of offsets
9834         (EMF_point): Disable special treatment of negative point types,
9835         i.e. dots --- why?
9836         (EMF_set_pointsize): Don't divide base size by 2.
9837
9838 2004-07-07  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9839
9840         * src/win/wtext.c (WndTextProc): Fix bug introduced during
9841         ANSI-fication operation.
9842
9843 2004-07-05  Ethan Merritt  <merritt@u.washington.edu>
9844
9845         * src/gplt_x11.c: Rework event-handling subroutines so that the
9846         intermediate window resize and redraw events are skipped if possible.
9847         This reduces the hysteresis when the window is resized by dragging.
9848         Patch by Jay Painter <jpaint@u.washington.edu>.
9849
9850 2004-07-05  Ethan Merritt  <merritt@u.washington.edu>
9851
9852         * src/graph3d.c (place_labels3d place_arrows3d get_arrow3d): Test for
9853         wrap-around of negative coordinates when converted to unsigned screen
9854         coordinates by map3d_position. If wrap-around has occurred, then skip
9855         this label or arrow when drawing the 3D plot. This really should be a
9856         general test for out-of-bounds, but the simple test at least catches
9857         some potentially fatal errors that have already happened.
9858
9859 2004-07-04  Ethan Merritt  <merritt@u.washington.edu>
9860
9861         * configure.in: --enable-histograms
9862
9863         * demo/histograms.dem demo/histograms2.dem demo/immigration.dat:
9864         Demonstration files for 'plot with histograms'
9865
9866         * docs/gnuplot.doc: Documentation for 'plot with histograms'.
9867
9868         * src/datafile.c src/datafile.h src/gadgets.c src/gadgets.h
9869         src/gp_types.h src/graph3d.c src/graphics.c src/graphics.h
9870         src/plot2d.c src/save.c src/set.c src/show.c src/tables.c
9871         src/tables.h src/unset.c:  Integrate SourceForge patchset #606169.
9872
9873         New plot style "with histograms" produces a bar chart from a sequence
9874         of data columns in parallel. Each element of the `plot` command must
9875         specify a single input data source (e.g. one column of the input file),
9876         possibly with associated tic values or key titles.  Three styles of
9877         histogram layout are currently supported. 
9878              set style histogram clustered {gap <gapsize>}
9879              set style histogram rowstacked
9880              set style histogram columnstacked
9881
9882 2004-07-04  Ethan Merritt  <merritt@u.washington.edu>
9883
9884         * src/color.h src/plot2d.c (get_data) src/plot3d.c (get_3ddata)
9885         src/save.c (save_set_all) graphics.c (bound_intersect)
9886         term/cgm.trm term/pdf.trm term/svg.trm:
9887         Add #ifdef PM3D where appropriate to allow building without PM3D.
9888
9889         * src/gp_types.h: This patch starts to make term->filled_polygon
9890         and filledcurves independent of PM3D.
9891
9892         * src/term.c (test_term): Fix broken test of filled_polygon.
9893
9894         * src/graphics.c (plot_betweencurves, fill_between, bound_intersect):
9895         ANSIfication of function definitions.
9896
9897 2004-07-04  Hans-Bernhard Broeker  <broeker@accip02.physik.rwth-aachen.de>
9898
9899         * src/set.c (set_arrow): Fix parsing of 'rto' vs. 'to'.  Thanks to
9900         Shigeharu Takeno for spotting this.
9901
9902 2004-07-03  Ethan Merritt  <merritt@u.washington.edu>
9903
9904         * configure.in: --disable-datastrings
9905
9906         * demo/ctg-y2.dat demo/datastrings.dem demo/labelplot.pdb
9907         demo/nearmap.csv demo/starmap.dem demo/table.dat:
9908         Various demos for 'plot with labels' and for reading axis tic labels
9909         and plot labels from a data file.
9910
9911         * docs/gnuplot.doc: Documentation for 'plot with labels'
9912         and for reading tic and plot labels from a data file.
9913
9914         * src/axis.c src/axis.h src/datafile.c src/datafile.h
9915         src/gadgets.c src/gadgets.h src/gp_types.h src/graph3d.c
9916         src/graph3d.h src/graphics.c src/graphics.h src/plot2d.c
9917         src/plot2d.h src/plot3d.c src/save.c src/set.c src/setshow.h
9918         src/show.c src/tables.c src/util.c src/util.h:
9919         Integrate the "datastrings" patchset (SourceForge #595850). 
9920
9921         New plot style "with labels" will read a string, possibly delimited
9922         by quotes, from the data file and place it at the x, y, {z} 
9923         coordinates specified. E.g.:
9924             plot 'datafile' using 1:2:3 with labels 
9925             splot 'datafile' using 7:8:9:4 with labels
9926
9927         New internal functions specific to the 'using' option that specify
9928         that string data from a datafile column is to be used for tic labels,
9929         or that string data from a datafile row is to be used for plot key
9930         titles. E.g.:
9931             plot '-' using 0:2:xticlabels(1) title 2 with boxes
9932             xxx  "2001"
9933             Jan   123
9934             Feb   456
9935             Mar    78
9936             e
9937         This will plot a histogram with each an x-axis tic label under
9938         each box: "Jan", "Feb" etc.  The plot key will list the plot with
9939         title "2001".
9940
9941 2004-07-02  Ethan Merritt  <merritt@u.washington.edu>
9942
9943         * gnuplot/src/gp_types.h gnuplot/src/graphics.c gnuplot/src/plot2d.c:
9944         Rename PLOT_STYLE_HAS_BOXES to PLOT_STYLE_HAS_FILL since it now 
9945         applies to objects other than boxes.
9946
9947 2004-07-02  Ethan Merritt  <merritt@u.washington.edu>
9948
9949         * src/color.c src/color.h src/gadgets.h src/gp_types.h src/graphics.c 
9950         src/misc.c src/plot2d.c src/pm3d.c src/set.c src/tables.c src/tables.h
9951         src/term_api.h src/term.c:
9952
9953         New capabilities for filledcurves plot style.
9954         (1) New options "above" and "below" to limit filled area to one side of
9955         the bounding line or second curve.
9956         (2) New ability to fill area between two curves (triggered if 3 input
9957         columns are given.  E.g. `plot "data" using 1:2:3 with filledcurves`
9958         (3) Apply current fill style to filledcurves (requires terminal support
9959         in term->filled_polygon).
9960
9961         * demo/fillbetween.dem docs/gnuplot.doc:  documentation and demo file
9962
9963         * term/cgm.trm term/gd.trm term/pdf.trm term/post.trm term/svg.trm
9964         term/x11.trm: Modified filled_polygon() to apply fill style passed in
9965         the color structure of the first vertex.
9966
9967         * src/gplt_x11.c: Back-end support for applying explicit fill style
9968         to filled_polygon.  Beware of incompatibility with early versions.
9969
9970 2004-07-02  Ethan Merritt  <merritt@u.washington.edu>
9971
9972         * term/post.trm: Minor cleanup of enhanced text "phantom box" macros.
9973
9974 2004-07-02  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9975
9976         * PATCHLEVEL, VERSION: Changed to version 4.1, patchlevel 0.
9977
9978         * src/version.c (gnuplot_version, gnuplot_patchlevel,
9979         gnuplot_date): Updated by regenerating the file.
9980
9981         * docs/gnuplot.doc, docs/titlepag.ms, docs/doc2texi.el: Update
9982         number in the title pages.
9983
9984         * docs/gnuplot.texi: Regenerated.
9985
9986 2004-07-01  Ethan Merritt  <merritt@u.washington.edu>
9987
9988         * src/fit.c: #include gp_time.h is now necessary.
9989
9990 2004-07-01  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
9991
9992         * PATCHLEVEL: Raised to 2 to mark post ANSI-fication status.
9993
9994         * src/version.c (gnuplot_patchlevel, gnuplot_date): Updated.
9995
9996         * ChangeLog, ChangeLog.0: Cycled the ChangeLog.  Entries before
9997         the 4.0.0 release are now in ChangeLog.0, newer ones in ChangeLog
9998         (this file).
9999
10000         * src/util.c (mant_exp): Modulo results can be negative.
10001         Aaargh!
10002
10003 2004-06-30  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
10004
10005         * PATCHLEVEL: Raised to 1 in preparation of ANSI-fication.
10006
10007         * src/version.c (gnuplot_patchlevel, gnuplot_date): Updated.
10008         (RELEASE_VERSION): Turn off.
10009
10010         * INSTALL: removed pointless copy of startup banner screen.
10011
10012         * docs/gnuplot.texi: Regenerated.
10013
10014         * term/post.trm (PS_linewidth_last): New variable.
10015         (PS_graphics, PS_point, PS_fillbox): Initialize it.
10016         (PS_linetype): Call PS_FLUSH_PATH here, too.
10017         (PS_linewidth): Don't break the path if the new linewidth is the
10018         same as the cached value PS_linewidth_last.  Do a PS_FLUSH_PATH
10019         here, too.
10020
10021         * term/debug.trm (DEBUG_arrow): Fix type of 'head' argument.
10022
10023         * src/hidden3d.c (in_front): Slight change to handling of points
10024         falling onto edges of triangles in 2D.  Reindentations.
10025
10026         * src/fit.c (log_axis_restriction): New function to output the
10027         actual state of the axis ranges, as optionally modified by range
10028         specified in the fit command line.
10029         (fit_command): Use it.
10030
10031         * src/graphics.c (plot_bars): Reindentation.
10032
10033         * src/util.c (mant_exp): Reindentation.
10034
10035         * src/plot3d.c (print_3dtable): #undef OUTPUT_NUMBER earlier.
10036
10037 2004-06-24  Ethan Merritt  <merritt@u.washington.edu>
10038
10039         * src/mouse.c (event_reset): If 'pause mouse' terminates because
10040         the plot window is closed, insert an extra '\n' into the input
10041         stream so that the first character of the subsequent command is
10042         not swallowed.
10043
10044 2004-06-20  Ethan Merritt  <merritt@u.washington.edu>
10045
10046         * src/mouse.c (event_reset), src/command.c (pause_command),
10047         docs/gnuplot.doc: Set MOUSE_KEY to -1 when the "pause mouse {key}"
10048         command is issued; if it is still -1 when checked later, then the
10049         calling program may assume that no mouse input was successfully
10050         given.
10051
10052         * src/command.c (pause_command): Change the test for legality of
10053         "pause mouse" command from "if (term_initialised)" to "if
10054         (mouse_setting.on)". Really it should test whether the current
10055         terminal supports mousing at all, but we don't yet have such a
10056         flag.
10057
10058         * src/gplt_x11.c (process_event): Translate keystrokes using
10059         XLookupString() rather than XKeycodeToKeysym(). This method
10060         handles characters produced using shift, alt, or other multi-key
10061         sequences.
10062
10063         * src/graphics.c (plot_f_bars plot_c_bars), term/gd.trm
10064         PNG_options): Make sure that the tic size is greater than zero.
10065
10066 2004-06-20  Petr Mikulik  <mikulik@physics.muni.cz>
10067
10068         * src/graph3d.c (key_sample_line_pm3d key_sample_point_pm3d):
10069         Fixed wrong step for negative palette.
10070
10071         * src/color.c (set_color) src/command.c (test_palette_subcommand)
10072         src/show.c (show_palette_palette): Removed useless comments.
10073
10074 2004-06-19  Petr Mikulik  <mikulik@physics.muni.cz>
10075
10076         * src/color.c (set_color, draw_inside_color_smooth_box_bitmap)
10077         src/pm3d.c (cb2gray): Invert gray in routine pm3d.c:cb2gray(cb),
10078         instead of color.c:set_color(gray). The latter is now just setting
10079         term->set_color(gray) if the terminal supports set_color() API.
10080
10081         * graph3d.c (do_3dplot): Fixed set_color(z2cb( cb2gray(cntrs->z))
10082         to set_color(cb2gray( z2cb(cntrs->z) )).
10083
10084         * gadgets.c (apply_textcolor): Take care of positive/negative
10085         palette for 'set label ... textcolor frac ...'.
10086
10087 2004-06-17  Ethan Merritt  <merritt@u.washington.edu>
10088
10089         * src/gplt_x11.c (process_event): Send a GE_reset event back to gnuplot
10090         if the current plot window is closed.
10091         * src/mouse.c (event_reset): Terminate paused_for_mouse state whenever a
10092         GE_reset event is received.
10093
10094 2004-06-16  Ethan Merritt  <merritt@u.washington.edu>
10095
10096         * src/gplt_x11.c (mainloop): Yet another tweak to the mouse timing code.
10097         This one reduces mouse-tracking hysteresis on systems that claim to have
10098         usleep() but in fact have much coarser timing.
10099
10100 2004-06-16  Petr Mikulik  <mikulik@physics.muni.cz>
10101
10102         * src/save.c: Save log cb axis (bugfix).
10103
10104 2004-06-14  Petr Mikulik  <mikulik@physics.muni.cz>
10105
10106         * src/mouse.c: Do not start zooming during 'pause mouse'.
10107
10108 2004-06-12  Ethan Merritt  <merritt@u.washington.edu>
10109
10110         * show.c (show_datafile): Provide missing show commands for suboptions
10111         "show datafile {separator|comment|missing}".
10112
10113 2004-06-12  Ethan Merritt  <merritt@u.washington.edu>
10114
10115         * datafile.h: define DF_MISSING as a return code from df_readline().
10116         * datatile.c (df_readline): If a data field contains the missing data
10117         string, return DF_MISSING rather than DF_UNDEFINED.
10118         * fit.c (fit_command): Explicitly ignore DF_MISSING data.
10119         * plot2d.c (get_data): Explicitly test for data marked DF_MISSING 
10120         but treat it the same as DF_UNDEFINED.
10121         * plot3d.c (get_3ddata): Explicitly test for data marked DF_MISSING 
10122         but treat it the same as DF_UNDEFINED.
10123
10124         These are trivial changes that do not affect the existing behavior of
10125         gnuplot. However, the core routines in plot2d and plot3d now have the
10126         information needed to treat missing data differently depending on the
10127         plot style if desired.
10128
10129 2004-06-06  Ethan Merritt  <merritt@u.washington.edu>
10130
10131         * src/command.c src/command.h src/mouse.c src/gplt_x11.c
10132         term/x11.trm docs/gnuplot.doc docs/gnuplot.texi:  
10133         `pause mouse keypress` option behaves exactly as `pause mouse` except
10134         that the pause can be terminated by a keystroke while the plot window
10135         has focus. On return, the variable MOUSE_KEY contains the mouse button
10136         number if the pause terminated on a mouse click, otherwise it contains
10137         the key code of the key that was pressed. Normal ascii characters will
10138         return their ascii code; other keyboard keys are assigned codes from a
10139         table in mousecmn.h.  The command may be shortened to `pause mouse key`.
10140
10141 2004-06-04  Petr Mikulik  <mikulik@physics.muni.cz>
10142
10143         * src/mouse.h src/mousecmn.h src/mouse.c: Split array special_keys[] of
10144         of key names and key codes into special_keys[] and usual_special_keys[],
10145         so that "usual" keys (like BackSpace, Tab, Enter, Return, Escape, Tab,
10146         Delete) can have their "usual" keycodes instead of those >=1000.
10147         Changed lookup_key() and bind_fmt_lhs() in mouse.c to look into both
10148         arrays. This does not change any functionality of the current version
10149         of gnuplot, but will help new future features (like "pause mouse key").
10150
10151 2004-06-03  Ethan Merritt  <merritt@u.washington.edu>
10152
10153         * term/emf.trm (EMF_linewidth): Force re-evaluation of line
10154         characteristics when the linewidth changes; otherwise the new width
10155         is ignored until some other property changes as well.
10156
10157 2004-06-01  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
10158
10159         * demo/fillcrvs.dem: Add text to pause -1 prompts.
10160
10161         * docs/gnuplot.doc (plot datafile using): Document restrictions of
10162         'using' format-strings.
10163
10164         * src/datafile.c (valid_format): Check that there's at least one
10165         actual %lf format in the format string, and no more than 7,
10166         because the scanf() that uses the format supplies only 7 arguments
10167         to store data in.
10168         (plot_option_using): Change error message to reflect new status
10169         output of valid_format().
10170
10171 2004-05-28  Petr Mikulik  <mikulik@physics.muni.cz>
10172
10173         * src/getcolor.c (color_components_from_gray): Test gray value for
10174         being in range [0;1].
10175
10176 2004-05-27  Ethan Merritt  <merritt@u.washington.edu>
10177
10178         * src/gplt_x11.c (PaletteSetColor): Test for overflow of index
10179         derived from color ramp calculation. Is this algorithm really correct?
10180
10181 2004-05-27  Petr Mikulik  <mikulik@physics.muni.cz>
10182
10183         * term/post.trm (PS_make_header): Change definition of /pm3dround
10184         to fix color mapping with 'set palette maxcolors'.
10185
10186         * src/win/wgraph.c (drawgraph): Change call from rgb255_from_gray() to
10187         rgb255maxcolors_from_gray(). Fixes color mapping with 'set palette
10188         maxcolors'.
10189
10190 2004-05-26  Ethan Merritt  <merritt@u.washington.edu>
10191
10192         * src/gplt_x11.c (PaletteSetColor): Fix off-by-one error in indexing
10193         color ramp of gray values.
10194
10195         * src/mouse.c (do_event): Allow font and terminal size information to
10196         be processed while in multiplot mode. See bug #955081.
10197
10198 2004-05-26  Petr Mikulik  <mikulik@physics.muni.cz>
10199
10200         * src/getcolor.h src/getcolor.c: New routines rgb1maxcolors_from_gray()
10201         and rgb255maxcolors_from_gray().
10202
10203         * term/aquaterm.trm (AQUA_set_color) term/pdf.trm (PDF_set_color):
10204         Change call from rgb1_from_gray() to rgb1maxcolors_from_gray(). Fixes
10205         color mapping with 'set palette maxcolors'.
10206
10207         * svg.trm (SVG_set_color): Change call from rgb255_from_gray() to
10208         rgb255maxcolors_from_gray(). Fixes color mapping with 'set palette
10209         maxcolors'.
10210
10211 2004-05-26  Petr Mikulik  <mikulik@physics.muni.cz>
10212
10213         * src/mouse.c (event_buttonpress): Don't start zooming box if replot is
10214         disabled.
10215
10216 2004-05-24  Ethan Merritt  <merritt@u.washington.edu>
10217
10218         * src/gplt_x11.c (exec_cmd): Flush polyline to X-server when it reaches
10219         half the maximum single request size supported on the current display.
10220
10221         * term/dumb.trm term/gd.trm term/pfg.trm term/x11.trm: The enhanced text
10222         overprint parameter was used as an (int) in some drivers, even though it
10223         is declared as a TBOOLEAN.  Change it to (int) everywhere.
10224
10225 2004-05-24  Petr Mikulik  <mikulik@physics.muni.cz>
10226
10227         * src/pm3d.c src/term.c term/hpljii.trm: SF bug #953887 non-portable C
10228         code (prototypes & TBOOLEAN): input parameter for routines cannot be
10229         char, they must be int.
10230
10231 2004-05-21  Ethan Merritt  <merritt@u.washington.edu>
10232
10233         * src/gplt_x11.c (mainloop): Add a 100 usec delay to the event flush 
10234         loop, so that if the other end of the pipe is jammed (gnuplot STOPPED)
10235         it doesn't monopolize CPU cycles. Fixes user-triggered error condition 
10236         reported in bug #930426.
10237
10238 2004-05-21  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
10239
10240         * src/graphics.c (plot_boxes): Clip lower border of
10241         boxxyerrorbars, too.
10242         (do_plot): Regrouped master switch over plot types.  Draw box
10243         first in BOXERROR mode, to keep the lower part of the errorbar
10244         visible.
10245
10246         * src/util.c (mant_exp): Extend technique for rounding exponents
10247         depending on the printf format precison of the mantissa to format
10248         specifiers %l and %L used for log bases other than 10.  Fixes SF
10249         bug #851685.
10250
10251 2004-05-20  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
10252
10253         * term/debug.trm (DEBUG_arrow): Fix type of 'head' argument
10254         overlooked in earlier global change.
10255
10256         * src/plot2d.c (get_data): Fix mininum number of columnts for
10257         boxerrorbars style.  Fixed handling of 4-column boxerrorbars in
10258         case of "set boxwidth -2" to match the documentation.
10259
10260         * src/graphics.c (plot_impulses): Fix bug in clipping of impulses
10261         for out-of-range points.  Was using an integer value to store a
10262         floating-point temporary number.
10263
10264         * src/plot2d.c (print_table): Make the table terminal output two
10265         blank lines at the end of each curve_points structure, to allow
10266         selection of individual datasets via the 'index' option.
10267
10268         * docs/doc2texi.el (d2t-handle-html): Handle anchor-only <a> tags
10269         more sensibly: output them to the texinfo file as a @c comment.
10270         Patch from Shigharu Takeno.
10271
10272         * docs/gnuplot.texi: Regenerated.
10273
10274 2004-05-19  Petr Mikulik  <mikulik@physics.muni.cz>
10275
10276         * src/mouse.c: Fix broken zoom history with a log axis.
10277
10278 2004-05-17  Petr Mikulik  <mikulik@physics.muni.cz>
10279
10280         * src/mouse.c src/win/wpause.c: Support for "pause mouse" in Windows
10281         terminal.
10282
10283 2004-05-16  Ethan Merritt  <merritt@u.washington.edu>
10284
10285         * src/graphics.c (boundary): prevent plot from flipping upside-down
10286         if the title or key take up too much vertical space.
10287
10288         * term/post.trm: Add explicit default case to encoding switch.
10289
10290 2004-05-09  Ethan Merritt  <merritt@u.washington.edu>
10291
10292         * term/x11.trm: Reduce time delay in waitforinput() from 1 sec
10293         to 100 usec.
10294
10295 2004-05-09  Petr Mikulik  <mikulik@physics.muni.cz>
10296
10297         * docs/gnuplot.doc src/term_api.h src/term.c term/post.trm: Add support
10298         for CP1250 character encoding (Central and Eastern Europe encoding on
10299         MS-Windows).
10300
10301 2004-05-09  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
10302
10303         * config/README: Clean up some of the descriptions.
10304
10305 2004-05-07  Ethan Merritt  <merritt@u.washington.edu>
10306
10307         * term/x11.trm: Add an explicit "noenhanced" option to set term x11,
10308         since otherwise once you select enhanced text you cannot turn it off
10309         again.
10310
10311 2004-05-07  Franz Bakan  <fbakan@users.sourceforge.net>
10312
10313         * src/os2/gclient.c: SF bug #940596. Match menu items "GnuplotPM ->
10314         Mouse -> Coords format -> ..." to the text actually printed.
10315
10316 2004-05-06  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
10317
10318         * src/win/wtext.c (WndTextProc): Fix unbelievably old
10319         long-standing bug: dragging the scroll bar "thumb" around didn't
10320         work, because the method of acccessing the position was completely
10321         wrong.
10322
10323 2004-05-04  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
10324
10325         * src/set.c (set_range): Fix SF bug #946900: buggy interaction of
10326         'set view map' with 'set yrange'.
10327         (set_view): Make error message string variables static and const
10328         to preserve some stack.
10329
10330 2004-05-03  Ethan Merritt  <merritt@u.washington.edu>
10331
10332         * src/mouse.c, term/x11.trm:  Move handling of mouse click after
10333         'pause mouse' from mouse.c to x11.trm.  This removes an otherwise
10334         unnecessary do_string("replot") from mouse.c, and instead adds an
10335         explicit check for mouse button release in X11_waitforinput().
10336
10337         * demo/mousevariables.dem: Add a comment after final pause command.
10338
10339         * src/set.c src/unset.c: Call gp_strdup() rather than strdup() as
10340         otherwise the test in ./configure is pointless, and gnuplot fails
10341         to link on systems without strdup().
10342
10343         * term/x11.trm: Redefine VMS-only macro to allow if/then/else
10344         constructs: GO(x) = do {} while (0)
10345
10346         * src/show.c: Protect call to add_history() with a test for the
10347         presence of READLINE support.
10348
10349 2004-04-30  Petr Mikulik  <mikulik@physics.muni.cz>
10350
10351         * docs/gpcard.tex: Remove duplicated X11 terminal entry.
10352
10353 2004-04-29  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
10354
10355         * docs/gnuplot.doc: Fix description of default format being "% g"
10356         instead of "%g".
10357
10358 2004-04-26  Petr Mikulik  <mikulik@physics.muni.cz>
10359
10360         * docs/gnuplot.doc: New section "Gnuplot-defined variables". Reference
10361         function defined(x) from section "User-defined variables".
10362
10363 2004-04-24  Ethan Merritt  <merritt@u.washington.edu>
10364
10365         * src/gplt_x11.c: Correct the placement of rotated text to account
10366         for the difference in x and y coordinate scaling. This greatly
10367         improves the rendering of rotated text in enhanced text mode.
10368
10369 2004-04-22  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
10370
10371         * src/axis.c (set_cbminmax): Don't bail out if cbrange is empty.
10372         Let the caller handle it by auto-extending the range, as usual.
10373
10374         * src/command.c (read_line): Fix bug where growing the line buffer
10375         interfered with handling of backslash-newline continuations.
10376
10377 2004-04-21  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
10378
10379         * demo/Makefile.am.in (check-noninteractive, check-interactive):
10380         keep the previous $PATH at the end of the one set for running the
10381         newly built, not yet installed gnuplot.  Needed so Cygwin binaries
10382         can find Cygwin1.dll, even if it's not installed in the Windows
10383         DLL path.
10384
10385 2004-04-20  Hans-Bernhard Broeker  <broeker@physik.rwth-aachen.de>
10386
10387         * docs/gnuplot.texi: Regenerated.
10388
10389         * docs/gnuplot.doc: Fixed missing leading blanks broken during URL
10390         updates.
10391
10392         * docs/Makefile.in ($(srcdir)/gnuplot.texi): Fix missing blank in
10393         file copying rule.
10394
10395 2004-04-17  Ethan Merritt  <merritt@u.washington.edu>
10396
10397         * term/x11.trm: Clear all I/O locks when X11_reset is called.
10398         This is a more generic fix for the problem addressed by the patch
10399         of 2004-04-13, and covers cases such as a remote X-server failing
10400         to respond. Even without this patch the connection will eventually
10401         timeout, but with the patch you can ctrl-C out rather than waiting.
10402