]> git.lyx.org Git - lyx.git/blob - src/frontends/qt4/QIncludeDialog.C
enable Font cache only for MacOSX and inline width() for other platform.
[lyx.git] / src / frontends / qt4 / QIncludeDialog.C
1 /**
2  * \file QIncludeDialog.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  *
8  * Full author contact details are available in file CREDITS.
9  */
10
11 #include <config.h>
12
13 #include "QIncludeDialog.h"
14 #include "QInclude.h"
15 //Added by qt3to4:
16 #include <QCloseEvent>
17 #include "validators.h"
18
19 #include <qpushbutton.h>
20 #include <qcheckbox.h>
21 #include <qlineedit.h>
22
23
24 namespace lyx {
25 namespace frontend {
26
27 QIncludeDialog::QIncludeDialog(QInclude * form)
28         : form_(form)
29 {
30         setupUi(this);
31         connect(okPB, SIGNAL(clicked()),
32                 form, SLOT(slotOK()));
33         connect(closePB, SIGNAL(clicked()),
34                 form, SLOT(slotClose()));
35
36     connect( visiblespaceCB, SIGNAL( toggled(bool) ), this, SLOT( change_adaptor() ) );
37     connect( filenameED, SIGNAL( textChanged(const QString&) ), this, SLOT( change_adaptor() ) );
38     connect( loadPB, SIGNAL( clicked() ), this, SLOT( loadClicked() ) );
39     connect( browsePB, SIGNAL( clicked() ), this, SLOT( browseClicked() ) );
40     connect( typeCO, SIGNAL( activated(int) ), this, SLOT( change_adaptor() ) );
41     connect( typeCO, SIGNAL( activated(int) ), this, SLOT( typeChanged(int) ) );
42     connect( previewCB, SIGNAL( toggled(bool) ), this, SLOT( change_adaptor() ) );
43
44         filenameED->setValidator(new PathValidator(true, filenameED));
45 }
46
47
48 void QIncludeDialog::show()
49 {
50         QDialog::show();
51         filenameED->setFocus();
52 }
53
54
55 void QIncludeDialog::change_adaptor()
56 {
57         form_->changed();
58 }
59
60
61 void QIncludeDialog::closeEvent(QCloseEvent * e)
62 {
63         form_->slotWMHide();
64         e->accept();
65 }
66
67
68 void QIncludeDialog::typeChanged(int v)
69 {
70         switch (v) {
71                 case 0:
72                         visiblespaceCB->setEnabled(false);
73                         visiblespaceCB->setChecked(false);
74                         previewCB->setEnabled(true);
75                         break;
76
77                 case 1:
78                         visiblespaceCB->setEnabled(false);
79                         visiblespaceCB->setChecked(false);
80                         previewCB->setEnabled(false);
81                         previewCB->setChecked(false);
82                         break;
83
84                 default:
85                         visiblespaceCB->setEnabled(true);
86                         previewCB->setEnabled(false);
87                         previewCB->setChecked(false);
88                         break;
89         }
90 }
91
92
93 void QIncludeDialog::loadClicked()
94 {
95         form_->load();
96 }
97
98
99 void QIncludeDialog::browseClicked()
100 {
101         form_->browse();
102 }
103
104 } // namespace frontend
105 } // namespace lyx
106
107 #include "QIncludeDialog_moc.cpp"