]> git.lyx.org Git - features.git/blobdiff - src/frontends/qt2/QLog.C
change "support/std_sstream.h" to <sstream>
[features.git] / src / frontends / qt2 / QLog.C
index 079b53a1c7d76d73794ba479b4cb408a5d968ea9..4bc69419a23cff4d28e715e3d3ac990f9ba0ce2b 100644 (file)
@@ -1,73 +1,51 @@
 /**
  * \file QLog.C
- * Copyright 2001 the LyX Team
- * Read the file COPYING
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
  *
- * \author John Levon <moz@compsoc.man.ac.uk>
+ * \author John Levon
+ *
+ * Full author contact details are available in file CREDITS.
  */
 
 #include <config.h>
-#include <fstream> 
 
-#ifdef __GNUG__
-#pragma implementation
-#endif
+#include "QLog.h"
+#include "QLogDialog.h"
+#include "qt_helpers.h"
+
+#include "controllers/ControlLog.h"
+
+#include <sstream>
 
 #include <qtextview.h>
 #include <qpushbutton.h>
-#include "QLogDialog.h"
-#include "QLog.h"
-#include "Qt2BC.h"
-#include "gettext.h"
-#include "QtLyXView.h"
-#include "ControlLog.h"
 
-using std::ifstream;
-using std::getline;
+namespace lyx {
+namespace frontend {
 
-typedef Qt2CB<ControlLog, Qt2DB<QLogDialog> > base_class;
+typedef QController<ControlLog, QView<QLogDialog> > base_class;
 
-QLog::QLog(ControlLog & c)
-       : base_class(c, _("Log"))
-{
-}
+QLog::QLog(Dialog & parent)
+       : base_class(parent, "")
+{}
 
 
 void QLog::build_dialog()
 {
        dialog_.reset(new QLogDialog(this));
-
-       bc().setCancel(dialog_->closePB);
 }
 
 
 void QLog::update_contents()
 {
-       std::pair<Buffer::LogType, string> const logfile = controller().logfile();
-
-       if (logfile.first == Buffer::buildlog)
-               dialog_->setCaption(_("Build log"));
-       else
-               dialog_->setCaption(_("LaTeX log"));
+       setTitle(controller().title());
 
-       dialog_->logTV->setText("");
+       std::ostringstream ss;
+       controller().getContents(ss);
 
-       ifstream ifstr(logfile.second.c_str());
-       if (!ifstr) {
-               if (logfile.first == Buffer::buildlog)
-                       dialog_->logTV->setText(_("No build log file found"));
-               else
-                       dialog_->logTV->setText(_("No LaTeX log file found"));
-               return;
-       }
-
-       string text;
-       string line;
-
-       while (getline(ifstr, line))
-               text += line + "\n";
-       dialog_->logTV->setText(text.c_str());
+       dialog_->logTV->setText(toqstr(ss.str()));
 }
+
+} // namespace frontend
+} // namespace lyx