-rw-r--r-- | core/settings/light-and-power/calibration.cpp | 1 | ||||
-rw-r--r-- | core/settings/light-and-power/light.cpp | 2 | ||||
-rw-r--r-- | core/settings/light-and-power/main.cpp | 3 | ||||
-rw-r--r-- | core/settings/light-and-power/sensor.cpp | 1 |
4 files changed, 0 insertions, 7 deletions
diff --git a/core/settings/light-and-power/calibration.cpp b/core/settings/light-and-power/calibration.cpp index c5377d0..504520e 100644 --- a/core/settings/light-and-power/calibration.cpp +++ b/core/settings/light-and-power/calibration.cpp @@ -1,223 +1,222 @@ /* This file is part of the OPIE Project =. Copyright (c) 2002 Maximilian Reiss <harlekin@handhelds.org> .=l. Copyright (c) 2002 Robert Griebl <sandman@handhelds.org> .>+-= _;:, .> :=|. This file is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This file is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General ..}^=.= = ; Public License for more details. ++= -. .` .: : = ...= . :.=- You should have received a copy of the GNU -. .:....=;==+<; General Public License along with this file; -_. . . )=. = see the file COPYING. If not, write to the -- :-=` Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "calibration.h" #include <qpainter.h> -#include <qpalette.h> #include <qpixmap.h> #define BRD 3 Calibration::Calibration ( QWidget *parent, const char *name, WFlags fl ) : QWidget ( parent, name, fl | WRepaintNoErase ) { setBackgroundMode ( NoBackground ); m_scale = QSize ( 256, 256 ); m_steps = 5; m_dragged = -1; m_interval = 5; m_p [0] = QPoint ( 0, 0 ); m_p [1] = QPoint ( 255, 255 ); } Calibration::~Calibration ( ) { } void Calibration::setScale ( const QSize &s ) { if ( s. width ( ) < 1 || s. height ( ) < 1 ) return; m_scale = s; checkPoints ( ); update ( ); } QSize Calibration::scale ( ) const { return m_scale; } void Calibration::setLineSteps ( int steps ) { if ( m_steps < 2 ) return; m_steps = steps; update ( ); } int Calibration::lineSteps ( ) const { return m_steps; } void Calibration::setInterval ( int iv ) { if ( iv < 1 ) return; m_interval = iv; // update ( ); } int Calibration::interval ( ) const { return m_interval; } void Calibration::setStartPoint ( const QPoint &p ) { m_p [0] = QPoint ( p. x ( ), m_scale. height ( ) - p. y ( ) - 1 ); checkPoints ( ); update ( ); } QPoint Calibration::startPoint ( ) const { return QPoint ( m_p [0]. x ( ), m_scale. height ( ) - m_p [0]. y ( ) - 1 ); } void Calibration::setEndPoint ( const QPoint &p ) { m_p [1] = QPoint ( p. x ( ), m_scale. height ( ) - p. y ( ) - 1 ); checkPoints ( ); update ( ); } QPoint Calibration::endPoint ( ) const { return QPoint ( m_p [1]. x ( ), m_scale. height ( ) - m_p [1]. y ( ) - 1 ); } void Calibration::checkPoints ( ) { int dx = m_scale. width ( ); int dy = m_scale. height ( ); if ( m_p [1]. x ( ) < 0 ) m_p [1]. setX ( 0 ); if ( m_p [1]. x ( ) >= dx ) m_p [1]. setX ( dx - 1 ); if ( m_p [0]. x ( ) < 0 ) m_p [0]. setX ( 0 ); if ( m_p [0]. x ( ) > m_p [1]. x ( )) m_p [0]. setX ( m_p [1]. x ( )); if ( m_p [1]. y ( ) < 0 ) m_p [1]. setY ( 0 ); if ( m_p [1]. y ( ) >= dy ) m_p [1]. setY ( dy - 1 ); if ( m_p [0]. y ( ) < 0 ) m_p [0]. setY ( 0 ); if ( m_p [0]. y ( ) >= dy ) m_p [0]. setY ( dy - 1 ); } #define SCALEX(x) (BRD+(x)*(width()- 2*BRD)/m_scale.width()) #define SCALEY(y) (BRD+(y)*(height()-2*BRD)/m_scale.height()) static QRect around ( int x, int y ) { return QRect ( x - BRD, y - BRD, 2 * BRD + 1, 2 * BRD + 1 ); } void Calibration::mousePressEvent ( QMouseEvent *e ) { if ( e-> button ( ) != LeftButton ) return QWidget::mousePressEvent ( e ); int olddragged = m_dragged; int x [2], y [2]; m_dragged = -1; for ( int i = 0; i < 2; i++ ) { x [i] = SCALEX( m_p [i]. x ( )); y [i] = SCALEY( m_p [i]. y ( )); if (( QABS( e-> x ( ) - x [i] ) <= 2 * BRD ) && ( QABS( e-> y ( ) - y [i] ) <= 2 * BRD )) { m_dragged = i; break; } } if ( m_dragged != olddragged ) { QRect r; if ( olddragged >= 0 ) r |= around ( x [olddragged], y [olddragged] ); if ( m_dragged >= 0 ) r |= around ( x [m_dragged], y [m_dragged] ); repaint ( r, false ); } } void Calibration::mouseMoveEvent ( QMouseEvent *e ) { if ( m_dragged < 0 ) return; QPoint n [2]; n [m_dragged]. setX (( e-> x ( ) - BRD ) * m_scale. width ( ) / ( width ( ) - 2 * BRD )); n [m_dragged]. setY (( e-> y ( ) - BRD ) * m_scale. height ( ) / ( height ( ) - 2 * BRD )); n [1 - m_dragged] = m_p [1 - m_dragged]; if ( n [m_dragged]. x ( ) < 0 ) n [m_dragged]. setX ( 0 ); if ( n [m_dragged]. x ( ) >= m_scale. width ( )) n [m_dragged]. setX ( m_scale. width ( ) - 1 ); if ( n [0]. x ( ) > n [1]. x ( )) n [m_dragged]. setX ( n [1 - m_dragged]. x ( )); if ( n [m_dragged]. y ( ) < 0 ) n [m_dragged]. setY ( 0 ); if ( n [m_dragged]. y ( ) >= m_scale. height ( )) n [m_dragged]. setY ( m_scale. height ( ) - 1 ); // if ( n [0]. y ( ) > n [1]. y ( )) // n [m_dragged]. setY ( n [1 - m_dragged]. y ( )); QRect r; int ox [2], oy [2], nx [2], ny [2]; for ( int i = 0; i < 2; i++ ) { nx [i] = SCALEX( n [i]. x ( )); ny [i] = SCALEY( n [i]. y ( )); ox [i] = SCALEX( m_p [i]. x ( )); oy [i] = SCALEY( m_p [i]. y ( )); if ( n [i] != m_p [i] ) { r |= around ( nx [i], ny [i] ); r |= around ( ox [i], oy [i] ); m_p [i] = n [i]; diff --git a/core/settings/light-and-power/light.cpp b/core/settings/light-and-power/light.cpp index eda0c1f..6115178 100644 --- a/core/settings/light-and-power/light.cpp +++ b/core/settings/light-and-power/light.cpp @@ -1,233 +1,231 @@ /* This file is part of the OPIE Project =. Copyright (c) 2002 Maximilian Reiss <harlekin@handhelds.org> .=l. Copyright (c) 2002 Robert Griebl <sandman@handhelds.org> .>+-= _;:, .> :=|. This file is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This file is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General ..}^=.= = ; Public License for more details. ++= -. .` .: : = ...= . :.=- You should have received a copy of the GNU -. .:....=;==+<; General Public License along with this file; -_. . . )=. = see the file COPYING. If not, write to the -- :-=` Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "light.h" #include <qpe/config.h> -#include <qpe/qpeapplication.h> #include <qpe/power.h> #if defined(Q_WS_QWS) && !defined(QT_NO_COP) #include <qpe/qcopenvelope_qws.h> #endif #include <qcheckbox.h> #include <qtabwidget.h> #include <qslider.h> -#include <qtimer.h> #include <qspinbox.h> #include <qpushbutton.h> #include <qgroupbox.h> #include <qcombobox.h> #include <opie/odevice.h> #include "sensor.h" using namespace Opie; LightSettings::LightSettings( QWidget* parent, const char* name, WFlags ) : LightSettingsBase( parent, name, false, WStyle_ContextHelp ) { m_bres = ODevice::inst ( )-> displayBrightnessResolution ( ); m_cres = ODevice::inst ( )-> displayContrastResolution ( ); if ( !ODevice::inst ( )-> hasLightSensor ( )) { auto_brightness-> hide ( ); CalibrateLightSensor-> hide ( ); auto_brightness_ac-> hide ( ); CalibrateLightSensor_ac-> hide ( ); } if (m_cres) { GroupLight->setTitle(tr("Backlight && Contrast")); GroupLight_ac->setTitle(GroupLight->title()); } else { contrast->hide(); contrast_ac->hide(); } QStrList freq = ODevice::inst()->allowedCpuFrequencies(); if ( freq.count() ) { frequency->insertStrList( freq ); frequency_ac->insertStrList( freq ); } else { frequency->hide(); frequency_ac->hide(); } Config config ( "apm" ); config. setGroup ( "Battery" ); // battery spinboxes interval_dim-> setValue ( config. readNumEntry ( "Dim", 30 )); interval_lightoff-> setValue ( config. readNumEntry ( "LightOff", 20 )); interval_suspend-> setValue ( config. readNumEntry ( "Suspend", 60 )); // 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 )); brightness-> setPageStep ( QMAX( 1, 256 / m_bres )); brightness-> setValue ( bright ); if (m_cres) { contrast-> setTickInterval ( QMAX( 16, 256 / m_cres )); contrast-> setLineStep ( QMAX( 1, 256 / m_cres )); contrast-> setPageStep ( QMAX( 1, 256 / m_cres )); contrast-> setValue ( contr ); } // light sensor auto_brightness-> setChecked ( config. readBoolEntry ( "LightSensor", false )); m_sensordata = config. readListEntry ( "LightSensorData", ';' ); config. setGroup ( "AC" ); // ac spinboxes interval_dim_ac-> setValue ( config. readNumEntry ( "Dim", 60 )); interval_lightoff_ac-> setValue ( config. readNumEntry ( "LightOff", 120 )); interval_suspend_ac-> setValue ( config. readNumEntry ( "Suspend", 0 )); // 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 )); brightness_ac-> setValue ( bright ); if (m_cres) { contr = config. readNumEntry ( "Contrast", 127); contrast_ac-> setTickInterval ( QMAX( 16, 256 / m_cres )); contrast_ac-> setLineStep ( QMAX( 1, 256 / m_cres )); contrast_ac-> setPageStep ( QMAX( 1, 256 / m_cres )); contrast_ac-> setValue ( contr ); } // light sensor auto_brightness_ac-> setChecked ( config. readBoolEntry ( "LightSensor", false )); m_sensordata_ac = config. readListEntry ( "LightSensorData", ';' ); // advanced settings config. setGroup ( "Warnings" ); warnintervalBox-> setValue ( config. readNumEntry ( "checkinterval", 10000 ) / 1000 ); lowSpinBox-> setValue ( config. readNumEntry ( "powerverylow", 10 ) ); criticalSpinBox-> setValue ( config. readNumEntry ( "powercritical", 5 ) ); m_resettimer = new QTimer ( this ); connect ( m_resettimer, SIGNAL( timeout ( )), this, SLOT( resetBacklight ( ))); if ( PowerStatusManager::readStatus ( ). acStatus ( ) != PowerStatus::Online ) { tabs-> setCurrentPage ( 0 ); } else { tabs-> setCurrentPage ( 1 ); } connect ( brightness, SIGNAL( valueChanged ( int )), this, SLOT( setBacklight ( int ))); connect ( brightness_ac, SIGNAL( valueChanged ( int )), this, SLOT( setBacklight ( int ))); 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 ( ) { } void LightSettings::calibrateSensor ( ) { Sensor *s = new Sensor ( m_sensordata, this ); connect ( s, SIGNAL( viewBacklight ( int )), this, SLOT( setBacklight ( int ))); s-> showMaximized ( ); s-> exec ( ); delete s; } void LightSettings::calibrateSensorAC ( ) { Sensor *s = new Sensor ( m_sensordata_ac, this ); connect ( s, SIGNAL( viewBacklight ( int )), this, SLOT( setBacklight ( int ))); s-> showMaximized ( ); s-> exec ( ); delete s; } void LightSettings::setBacklight ( int bright ) { QCopEnvelope e ( "QPE/System", "setBacklight(int)" ); e << bright; if ( bright != -1 ) { m_resettimer-> stop ( ); m_resettimer-> start ( 4000, true ); } } void LightSettings::setContrast ( int contr ) { if (contr == -1) contr = m_oldcontrast; ODevice::inst ( )-> setDisplayContrast(contr); } void LightSettings::setFrequency ( int index ) { qWarning("LightSettings::setFrequency(%d)", index); ODevice::inst ( )-> setCurrentCpuFrequency(index); } void LightSettings::resetBacklight ( ) { setBacklight ( -1 ); setContrast ( -1 ); } void LightSettings::accept ( ) { Config config ( "apm" ); // bat config. setGroup ( "Battery" ); config. writeEntry ( "LcdOffOnly", LcdOffOnly-> isChecked ( )); config. writeEntry ( "Dim", interval_dim-> value ( )); config. writeEntry ( "LightOff", interval_lightoff-> value ( )); config. writeEntry ( "Suspend", interval_suspend-> value ( )); config. writeEntry ( "Brightness", brightness-> value () ); if (m_cres) diff --git a/core/settings/light-and-power/main.cpp b/core/settings/light-and-power/main.cpp index 68d433b..cb43ce0 100644 --- a/core/settings/light-and-power/main.cpp +++ b/core/settings/light-and-power/main.cpp @@ -1,29 +1,26 @@ /********************************************************************** ** Copyright (C) 2000 Trolltech AS. All rights reserved. ** ** This file is part of Qtopia Environment. ** ** This file may be distributed and/or modified under the terms of the ** GNU General Public License version 2 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** **********************************************************************/ #include "light.h" -#include <qpe/qpeapplication.h> -#include <qpe/qcopenvelope_qws.h> -#include <qpe/global.h> #include <opie/oapplicationfactory.h> OPIE_EXPORT_APP( OApplicationFactory<LightSettings> ) diff --git a/core/settings/light-and-power/sensor.cpp b/core/settings/light-and-power/sensor.cpp index 5ca54d4..41de851 100644 --- a/core/settings/light-and-power/sensor.cpp +++ b/core/settings/light-and-power/sensor.cpp @@ -1,103 +1,102 @@ /* This file is part of the OPIE Project =. Copyright (c) 2002 Maximilian Reiss <harlekin@handhelds.org> .=l. Copyright (c) 2002 Robert Griebl <sandman@handhelds.org> .>+-= _;:, .> :=|. This file is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This file is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU General ..}^=.= = ; Public License for more details. ++= -. .` .: : = ...= . :.=- You should have received a copy of the GNU -. .:....=;==+<; General Public License along with this file; -_. . . )=. = see the file COPYING. If not, write to the -- :-=` Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include <qframe.h> #include <qlayout.h> #include <qslider.h> #include <qspinbox.h> #include <opie/odevice.h> using namespace Opie; #include "calibration.h" #include "sensor.h" Sensor::Sensor ( QStringList ¶ms, QWidget *parent, const char *name ) : SensorBase ( parent, name, true, WStyle_ContextHelp ), m_params ( params ) { int steps = 12; int inter = 2; int smin = 40; int smax = 215; int lmin = 1; int lmax = 255; switch ( params. count ( )) { case 6: lmax = params [5]. toInt ( ); case 5: lmin = params [4]. toInt ( ); case 4: smax = params [3]. toInt ( ); case 3: smin = params [2]. toInt ( ); case 2: steps = params [1]. toInt ( ); case 1: inter = params [0]. toInt ( ) / 1000; } int xscale = ODevice::inst ( )-> lightSensorResolution ( ); int yscale = ODevice::inst ( )-> displayBrightnessResolution ( ); QVBoxLayout *lay = new QVBoxLayout ( frame ); lay-> setMargin ( 2 ); m_calib = new Calibration ( frame ); lay-> add ( m_calib ); m_calib-> setScale ( QSize ( xscale, yscale )); m_calib-> setLineSteps ( steps ); m_calib-> setInterval ( inter ); m_calib-> setStartPoint ( QPoint ( smin * xscale / 256, lmax * yscale / 256 )); m_calib-> setEndPoint ( QPoint ( smax * xscale / 256, lmin * yscale / 256 )); interval-> setValue ( inter ); linesteps-> setValue ( steps ); connect ( interval, SIGNAL( valueChanged ( int )), m_calib, SLOT( setInterval ( int ))); connect ( linesteps, SIGNAL( valueChanged ( int )), m_calib, SLOT( setLineSteps ( int ))); connect ( m_calib, SIGNAL( startPointChanged ( const QPoint & )), this, SLOT( pointDrag ( const QPoint & ))); connect ( m_calib, SIGNAL( endPointChanged ( const QPoint & )), this, SLOT( pointDrag ( const QPoint & ))); } void Sensor::accept ( ) { int xscale = ODevice::inst ( )-> lightSensorResolution ( ); int yscale = ODevice::inst ( )-> displayBrightnessResolution ( ); m_params. clear ( ); m_params << QString::number ( m_calib-> interval ( ) * 1000 ) << QString::number ( m_calib-> lineSteps ( )) << QString::number ( m_calib-> startPoint ( ). x ( ) * 256 / xscale ) << QString::number ( m_calib-> endPoint ( ). x ( ) * 256 / xscale ) << QString::number ( m_calib-> endPoint ( ). y ( ) * 256 / yscale ) << QString::number ( m_calib-> startPoint ( ). y ( ) * 256 / yscale ); QDialog::accept ( ); } void Sensor::pointDrag ( const QPoint &p ) { emit viewBacklight ( p. y ( )); } |