summaryrefslogtreecommitdiff
path: root/core/settings
Side-by-side diff
Diffstat (limited to 'core/settings') (more/less context) (show whitespace changes)
-rw-r--r--core/settings/light-and-power/light.cpp28
-rw-r--r--core/settings/light-and-power/light.h3
2 files changed, 30 insertions, 1 deletions
diff --git a/core/settings/light-and-power/light.cpp b/core/settings/light-and-power/light.cpp
index 8b98672..68c2929 100644
--- a/core/settings/light-and-power/light.cpp
+++ b/core/settings/light-and-power/light.cpp
@@ -41,8 +41,9 @@
#include <qtimer.h>
#include <qspinbox.h>
#include <qpushbutton.h>
#include <qgroupbox.h>
+#include <qcombobox.h>
#include <opie/odevice.h>
#include "sensor.h"
@@ -61,14 +62,24 @@ LightSettings::LightSettings( QWidget* parent, const char* name, WFlags )
auto_brightness_ac-> hide ( );
CalibrateLightSensor_ac-> hide ( );
}
if (m_cres) {
- GroupLight->setTitle(tr("Backlight & Contrast"));
+ GroupLight->setTitle(tr("Backlight && Contrast"));
+ GroupLight_ac->setTitle(GroupLight->title());
} else {
contrast->hide();
contrast_ac->hide();
}
+ QStrList freq = ODevice::inst()->cpuFrequencies();
+ if ( freq.count() ) {
+ frequency->insertStrList( freq );
+ frequency_ac->insertStrList( freq );
+ } else {
+ frequency->hide();
+ frequency_ac->hide();
+ }
+
Config config ( "apm" );
config. setGroup ( "Battery" );
// battery spinboxes
@@ -78,8 +89,11 @@ LightSettings::LightSettings( QWidget* parent, const char* name, WFlags )
// battery check and slider
LcdOffOnly-> setChecked ( config. readBoolEntry ( "LcdOffOnly", false ));
+ // CPU frequency
+ frequency->setCurrentItem( config.readNumEntry("Freq", 0) );
+
int bright = config. readNumEntry ( "Brightness", 127 );
int contr = m_oldcontrast = config. readNumEntry ( "Contrast", 127 );
brightness-> setTickInterval ( QMAX( 16, 256 / m_bres ));
brightness-> setLineStep ( QMAX( 1, 256 / m_bres ));
@@ -106,8 +120,11 @@ LightSettings::LightSettings( QWidget* parent, const char* name, WFlags )
// ac check and slider
LcdOffOnly_ac-> setChecked ( config. readBoolEntry ( "LcdOffOnly", false ));
+ // CPU frequency
+ frequency_ac->setCurrentItem( config.readNumEntry("Freq", 0) );
+
bright = config. readNumEntry ( "Brightness", 255 );
brightness_ac-> setTickInterval ( QMAX( 16, 256 / m_bres ));
brightness_ac-> setLineStep ( QMAX( 1, 256 / m_bres ));
brightness_ac-> setPageStep ( QMAX( 1, 256 / m_bres ));
@@ -146,8 +163,9 @@ LightSettings::LightSettings( QWidget* parent, const char* name, WFlags )
if (m_cres) {
connect ( contrast, SIGNAL( valueChanged ( int )), this, SLOT( setContrast ( int )));
connect ( contrast_ac, SIGNAL( valueChanged ( int )), this, SLOT( setContrast ( int )));
}
+ connect( frequency, SIGNAL( activated(int) ), this, SLOT( setFrequency(int) ) );
}
LightSettings::~LightSettings ( )
{
@@ -188,8 +206,14 @@ void LightSettings::setContrast ( int contr )
ODevice::inst ( )-> setDisplayContrast(contr);
}
+void LightSettings::setFrequency ( int index )
+{
+qWarning("LightSettings::setFrequency(%d)", index);
+ ODevice::inst ( )-> setCpuFrequency(index);
+}
+
void LightSettings::resetBacklight ( )
{
setBacklight ( -1 );
setContrast ( -1 );
@@ -207,8 +231,9 @@ void LightSettings::accept ( )
config. writeEntry ( "Suspend", interval_suspend-> value ( ));
config. writeEntry ( "Brightness", brightness-> value () );
if (m_cres)
config. writeEntry ( "Contrast", contrast-> value () );
+ config. writeEntry ( "Freq", frequency->currentItem() );
// ac
config. setGroup ( "AC" );
config. writeEntry ( "LcdOffOnly", LcdOffOnly_ac-> isChecked ( ));
@@ -217,8 +242,9 @@ void LightSettings::accept ( )
config. writeEntry ( "Suspend", interval_suspend_ac-> value ( ));
config. writeEntry ( "Brightness", brightness_ac-> value () );
if (m_cres)
config. writeEntry ( "Contrast", contrast_ac-> value () );
+ config. writeEntry ( "Freq", frequency_ac->currentItem() );
// only make light sensor stuff appear if the unit has a sensor
if ( ODevice::inst ( )-> hasLightSensor ( )) {
config. setGroup ( "Battery" );
diff --git a/core/settings/light-and-power/light.h b/core/settings/light-and-power/light.h
index 4a8bf6b..c48e5f6 100644
--- a/core/settings/light-and-power/light.h
+++ b/core/settings/light-and-power/light.h
@@ -29,8 +29,9 @@
#define __LIGHT_H__
#include <qstringlist.h>
+#include <qlistbox.h>
#include "lightsettingsbase.h"
class QTimer;
@@ -50,14 +51,16 @@ protected slots:
virtual void calibrateSensor ( );
virtual void calibrateSensorAC ( );
void setBacklight ( int );
void setContrast ( int );
+ void setFrequency ( int );
void resetBacklight ( );
private:
int m_bres;
int m_cres;
int m_oldcontrast;
+ int m_oldfreq;
QTimer *m_resettimer;
QStringList m_sensordata;
QStringList m_sensordata_ac;
};