#include "output/table-item.h"
#include "output/text-item.h"
-#include "gl/error.h"
#include "gl/minmax.h"
#include "gl/xalloc.h"
enum emphasis_style emphasis; /* How to emphasize text. */
char *chart_file_name; /* Name of files used for charts. */
+#ifdef HAVE_CAIRO
+ /* Colours for charts */
+ struct xr_color fg;
+ struct xr_color bg;
+#endif
+
int width; /* Page width. */
int length; /* Page length minus margins and header. */
bool auto_width; /* Use viewwidth as page width? */
a->auto_width = a->width < 0;
a->auto_length = paper_length < 0;
a->length = paper_length - vertical_margins (a);
-
+#ifdef HAVE_CAIRO
+ parse_color (d, o, "background-color", "#FFFFFFFFFFFF", &a->bg);
+ parse_color (d, o, "foreground-color", "#000000000000", &a->fg);
+#endif
box = parse_enum (opt (d, o, "box", "ascii"),
"ascii", BOX_ASCII,
"unicode", BOX_UNICODE,
if (dim >= 1 && errno != ERANGE && *tail == '\0')
dim = value;
else
- error (0, 0, _("%s: %s must be positive integer or `auto'"),
+ msg (MW, _("%s: %s must be positive integer or `auto'"),
option->driver_name, option->name);
}
}
if (a->width < MIN_WIDTH || a->length < MIN_LENGTH)
{
if (issue_error)
- error (0, 0,
+ msg (ME,
_("ascii: page excluding margins and headers "
"must be at least %d characters wide by %d lines long, but "
"as configured is only %d characters by %d lines"),
ascii_close_page (a);
if (fn_close (a->file_name, a->file) != 0)
- error (0, errno, _("ascii: closing output file `%s'"),
- a->file_name);
+ msg_error (errno, _("ascii: closing output file `%s'"), a->file_name);
a->file = NULL;
}
}
char *file_name;
file_name = xr_draw_png_chart (chart_item, a->chart_file_name,
- a->chart_cnt++);
+ a->chart_cnt++,
+ &a->fg,
+ &a->bg);
if (file_name != NULL)
{
struct text_item *text_item;
}
else
{
- error (0, errno, _("ascii: opening output file `%s'"),
+ msg_error (errno, _("ascii: opening output file `%s'"),
a->file_name);
a->error = true;
return false;