Diffstat (limited to 'core/settings/light-and-power/light.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | core/settings/light-and-power/light.cpp | 64 |
1 files changed, 49 insertions, 15 deletions
diff --git a/core/settings/light-and-power/light.cpp b/core/settings/light-and-power/light.cpp index 6115178..d6d09a1 100644 --- a/core/settings/light-and-power/light.cpp +++ b/core/settings/light-and-power/light.cpp | |||
@@ -15,9 +15,9 @@ | |||
15 | : .. .:, . . . without even the implied warranty of | 15 | : .. .:, . . . without even the implied warranty of |
16 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A | 16 | =_ + =;=|` MERCHANTABILITY or FITNESS FOR A |
17 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General | 17 | _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General |
18 | ..}^=.= = ; Public License for more details. | 18 | ..}^=.= = ; Public License for more details. |
19 | ++= -. .` .: | 19 | ++= -. .` .: |
20 | : = ...= . :.=- You should have received a copy of the GNU | 20 | : = ...= . :.=- You should have received a copy of the GNU |
21 | -. .:....=;==+<; General Public License along with this file; | 21 | -. .:....=;==+<; General Public License along with this file; |
22 | -_. . . )=. = see the file COPYING. If not, write to the | 22 | -_. . . )=. = see the file COPYING. If not, write to the |
23 | -- :-=` Free Software Foundation, Inc., | 23 | -- :-=` Free Software Foundation, Inc., |
@@ -33,8 +33,9 @@ | |||
33 | #if defined(Q_WS_QWS) && !defined(QT_NO_COP) | 33 | #if defined(Q_WS_QWS) && !defined(QT_NO_COP) |
34 | #include <qpe/qcopenvelope_qws.h> | 34 | #include <qpe/qcopenvelope_qws.h> |
35 | #endif | 35 | #endif |
36 | 36 | ||
37 | #include <qlabel.h> | ||
37 | #include <qcheckbox.h> | 38 | #include <qcheckbox.h> |
38 | #include <qtabwidget.h> | 39 | #include <qtabwidget.h> |
39 | #include <qslider.h> | 40 | #include <qslider.h> |
40 | #include <qspinbox.h> | 41 | #include <qspinbox.h> |
@@ -53,31 +54,49 @@ LightSettings::LightSettings( QWidget* parent, const char* name, WFlags ) | |||
53 | { | 54 | { |
54 | m_bres = ODevice::inst ( )-> displayBrightnessResolution ( ); | 55 | m_bres = ODevice::inst ( )-> displayBrightnessResolution ( ); |
55 | m_cres = ODevice::inst ( )-> displayContrastResolution ( ); | 56 | m_cres = ODevice::inst ( )-> displayContrastResolution ( ); |
56 | 57 | ||
58 | // check whether to show the light sensor stuff | ||
59 | |||
57 | if ( !ODevice::inst ( )-> hasLightSensor ( )) { | 60 | if ( !ODevice::inst ( )-> hasLightSensor ( )) { |
58 | auto_brightness-> hide ( ); | 61 | auto_brightness-> hide ( ); |
59 | CalibrateLightSensor-> hide ( ); | 62 | CalibrateLightSensor-> hide ( ); |
60 | auto_brightness_ac-> hide ( ); | 63 | auto_brightness_ac-> hide ( ); |
61 | CalibrateLightSensor_ac-> hide ( ); | 64 | CalibrateLightSensor_ac-> hide ( ); |
62 | } | 65 | } |
66 | |||
67 | // check whether to show the contrast stuff | ||
68 | |||
63 | if (m_cres) { | 69 | if (m_cres) { |
64 | GroupLight->setTitle(tr("Backlight && Contrast")); | 70 | GroupLight->setTitle(tr("Backlight && Contrast")); |
65 | GroupLight_ac->setTitle(GroupLight->title()); | 71 | GroupLight_ac->setTitle(GroupLight->title()); |
66 | } else { | 72 | } else { |
67 | contrast->hide(); | 73 | contrast->hide(); |
68 | contrast_ac->hide(); | 74 | contrast_ac->hide(); |
69 | } | 75 | } |
70 | 76 | ||
77 | // check whether to show the cpu frequency stuff | ||
78 | |||
71 | QStrList freq = ODevice::inst()->allowedCpuFrequencies(); | 79 | QStrList freq = ODevice::inst()->allowedCpuFrequencies(); |
72 | if ( freq.count() ) { | 80 | if ( freq.count() ) { |
73 | frequency->insertStrList( freq ); | 81 | frequency->insertStrList( freq ); |
74 | frequency_ac->insertStrList( freq ); | 82 | frequency_ac->insertStrList( freq ); |
75 | } else { | 83 | } else { |
84 | frequencyLabel->hide(); | ||
76 | frequency->hide(); | 85 | frequency->hide(); |
86 | frequencyLabel_ac->hide(); | ||
77 | frequency_ac->hide(); | 87 | frequency_ac->hide(); |
78 | } | 88 | } |
79 | 89 | ||
90 | // check whether to show the hinge action stuff | ||
91 | |||
92 | if ( !ODevice::inst()->hasHingeSensor() ) { | ||
93 | closeHingeLabel->hide(); | ||
94 | closeHingeAction->hide(); | ||
95 | closeHingeLabel_ac->hide(); | ||
96 | closeHingeAction_ac->hide(); | ||
97 | } | ||
98 | |||
80 | Config config ( "apm" ); | 99 | Config config ( "apm" ); |
81 | config. setGroup ( "Battery" ); | 100 | config. setGroup ( "Battery" ); |
82 | 101 | ||
83 | // battery spinboxes | 102 | // battery spinboxes |
@@ -90,9 +109,12 @@ LightSettings::LightSettings( QWidget* parent, const char* name, WFlags ) | |||
90 | 109 | ||
91 | // CPU frequency | 110 | // CPU frequency |
92 | frequency->setCurrentItem( config.readNumEntry("Freq", 0) ); | 111 | frequency->setCurrentItem( config.readNumEntry("Freq", 0) ); |
93 | 112 | ||
94 | int bright = config. readNumEntry ( "Brightness", 127 ); | 113 | // hinge action |
114 | closeHingeAction->setCurrentItem( config.readNumEntry("CloseHingeAction", 0) ); | ||
115 | |||
116 | int bright = config. readNumEntry ( "Brightness", 127 ); | ||
95 | int contr = m_oldcontrast = config. readNumEntry ( "Contrast", 127 ); | 117 | int contr = m_oldcontrast = config. readNumEntry ( "Contrast", 127 ); |
96 | brightness-> setTickInterval ( QMAX( 16, 256 / m_bres )); | 118 | brightness-> setTickInterval ( QMAX( 16, 256 / m_bres )); |
97 | brightness-> setLineStep ( QMAX( 1, 256 / m_bres )); | 119 | brightness-> setLineStep ( QMAX( 1, 256 / m_bres )); |
98 | brightness-> setPageStep ( QMAX( 1, 256 / m_bres )); | 120 | brightness-> setPageStep ( QMAX( 1, 256 / m_bres )); |
@@ -109,9 +131,9 @@ LightSettings::LightSettings( QWidget* parent, const char* name, WFlags ) | |||
109 | auto_brightness-> setChecked ( config. readBoolEntry ( "LightSensor", false )); | 131 | auto_brightness-> setChecked ( config. readBoolEntry ( "LightSensor", false )); |
110 | m_sensordata = config. readListEntry ( "LightSensorData", ';' ); | 132 | m_sensordata = config. readListEntry ( "LightSensorData", ';' ); |
111 | 133 | ||
112 | config. setGroup ( "AC" ); | 134 | config. setGroup ( "AC" ); |
113 | 135 | ||
114 | // ac spinboxes | 136 | // ac spinboxes |
115 | interval_dim_ac-> setValue ( config. readNumEntry ( "Dim", 60 )); | 137 | interval_dim_ac-> setValue ( config. readNumEntry ( "Dim", 60 )); |
116 | interval_lightoff_ac-> setValue ( config. readNumEntry ( "LightOff", 120 )); | 138 | interval_lightoff_ac-> setValue ( config. readNumEntry ( "LightOff", 120 )); |
117 | interval_suspend_ac-> setValue ( config. readNumEntry ( "Suspend", 0 )); | 139 | interval_suspend_ac-> setValue ( config. readNumEntry ( "Suspend", 0 )); |
@@ -121,8 +143,11 @@ LightSettings::LightSettings( QWidget* parent, const char* name, WFlags ) | |||
121 | 143 | ||
122 | // CPU frequency | 144 | // CPU frequency |
123 | frequency_ac->setCurrentItem( config.readNumEntry("Freq", 0) ); | 145 | frequency_ac->setCurrentItem( config.readNumEntry("Freq", 0) ); |
124 | 146 | ||
147 | // hinge action | ||
148 | closeHingeAction_ac->setCurrentItem( config.readNumEntry("CloseHingeAction", 0) ); | ||
149 | |||
125 | bright = config. readNumEntry ( "Brightness", 255 ); | 150 | bright = config. readNumEntry ( "Brightness", 255 ); |
126 | brightness_ac-> setTickInterval ( QMAX( 16, 256 / m_bres )); | 151 | brightness_ac-> setTickInterval ( QMAX( 16, 256 / m_bres )); |
127 | brightness_ac-> setLineStep ( QMAX( 1, 256 / m_bres )); | 152 | brightness_ac-> setLineStep ( QMAX( 1, 256 / m_bres )); |
128 | brightness_ac-> setPageStep ( QMAX( 1, 256 / m_bres )); | 153 | brightness_ac-> setPageStep ( QMAX( 1, 256 / m_bres )); |
@@ -138,10 +163,10 @@ LightSettings::LightSettings( QWidget* parent, const char* name, WFlags ) | |||
138 | 163 | ||
139 | // light sensor | 164 | // light sensor |
140 | auto_brightness_ac-> setChecked ( config. readBoolEntry ( "LightSensor", false )); | 165 | auto_brightness_ac-> setChecked ( config. readBoolEntry ( "LightSensor", false )); |
141 | m_sensordata_ac = config. readListEntry ( "LightSensorData", ';' ); | 166 | m_sensordata_ac = config. readListEntry ( "LightSensorData", ';' ); |
142 | 167 | ||
143 | // advanced settings | 168 | // warnings |
144 | config. setGroup ( "Warnings" ); | 169 | config. setGroup ( "Warnings" ); |
145 | warnintervalBox-> setValue ( config. readNumEntry ( "checkinterval", 10000 ) / 1000 ); | 170 | warnintervalBox-> setValue ( config. readNumEntry ( "checkinterval", 10000 ) / 1000 ); |
146 | lowSpinBox-> setValue ( config. readNumEntry ( "powerverylow", 10 ) ); | 171 | lowSpinBox-> setValue ( config. readNumEntry ( "powerverylow", 10 ) ); |
147 | criticalSpinBox-> setValue ( config. readNumEntry ( "powercritical", 5 ) ); | 172 | criticalSpinBox-> setValue ( config. readNumEntry ( "powercritical", 5 ) ); |
@@ -149,24 +174,27 @@ LightSettings::LightSettings( QWidget* parent, const char* name, WFlags ) | |||
149 | m_resettimer = new QTimer ( this ); | 174 | m_resettimer = new QTimer ( this ); |
150 | connect ( m_resettimer, SIGNAL( timeout ( )), this, SLOT( resetBacklight ( ))); | 175 | connect ( m_resettimer, SIGNAL( timeout ( )), this, SLOT( resetBacklight ( ))); |
151 | 176 | ||
152 | if ( PowerStatusManager::readStatus ( ). acStatus ( ) != PowerStatus::Online ) { | 177 | if ( PowerStatusManager::readStatus ( ). acStatus ( ) != PowerStatus::Online ) { |
153 | tabs-> setCurrentPage ( 0 ); | 178 | tabs-> setCurrentPage ( 0 ); |
154 | } | 179 | } |
155 | else { | 180 | else { |
156 | tabs-> setCurrentPage ( 1 ); | 181 | tabs-> setCurrentPage ( 1 ); |
157 | } | 182 | } |
158 | 183 | ||
159 | connect ( brightness, SIGNAL( valueChanged ( int )), this, SLOT( setBacklight ( int ))); | 184 | connect ( brightness, SIGNAL( valueChanged ( int )), this, SLOT( setBacklight ( int ))); |
160 | connect ( brightness_ac, SIGNAL( valueChanged ( int )), this, SLOT( setBacklight ( int ))); | 185 | connect ( brightness_ac, SIGNAL( valueChanged ( int )), this, SLOT( setBacklight ( int ))); |
161 | if (m_cres) { | 186 | if (m_cres) { |
162 | connect ( contrast, SIGNAL( valueChanged ( int )), this, SLOT( setContrast ( int ))); | 187 | connect ( contrast, SIGNAL( valueChanged ( int )), this, SLOT( setContrast ( int ))); |
163 | connect ( contrast_ac, SIGNAL( valueChanged ( int )), this, SLOT( setContrast ( int ))); | 188 | connect ( contrast_ac, SIGNAL( valueChanged ( int )), this, SLOT( setContrast ( int ))); |
164 | } | 189 | } |
165 | connect( frequency, SIGNAL( activated(int) ), this, SLOT( setFrequency(int) ) ); | 190 | connect( frequency, SIGNAL( activated(int) ), this, SLOT( setFrequency(int) ) ); |
191 | connect( frequency_ac, SIGNAL( activated(int) ), this, SLOT( setFrequency(int) ) ); | ||
192 | connect( closeHingeAction, SIGNAL( activated(int) ), this, SLOT( setCloseHingeAction(int) ) ); | ||
193 | connect( closeHingeAction_ac, SIGNAL( activated(int) ), this, SLOT( setCloseHingeAction(int) ) ); | ||
166 | } | 194 | } |
167 | 195 | ||
168 | LightSettings::~LightSettings ( ) | 196 | LightSettings::~LightSettings ( ) |
169 | { | 197 | { |
170 | } | 198 | } |
171 | 199 | ||
172 | void LightSettings::calibrateSensor ( ) | 200 | void LightSettings::calibrateSensor ( ) |
@@ -190,25 +218,24 @@ void LightSettings::calibrateSensorAC ( ) | |||
190 | void LightSettings::setBacklight ( int bright ) | 218 | void LightSettings::setBacklight ( int bright ) |
191 | { | 219 | { |
192 | QCopEnvelope e ( "QPE/System", "setBacklight(int)" ); | 220 | QCopEnvelope e ( "QPE/System", "setBacklight(int)" ); |
193 | e << bright; | 221 | e << bright; |
194 | 222 | ||
195 | if ( bright != -1 ) { | 223 | if ( bright != -1 ) { |
196 | m_resettimer-> stop ( ); | 224 | m_resettimer-> stop ( ); |
197 | m_resettimer-> start ( 4000, true ); | 225 | m_resettimer-> start ( 4000, true ); |
198 | } | 226 | } |
199 | } | 227 | } |
200 | 228 | ||
201 | void LightSettings::setContrast ( int contr ) | 229 | void LightSettings::setContrast ( int contr ) |
202 | { | 230 | { |
203 | if (contr == -1) contr = m_oldcontrast; | 231 | if (contr == -1) contr = m_oldcontrast; |
204 | |||
205 | ODevice::inst ( )-> setDisplayContrast(contr); | 232 | ODevice::inst ( )-> setDisplayContrast(contr); |
206 | } | 233 | } |
207 | 234 | ||
208 | void LightSettings::setFrequency ( int index ) | 235 | void LightSettings::setFrequency ( int index ) |
209 | { | 236 | { |
210 | qWarning("LightSettings::setFrequency(%d)", index); | 237 | qWarning("LightSettings::setFrequency(%d)", index); |
211 | ODevice::inst ( )-> setCurrentCpuFrequency(index); | 238 | ODevice::inst ( )-> setCurrentCpuFrequency(index); |
212 | } | 239 | } |
213 | 240 | ||
214 | void LightSettings::resetBacklight ( ) | 241 | void LightSettings::resetBacklight ( ) |
@@ -216,8 +243,13 @@ void LightSettings::resetBacklight ( ) | |||
216 | setBacklight ( -1 ); | 243 | setBacklight ( -1 ); |
217 | setContrast ( -1 ); | 244 | setContrast ( -1 ); |
218 | } | 245 | } |
219 | 246 | ||
247 | void LightSettings::setCloseHingeAction ( int index ) | ||
248 | { | ||
249 | qWarning("LightSettings::setCloseHingeStatus(%d)", index); | ||
250 | } | ||
251 | |||
220 | void LightSettings::accept ( ) | 252 | void LightSettings::accept ( ) |
221 | { | 253 | { |
222 | Config config ( "apm" ); | 254 | Config config ( "apm" ); |
223 | 255 | ||
@@ -230,8 +262,9 @@ void LightSettings::accept ( ) | |||
230 | config. writeEntry ( "Brightness", brightness-> value () ); | 262 | config. writeEntry ( "Brightness", brightness-> value () ); |
231 | if (m_cres) | 263 | if (m_cres) |
232 | config. writeEntry ( "Contrast", contrast-> value () ); | 264 | config. writeEntry ( "Contrast", contrast-> value () ); |
233 | config. writeEntry ( "Freq", frequency->currentItem() ); | 265 | config. writeEntry ( "Freq", frequency->currentItem() ); |
266 | config. writeEntry ( "CloseHingeAction", closeHingeAction->currentItem() ); | ||
234 | 267 | ||
235 | // ac | 268 | // ac |
236 | config. setGroup ( "AC" ); | 269 | config. setGroup ( "AC" ); |
237 | config. writeEntry ( "LcdOffOnly", LcdOffOnly_ac-> isChecked ( )); | 270 | config. writeEntry ( "LcdOffOnly", LcdOffOnly_ac-> isChecked ( )); |
@@ -241,10 +274,11 @@ void LightSettings::accept ( ) | |||
241 | config. writeEntry ( "Brightness", brightness_ac-> value () ); | 274 | config. writeEntry ( "Brightness", brightness_ac-> value () ); |
242 | if (m_cres) | 275 | if (m_cres) |
243 | config. writeEntry ( "Contrast", contrast_ac-> value () ); | 276 | config. writeEntry ( "Contrast", contrast_ac-> value () ); |
244 | config. writeEntry ( "Freq", frequency_ac->currentItem() ); | 277 | config. writeEntry ( "Freq", frequency_ac->currentItem() ); |
278 | config. writeEntry ( "CloseHingeAction", closeHingeAction_ac->currentItem() ); | ||
245 | 279 | ||
246 | // only make light sensor stuff appear if the unit has a sensor | 280 | // only make light sensor stuff appear if the unit has a sensor |
247 | if ( ODevice::inst ( )-> hasLightSensor ( )) { | 281 | if ( ODevice::inst ( )-> hasLightSensor ( )) { |
248 | config. setGroup ( "Battery" ); | 282 | config. setGroup ( "Battery" ); |
249 | config. writeEntry ( "LightSensor", auto_brightness->isChecked() ); | 283 | config. writeEntry ( "LightSensor", auto_brightness->isChecked() ); |
250 | config. writeEntry ( "LightSensorData", m_sensordata, ';' ); | 284 | config. writeEntry ( "LightSensorData", m_sensordata, ';' ); |
@@ -274,8 +308,8 @@ void LightSettings::accept ( ) | |||
274 | void LightSettings::done ( int r ) | 308 | void LightSettings::done ( int r ) |
275 | { | 309 | { |
276 | m_resettimer-> stop ( ); | 310 | m_resettimer-> stop ( ); |
277 | resetBacklight ( ); | 311 | resetBacklight ( ); |
278 | 312 | ||
279 | LightSettingsBase::done ( r ); | 313 | LightSettingsBase::done ( r ); |
280 | close ( ); | 314 | close ( ); |
281 | } | 315 | } |