00001 /********************************************************************** 00002 ** Copyright (C) 2000 Trolltech AS. All rights reserved. 00003 ** 00004 ** This file is part of Qtopia Environment. 00005 ** 00006 ** This file may be distributed and/or modified under the terms of the 00007 ** GNU General Public License version 2 as published by the Free Software 00008 ** Foundation and appearing in the file LICENSE.GPL included in the 00009 ** packaging of this file. 00010 ** 00011 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 00012 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 00013 ** 00014 ** See http://www.trolltech.com/gpl/ for GPL licensing information. 00015 ** 00016 ** Contact info@trolltech.com if any conditions of this licensing are 00017 ** not clear to you. 00018 ** 00019 **********************************************************************/ 00020 #ifndef BATTERY_H 00021 #define BATTERY_H 00022 00023 #include <qwidget.h> 00024 #include <qguardedptr.h> 00025 00026 class PowerStatus; 00027 class BatteryStatus; 00028 class QTimer; 00029 00030 class BatteryMeter : public QWidget 00031 { 00032 Q_OBJECT 00033 public: 00034 BatteryMeter( QWidget *parent = 0 ); 00035 ~BatteryMeter(); 00036 00037 QSize sizeHint() const; 00038 static int position(); 00039 00040 00041 00042 protected: 00043 void timerEvent( QTimerEvent* ); 00044 void paintEvent( QPaintEvent* ); 00045 void mousePressEvent( QMouseEvent* ); 00046 void mouseReleaseEvent( QMouseEvent* ); 00047 protected slots: 00048 void chargeTimeout(); 00049 00050 protected: 00051 QGuardedPtr<BatteryStatus> batteryView; 00052 PowerStatus *ps; 00053 QTimer *chargeTimer; 00054 int percent; 00055 bool charging; 00056 int style; 00057 }; 00058 00059 #endif
1.4.2