output: Make errors, warnings, and notes into a new "message_item".
[pspp] / src / ui / terminal / read-line.c
index 5c9baa5bb1aee0d6398ca45191b3aab442d0c92c..0fa145c98ac502edb7f29f25e471a2ca6ee885b7 100644 (file)
 #include <data/file-name.h>
 #include <data/settings.h>
 #include <language/command.h>
+#include <libpspp/cast.h>
 #include <libpspp/message.h>
 #include <libpspp/str.h>
 #include <libpspp/version.h>
 #include <language/prompt.h>
 #include <output/journal.h>
-#include <output/manager.h>
+#include <output/driver.h>
 #include <ui/terminal/terminal.h>
 
 #include "xalloc.h"
@@ -107,8 +108,7 @@ static bool
 read_interactive (struct getl_interface *s,
                   struct string *line)
 {
-  struct readln_source *is  =
-    (struct readln_source *) s ;
+  struct readln_source *is  = UP_CAST (s, struct readln_source, parent);
 
   return is->interactive_func (line, prompt_get_style ());
 }
@@ -151,12 +151,11 @@ readln_read (struct string *line, enum prompt_style style)
 
   assert (initialised);
 
-  reset_msg_count ();
+  msg_ui_reset_counts ();
 
   welcome ();
 
-  if (style == PROMPT_FIRST)
-    som_flush ();
+  output_flush ();
 
 #if HAVE_READLINE
   rl_attempted_completion_function = (style == PROMPT_FIRST