1 /***************************************************************************
3 viewing options dialog page
5 -----------------------------------------------------------------------
7 begin : Fri Sep 10 16:42:01 1999
9 copyright : (C) 1999-2001 Ewald Arnold
10 (C) 2001 The KDE-EDU team
11 email : kvoctrain@ewald-arnold.de
13 -----------------------------------------------------------------------
15 ***************************************************************************/
17 /***************************************************************************
19 * This program is free software; you can redistribute it and/or modify *
20 * it under the terms of the GNU General Public License as published by *
21 * the Free Software Foundation; either version 2 of the License, or *
22 * (at your option) any later version. *
24 ***************************************************************************/
26 #include <kapplication.h>
27 #include <kfontdialog.h>
28 #include <kcolorbutton.h>
32 #include <qcheckbox.h>
34 #include "ViewOptPage.h"
36 #include <QueryManager.h>
38 #include <kstandarddirs.h>
42 ViewOptPage::ViewOptPage
51 ViewOptPageForm( parent
, name
), tablefont(_tablefont
), ipa_font(_ipa_font
)
53 connect( kcfg_gradeCol0
, SIGNAL(changed(const QColor
&)), SLOT(slotCol0(const QColor
&)) );
54 connect( kcfg_gradeCol1
, SIGNAL(changed(const QColor
&)), SLOT(slotCol1(const QColor
&)) );
55 connect( kcfg_gradeCol2
, SIGNAL(changed(const QColor
&)), SLOT(slotCol2(const QColor
&)) );
56 connect( kcfg_gradeCol3
, SIGNAL(changed(const QColor
&)), SLOT(slotCol3(const QColor
&)) );
57 connect( kcfg_gradeCol4
, SIGNAL(changed(const QColor
&)), SLOT(slotCol4(const QColor
&)) );
58 connect( kcfg_gradeCol5
, SIGNAL(changed(const QColor
&)), SLOT(slotCol5(const QColor
&)) );
59 connect( kcfg_gradeCol6
, SIGNAL(changed(const QColor
&)), SLOT(slotCol6(const QColor
&)) );
60 connect( kcfg_gradeCol7
, SIGNAL(changed(const QColor
&)), SLOT(slotCol7(const QColor
&)) );
61 connect( kcfg_useGradeCol
, SIGNAL(toggled(bool)), SLOT(slotColUsed(bool)) );
62 connect( b_choose
, SIGNAL(clicked()), SLOT(slotChooseFont()) );
63 connect( b_choose_ipa
, SIGNAL(clicked()), SLOT(slotChooseIPAFont()) );
65 setCaption( kapp
->makeStdCaption(i18n("Document Properties" )));
67 e_font
->setText (QString("%1 %2pt").arg(tablefont
.family()).arg(tablefont
.pointSize()));
68 e_ipa_font
->setText (QString("%1 %2pt").arg(ipa_font
.family()).arg(ipa_font
.pointSize()));
70 kcfg_gradeCol0
->setColor (Prefs::gradeCol(0));
71 kcfg_gradeCol1
->setColor (Prefs::gradeCol(1));
72 kcfg_gradeCol2
->setColor (Prefs::gradeCol(2));
73 kcfg_gradeCol3
->setColor (Prefs::gradeCol(3));
74 kcfg_gradeCol4
->setColor (Prefs::gradeCol(4));
75 kcfg_gradeCol5
->setColor (Prefs::gradeCol(5));
76 kcfg_gradeCol6
->setColor (Prefs::gradeCol(6));
77 kcfg_gradeCol7
->setColor (Prefs::gradeCol(7));
78 kcfg_useGradeCol
->setChecked (Prefs::useGradeCol());
79 slotColUsed(Prefs::useGradeCol());
83 void ViewOptPage::initFocus() const
85 kcfg_useGradeCol
->setFocus();
89 void ViewOptPage::slotChooseFont()
91 KFontDialog
fdlg (0L, 0L, false, true);
92 fdlg
.setCaption(i18n("Choose Table Font"));
93 fdlg
.setFont(tablefont
);
94 if (fdlg
.exec() == QDialog::Accepted
) {
95 tablefont
= fdlg
.font();
96 tablefont
.setWeight(QFont::Normal
);
97 tablefont
.setStrikeOut(false);
98 tablefont
.setUnderline(false);
99 e_font
->setText (QString("%1 %2pt").arg(tablefont
.family()).arg(tablefont
.pointSize()));
104 void ViewOptPage::slotChooseIPAFont()
106 KFontDialog
fdlg (0L, 0L, false, true);
107 fdlg
.setCaption(i18n("Choose IPA Font"));
108 fdlg
.setFont(ipa_font
);
109 if (fdlg
.exec() == QDialog::Accepted
) {
110 ipa_font
= fdlg
.font();
111 ipa_font
.setWeight(QFont::Normal
);
112 ipa_font
.setStrikeOut(false);
113 ipa_font
.setUnderline(false);
114 e_ipa_font
->setText (QString("%1 %2pt").arg(ipa_font
.family()).arg(ipa_font
.pointSize()));
119 void ViewOptPage::slotCol0(const QColor
&col
)
121 Prefs::setGradeCol(0, col
);
125 void ViewOptPage::slotCol1(const QColor
&col
)
127 Prefs::setGradeCol(1, col
);
131 void ViewOptPage::slotCol2(const QColor
&col
)
133 Prefs::setGradeCol(2, col
);
137 void ViewOptPage::slotCol3(const QColor
&col
)
139 Prefs::setGradeCol(3, col
);
143 void ViewOptPage::slotCol4(const QColor
&col
)
145 Prefs::setGradeCol(4, col
);
149 void ViewOptPage::slotCol5(const QColor
&col
)
151 Prefs::setGradeCol(5, col
);
155 void ViewOptPage::slotCol6(const QColor
&col
)
157 Prefs::setGradeCol(6, col
);
161 void ViewOptPage::slotCol7(const QColor
&col
)
163 Prefs::setGradeCol(7, col
);
167 void ViewOptPage::slotColUsed(bool used
)
169 Prefs::setUseGradeCol(used
);
171 kcfg_gradeCol0
->setEnabled(used
);
172 kcfg_gradeCol1
->setEnabled(used
);
173 kcfg_gradeCol2
->setEnabled(used
);
174 kcfg_gradeCol3
->setEnabled(used
);
175 kcfg_gradeCol4
->setEnabled(used
);
176 kcfg_gradeCol5
->setEnabled(used
);
177 kcfg_gradeCol6
->setEnabled(used
);
178 kcfg_gradeCol7
->setEnabled(used
);
180 l_lev0
->setEnabled(used
);
181 l_lev1
->setEnabled(used
);
182 l_lev2
->setEnabled(used
);
183 l_lev3
->setEnabled(used
);
184 l_lev4
->setEnabled(used
);
185 l_lev5
->setEnabled(used
);
186 l_lev6
->setEnabled(used
);
187 l_lev7
->setEnabled(used
);
190 void ViewOptPage::keyPressEvent( QKeyEvent
*e
)
192 if (e
->state() & AltButton
& ControlButton
& ShiftButton
== 0) {
193 if ( e
->key() == Key_Escape
)
195 else if ( e
->key() == Key_Enter
196 ||e
->key() == Key_Return
)
204 #include "ViewOptPage.moc"