Root/
Source at commit 1406 created 12 years 10 months ago. By meklort, Revert drivers.c so that kexts are only loaded when OSBundleRequired is set and that value is not safe mode. Added some comments about it too. | |
---|---|
1 | /******************************************************************************␊ |
2 | *␊ |
3 | * ␊ |
4 | *␊ |
5 | * Copyright (C) 1997-2011 by Dimitri van Heesch.␊ |
6 | *␊ |
7 | * Permission to use, copy, modify, and distribute this software and its␊ |
8 | * documentation under the terms of the GNU General Public License is hereby ␊ |
9 | * granted. No representations are made about the suitability of this software ␊ |
10 | * for any purpose. It is provided "as is" without express or implied warranty.␊ |
11 | * See the GNU General Public License for more details.␊ |
12 | *␊ |
13 | */␊ |
14 | ␊ |
15 | #include "inputbool.h"␊ |
16 | #include "helplabel.h"␊ |
17 | #include <QtGui>␊ |
18 | ␊ |
19 | InputBool::InputBool( QGridLayout *layout, int &row, ␊ |
20 | const QString &id, bool checked,␊ |
21 | const QString &docs )␊ |
22 | : m_default(checked), m_docs(docs), m_id(id)␊ |
23 | {␊ |
24 | m_lab = new HelpLabel(id);␊ |
25 | m_cb = new QCheckBox;␊ |
26 | layout->addWidget(m_lab,row, 0);␊ |
27 | layout->addWidget(m_cb,row, 1);␊ |
28 | m_enabled = true;␊ |
29 | m_state=!checked; // force update␊ |
30 | setValue(checked);␊ |
31 | connect( m_cb, SIGNAL(toggled(bool)), SLOT(setValue(bool)) );␊ |
32 | connect( m_lab, SIGNAL(enter()), SLOT(help()) );␊ |
33 | connect( m_lab, SIGNAL(reset()), SLOT(reset()) );␊ |
34 | row++;␊ |
35 | }␊ |
36 | ␊ |
37 | void InputBool::help()␊ |
38 | {␊ |
39 | showHelp(this);␊ |
40 | }␊ |
41 | ␊ |
42 | void InputBool::setEnabled(bool b)␊ |
43 | { ␊ |
44 | m_enabled = b;␊ |
45 | m_cb->setEnabled(b); ␊ |
46 | updateDependencies();␊ |
47 | }␊ |
48 | ␊ |
49 | void InputBool::updateDependencies()␊ |
50 | {␊ |
51 | for (int i=0;i<m_dependencies.count();i++)␊ |
52 | {␊ |
53 | m_dependencies[i]->setEnabled(m_enabled && m_state);␊ |
54 | }␊ |
55 | }␊ |
56 | ␊ |
57 | void InputBool::setValue( bool s )␊ |
58 | {␊ |
59 | if (m_state!=s) ␊ |
60 | {␊ |
61 | m_state=s;␊ |
62 | updateDefault();␊ |
63 | updateDependencies();␊ |
64 | m_cb->setChecked( s );␊ |
65 | m_value = m_state;␊ |
66 | emit changed();␊ |
67 | }␊ |
68 | }␊ |
69 | ␊ |
70 | void InputBool::updateDefault()␊ |
71 | {␊ |
72 | if (m_state==m_default)␊ |
73 | {␊ |
74 | m_lab->setText(QString::fromAscii("<qt>")+m_id+QString::fromAscii("</qt"));␊ |
75 | }␊ |
76 | else␊ |
77 | {␊ |
78 | m_lab->setText(QString::fromAscii("<qt><font color='red'>")+m_id+QString::fromAscii("</font></qt>"));␊ |
79 | }␊ |
80 | }␊ |
81 | ␊ |
82 | QVariant &InputBool::value()␊ |
83 | {␊ |
84 | return m_value;␊ |
85 | }␊ |
86 | ␊ |
87 | void InputBool::update()␊ |
88 | {␊ |
89 | QString v = m_value.toString().toLower();␊ |
90 | m_state = (v==QString::fromAscii("yes") || ␊ |
91 | v==QString::fromAscii("true") || ␊ |
92 | v==QString::fromAscii("1"));␊ |
93 | m_cb->setChecked( m_state );␊ |
94 | updateDefault();␊ |
95 | updateDependencies();␊ |
96 | }␊ |
97 | ␊ |
98 | void InputBool::reset()␊ |
99 | {␊ |
100 | setValue(m_default);␊ |
101 | }␊ |
102 | ␊ |
103 | void InputBool::writeValue(QTextStream &t,QTextCodec *codec)␊ |
104 | {␊ |
105 | if (m_state) ␊ |
106 | t << codec->fromUnicode(QString::fromAscii("YES")); ␊ |
107 | else ␊ |
108 | t << codec->fromUnicode(QString::fromAscii("NO"));␊ |
109 | }␊ |
110 | ␊ |
111 |