3 * This file is part of LyX, the document processor.
4 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS.
14 #include "QViewSource.h"
15 #include "QViewSourceDialog.h"
16 #include "qt_helpers.h"
18 #include "frontends/Application.h"
20 #include "controllers/ControlViewSource.h"
24 #include <qtextview.h>
25 #include <qpushbutton.h>
26 #include <qcheckbox.h>
31 typedef QController<ControlViewSource, QView<QViewSourceDialog> > base_class;
33 QViewSource::QViewSource(Dialog & parent)
34 : base_class(parent, lyx::docstring())
38 void QViewSource::build_dialog()
40 dialog_.reset(new QViewSourceDialog(this));
41 dialog_->viewSourceTV->setReadOnly(true);
42 dialog_->viewSourceTV->setTextFormat(Qt::PlainText);
43 // this is personal. I think source code should be in fixed-size font
44 QFont font(toqstr(theApp->typewriterFontName()));
45 font.setFixedPitch(true);
46 font.setStyleHint(QFont::TypeWriter);
47 dialog_->viewSourceTV->setFont(font);
48 // again, personal taste
49 dialog_->viewSourceTV->setWordWrap(QTextEdit::NoWrap);
53 void QViewSource::update_source()
55 bool fullSource = dialog_->viewFullSourceCB->isChecked();
56 dialog_->viewSourceTV->setText(toqstr(controller().updateContent(fullSource)));
60 void QViewSource::update_contents()
62 setTitle(controller().title());
63 if (dialog_->autoUpdateCB->isChecked())
67 } // namespace frontend