/**********************************************************************
** Copyright (C) 2000-2002 Trolltech AS.  All rights reserved.
**
** This file is part of the 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.
**
**********************************************************************/

#ifndef BRIGHTNESS_APPLET_H
#define BRIGHTNESS_APPLET_H

#include <qtopia/qpeglobal.h>
#include <qwidget.h>
#include <qframe.h>
#include <qpixmap.h>
#include <qguardedptr.h>

class QSlider;

class BrightnessControl : public QFrame
{
    Q_OBJECT

public:
    BrightnessControl( QWidget *parent=0, const char *name=0, WFlags f=0 );

public:
    QSlider *slider;
};

class BrightnessApplet : public QWidget
{
    Q_OBJECT

public:
    BrightnessApplet( QWidget *parent = 0, const char *name=0 );
    ~BrightnessApplet();

public slots:
    void    sliderMoved(int);

private:
    int	    readSystemBrightness();
    void    writeSystemBrightness(int brightness);
    void    mousePressEvent(QMouseEvent *);
    void    paintEvent(QPaintEvent*);

private:
    int			calcBrightnessValue(void);
    int			calcSliderValue(void);

    int			brightness;
    QPixmap		*brightnessPixmap;
    BrightnessControl	*bc;
};

#endif // BRIGHTNESS_APPLET_H
