#include "libpspp/hash-functions.h"
#include "libpspp/hmap.h"
#include "libpspp/pool.h"
-#include "output/pivot-table.h" /* XXX for PIVOT_AREA_FOOTER */
#include "output/render.h"
#include "output/table-item.h"
#include "output/table.h"
struct table *t = table_create (1, n_footnotes, 0, 0, 0, 0);
- const struct area_style *style = item->table->styles[PIVOT_AREA_FOOTER];
- if (!style)
- style = pivot_area_get_default_style (PIVOT_AREA_FOOTER);
- t->styles[PIVOT_AREA_FOOTER] = area_style_clone (t->container, style);
-
for (size_t i = 0; i < n_footnotes; i++)
{
- table_text_format (t, 0, i, PIVOT_AREA_FOOTER << TAB_STYLE_SHIFT,
- "%s. %s", f[i]->marker, f[i]->content);
- if (f[i]->style)
- table_add_style (t, 0, i, f[i]->style);
+ table_text_format (t, 0, i, 0, "%s. %s", f[i]->marker, f[i]->content);
+ table_add_style (t, 0, i, f[i]->style);
}
render_pager_add_table (p, t, 0);
table_create_footnote (struct table *table, size_t idx, const char *content,
const char *marker, struct area_style *style)
{
+ assert (style);
+
struct footnote *f = pool_alloc (table->container, sizeof *f);
f->idx = idx;
f->content = pool_strdup (table->container, content);
void
table_add_footnote (struct table *table, int x, int y,
- const struct footnote *f)
+ const struct footnote *f)
{
+ assert (f->style);
+
int index = x + y * table_nc (table);
unsigned short opt = table->ct[index];
struct table_joined_cell *j;
{
char marker[2] = { 'a' + n_footnotes, '\0' };
struct footnote *f = table_create_footnote (
- tab, n_footnotes, content, marker, NULL);
+ tab, n_footnotes, content, marker,
+ area_style_clone (tab->container, &left_style));
table_add_footnote (tab, c, r, f);
n_footnotes++;
}