-rw-r--r-- | core/applets/batteryapplet/battery.cpp | 1 | ||||
-rw-r--r-- | core/applets/batteryapplet/batterystatus.cpp | 17 | ||||
-rw-r--r-- | core/applets/batteryapplet/batterystatus.h | 2 |
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 | ||
73 | void BatteryMeter::mouseReleaseEvent( QMouseEvent* /*e*/ ) { | 73 | void 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 | ||
15 | using namespace Opie::Core; | 15 | using namespace Opie::Core; |
16 | 16 | ||
17 | BatteryStatus::BatteryStatus( const PowerStatus *p, QWidget *parent, WFlags f ) | 17 | BatteryStatus::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 | ||
28 | BatteryStatus::~BatteryStatus() {} | 23 | BatteryStatus::~BatteryStatus() {} |
29 | 24 | ||
25 | void 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 | */ |
33 | bool BatteryStatus::getProcApmStatusIpaq() { | 38 | bool 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 | ||
25 | class PowerStatus; | 25 | class PowerStatus; |
26 | 26 | ||
27 | class BatteryStatus : public QFrame | 27 | class BatteryStatus : public QFrame |
28 | { | 28 | { |
29 | Q_OBJECT | 29 | Q_OBJECT |
30 | public: | 30 | public: |
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; |
36 | protected: | 36 | protected: |
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 | ||
41 | private: | 41 | private: |
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; |