X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Foutput%2Ftable.h;h=649ae965f6ce328e20c4c320c65b6c0dd827910f;hb=5e05ce94d98d7bb9ef99d53334429ff183bd1b93;hp=cf187f10dc325d3e28aabbcb5c2ebc3aae248011;hpb=93ec42221da8b677420bf11435e0d24d0503601b;p=pspp diff --git a/src/output/table.h b/src/output/table.h index cf187f10dc..649ae965f6 100644 --- a/src/output/table.h +++ b/src/output/table.h @@ -40,6 +40,7 @@ struct casereader; struct fmt_spec; +struct table_item; struct variable; /* Properties of a table cell. */ @@ -47,29 +48,40 @@ enum { TAB_NONE = 0, - /* Alignment of cell contents. */ - TAB_RIGHT = 0 << 0, /* Right justify. */ - TAB_LEFT = 1 << 0, /* Left justify. */ - TAB_CENTER = 2 << 0, /* Centered. */ - TAB_ALIGNMENT = 3 << 0, /* Alignment mask. */ + /* Horizontal alignment of cell contents. */ + TAB_RIGHT = 0 << 0, + TAB_LEFT = 1 << 0, + TAB_CENTER = 2 << 0, + TAB_HALIGN = 3 << 0, /* Alignment mask. */ + + /* Vertical alignment of cell contents. */ + TAB_TOP = 0 << 2, + TAB_MIDDLE = 1 << 2, + TAB_BOTTOM = 2 << 2, + TAB_VALIGN = 3 << 2, /* Alignment mask. */ /* These flags may be combined with any alignment. */ - TAB_EMPH = 1 << 2, /* Emphasize cell contents. */ - TAB_FIX = 1 << 3, /* Use fixed font. */ + TAB_EMPH = 1 << 4, /* Emphasize cell contents. */ + TAB_FIX = 1 << 5, /* Use fixed font. */ /* Bits with values (1 << TAB_FIRST_AVAILABLE) and higher are not used, so they are available for subclasses to use as they wish. */ - TAB_FIRST_AVAILABLE = 4 + TAB_FIRST_AVAILABLE = 6 }; /* Styles for the rules around table cells. */ enum { - TAL_0, /* No line. */ - TAL_GAP, /* Spacing but no line. */ - TAL_1, /* Single line. */ - TAL_2, /* Double line. */ + TAL_NONE, /* No spacing. */ +#define TAL_0 TAL_NONE + TAL_SOLID, +#define TAL_1 TAL_SOLID + TAL_DASHED, + TAL_THICK, + TAL_THIN, + TAL_DOUBLE, +#define TAL_2 TAL_DOUBLE N_LINES }; @@ -170,14 +182,12 @@ struct table *table_from_casereader (const struct casereader *, size_t column, const char *heading, const struct fmt_spec *); -struct table *table_create_nested (const struct table *); /* Combining tables. */ struct table *table_paste (struct table *, struct table *, enum table_axis orientation); struct table *table_hpaste (struct table *left, struct table *right); struct table *table_vpaste (struct table *top, struct table *bottom); -struct table *table_stomp (struct table *); /* Taking subsets of tables. */ struct table *table_select (struct table *, int rect[TABLE_N_AXES][2]);