#ifndef EL__DOCUMENT_FORMAT_H #define EL__DOCUMENT_FORMAT_H #include "util/color.h" #ifdef __cplusplus extern "C" { #endif struct document_options; struct screen_char; enum text_style_format { AT_BOLD = 1, AT_ITALIC = 2, AT_UNDERLINE = 4, AT_FIXED = 8, AT_GRAPHICS = 16, AT_PREFORMATTED = 32, /* AT_NO_ENTITIES means the parser has already expanded * entities and numeric character references, so the put_chars * function of the renderer must not do that again. */ AT_NO_ENTITIES = 64, AT_STRIKE = 128 }; typedef signed short text_style_format_T; struct text_style_color { color_T foreground; color_T background; }; struct text_style { text_style_format_T attr; struct text_style_color color; }; #define INIT_TEXT_STYLE(attr, fg, bg) { attr, {fg, bg}} void get_screen_char_template(struct screen_char *template_, struct document_options *options, struct text_style style); #ifdef __cplusplus } #endif #endif