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