2004-02-07 Andrew Cagney <cagney@redhat.com>
[deliverable/binutils-gdb.git] / gdb / tui / tui-file.c
index 29f84f48d0a18c39b746af44e42fc9e805a0ad6f..36fc097029cffe6edb5bd6389905ed34a685928d 100644 (file)
 #include "defs.h"
 #include "ui-file.h"
 #include "tui/tui-file.h"
+#include "tui/tui-io.h"
 
-#ifdef TUI
 #include "tui.h"
-#include "tuiData.h"
-#include "tuiIO.h"
-#include "tuiCommand.h"
-#endif
 
 #include <string.h>
 
-/* Called instead of fputs for all TUI_FILE output.  */
-
-void (*fputs_unfiltered_hook) (const char *linebuffer,
-                              struct ui_file * stream);
-
 /* A ``struct ui_file'' that is compatible with all the legacy
    code. */
 
@@ -176,66 +167,15 @@ void
 tui_file_fputs (const char *linebuffer, struct ui_file *file)
 {
   struct tui_stream *stream = ui_file_data (file);
-#if defined(TUI)
-  extern int tui_owns_terminal;
-#endif
-  /* NOTE: cagney/1999-10-13: The use of fputs_unfiltered_hook is
-     seriously discouraged.  Those wanting to hook output should
-     instead implement their own ui_file object and install that. See
-     also tui_file_flush(). */
-  if (fputs_unfiltered_hook
-      && (file == gdb_stdout
-         || file == gdb_stderr))
-    fputs_unfiltered_hook (linebuffer, file);
+
+  if (stream->ts_streamtype == astring)
+    {
+      tui_file_adjust_strbuf (strlen (linebuffer), file);
+      strcat (stream->ts_strbuf, linebuffer);
+    }
   else
     {
-#if defined(TUI)
-      if (tui_version && tui_owns_terminal)
-       {
-         /* If we get here somehow while updating the TUI (from
-          * within a tuiDo(), then we need to temporarily 
-          * set up the terminal for GDB output. This probably just
-          * happens on error output.
-          */
-
-         if (stream->ts_streamtype == astring)
-           {
-             tui_file_adjust_strbuf (strlen (linebuffer), file);
-             strcat (stream->ts_strbuf, linebuffer);
-           }
-         else
-           {
-             tuiTermUnsetup (0, (tui_version) ? cmdWin->detail.commandInfo.curch : 0);
-             fputs (linebuffer, stream->ts_filestream);
-             tuiTermSetup (0);
-             if (linebuffer[strlen (linebuffer) - 1] == '\n')
-               tuiClearCommandCharCount ();
-             else
-               tuiIncrCommandCharCountBy (strlen (linebuffer));
-           }
-       }
-      else
-       {
-         /* The normal case - just do a fputs() */
-         if (stream->ts_streamtype == astring)
-           {
-             tui_file_adjust_strbuf (strlen (linebuffer), file);
-             strcat (stream->ts_strbuf, linebuffer);
-           }
-         else
-           fputs (linebuffer, stream->ts_filestream);
-       }
-
-
-#else
-      if (stream->ts_streamtype == astring)
-       {
-         tui_file_adjust_strbuf (strlen (linebuffer), file);
-         strcat (stream->ts_strbuf, linebuffer);
-       }
-      else
-       fputs (linebuffer, stream->ts_filestream);
-#endif
+      tui_puts (linebuffer);
     }
 }
 
@@ -287,13 +227,6 @@ tui_file_flush (struct ui_file *file)
     internal_error (__FILE__, __LINE__,
                    "tui_file_flush: bad magic number");
 
-  /* NOTE: cagney/1999-10-12: If we've been linked with code that uses
-     fputs_unfiltered_hook then we assume that it doesn't need to know
-     about flushes.  Code that does need to know about flushes can
-     implement a proper ui_file object. */
-  if (fputs_unfiltered_hook)
-    return;
-
   switch (stream->ts_streamtype)
     {
     case astring:
This page took 0.024566 seconds and 4 git commands to generate.