]> git.lyx.org Git - features.git/blobdiff - src/frontends/qt2/QLog.C
Replace LString.h with support/std_string.h,
[features.git] / src / frontends / qt2 / QLog.C
index 7759a52fe053225de69644c2d4f01aca574ef927..ce55736dfd8ce6293a6839707e5d75107439abca 100644 (file)
@@ -1,17 +1,19 @@
 /**
  * \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 "qt_helpers.h"
+#include "ControlLog.h"
+#include "support/std_sstream.h"
 
 #include <qtextview.h>
 #include <qpushbutton.h>
 #include "QLogDialog.h"
 #include "QLog.h"
 #include "Qt2BC.h"
-#include "gettext.h"
 
-#include "QtLyXView.h"
-#include "ControlLog.h"
+#include <fstream>
 
 using std::ifstream;
 using std::getline;
 
-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, _("LyX: LaTeX Log"))
 {
 }
 
@@ -39,35 +39,33 @@ void QLog::build_dialog()
 {
        dialog_.reset(new QLogDialog(this));
 
-       bc().setCancel(dialog_->closePB);
+       bcview().setCancel(dialog_->closePB);
 }
 
 
 void QLog::update_contents()
 {
-       std::pair<Buffer::LogType, string> const logfile = controller().logfile();
+       std::pair<Buffer::LogType, string> const & logfile =
+               controller().logfile();
 
        if (logfile.first == Buffer::buildlog)
-               dialog_->setCaption(_("Build log"));
+               setTitle(_("Build log"));
        else
-               dialog_->setCaption(_("LaTeX log"));
+               setTitle(_("LaTeX log"));
 
        dialog_->logTV->setText("");
 
        ifstream ifstr(logfile.second.c_str());
        if (!ifstr) {
                if (logfile.first == Buffer::buildlog)
-                       dialog_->logTV->setText(_("No build log file found"));
+                       dialog_->logTV->setText(qt_("No build log file found."));
                else
-                       dialog_->logTV->setText(_("No LaTeX log file found"));
+                       dialog_->logTV->setText(qt_("No LaTeX log file found."));
                return;
        }
 
-       string text;
-       string line;
-
-       while (getline(ifstr, line))
-               text += line + "\n";
+       ostringstream ost;
+       ost << ifstr.rdbuf();
 
-       dialog_->logTV->setText(text.c_str());
+       dialog_->logTV->setText(toqstr(ost.str()));
 }