X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=src%2Foutput%2Fhtml.c;h=9e7f567a27274866efda6d67fddef2ca74082d3c;hb=197c17c92ac8124ae389434afa105bee90b96ad8;hp=19d1085e4178d20490b8a10cee5d030fea1245a2;hpb=d3fef25674baf4f4e25502f257c680b5090535c6;p=pspp diff --git a/src/output/html.c b/src/output/html.c index 19d1085e41..9e7f567a27 100644 --- a/src/output/html.c +++ b/src/output/html.c @@ -373,16 +373,35 @@ put_border (FILE *file, int n_borders, int style, const char *border_name) style == TAL_1 ? "thin solid" : "double"); } +static void +put_tfoot (struct html_driver *html, const struct table *t, bool *tfoot) +{ + if (!*tfoot) + { + fprintf (html->file, "", table_nc (t)); + *tfoot = true; + } + else + fputs ("\n
", html->file); +} + static void html_output_table (struct html_driver *html, const struct table_item *item) { const struct table *t = table_item_get_table (item); + const char *title = table_item_get_title (item); const char *caption = table_item_get_caption (item); int footnote_idx = 0; + bool tfoot = false; int y; fputs ("", html->file); + if (caption) + { + put_tfoot (html, t, &tfoot); + escape_string (html->file, caption, strlen (caption), " ", "
"); + } footnote_idx = 0; for (y = 0; y < table_nr (t); y++) { @@ -405,11 +424,7 @@ html_output_table (struct html_driver *html, const struct table_item *item) { char marker[16]; - if (!footnote_idx) - fprintf (html->file, "\n", html->file); - footnote_idx = 0; - } + if (tfoot) + fputs ("\n", html->file); + footnote_idx = 0; fputs ("\n", html->file); - if (caption != NULL) + if (title != NULL) { fputs (" \n", html->file); }
", - table_nc (t)); - else - fputs ("\n
", html->file); + put_tfoot (html, t, &tfoot); str_format_26adic (++footnote_idx, false, marker, sizeof marker); fprintf (html->file, "%s ", marker); escape_string (html->file, c->footnotes[i], @@ -420,18 +435,16 @@ html_output_table (struct html_driver *html, const struct table_item *item) table_cell_free (&cell); } } - if (footnote_idx) - { - fputs ("
", html->file); - escape_string (html->file, caption, strlen (caption), " ", "
"); + escape_string (html->file, title, strlen (title), " ", "
"); fputs ("