3 * Copyright 2001 The LyX Team.
4 * See the file COPYING.
6 * \author Michael Koziarski <michael@koziarski.org>
10 #pragma implementation
19 #include <gtkmm/button.h>
20 #include <gtkmm/textview.h>
21 #include <gtkmm/dialog.h>
23 GLog::GLog(ControlLog & c)
24 : FormCB<ControlLog>(c, "GLog")
34 // Connect the buttons.
35 close_btn()->signal_clicked().connect(SigC::slot(*this, &GLog::CancelClicked));
36 refresh_btn()->signal_clicked().connect(SigC::slot(*this, &GLog::update));
38 // Manage the buttons state
39 bc().setCancel(close_btn());
50 pair<Buffer::LogType, string> const logfile = controller().logfile();
52 if (logfile.first == Buffer::buildlog)
53 dialog()->set_title(_("Build log"));
55 dialog()->set_title(_("LaTeX log"));
57 log_text()->get_buffer()->set_text("");
59 ifstream ifstr(logfile.second.c_str());
61 if (logfile.first == Buffer::buildlog)
62 log_text()->get_buffer()->set_text(_("No build log file found"));
64 log_text()->get_buffer()->set_text(_("No LaTeX log file found"));
71 while (getline(ifstr, line))
74 log_text()->get_buffer()->set_text(text);
78 Gtk::Button * GLog::refresh_btn() const
80 return getWidget<Gtk::Button>("r_refresh_btn");
82 Gtk::Button * GLog::close_btn() const
84 return getWidget<Gtk::Button>("r_close_btn");
86 Gtk::TextView * GLog::log_text() const
88 return getWidget<Gtk::TextView>("r_log_text");