]> git.lyx.org Git - lyx.git/blob - src/frontends/qt3/QViewSource.C
compile fix
[lyx.git] / src / frontends / qt3 / QViewSource.C
1 /**
2  * \file QViewSource.C
3  * This file is part of LyX, the document processor.
4  * Licence details can be found in the file COPYING.
5  *
6  * \author John Levon
7  * \author Bo Peng
8  *
9  * Full author contact details are available in file CREDITS.
10  */
11
12 #include <config.h>
13
14 #include "QViewSource.h"
15 #include "QViewSourceDialog.h"
16 #include "qt_helpers.h"
17 #include "lyx_gui.h"
18
19 #include "frontends/Application.h"
20
21 #include "controllers/ControlViewSource.h"
22
23 #include <sstream>
24
25 #include <qtextview.h>
26 #include <qpushbutton.h>
27 #include <qcheckbox.h>
28
29 namespace lyx {
30 namespace frontend {
31
32 typedef QController<ControlViewSource, QView<QViewSourceDialog> > base_class;
33
34 QViewSource::QViewSource(Dialog & parent)
35         : base_class(parent, "")
36 {}
37
38
39 void QViewSource::build_dialog()
40 {
41         dialog_.reset(new QViewSourceDialog(this));
42         dialog_->viewSourceTV->setReadOnly(true);
43         dialog_->viewSourceTV->setTextFormat(Qt::PlainText);
44         // this is personal. I think source code should be in fixed-size font
45         QFont font(toqstr(theApp->typewriterFontName()));
46         font.setFixedPitch(true);
47         font.setStyleHint(QFont::TypeWriter);
48         dialog_->viewSourceTV->setFont(font);
49         // again, personal taste
50         dialog_->viewSourceTV->setWordWrap(QTextEdit::NoWrap);
51 }
52
53
54 void QViewSource::update_source()
55 {
56         bool fullSource = dialog_->viewFullSourceCB->isChecked();
57         dialog_->viewSourceTV->setText(toqstr(controller().updateContent(fullSource)));
58 }
59
60
61 void QViewSource::update_contents()
62 {
63         setTitle(controller().title());
64         if (dialog_->autoUpdateCB->isChecked())
65                 update_source();
66 }
67
68 } // namespace frontend
69 } // namespace lyx