journal_output (j, text_item_get_plain_text (item));
break;
+ case OUTPUT_ITEM_GROUP:
+ for (size_t i = 0; i < item->group.n_children; i++)
+ journal_submit (driver, item->group.children[i]);
+ break;
+
case OUTPUT_ITEM_CHART:
- case OUTPUT_ITEM_GROUP_OPEN:
- case OUTPUT_ITEM_GROUP_CLOSE:
case OUTPUT_ITEM_IMAGE:
case OUTPUT_ITEM_PAGE_BREAK:
- case OUTPUT_ITEM_PAGE_SETUP:
case OUTPUT_ITEM_TABLE:
break;
}
static const struct output_driver_class journal_class =
{
- "journal",
- journal_destroy,
- journal_submit,
- NULL /* flush */
+ .name = "journal",
+ .destroy = journal_destroy,
+ .submit = journal_submit,
};
-
\f
/* Enables journaling. */
void
journal_init (void)
{
- /* Create journal driver. */
- output_driver_init (&journal.driver, &journal_class, "journal",
- SETTINGS_DEVICE_UNFILTERED);
- journal.file = NULL;
+ journal = (struct journal_driver) {
+ .driver = {
+ .class = &journal_class,
+ .name = xstrdup ("journal"),
+ .device_type = SETTINGS_DEVICE_UNFILTERED,
+ }
+ };
- /* Register journal driver. */
output_driver_register (&journal.driver);
-
journal_enable ();
- journal.destroyed = false;
}
/* Disables journaling. */