Ben Pfaff [Thu, 31 Dec 2020 03:44:16 +0000 (19:44 -0800)]
superscript
Ben Pfaff [Thu, 31 Dec 2020 03:18:23 +0000 (19:18 -0800)]
pivot-table-test
Ben Pfaff [Thu, 31 Dec 2020 01:26:17 +0000 (17:26 -0800)]
work on pivot-table-test
Ben Pfaff [Thu, 31 Dec 2020 00:49:41 +0000 (16:49 -0800)]
work on pivot-table-test
Ben Pfaff [Thu, 31 Dec 2020 00:09:27 +0000 (16:09 -0800)]
work
Ben Pfaff [Thu, 31 Dec 2020 00:11:31 +0000 (16:11 -0800)]
printing
Ben Pfaff [Wed, 30 Dec 2020 20:29:13 +0000 (12:29 -0800)]
work
Ben Pfaff [Wed, 30 Dec 2020 18:15:46 +0000 (10:15 -0800)]
work
Ben Pfaff [Wed, 30 Dec 2020 04:09:46 +0000 (20:09 -0800)]
tests pass (except render)
Ben Pfaff [Wed, 30 Dec 2020 03:03:36 +0000 (19:03 -0800)]
it works again
Ben Pfaff [Wed, 30 Dec 2020 01:20:59 +0000 (17:20 -0800)]
more work toward making table_item just a pivot_Table
Ben Pfaff [Mon, 28 Dec 2020 17:58:15 +0000 (09:58 -0800)]
work toward getting rid of struct table in table_item
Ben Pfaff [Tue, 29 Dec 2020 19:17:34 +0000 (11:17 -0800)]
work toward making pivot tables the primary representation
Ben Pfaff [Tue, 29 Dec 2020 17:54:50 +0000 (09:54 -0800)]
text-item: Use struct font_style instead of individual fields.
The foreground and background colors can't be represented in SPV files,
but it seems like an improvement nonetheless.
Ben Pfaff [Tue, 29 Dec 2020 07:50:50 +0000 (23:50 -0800)]
Make caption into table_cell too.
Ben Pfaff [Mon, 28 Dec 2020 18:50:53 +0000 (10:50 -0800)]
table-item: Change title from table_item_text to table_cell.
Ben Pfaff [Tue, 29 Dec 2020 07:35:45 +0000 (23:35 -0800)]
table-item: Remove barely used parameters from table_item_create().
The 'title' and 'caption' parameters were always NULL in practice, and
only one caller supplied nonnull 'notes'.
Ben Pfaff [Tue, 29 Dec 2020 07:33:30 +0000 (23:33 -0800)]
table-provider: Remove "const" from struct table_cell members.
Until now, this struct has been used only in one particular place, where
the "const" is easy to handle. In an upcoming commit, it will be used more
widely, making the const-ness impractical to maintain, so this commit
removes it.
Ben Pfaff [Tue, 29 Dec 2020 01:56:59 +0000 (17:56 -0800)]
Revert "work toward getting rid of struct table in table_item"
This reverts commit
4e02039cfe0e5a9e8639143591fbc03ff71a37d5.
Ben Pfaff [Mon, 28 Dec 2020 17:58:15 +0000 (09:58 -0800)]
work toward getting rid of struct table in table_item
Ben Pfaff [Sun, 27 Dec 2020 20:12:13 +0000 (12:12 -0800)]
output-item: Make label a part of every output_item.
I didn't understand before that every output_item had a label of its own
that users could separately edit. The spv file format makes that clear,
though, so this commit acknowledges it.
Ben Pfaff [Tue, 29 Dec 2020 01:47:31 +0000 (17:47 -0800)]
html: Step toward better handling of text_items.
There's more work to do to get the fonts, especially, correct.
Ben Pfaff [Thu, 31 Dec 2020 03:45:07 +0000 (19:45 -0800)]
pivot-output: Really fix formatting of the corner cell.
Commit
981e88e2f5b4 ("pivot-output: Fill corner cell even without
corner text.") purported to do this, but it missed the most
important issue.
Ben Pfaff [Thu, 31 Dec 2020 03:27:10 +0000 (19:27 -0800)]
output: Remove superscript support.
The previous commit
df5005061c03 ("pivot-output: Implement superscript.")
finished this support, but on further inspection, there's nothing in the
non-legacy .spv format that can set a superscript. The legacy .spv format
appears to be able to do it; I'll worry about that if it gets implemented
later.
Ben Pfaff [Thu, 31 Dec 2020 01:26:04 +0000 (17:26 -0800)]
pivot-output: Implement superscript.
Ben Pfaff [Wed, 30 Dec 2020 22:54:30 +0000 (14:54 -0800)]
spv-file-format: Document "show-title" option.
Ben Pfaff [Thu, 31 Dec 2020 00:06:01 +0000 (16:06 -0800)]
ascii: Support dashed lines in output.
Unicode has thick lines too, so that's another opportunity for future
expansion.
Ben Pfaff [Wed, 30 Dec 2020 23:39:30 +0000 (15:39 -0800)]
ascii: Refactor definition of box characters.
Ben Pfaff [Wed, 30 Dec 2020 23:11:28 +0000 (15:11 -0800)]
cairo-fsm: Implement dashed lines.
Ben Pfaff [Wed, 30 Dec 2020 20:28:56 +0000 (12:28 -0800)]
pivot-table: Fix incorrect allocation count in pivot_table_dump().
Ben Pfaff [Wed, 30 Dec 2020 18:15:37 +0000 (10:15 -0800)]
tests: Be consistent about adding to $(check_PROGRAMS).
Some tests were added at the top of the file, some just above the
definition of their sources, and some in both places (!).
Ben Pfaff [Tue, 29 Dec 2020 18:48:43 +0000 (10:48 -0800)]
table: Add comment.
Ben Pfaff [Tue, 29 Dec 2020 18:48:31 +0000 (10:48 -0800)]
spv-file-format: Document CSS in more detail.
Ben Pfaff [Tue, 29 Dec 2020 18:48:07 +0000 (10:48 -0800)]
spv-css-parser: Parse text color also.
Ben Pfaff [Tue, 29 Dec 2020 18:46:16 +0000 (10:46 -0800)]
spv-css-parser: The font-size is really "px" even though it says "pt".
Ben Pfaff [Tue, 29 Dec 2020 18:45:21 +0000 (10:45 -0800)]
output: Eliminate duplicated color parsing code.
Ben Pfaff [Mon, 28 Dec 2020 22:13:43 +0000 (14:13 -0800)]
html: Make <th> cells be font-weight: normal by default.
This overrides typical web browser defaults. That seems reasonable, since
the driver styles all the cells according to the user specifications. We
could just use <td> for all cells, but there might be semantic value in
having properly marked header cells.
Ben Pfaff [Mon, 28 Dec 2020 22:12:34 +0000 (14:12 -0800)]
html: Implement rotated cells.
Ben Pfaff [Mon, 28 Dec 2020 21:54:01 +0000 (13:54 -0800)]
cairo-fsm: Always center rotated cells.
Ben Pfaff [Mon, 28 Dec 2020 21:29:12 +0000 (13:29 -0800)]
pivot-output: Implement header rotation correctly.
This code had the wrong notion of which headers to rotate. It also didn't
implement the observed behavior of rotated headers always being centered
both horizontally and vertically.
Ben Pfaff [Mon, 28 Dec 2020 18:50:37 +0000 (10:50 -0800)]
html: Implement more styling features.
Ben Pfaff [Mon, 28 Dec 2020 19:39:45 +0000 (11:39 -0800)]
pivot-output: Fill corner cell even without corner text.
This ensure that any background in the corner style is drawn.
Ben Pfaff [Mon, 28 Dec 2020 19:39:12 +0000 (11:39 -0800)]
spv-file-format: Better document MANIFEST.MF.
Ben Pfaff [Mon, 28 Dec 2020 05:40:36 +0000 (21:40 -0800)]
pivot-table: Include pivot table subtype in pivot_table_dump() output.
Ben Pfaff [Mon, 28 Dec 2020 18:53:58 +0000 (10:53 -0800)]
html: Fix border-right for non-square tables.
Fixes: b11b5d874764 ("table: Get rid of accessor functions for 'h' and 'n' members.")
John Darrington [Sun, 27 Dec 2020 07:47:51 +0000 (08:47 +0100)]
Remove dummy-prerequisite rule
As Ben pointed out, this probably did more harm than good. So instead,
this change adds some explicit dependencies where prerequisites are
known to be necessary.
Ben Pfaff [Sun, 27 Dec 2020 06:23:58 +0000 (22:23 -0800)]
spv-file-format: Better describe structure member labels and table notes.
Ben Pfaff [Sun, 27 Dec 2020 06:22:32 +0000 (22:22 -0800)]
psppire-output-view: Set tooltips on tables from table_item notes.
Ben Pfaff [Sun, 27 Dec 2020 06:16:39 +0000 (22:16 -0800)]
psppire-window: Fix use-after-free error in read_spv_file().
spv_item_get_table() returns a borrowed reference, but read_spv_file()
treated it as if it owned it. This fixes the problem.
This fixes crashes opening .spv files in PSPPIRE with File|Open.
Also, change spv_item_get_table() to return a const pointer, to make it
clearer that the reference is a borrowed one.
Ben Pfaff [Sun, 27 Dec 2020 04:27:05 +0000 (20:27 -0800)]
table: Get rid of accessor functions for 'h' and 'n' members.
It's easier to read them directly.
Ben Pfaff [Sun, 27 Dec 2020 04:26:37 +0000 (20:26 -0800)]
table: Delete some functions that were unused or barely used.
Ben Pfaff [Sun, 27 Dec 2020 04:24:53 +0000 (20:24 -0800)]
message-item: Fix reference counting in message_item_to_text_item().
This function should take ownership of the message_item passed in, but it
leaked a reference to it.
Ben Pfaff [Sun, 27 Dec 2020 01:57:46 +0000 (17:57 -0800)]
render: Only scale to fit vertically with drivers that support it.
Fixes: bdd73954cd30 ("cairo: Support scaling tables to fit page width and page length.")
Ben Pfaff [Sun, 27 Dec 2020 01:54:56 +0000 (17:54 -0800)]
html: Pop up tooltip with table notes in output.
I can't see how to do this for ODP or PDF output. (PDF supports tooltips
but Cairo doesn't expose the feature; ODP doesn't seem to support it at
all.)
Ben Pfaff [Sun, 27 Dec 2020 01:54:07 +0000 (17:54 -0800)]
cairo: Label pages in PDFs with page numbers.
These normally wouldn't do much, but PSPP does support an "initial page
number" setting, and if that is set to anything but 1 then it will make
a difference.
Ben Pfaff [Sun, 27 Dec 2020 01:47:50 +0000 (17:47 -0800)]
cairo: Support scaling tables to fit page width and page length.
Ben Pfaff [Sat, 26 Dec 2020 23:52:16 +0000 (15:52 -0800)]
cairo-fsm: Remove code that was #if'd out.
This was missed during an earlier refactoring.
Ben Pfaff [Sat, 26 Dec 2020 18:24:16 +0000 (10:24 -0800)]
po: Update French translation from translationproject.org.
Thanks to Stéphane Aulery <lkppo@free.fr>.
John Darrington [Sat, 26 Dec 2020 13:10:30 +0000 (14:10 +0100)]
tex-rendering.c: Add missing include directive
John Darrington [Sat, 26 Dec 2020 12:23:53 +0000 (13:23 +0100)]
Make cross-building slightly more reliable
John Darrington [Sat, 26 Dec 2020 10:13:46 +0000 (11:13 +0100)]
Fix reproducibility issues in png files
John Darrington [Sat, 26 Dec 2020 09:47:47 +0000 (10:47 +0100)]
Start of a crosstabs example
John Darrington [Sat, 26 Dec 2020 09:11:56 +0000 (10:11 +0100)]
Add copyright and licence notices to files which lack them
John Darrington [Sat, 26 Dec 2020 08:34:41 +0000 (09:34 +0100)]
Fix compiler warning
John Darrington [Sat, 26 Dec 2020 07:44:38 +0000 (08:44 +0100)]
pspp-dev (Graphic User Interface): New chapter.
Ben Pfaff [Fri, 25 Dec 2020 20:14:38 +0000 (12:14 -0800)]
cairo-pager: Add outline to PDF output.
Ben Pfaff [Sat, 26 Dec 2020 05:54:48 +0000 (21:54 -0800)]
cairo: Avoid using cairo_t for a destroyed cairo_surface_t.
xr_pager_destroy() would destroy the latest cairo_t, if there was one.
Generally there wasn't, since in the common case it got destroyed by
xr_pager_run() when the fsm emptied out, but in the case of the last page
in a produced output file, xr_destroy() would call xr_pager_destroy()
after first destroying the surface_t it was drawing on. I don't think this
is an actual bug, because everything is properly reference-counted inside
Cairo (the cairo_t holds a reference on its cairo_surface_t) but I found it
confusing.
Ben Pfaff [Sat, 26 Dec 2020 05:55:57 +0000 (21:55 -0800)]
doc: Suppress fontconfig warnings from Leak Sanitizer running pspp-output.
Otherwise building the docs fails if one builds with Address Sanitizer or
Leak Sanitizer.
Ben Pfaff [Sat, 26 Dec 2020 00:22:14 +0000 (16:22 -0800)]
Fix memory leaks reported by Address Sanitizer.
Ben Pfaff [Sat, 26 Dec 2020 05:56:53 +0000 (21:56 -0800)]
Add more Valgrind leak report suppressions.
These leaks seem unavoidable and they are not worth reporting.
Valgrind still reports a lot of leaks that I haven't determined to either
be fixable or unavoidable.
Ben Pfaff [Fri, 25 Dec 2020 20:17:36 +0000 (12:17 -0800)]
cairo: Add missing new-lines at the end of messages written to stderr.
Ben Pfaff [Tue, 22 Dec 2020 07:49:26 +0000 (23:49 -0800)]
Add --table-look command line option and SET TLOOK command.
John Darrington [Sun, 20 Dec 2020 22:06:11 +0000 (23:06 +0100)]
Fix building --without-cairo
John Darrington [Sun, 20 Dec 2020 21:49:20 +0000 (22:49 +0100)]
configure.ac: Abort attempts to cross build in source
John Darrington [Sun, 20 Dec 2020 19:11:10 +0000 (20:11 +0100)]
New function width_of_m to get the width of M rendered in a widget.
helper.c (width_of_m): New function.
John Darrington [Sun, 20 Dec 2020 09:40:27 +0000 (10:40 +0100)]
Add new popup menu to the dictionary view widget
Some users have expressed a wish to be able to view details
of variables from within dialogs. Hopefully this change will
fulfill this requirement.
John Darrington [Sun, 20 Dec 2020 08:43:21 +0000 (09:43 +0100)]
Fix make distcheck
The generated figure files have to depend on utilities/pspp-output
John Darrington [Sun, 20 Dec 2020 21:38:28 +0000 (22:38 +0100)]
Reimplement the variable info dialog.
Instead of using a rendered output fragment, display the information
in Gtk+ widgets.
John Darrington [Sun, 20 Dec 2020 09:42:15 +0000 (10:42 +0100)]
PsppireButtonBox: Allow widget to be explicitly created.
* psppire-buttonbox.h (psppire_button_box_new): New function
* psppire-buttonbox.c (psppire_button_box_new): New function
Ben Pfaff [Mon, 21 Dec 2020 07:10:59 +0000 (23:10 -0800)]
pivot-table: Make pivot_table_look a refcounted object.
This is a first step toward adding a default pivot_table_look as a user
setting.
Ben Pfaff [Mon, 21 Dec 2020 04:33:57 +0000 (20:33 -0800)]
MEANS: Remove one more assignment to omit_empty missed in previous commit.
I missed this in preparing commit
0200682d517f ("pivot-table: Change the
default format to omit empty rows and columns.")
Ben Pfaff [Mon, 21 Dec 2020 04:30:18 +0000 (20:30 -0800)]
pivot-table: Change the default format to omit empty rows and columns.
By making this the default, it doesn't become necessary to make a lot of
procedures that yield output change the format to produce reasonable
output. This means that the user's settings for the format won't get
overridden.
This changes a lot of output that had empty columns, in particular
anything that used DISPLAY DICTIONARY with a dictionary that had no
variable labels or missing values. This commit also updates the expected
output to match.
An unexpected side effect was that some tables became empty entirely, for
example LIST with no rows. This seemed undesirable, so I changed
pivot_table_enumerate_axis() so if an axis was entirely empty due to
omit_empty, then omit_empty was suppressed for that axis.
Ben Pfaff [Mon, 21 Dec 2020 00:22:57 +0000 (16:22 -0800)]
doc: Fix formatting of output in formats that use text output.
This fixes a mistake introduced in commit
1d447973271c ("doc: Add .png
output to the Info manual.").
Ben Pfaff [Sun, 20 Dec 2020 23:38:21 +0000 (15:38 -0800)]
doc: Add .png output to the Info manual.
Ben Pfaff [Sat, 19 Dec 2020 08:12:28 +0000 (00:12 -0800)]
cairo: Add support for png and trim.
This also allows dropping the librsvg dependency.
Ben Pfaff [Sat, 12 Dec 2020 07:20:56 +0000 (23:20 -0800)]
cairo-pager: New.
Ben Pfaff [Tue, 15 Dec 2020 07:36:31 +0000 (23:36 -0800)]
cairo: Use pango_cairo_context_set_resolution() to get font sizes correct.
I never understood before why fonts didn't appear the right side in PDF
and PostScript output. This fixes the problem.
Ben Pfaff [Wed, 9 Dec 2020 17:34:10 +0000 (09:34 -0800)]
cairo: Use arrays for page sizes and margins, to simplify code.
Ben Pfaff [Mon, 7 Dec 2020 06:06:57 +0000 (22:06 -0800)]
cairo: Move chart code into cairo-chart.
Ben Pfaff [Mon, 7 Dec 2020 05:50:59 +0000 (21:50 -0800)]
cairo: Get rid of unused PangoLayouts.
Ben Pfaff [Sun, 6 Dec 2020 22:18:26 +0000 (14:18 -0800)]
cairo: Factor out code for basic rendering.
Ben Pfaff [Sun, 6 Dec 2020 21:33:00 +0000 (13:33 -0800)]
cairo: Remove "emphasis" font option because it had no real effect.
Ben Pfaff [Sat, 19 Dec 2020 08:00:28 +0000 (00:00 -0800)]
options: Make parse_color() parse alpha.
cell_color includes an alpha channel so we might as well use it.
Ben Pfaff [Sun, 20 Dec 2020 23:57:29 +0000 (15:57 -0800)]
doc: Use "rm", not nonexistent variable $(RM), in uninstall-local.
Ben Pfaff [Sun, 20 Dec 2020 23:02:37 +0000 (15:02 -0800)]
doc: Use $(infodir) for Info, not $(prefix)/share/info.
John Darrington [Sun, 20 Dec 2020 14:10:27 +0000 (15:10 +0100)]
Fix make distcheck
John Darrington [Sun, 20 Dec 2020 13:52:30 +0000 (14:52 +0100)]
Add missing parentheses
John Darrington [Sat, 19 Dec 2020 16:14:22 +0000 (17:14 +0100)]
Fix reproducibility issues when generating .eps files
John Darrington [Sat, 19 Dec 2020 15:34:21 +0000 (16:34 +0100)]
Use clean-temp module instead of tmpdir module
psppire-output_view.c: Use gnulib's clean-temp module instead of the
path_search function.
John Darrington [Sat, 19 Dec 2020 15:22:49 +0000 (16:22 +0100)]
Install the documentation screenshots in the correct place.
The screenshots should be installed into $prefix/info/screenshots
NOT $prefix/info
Reported by: opensuse.lietuviu.kalba <opensuse.lietuviu.kalba@gmail.com>