summaryrefslogtreecommitdiff
authorskyhusker <skyhusker>2005-06-14 18:14:38 (UTC)
committer skyhusker <skyhusker>2005-06-14 18:14:38 (UTC)
commitcc964541dce909aa557b7f07d00b63c4578a00ee (patch) (unidiff)
tree2f3497aaad3903111894d662a7395a278b5a8c35
parentce379c1225ee98d58b98a0b9f2c133ac690e75ff (diff)
downloadopie-cc964541dce909aa557b7f07d00b63c4578a00ee.zip
opie-cc964541dce909aa557b7f07d00b63c4578a00ee.tar.gz
opie-cc964541dce909aa557b7f07d00b63c4578a00ee.tar.bz2
Fix bugs #1384 and #1546
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/applets/batteryapplet/battery.cpp2
-rw-r--r--core/applets/batteryapplet/batterystatus.cpp12
2 files changed, 10 insertions, 4 deletions
diff --git a/core/applets/batteryapplet/battery.cpp b/core/applets/batteryapplet/battery.cpp
index e85a9da..fa95b2b 100644
--- a/core/applets/batteryapplet/battery.cpp
+++ b/core/applets/batteryapplet/battery.cpp
@@ -131,8 +131,10 @@ void BatteryMeter::paintEvent( QPaintEvent* ) {
131 if ( style == 1 ) { 131 if ( style == 1 ) {
132 QPainter p(this); 132 QPainter p(this);
133 QFont f( "Fixed", AppLnk::smallIconSize()/2 ); 133 QFont f( "Fixed", AppLnk::smallIconSize()/2 );
134 QFontMetrics fm( f ); 134 QFontMetrics fm( f );
135 //Avoid text overlapping
136 p.eraseRect( 0, 0, 20, 20 );
135 p.setFont( f ); 137 p.setFont( f );
136 p.drawText( 0, height()/2, QString::number( percent ) ); 138 p.drawText( 0, height()/2, QString::number( percent ) );
137 p.drawText( width()/4, height(), "%" ); 139 p.drawText( width()/4, height(), "%" );
138 return; 140 return;
diff --git a/core/applets/batteryapplet/batterystatus.cpp b/core/applets/batteryapplet/batterystatus.cpp
index 7f8de2c..34043f4 100644
--- a/core/applets/batteryapplet/batterystatus.cpp
+++ b/core/applets/batteryapplet/batterystatus.cpp
@@ -47,8 +47,10 @@ bool BatteryStatus::getProcApmStatusIpaq() {
47 QTextStream stream ( &procApmIpaq); 47 QTextStream stream ( &procApmIpaq);
48 QString streamIn; 48 QString streamIn;
49 streamIn = stream.read(); 49 streamIn = stream.read();
50 list = QStringList::split("\n", streamIn); 50 list = QStringList::split("\n", streamIn);
51
52 sec2 = sec1 = "";
51 53
52 for(QStringList::Iterator line=list.begin(); line!=list.end(); line++) { 54 for(QStringList::Iterator line=list.begin(); line!=list.end(); line++) {
53 // not nice, need a rewrite later 55 // not nice, need a rewrite later
54 if( (*line).startsWith(" Percentage") ) { 56 if( (*line).startsWith(" Percentage") ) {
@@ -86,9 +88,9 @@ bool BatteryStatus::getProcApmStatusIpaq() {
86 procApmIpaq.close(); 88 procApmIpaq.close();
87 jackPercent = perc2.toInt(); 89 jackPercent = perc2.toInt();
88 ipaqPercent = perc1.toInt(); 90 ipaqPercent = perc1.toInt();
89 91
90 if (perc2.isEmpty()) { 92 if (perc2.isEmpty() || perc2 == "unknow" ) {
91 perc2 = tr("no data"); 93 perc2 = tr("no data");
92 } else { 94 } else {
93 perc2 += " %"; 95 perc2 += " %";
94 } 96 }
@@ -189,9 +191,9 @@ QString BatteryStatus::statusText() const {
189 return text; 191 return text;
190} 192}
191 193
192QString BatteryStatus::statusTextIpaq() const { 194QString BatteryStatus::statusTextIpaq() const {
193 QString text = tr( "Remaing Power: %1 %2\nRemaining Time: %3" ).arg( perc2 ) 195 QString text = tr( "Remaining Power: %1 \n%2\nRemaining Time: %3" ).arg( perc2 )
194 .arg( jackStatus ) 196 .arg( jackStatus )
195 .arg( sec2 ); 197 .arg( sec2 );
196/* QString text = tr("Remaining Power: ") + perc2 + " " + jackStatus; 198/* QString text = tr("Remaining Power: ") + perc2 + " " + jackStatus;
197 text += "\n" + tr("Remaining Time: ") + sec2;*/ 199 text += "\n" + tr("Remaining Time: ") + sec2;*/
@@ -202,8 +204,9 @@ void BatteryStatus::paintEvent( QPaintEvent * ev ) {
202 204
203 QPainter p( this ); 205 QPainter p( this );
204 206
205 QString text = statusText(); 207 QString text = statusText();
208 p.eraseRect( p.boundingRect( 10, 50, width() - 20, 40 , AlignVCenter, text ) );
206 p.drawText( 10, 50, width() - 20, 40 , AlignVCenter, text ); 209 p.drawText( 10, 50, width() - 20, 40 , AlignVCenter, text );
207 210
208 QColor c; 211 QColor c;
209 QColor darkc; 212 QColor darkc;
@@ -242,9 +245,10 @@ void BatteryStatus::paintEvent( QPaintEvent * ev ) {
242 QString jacketMsg; 245 QString jacketMsg;
243 if (bat2) { 246 if (bat2) {
244 p.setPen(black); 247 p.setPen(black);
245 QString text = statusTextIpaq(); 248 QString text = statusTextIpaq();
246 p.drawText( 10, 150, text ); 249 p.eraseRect( p.boundingRect( 10, 130, width() - 20, 40 , AlignVCenter, text ) );
250 p.drawText( 10, 130, width() - 20, 40 , AlignVCenter, text );
247 jacketMsg = tr("Jacket ").arg( jackChem ); 251 jacketMsg = tr("Jacket ").arg( jackChem );
248 } else { 252 } else {
249 jackPercent = 0; 253 jackPercent = 0;
250 jacketMsg = tr("No jacket with battery inserted"); 254 jacketMsg = tr("No jacket with battery inserted");
@@ -271,9 +275,9 @@ QSize BatteryStatus::sizeHint() const {
271 QRect r2=fm.boundingRect( 10, 0, width(), height(), AlignVCenter, text2 ); 275 QRect r2=fm.boundingRect( 10, 0, width(), height(), AlignVCenter, text2 );
272 276
273 if ( bat2 ) { 277 if ( bat2 ) {
274 return QSize( QMAX( QMIN( 200, qApp->desktop()->width() ), 278 return QSize( QMAX( QMIN( 200, qApp->desktop()->width() ),
275 r.width()+2*10 ), 2 * 10 + 80 + r.height() + r2.height() ); 279 r.width()+2*10 ), 2 * 10 + 100 + r.height() + r2.height() );
276 } 280 }
277 return QSize( QMAX( QMIN( 200, qApp->desktop()->width() ), 281 return QSize( QMAX( QMIN( 200, qApp->desktop()->width() ),
278 r.width()+2*10 ), 2 * 10 + 40 + r.height() ); 282 r.width()+2*10 ), 2 * 10 + 40 + r.height() );
279} 283}