summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/applets/batteryapplet/battery.cpp1
-rw-r--r--core/applets/batteryapplet/batterystatus.cpp17
-rw-r--r--core/applets/batteryapplet/batterystatus.h2
3 files changed, 13 insertions, 7 deletions
diff --git a/core/applets/batteryapplet/battery.cpp b/core/applets/batteryapplet/battery.cpp
index 0d3d190..e85a9da 100644
--- a/core/applets/batteryapplet/battery.cpp
+++ b/core/applets/batteryapplet/battery.cpp
@@ -70,24 +70,25 @@ void BatteryMeter::mousePressEvent( QMouseEvent* e ) {
70 QWidget::mousePressEvent( e ); 70 QWidget::mousePressEvent( e );
71} 71}
72 72
73void BatteryMeter::mouseReleaseEvent( QMouseEvent* /*e*/ ) { 73void BatteryMeter::mouseReleaseEvent( QMouseEvent* /*e*/ ) {
74 if ( batteryView && batteryView->isVisible() ) { 74 if ( batteryView && batteryView->isVisible() ) {
75 batteryView->hide(); 75 batteryView->hide();
76 } else { 76 } else {
77 if ( !batteryView ) { 77 if ( !batteryView ) {
78 batteryView = new BatteryStatus( ps, 0, WStyle_StaysOnTop | WType_Popup ); 78 batteryView = new BatteryStatus( ps, 0, WStyle_StaysOnTop | WType_Popup );
79 batteryView->setFrameStyle( QFrame::PopupPanel | QFrame::Raised ); 79 batteryView->setFrameStyle( QFrame::PopupPanel | QFrame::Raised );
80 } 80 }
81 81
82 batteryView->UpdateBatteryStatus();
82 QRect r(batteryView->pos(),batteryView->sizeHint()); 83 QRect r(batteryView->pos(),batteryView->sizeHint());
83 QPoint curPos = this->mapToGlobal ( rect().topLeft() ); 84 QPoint curPos = this->mapToGlobal ( rect().topLeft() );
84 85
85 int lp = qApp->desktop()->width() - batteryView->sizeHint().width(); 86 int lp = qApp->desktop()->width() - batteryView->sizeHint().width();
86 r.moveTopLeft( QPoint(lp, curPos.y()-batteryView->sizeHint().height()-1) ); 87 r.moveTopLeft( QPoint(lp, curPos.y()-batteryView->sizeHint().height()-1) );
87 batteryView->setGeometry(r); 88 batteryView->setGeometry(r);
88 89
89 batteryView->raise(); 90 batteryView->raise();
90 batteryView->show(); 91 batteryView->show();
91 } 92 }
92} 93}
93 94
diff --git a/core/applets/batteryapplet/batterystatus.cpp b/core/applets/batteryapplet/batterystatus.cpp
index 5a24b94..860db64 100644
--- a/core/applets/batteryapplet/batterystatus.cpp
+++ b/core/applets/batteryapplet/batterystatus.cpp
@@ -8,34 +8,39 @@
8/* QT */ 8/* QT */
9#include <qpushbutton.h> 9#include <qpushbutton.h>
10#include <qdrawutil.h> 10#include <qdrawutil.h>
11#include <qfile.h> 11#include <qfile.h>
12#include <qtextstream.h> 12#include <qtextstream.h>
13#include <qmessagebox.h> 13#include <qmessagebox.h>
14 14
15using namespace Opie::Core; 15using namespace Opie::Core;
16 16
17BatteryStatus::BatteryStatus( const PowerStatus *p, QWidget *parent, WFlags f ) 17BatteryStatus::BatteryStatus( const PowerStatus *p, QWidget *parent, WFlags f )
18: QFrame( parent, 0, f), ps(p), bat2(false) { 18: QFrame( parent, 0, f), ps(p), bat2(false) {
19 19
20 jackPercent = 0; 20 UpdateBatteryStatus();
21
22 if ( ODevice::inst ( )-> series ( ) == Model_iPAQ ) {
23 getProcApmStatusIpaq();
24 }
25 percent = ps->batteryPercentRemaining();
26} 21}
27 22
28BatteryStatus::~BatteryStatus() {} 23BatteryStatus::~BatteryStatus() {}
29 24
25void BatteryStatus::UpdateBatteryStatus() {
26
27 jackPercent = 0;
28
29 if ( ODevice::inst ( )-> series ( ) == Model_iPAQ ) {
30 getProcApmStatusIpaq();
31 }
32 percent = ps->batteryPercentRemaining();
33}
34
30/* 35/*
31 * Make use of the advanced apm interface of the ipaq 36 * Make use of the advanced apm interface of the ipaq
32 */ 37 */
33bool BatteryStatus::getProcApmStatusIpaq() { 38bool BatteryStatus::getProcApmStatusIpaq() {
34 39
35 bat2 = false; 40 bat2 = false;
36 41
37 QFile procApmIpaq("/proc/hal/battery"); 42 QFile procApmIpaq("/proc/hal/battery");
38 43
39 if (procApmIpaq.open(IO_ReadOnly) ) { 44 if (procApmIpaq.open(IO_ReadOnly) ) {
40 QStringList list; 45 QStringList list;
41 // since it is /proc we _must_ use QTextStream 46 // since it is /proc we _must_ use QTextStream
diff --git a/core/applets/batteryapplet/batterystatus.h b/core/applets/batteryapplet/batterystatus.h
index bb95ece..4da446d 100644
--- a/core/applets/batteryapplet/batterystatus.h
+++ b/core/applets/batteryapplet/batterystatus.h
@@ -21,25 +21,25 @@
21#define BATTERY_STATUS_H 21#define BATTERY_STATUS_H
22 22
23#include <qframe.h> 23#include <qframe.h>
24 24
25class PowerStatus; 25class PowerStatus;
26 26
27class BatteryStatus : public QFrame 27class BatteryStatus : public QFrame
28{ 28{
29 Q_OBJECT 29 Q_OBJECT
30public: 30public:
31 BatteryStatus( const PowerStatus *s, QWidget *parent=0, WFlags f = 0 ); 31 BatteryStatus( const PowerStatus *s, QWidget *parent=0, WFlags f = 0 );
32 ~BatteryStatus(); 32 ~BatteryStatus();
33 33 void BatteryStatus::UpdateBatteryStatus();
34 void updatePercent( int ); 34 void updatePercent( int );
35 QSize sizeHint() const; 35 QSize sizeHint() const;
36protected: 36protected:
37 void drawSegment( QPainter *p, const QRect &r, const QColor &topgrad, const QColor &botgrad, const QColor &highlight, int hightlight_height ); 37 void drawSegment( QPainter *p, const QRect &r, const QColor &topgrad, const QColor &botgrad, const QColor &highlight, int hightlight_height );
38 void paintEvent( QPaintEvent *pe ); 38 void paintEvent( QPaintEvent *pe );
39 bool BatteryStatus::getProcApmStatusIpaq(); 39 bool BatteryStatus::getProcApmStatusIpaq();
40 40
41private: 41private:
42 QString statusText() const; 42 QString statusText() const;
43 QString statusTextIpaq() const; 43 QString statusTextIpaq() const;
44 const PowerStatus *ps; 44 const PowerStatus *ps;
45 int percent; 45 int percent;