output: Support decimal and mixed alignment,
[pspp] / src / output / table-casereader.c
index 5acb1a928d98aa72e3ffb1ea8bfb1f17a1485d85..e1b75ac5da28564684e1dca3f9ac0d53c24e2df1 100644 (file)
@@ -106,20 +106,24 @@ table_casereader_get_cell (const struct table *t, int x, int y,
   struct ccase *c;
   char *s;
 
+  static const struct area_style style = {
+    AREA_STYLE_INITIALIZER__,
+    .cell_style.halign = TABLE_HALIGN_RIGHT
+  };
+
   cell->d[TABLE_HORZ][0] = x;
   cell->d[TABLE_HORZ][1] = x + 1;
   cell->d[TABLE_VERT][0] = y;
   cell->d[TABLE_VERT][1] = y + 1;
-  cell->contents = &cell->inline_contents;
-  cell->n_contents = 1;
-  cell->inline_contents.options = TAB_RIGHT;
-  cell->inline_contents.n_footnotes = 0;
+  cell->style = &style;
+  cell->options = 0;
+  cell->n_footnotes = 0;
   if (tc->heading != NULL)
     {
       if (y == 0)
         {
           s = xstrdup (tc->heading);
-          cell->inline_contents.text = s;
+          cell->text = s;
           cell->destructor = free_string;
           cell->destructor_aux = s;
           return;
@@ -135,14 +139,15 @@ table_casereader_get_cell (const struct table *t, int x, int y,
       s = data_out (case_data_idx (c, 0), UTF8, &tc->format);
       case_unref (c);
     }
-  cell->inline_contents.text = s;
+  cell->text = s;
   cell->destructor = free_string;
   cell->destructor_aux = s;
 }
 
 static int
 table_casereader_get_rule (const struct table *t, enum table_axis axis,
-                           int x UNUSED, int y)
+                           int x UNUSED, int y,
+                           struct cell_color *color UNUSED)
 {
   struct table_casereader *tc = table_casereader_cast (t);
   if (axis == TABLE_VERT)