1 Wed Feb 7 21:38:12 2007 Ben Pfaff <blp@gnu.org>
3 * afm.c: Add #include <limits.h>. Thanks to John McCabe-Dansted
4 <gmatht@gmail.com> for pointing out the need.
6 Sun Oct 8 07:09:34 WST 2006 John Darrington <john@darrington.wattle.id.au>
8 * table.c (tab_destroy): Freed title, since this is not allocated
11 * html.c (html_open_driver): Freed chart_file_name.
13 Wed Jul 12 21:03:37 2006 Ben Pfaff <blp@gnu.org>
15 * table.c (tab_natural_width): Get rid of warning on empty column,
16 which tended to just trigger false positives because we handle
17 joined cells so badly. We need a real fix, and the warning is not
20 * table.c (tab_offset): [DEBUGGING] Let row, col arguments be as
21 big as row or column count.
23 Wed Jul 12 20:58:19 2006 Ben Pfaff <blp@gnu.org>
25 * output.c (outp_drivers): [DEBUGGING] Delete unused declaration.
27 Sat Jul 1 17:20:03 2006 Ben Pfaff <blp@gnu.org>
29 Make the destination for charts configurable in the HTML driver.
30 Fixes bug #15723, "HTML driver creates .png files insecurely".
32 * htmlP.h: (struct html_driver_ext) Add chart_file_name, chart_cnt
35 * html.c: (html_open_driver) Initialize new members.
36 (option_tab var) Add "chart-files" option.
37 (handle_option) Parse "chart-files" option.
38 (html_initialise_chart) Name file based on "chart-files" option.
40 Sat Jul 1 22:41:26 2006 Ben Pfaff <blp@gnu.org>
42 Fix bug #16644: Output Driver crashes in DISPLAY VARIABLES.
44 * table.c (tab_create): Don't allocate t->hrh, t->wrv yet, because
45 the table size might change before we're ready to use them.
46 (tabi_table) Allocate them here instead.
48 Fri Jun 9 14:42:35 2006 Ben Pfaff <blp@gnu.org>
50 Reform string library.
52 * output.c (init_default_drivers): Update call to
53 configure_driver() to new interface.
54 (get_option_token) Use a modifiable substring in interface instead
55 of a separate position parameter. Use ss_get_*() functions.
56 (configure_driver) Take and work with substrings.
57 (configure_driver_line) Update call to configure_driver() to new
59 (outp_get_paper_size) Use substrings.
61 * output.h (struct outp_class): Change open_driver interface to
62 use substring. Update all implementations.
64 * table.c (text_format): Change to return substring.
65 (tab_title) Use xvasprintf().
67 * table.h (struct tab_table): Change title member to char *.
69 Thu May 25 18:02:53 WST 2006 John Darrington <john@darrington.wattle.id.au>
71 * table.c: Removed redundant extern declaration.
73 Sun May 14 14:03:56 2006 Ben Pfaff <blp@gnu.org>
75 * output.c (outp_eject_page): Always make sure that a page is open
78 Sun May 14 13:54:58 2006 Ben Pfaff <blp@gnu.org>
80 * postscript.c: (ps_chart_finalise) Fix format of %%EndDocument
81 comment, which screwed up gv's idea of where one page ended and
82 the next one began. Thanks to John Darrington for pointing out
85 Sun Apr 16 11:48:25 2006 Ben Pfaff <blp@gnu.org>
87 Start reforming error message support. In this phase, we get rid
88 of "installation errors" and change all uses of msg() in the
89 output drivers to uses of error() or error_at_line().
91 * Removed all inclusion of <libpspp/message.h> in this directory.
93 * output.c: Changed all uses of msg() to error() or
95 (outp_read_devices) Maintain line number in int variable instead
96 of "struct file_locator".
97 (tokener) Renamed get_option_token(), rewritten, changed interface.
98 (outp_parse_options) Change `options' argument to type const
99 struct string *. Rewritten.
100 (configure_driver) Passes a struct string * to ->open_driver()
102 (outp_get_paper_size) Maintain line number in int variable instead
103 of "struct file_locator". Removed stupid cache.
105 * output.h: (struct outp_class) Change `open_driver' function to
106 take const struct string * instead of const char *. Updated all
109 Mon Apr 3 11:14:38 2006 Ben Pfaff <blp@gnu.org>
111 Rewrite a lot of the output drivers and infrastructure.
112 Started transitioning from msg() to error().
113 Vertical rules in tables now default to putting a small gap
114 between columns, instead of no gap or rule at all.
115 See NEWS for user-visible changes.
117 * automake.mk: (output_sources) Add afm.c, afm.h. Remove font.h,
120 * afm.c, afm.h: New files.
124 * groff-font.c: Removed.
126 * ascii.c: Rewrote and simplified.
130 * postscript.c: Ditto.
132 * output.c: (struct outp_driver_class_list) Move here from
133 output.h. Remove ref_count member and all references to it.
134 (outp_init) Remove epsf_class references.
135 (init_default_drivers) Use new configure_driver_line() interface.
136 (parse_options) Renamed outp_parse_options(), changed interface.
137 (configure_driver) Changed args from `const char *'s to `const
138 struct string *'s. Rewrote. Don't call ->open_global(). Now
139 just calls ->open_driver() instead of ->preopen_driver(),
140 ->option(), ->postopen_driver().
141 (configure_driver_line) Adapt to new configure_driver() interface.
142 (destroy_driver) Don't call ->close_global().
143 (option_cmp) Removed.
144 (outp_match_keyword) Rewrite for simplicity.
145 (outp_open_page) New function. Changed all equivalent
146 functionality to use this function instead.
147 (outp_close_page) Ditto.
148 (outp_eject_page) Use above functions.
149 (outp_string_width) Add font argument and change all callers to
152 * output.h: (struct rect) Removed.
153 (OUTP_L_*) Name this enumeration "enum outp_line_style".
154 (OUTP_L_SPECIAL) Removed.
155 (struct color) Removed.
157 (struct outp_styles) Removed.
159 (enum outp_justification) New, containing OUTP_RIGHT, OUTP_LEFT,
161 (enum outp_font) New, containing OUTP_FIXED, OUTP_PROPORTIONAL,
163 (struct outp_text) Replaced `options' member by `font' and
164 `justification'. Renamed `s' to `string'. Removed `w', `l'.
166 (struct outp_class) Removed `magic', `open_global',
167 `close_global', `font_sizes', `preopen_driver', `option',
168 `postopen_driver', `line_horz', `line_vert', `line_intersection',
169 `box', `polyline_begin', `polyline_point', `polyline_end',
170 `text_set_font_by_name', `text_set_font_by_position',
171 `text_set_font_family', `text_get_font_name',
172 `text_get_font_family', `text_set_Size', and `text_get_size'
173 members. Added `open_driver', `close_driver', `line' members.
174 Changed interface of `open_page', `close_page', `text_metrics',
175 `text_draw' members. Updated all usages.
176 (struct outp_driver) Rearranged members. Removed `driver_open',
177 `res', `horiz', `vert', `horiz_line_spacing', `vert_line_spacing'
179 (struct outp_option_info) Removed.
180 (struct outp_driver_class_list) Removed.
181 (outp_match_keyword) Changed interface.
183 * table.c: (tab_create) Now ignores reallocable argument: tables
184 can always be reallocated. Use pool_create_container().
185 Initialize vertical rules to UCHAR_MAX.
186 (options_to_font) New function.
187 (tab_destroy) Remove futile assignment.
188 (tab_realloc) Initialize vertical rules to UCHAR_MAX.
189 (text_format) Use xvasprintf() instead of local_alloc().
190 (tab_title) Always format the argument, and drop the option
191 argument. Change all callers to agree.
192 (tab_natural_width) Adapt to new ->text_metrics() interface.
193 (tab_natural_height) Ditto.
194 (tab_joint_text) Clear rules within the joined cell. Now
195 necessary because of the default to put spacing between cells.
196 (tab_output_text) Use xvasprintf() instead of local_alloc().
197 Remove special cases for fixed-width font.
198 (rule_to_spacing_type) New function.
199 (tabi_driver) Calculate rule widths manually now that we don't
200 have ->trh or ->trv. Implement new default for vertical rules.
201 (render_rows) New function.
202 (tabi_render) Rewrite in terms of render_rows() for clarity.
203 (translate_justification) New function.
204 (rule_to_draw_type) New function.
205 (get_hrule) New function.
206 (get_vrule) New function.
207 (render_horz_rule) New function.
208 (render_vert_rule) New function.
209 (render_rule_intersection) New function.
210 (strip_width) New function.
211 (strip_height) New function.
212 (render_cell) New function.
213 (render_strip) Rewrite in terms of new functions.
215 * table.h: (TAB_EMPH) New flag.
219 (TAL_SPACING) Removed.
220 (struct tab_table) Members `trh', `hrv', `hr_tot', `vr_tot'
222 [DEBUGGING] (reallocable) Removed.
223 (TAT_FIX) Removed. All references replaced by TAB_FIX.
224 (TAT_TITLE) Now implies TAB_EMPH.
226 Thu Mar 30 16:26:56 2006 Ben Pfaff <blp@gnu.org>
228 * output.c: (colon_tokenize) Removed.
229 (configure_driver_line) Rewrote to use ds_separate(). Fixed leak.
231 Tue Mar 28 13:50:53 WST 2006 John Darrington <john@darrington.wattle.id.au>
233 * html.c, postscript.c, output.c: Changed to fit the new signature
236 Sun Mar 5 13:19:32 2006 Ben Pfaff <blp@gnu.org>
238 * postscript.c: (postopen) Fix segfault when the active file has
241 Sat Mar 4 13:48:16 2006 Ben Pfaff <blp@gnu.org>
243 We didn't provide a way to define these macros, so obviously
244 there's little demand for them.
246 * html.c: Don't test for NO_HTML.
248 * postscript.c: Don't test for NO_POSTSCRIPT.
250 * output.c: Don't test for either of those.
252 Thu Mar 2 08:40:33 WST 2006 John Darrington <john@darrington.wattle.id.au>
254 * Moved files from src directory