summaryrefslogtreecommitdiff
authorharlekin <harlekin>2003-03-23 13:37:22 (UTC)
committer harlekin <harlekin>2003-03-23 13:37:22 (UTC)
commitb827dc4fa5b3e1758e627b40de25b68b25e912de (patch) (unidiff)
tree466e937219baf4be67aa84045ae204d1bab85916
parent56192a3d601e5364e9b8f4c331d892befb19cbc1 (diff)
downloadopie-b827dc4fa5b3e1758e627b40de25b68b25e912de.zip
opie-b827dc4fa5b3e1758e627b40de25b68b25e912de.tar.gz
opie-b827dc4fa5b3e1758e627b40de25b68b25e912de.tar.bz2
hide cardmon applet if no medium is inserted
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/applets/cardmon/cardmon.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/core/applets/cardmon/cardmon.cpp b/core/applets/cardmon/cardmon.cpp
index 25bb137..f3f9044 100644
--- a/core/applets/cardmon/cardmon.cpp
+++ b/core/applets/cardmon/cardmon.cpp
@@ -246,96 +246,99 @@ bool CardMonitor::getStatusPcmcia(int showPopUp)
246 QString what = QString::null; 246 QString what = QString::null;
247 if (cardWas0 != cardInPcmcia0) { 247 if (cardWas0 != cardInPcmcia0) {
248 if (cardInPcmcia0) { 248 if (cardInPcmcia0) {
249 text += tr("New card: "); 249 text += tr("New card: ");
250 what = "on"; 250 what = "on";
251 } else { 251 } else {
252 text += tr("Ejected: "); 252 text += tr("Ejected: ");
253 what = "off"; 253 what = "off";
254 } 254 }
255 text += cardInPcmcia0Name; 255 text += cardInPcmcia0Name;
256 popUp(text, "cardmon/" + cardInPcmcia0Type); 256 popUp(text, "cardmon/" + cardInPcmcia0Type);
257 } 257 }
258 258
259 if (cardWas1 != cardInPcmcia1) { 259 if (cardWas1 != cardInPcmcia1) {
260 if (cardInPcmcia1) { 260 if (cardInPcmcia1) {
261 text += tr("New card: "); 261 text += tr("New card: ");
262 what = "on"; 262 what = "on";
263 } else { 263 } else {
264 text += tr("Ejected: "); 264 text += tr("Ejected: ");
265 what = "off"; 265 what = "off";
266 } 266 }
267 text += cardInPcmcia1Name; 267 text += cardInPcmcia1Name;
268 popUp(text, "cardmon/" + cardInPcmcia1Type); 268 popUp(text, "cardmon/" + cardInPcmcia1Type);
269 } 269 }
270 QSound::play(Resource::findSound("cardmon/card" + what)); 270 QSound::play(Resource::findSound("cardmon/card" + what));
271 } 271 }
272 } else { 272 } else {
273 // no file found 273 // no file found
274 qDebug("no file found"); 274 qDebug("no file found");
275 cardInPcmcia0 = FALSE; 275 cardInPcmcia0 = FALSE;
276 cardInPcmcia1 = FALSE; 276 cardInPcmcia1 = FALSE;
277 } 277 }
278 repaint( FALSE );
278 return ((cardWas0 == cardInPcmcia0 279 return ((cardWas0 == cardInPcmcia0
279 && cardWas1 == cardInPcmcia1) ? FALSE : TRUE); 280 && cardWas1 == cardInPcmcia1) ? FALSE : TRUE);
281
280} 282}
281 283
282 284
283bool CardMonitor::getStatusSd(int showPopUp) 285bool CardMonitor::getStatusSd(int showPopUp)
284{ 286{
285 287
286 bool cardWas = cardInSd;// remember last state 288 bool cardWas = cardInSd;// remember last state
287 cardInSd = FALSE; 289 cardInSd = FALSE;
288 290
289#if defined(_OS_LINUX_) || defined(Q_OS_LINUX) 291#if defined(_OS_LINUX_) || defined(Q_OS_LINUX)
290 struct mntent *me; 292 struct mntent *me;
291 FILE *mntfp = setmntent("/etc/mtab", "r"); 293 FILE *mntfp = setmntent("/etc/mtab", "r");
292 294
293 if (mntfp) { 295 if (mntfp) {
294 while ((me = getmntent(mntfp)) != 0) { 296 while ((me = getmntent(mntfp)) != 0) {
295 QString fs = me->mnt_fsname; 297 QString fs = me->mnt_fsname;
296 //qDebug( fs ); 298 //qDebug( fs );
297 if (fs.left(14) == "/dev/mmc/part1" || fs.left(7) == "/dev/sd" 299 if (fs.left(14) == "/dev/mmc/part1" || fs.left(7) == "/dev/sd"
298 || fs.left(9) == "/dev/mmcd") { 300 || fs.left(9) == "/dev/mmcd") {
299 cardInSd = TRUE; 301 cardInSd = TRUE;
300 show(); 302 show();
301 } 303 }
302// else { 304// else {
303// cardInSd = FALSE; 305// cardInSd = FALSE;
304// } 306// }
305 } 307 }
306 endmntent(mntfp); 308 endmntent(mntfp);
307 } 309 }
308 310
309 if (!showPopUp && cardWas != cardInSd) { 311 if (!showPopUp && cardWas != cardInSd) {
310 QString text = QString::null; 312 QString text = QString::null;
311 QString what = QString::null; 313 QString what = QString::null;
312 if (cardInSd) { 314 if (cardInSd) {
313 text += "New card: SD/MMC"; 315 text += "New card: SD/MMC";
314 what = "on"; 316 what = "on";
315 } else { 317 } else {
316 text += "Ejected: SD/MMC"; 318 text += "Ejected: SD/MMC";
317 what = "off"; 319 what = "off";
318 } 320 }
319 //qDebug("TEXT: " + text ); 321 //qDebug("TEXT: " + text );
320 QSound::play(Resource::findSound("cardmon/card" + what)); 322 QSound::play(Resource::findSound("cardmon/card" + what));
321 popUp(text, "cardmon/ide");// XX add SD pic 323 popUp(text, "cardmon/ide");// XX add SD pic
322 } 324 }
323#else 325#else
324#error "Not on Linux" 326#error "Not on Linux"
325#endif 327#endif
328 repaint( FALSE );
326 return ((cardWas == cardInSd) ? FALSE : TRUE); 329 return ((cardWas == cardInSd) ? FALSE : TRUE);
327} 330}
328 331
329void CardMonitor::paintEvent(QPaintEvent *) 332void CardMonitor::paintEvent(QPaintEvent *)
330{ 333{
331 334
332 QPainter p(this); 335 QPainter p(this);
333 336
334 if (cardInPcmcia0 || cardInPcmcia1 || cardInSd) { 337 if ( cardInPcmcia0 || cardInPcmcia1 || cardInSd ) {
335 p.drawPixmap(0, 0, pm); 338 p.drawPixmap(0, 0, pm);
336 show(); 339 show();
337 } else { 340 } else {
338 p.eraseRect(rect()); 341 //p.eraseRect(rect());
339 hide(); 342 hide();
340 } 343 }
341} 344}