-rw-r--r-- | core/settings/light-and-power/light.cpp | 17 | ||||
-rw-r--r-- | core/settings/light-and-power/lightsettingsbase.ui | 22 | ||||
-rw-r--r-- | core/settings/light-and-power/settings.h | 1 |
3 files changed, 34 insertions, 6 deletions
diff --git a/core/settings/light-and-power/light.cpp b/core/settings/light-and-power/light.cpp index 8721a95..1a94209 100644 --- a/core/settings/light-and-power/light.cpp +++ b/core/settings/light-and-power/light.cpp @@ -119,61 +119,62 @@ LightSettings::LightSettings( QWidget* parent, const char* name, WFlags fl ) int maxbright_ac = ODevice::inst ( )-> displayBrightnessResolution ( ); initbright_ac = config.readNumEntry("BrightnessAC",255); brightness_ac_3->setMaxValue( maxbright_ac ); brightness_ac_3->setTickInterval( QMAX(1,maxbright_ac/16) ); brightness_ac_3->setLineStep( QMAX(1,maxbright_ac/16) ); brightness_ac_3->setPageStep( QMAX(1,maxbright_ac/16) ); brightness_ac_3->setValue( (maxbright_ac*255 - initbright_ac*maxbright_ac)/255 ); // advanced settings config.setGroup( "APM" ); warnintervalBox->setValue( config.readNumEntry("check_interval", 10000)/1000 ); lowSpinBox->setValue( config.readNumEntry("power_verylow", 10 ) ); criticalSpinBox->setValue( config.readNumEntry("power_critical", 5 ) ); // ipaq sensor config.setGroup( "Ipaq_light_sensor" ); auto_brightness->setChecked( config.readNumEntry("LightSensor",1) != 0 ); auto_brightness_ac_3->setChecked( config.readNumEntry("LightSensorAC",1) != 0 ); LightStepSpin->setValue( config.readNumEntry("Steps", 10 ) ); LightMinValueSlider->setValue( config.readNumEntry("MinValue", 70 ) ); connect( LightStepSpin, SIGNAL( valueChanged( int ) ), this, SLOT( slotSliderTicks( int ) ) ) ; LightShiftSpin->setValue( config.readNumEntry("Shift", 0 ) ); connect(brightness, SIGNAL(valueChanged(int)), this, SLOT(applyBrightness())); - connect(brightness_ac_3, SIGNAL(valueChanged(int)), this, SLOT(applyBrightness())); + connect(brightness_ac_3, SIGNAL( valueChanged(int) ), this, SLOT( applyBrightnessAC() ) ); } LightSettings::~LightSettings() { } void LightSettings::slotSliderTicks( int steps ) { LightMinValueSlider->setTickInterval( steps ); } static void set_fl(int bright) { + qDebug( QString("BRIGHT !! : %1").arg( bright ) ); QCopEnvelope e("QPE/System", "setBacklight(int)" ); e << bright; } void LightSettings::reject() { set_fl(initbright); QDialog::reject(); } void LightSettings::accept() { if ( qApp->focusWidget() ) qApp->focusWidget()->clearFocus(); applyBrightness(); // bat int i_dim = (screensaver_dim->isChecked() ? interval_dim->value() : 0); int i_lightoff = (screensaver_lightoff->isChecked() ? interval_lightoff->value() : 0); int i_suspend = interval_suspend->value(); QCopEnvelope e("QPE/System", "setScreenSaverIntervals(int,int,int)" ); e << i_dim << i_lightoff << i_suspend; @@ -218,41 +219,47 @@ void LightSettings::accept() // only make ipaq light sensor entries in config file if on an ipaq if ( ODevice::inst()->model() == Model_iPAQ_H31xx || ODevice::inst()->model() == Model_iPAQ_H36xx || ODevice::inst()->model() == Model_iPAQ_H37xx || ODevice::inst()->model() == Model_iPAQ_H38xx ) { // ipaq sensor config.setGroup( "Ipaq_light_sensor" ); config.writeEntry( "LightSensor", (int)auto_brightness->isChecked() ); config.writeEntry( "LightSensorAC", (int)auto_brightness_ac_3->isChecked() ); config.writeEntry( "Steps", LightStepSpin->value() ); config.writeEntry( "MinValue", LightMinValueSlider->value() ); config.writeEntry( "Shift", LightShiftSpin->value() ); } config.write(); QDialog::accept(); } void LightSettings::applyBrightness() { + if ( !PowerStatus::Online ) { + int bright = ( brightness->value() ) * 255 / brightness->maxValue(); + set_fl(bright); + } +} + +void LightSettings::applyBrightnessAC() +{ + qDebug( QString("SLIDER : %1").arg( brightness_ac_3->value() ) ); // if ac is attached, set directly that sliders setting, else the "on battery" sliders setting if ( PowerStatus::Online ) { - int bright = (brightness_ac_3->maxValue() - brightness_ac_3->value())*255 / brightness_ac_3->maxValue(); - set_fl(bright); - } else { - int bright = (brightness->maxValue()-brightness->value())*255 / brightness->maxValue(); + int bright = ( brightness_ac_3->value() ) * 255 / brightness_ac_3->maxValue(); set_fl(bright); } } void LightSettings::done(int r) { QDialog::done(r); close ( ); } diff --git a/core/settings/light-and-power/lightsettingsbase.ui b/core/settings/light-and-power/lightsettingsbase.ui index fd85017..5e62626 100644 --- a/core/settings/light-and-power/lightsettingsbase.ui +++ b/core/settings/light-and-power/lightsettingsbase.ui @@ -1,38 +1,38 @@ <!DOCTYPE UI><UI> <class>LightSettingsBase</class> <widget> <class>QDialog</class> <property stdset="1"> <name>name</name> <cstring>LightSettingsBase</cstring> </property> <property stdset="1"> <name>geometry</name> <rect> <x>0</x> <y>0</y> - <width>419</width> + <width>415</width> <height>532</height> </rect> </property> <property stdset="1"> <name>caption</name> <string>Light and Power Settings</string> </property> <property stdset="1"> <name>sizeGripEnabled</name> <bool>false</bool> </property> <property> <name>layoutMargin</name> </property> <property> <name>layoutSpacing</name> </property> <vbox> <property stdset="1"> <name>margin</name> <number>3</number> </property> <property stdset="1"> <name>spacing</name> @@ -287,48 +287,52 @@ </property> <property stdset="1"> <name>spacing</name> <number>3</number> </property> <widget> <class>QSlider</class> <property stdset="1"> <name>name</name> <cstring>brightness</cstring> </property> <property stdset="1"> <name>maxValue</name> <number>255</number> </property> <property stdset="1"> <name>lineStep</name> <number>16</number> </property> <property stdset="1"> <name>pageStep</name> <number>16</number> </property> <property stdset="1"> + <name>tracking</name> + <bool>true</bool> + </property> + <property stdset="1"> <name>orientation</name> <enum>Horizontal</enum> </property> <property stdset="1"> <name>tickmarks</name> <enum>Right</enum> </property> <property stdset="1"> <name>tickInterval</name> <number>32</number> </property> </widget> <widget> <class>QLayoutWidget</class> <property stdset="1"> <name>name</name> <cstring>Layout10</cstring> </property> <hbox> <property stdset="1"> <name>margin</name> <number>0</number> </property> <property stdset="1"> @@ -702,60 +706,72 @@ <string>Backlight</string> </property> <property> <name>layoutMargin</name> </property> <property> <name>layoutSpacing</name> </property> <vbox> <property stdset="1"> <name>margin</name> <number>3</number> </property> <property stdset="1"> <name>spacing</name> <number>3</number> </property> <widget> <class>QSlider</class> <property stdset="1"> <name>name</name> <cstring>brightness_ac_3</cstring> </property> <property stdset="1"> + <name>minValue</name> + <number>0</number> + </property> + <property stdset="1"> <name>maxValue</name> <number>255</number> </property> <property stdset="1"> <name>lineStep</name> <number>16</number> </property> <property stdset="1"> <name>pageStep</name> <number>16</number> </property> <property stdset="1"> + <name>value</name> + <number>255</number> + </property> + <property stdset="1"> + <name>tracking</name> + <bool>true</bool> + </property> + <property stdset="1"> <name>orientation</name> <enum>Horizontal</enum> </property> <property stdset="1"> <name>tickmarks</name> <enum>Right</enum> </property> <property stdset="1"> <name>tickInterval</name> <number>32</number> </property> </widget> <widget> <class>QLayoutWidget</class> <property stdset="1"> <name>name</name> <cstring>Layout20</cstring> </property> <hbox> <property stdset="1"> <name>margin</name> <number>0</number> </property> <property stdset="1"> @@ -1186,48 +1202,52 @@ warning at</string> <property stdset="1"> <name>name</name> <cstring>PixmapLabel2_2</cstring> </property> <property stdset="1"> <name>pixmap</name> <pixmap>image0</pixmap> </property> <property stdset="1"> <name>scaledContents</name> <bool>false</bool> </property> </widget> <widget> <class>QSlider</class> <property stdset="1"> <name>name</name> <cstring>LightMinValueSlider</cstring> </property> <property stdset="1"> <name>maxValue</name> <number>127</number> </property> <property stdset="1"> + <name>tracking</name> + <bool>false</bool> + </property> + <property stdset="1"> <name>orientation</name> <enum>Horizontal</enum> </property> <property stdset="1"> <name>tickmarks</name> <enum>Right</enum> </property> </widget> <widget> <class>QLabel</class> <property stdset="1"> <name>name</name> <cstring>PixmapLabel1_2</cstring> </property> <property stdset="1"> <name>pixmap</name> <pixmap>image1</pixmap> </property> <property stdset="1"> <name>scaledContents</name> <bool>false</bool> </property> </widget> </hbox> diff --git a/core/settings/light-and-power/settings.h b/core/settings/light-and-power/settings.h index 77f90d6..adfd735 100644 --- a/core/settings/light-and-power/settings.h +++ b/core/settings/light-and-power/settings.h @@ -21,34 +21,35 @@ #define SETTINGS_H #include <qstrlist.h> #include <qasciidict.h> #include "lightsettingsbase.h" class LightSettings : public LightSettingsBase { Q_OBJECT public: LightSettings( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); ~LightSettings(); protected: void accept(); void reject(); void done ( int r ); private slots: void applyBrightness(); + void applyBrightnessAC(); void slotSliderTicks( int steps ); private: int initbright; int initbright_ac; }; #endif // SETTINGS_H |