summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/tools/formatter/formatter.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/noncore/tools/formatter/formatter.cpp b/noncore/tools/formatter/formatter.cpp
index 46dc01c..9192099 100644
--- a/noncore/tools/formatter/formatter.cpp
+++ b/noncore/tools/formatter/formatter.cpp
@@ -350,225 +350,225 @@ void FormatterApp::storageComboSelected(int index ) {
350 350
351 QString fsType = getFileSystemType((const QString &) currentText); 351 QString fsType = getFileSystemType((const QString &) currentText);
352// qDebug(fsType); 352// qDebug(fsType);
353 for(int i = 0; i < fileSystemsCombo->count(); i++) { 353 for(int i = 0; i < fileSystemsCombo->count(); i++) {
354 if( fsType == fileSystemsCombo->text(i)) 354 if( fsType == fileSystemsCombo->text(i))
355 fileSystemsCombo->setCurrentItem(i); 355 fileSystemsCombo->setCurrentItem(i);
356 } 356 }
357// deviceComboSelected(index); 357// deviceComboSelected(index);
358} 358}
359 359
360void FormatterApp::deviceComboSelected(int index) { 360void FormatterApp::deviceComboSelected(int index) {
361 361
362 StorageInfo storageInfo; 362 StorageInfo storageInfo;
363 QString totalS, usedS, avS, diskS, nameS, fsType, selectedText; 363 QString totalS, usedS, avS, diskS, nameS, fsType, selectedText;
364 364
365 selectedText = deviceComboBox->text(index); 365 selectedText = deviceComboBox->text(index);
366 366
367 const QList<FileSystem> &fs = storageInfo.fileSystems(); 367 const QList<FileSystem> &fs = storageInfo.fileSystems();
368 QListIterator<FileSystem> it ( fs ); 368 QListIterator<FileSystem> it ( fs );
369 QString storage; 369 QString storage;
370 for( ; it.current(); ++it ){ 370 for( ; it.current(); ++it ){
371 const QString name = (*it)->name(); 371 const QString name = (*it)->name();
372 const QString path = (*it)->path(); 372 const QString path = (*it)->path();
373 const QString disk = (*it)->disk(); 373 const QString disk = (*it)->disk();
374// const QString options = (*it)->options(); 374// const QString options = (*it)->options();
375 if( selectedText == disk) { 375 if( selectedText == disk) {
376 diskS = disk; nameS= name; 376 diskS = disk; nameS= name;
377 mountPointLineEdit->setText(path); 377 mountPointLineEdit->setText(path);
378 long mult = (*it)->blockSize() / 1024; 378 long mult = (*it)->blockSize() / 1024;
379 long div = 1024 / (*it)->blockSize(); 379 long div = 1024 / (*it)->blockSize();
380 if ( !mult ) mult = 1; 380 if ( !mult ) mult = 1;
381 if ( !div ) div = 1; 381 if ( !div ) div = 1;
382 long total = (*it)->totalBlocks() * mult / div; 382 long total = (*it)->totalBlocks() * mult / div;
383 long totalMb = total/1024; 383 long totalMb = total/1024;
384 long avail = (*it)->availBlocks() * mult / div; 384 long avail = (*it)->availBlocks() * mult / div;
385 long availMb = avail/1024; 385 long availMb = avail/1024;
386 long used = total - avail; 386 long used = total - avail;
387 long usedMb = used/1024; 387 long usedMb = used/1024;
388 totalS.sprintf(tr("Total: %1 kB ( %d mB)\n").arg( total ), totalMb ); 388 totalS.sprintf(tr("Total: %1 kB ( %d mB)\n").arg( total ), totalMb );
389 usedS.sprintf(tr("Used: %1 kB ( %d mB)\n").arg(used) ,usedMb); 389 usedS.sprintf(tr("Used: %1 kB ( %d mB)\n").arg(used) ,usedMb);
390 avS.sprintf( tr("Available: %1 kB ( %d mB)").arg(avail), availMb ); 390 avS.sprintf( tr("Available: %1 kB ( %d mB)").arg(avail), availMb );
391 } 391 }
392 } 392 }
393 fsType = getFileSystemType((const QString &)selectedText); 393 fsType = getFileSystemType((const QString &)selectedText);
394 394
395 TextLabel5->setText("Type: "+ nameS+"\nFormatted with "+ fsType + " \n" + totalS + usedS + avS); 395 TextLabel5->setText("Type: "+ nameS+"\nFormatted with "+ fsType + " \n" + totalS + usedS + avS);
396// storageComboSelected(0); 396// storageComboSelected(0);
397} 397}
398 398
399void FormatterApp::cleanUp() { 399void FormatterApp::cleanUp() {
400 400
401} 401}
402 402
403 403
404void FormatterApp::editFstab() { 404void FormatterApp::editFstab() {
405 QCopEnvelope e("QPE/Application/textedit","setDocument(QString)"); 405 QCopEnvelope e("QPE/Application/textedit","setDocument(QString)");
406 e << (const QString &)"/etc/fstab"; 406 e << (const QString &)"/etc/fstab";
407} 407}
408 408
409void FormatterApp::parsetab(const QString &fileName) { 409void FormatterApp::parsetab(const QString &fileName) {
410 410
411 fileSystemTypeList.clear(); 411 fileSystemTypeList.clear();
412 fsList.clear(); 412 fsList.clear();
413 struct mntent *me; 413 struct mntent *me;
414// if(fileName == "/etc/mtab") { 414// if(fileName == "/etc/mtab") {
415 FILE *mntfp = setmntent( fileName.latin1(), "r" ); 415 FILE *mntfp = setmntent( fileName.latin1(), "r" );
416 if ( mntfp ) { 416 if ( mntfp ) {
417 while ( (me = getmntent( mntfp )) != 0 ) { 417 while ( (me = getmntent( mntfp )) != 0 ) {
418 QString deviceName = me->mnt_fsname; 418 QString deviceName = me->mnt_fsname;
419 QString filesystemType = me->mnt_type; 419 QString filesystemType = me->mnt_type;
420 if(deviceName != "none") { 420 if(deviceName != "none") {
421 if( fsList.contains(filesystemType) == 0 421 if( fsList.contains(filesystemType) == 0
422 & filesystemType.find("proc",0,TRUE) == -1 422 & filesystemType.find("proc",0,TRUE) == -1
423 & filesystemType.find("cramfs",0,TRUE) == -1 423 & filesystemType.find("cramfs",0,TRUE) == -1
424 & filesystemType.find("auto",0,TRUE) == -1) 424 & filesystemType.find("auto",0,TRUE) == -1)
425 fsList << filesystemType; 425 fsList << filesystemType;
426 deviceList << deviceName; 426 deviceList << deviceName;
427 qDebug(deviceName+"::"+filesystemType); 427 qDebug(deviceName+"::"+filesystemType);
428 fileSystemTypeList << deviceName+"::"+filesystemType; 428 fileSystemTypeList << deviceName+"::"+filesystemType;
429 } 429 }
430 } 430 }
431 } 431 }
432 endmntent( mntfp ); 432 endmntent( mntfp );
433// } else if(fileName == "/etc/fstab") { 433// } else if(fileName == "/etc/fstab") {
434// QFile f("/etc/fstab"); 434// QFile f("/etc/fstab");
435// if ( f.open(IO_ReadOnly) ) { 435// if ( f.open(IO_ReadOnly) ) {
436// QTextStream t (&f); 436// QTextStream t (&f);
437// QString s; 437// QString s;
438// while (! t.eof()) { 438// while (! t.eof()) {
439// s=t.readLine(); 439// s=t.readLine();
440// s=s.simplifyWhiteSpace(); 440// s=s.simplifyWhiteSpace();
441// if ( (!s.isEmpty() ) && (s.find(" ")!=0) ) { 441// if ( (!s.isEmpty() ) && (s.find(" ")!=0) ) {
442// // = me->mnt_fsname; 442// // = me->mnt_fsname;
443// QString filesystemType = me->mnt_type; 443// QString filesystemType = me->mnt_type;
444// QString deviceName = s.left(0,s.find(BLANK) ); 444// QString deviceName = s.left(0,s.find(BLANK) );
445// s=s.remove(0,s.find(BLANK)+1 ); // devicename 445// s=s.remove(0,s.find(BLANK)+1 ); // devicename
446 446
447// s=s.remove(0,s.find(BLANK)+1 ); // mountpoint 447// s=s.remove(0,s.find(BLANK)+1 ); // mountpoint
448// QStringt mountPoint= s.left(0,s.find(BLANK) ); 448// QStringt mountPoint= s.left(0,s.find(BLANK) );
449// s=s.remove(0,s.find(BLANK)+1 ); // fs 449// s=s.remove(0,s.find(BLANK)+1 ); // fs
450// QString filesystemType= s.left(0,s.find(BLANK) ); 450// QString filesystemType= s.left(0,s.find(BLANK) );
451// } 451// }
452// } 452// }
453// } 453// }
454// f.close(); 454// f.close();
455// } 455// }
456} 456}
457 457
458QString FormatterApp::getFileSystemType(const QString &currentText) { 458QString FormatterApp::getFileSystemType(const QString &currentText) {
459 459
460 parsetab("/etc/mtab"); //why did TT forget filesystem type? 460 parsetab("/etc/mtab"); //why did TT forget filesystem type?
461 461
462 for ( QStringList::Iterator it = fileSystemTypeList.begin(); it != fileSystemTypeList.end(); ++it ) { 462 for ( QStringList::Iterator it = fileSystemTypeList.begin(); it != fileSystemTypeList.end(); ++it ) {
463 QString temp = (*it); 463 QString temp = (*it);
464 if( temp.find( currentText,0,TRUE) != -1) { 464 if( temp.find( currentText,0,TRUE) != -1) {
465 return temp.right( temp.length() - temp.find("::",0,TRUE) - 2); 465 return temp.right( temp.length() - temp.find("::",0,TRUE) - 2);
466// qDebug(fsType); 466// qDebug(fsType);
467 } 467 }
468 } 468 }
469 return ""; 469 return "";
470} 470}
471 471
472bool FormatterApp::doFsck() { 472bool FormatterApp::doFsck() {
473 473
474 Output *outDlg; 474 Output *outDlg;
475 QString selectedDevice; 475 QString selectedDevice;
476#if defined(QT_QWS_IPAQ) || defined(QT_QWS_EBX) 476#if defined(QT_QWS_IPAQ) || defined(QT_QWS_EBX)
477 selectedDevice = deviceComboBox->currentText(); 477 selectedDevice = deviceComboBox->currentText();
478 478 QString mountPoint = mountPointLineEdit->text();
479 QString umountS = "umount -v "+selectedDevice+" 2>&1"; 479 QString umountS = "umount -v "+mountPoint+" 2>&1";
480 QString remountS = "mount -v "+selectedDevice+" 2>&1"; 480 QString remountS = "mount -v "+mountPoint+" 2>&1";
481#else 481#else
482 // for testing 482 // for testing
483// currentText = diskDevice = "/dev/fd0"; 483// currentText = diskDevice = "/dev/fd0";
484 QString umountS = "umount -v /floppy 2>&1"; 484 QString umountS = "umount -v /floppy 2>&1";
485 QString remountS = "mount -v /floppy 2>&1"; 485 QString remountS = "mount -v /floppy 2>&1";
486 selectedDevice ="/dev/fd0"; 486 selectedDevice ="/dev/fd0";
487 487
488#endif 488#endif
489 489
490 QString fsType = getFileSystemType((const QString &)selectedDevice); 490 QString fsType = getFileSystemType((const QString &)selectedDevice);
491 QString cmd; 491 QString cmd;
492 qDebug( selectedDevice +" "+ fsType); 492 qDebug( selectedDevice +" "+ fsType);
493 if(fsType == "vfat") cmd = "dosfsck -vy "; 493 if(fsType == "vfat") cmd = "dosfsck -vy ";
494 if(fsType == "ext2") cmd = "e2fsck -cpvy "; 494 if(fsType == "ext2") cmd = "e2fsck -cpvy ";
495 cmd += selectedDevice + " 2>&1"; 495 cmd += selectedDevice + " 2>&1";
496 496
497 outDlg = new Output(this, tr("Formatter Output"),FALSE); 497 outDlg = new Output(this, tr("Formatter Output"),FALSE);
498 outDlg->showMaximized(); 498 outDlg->showMaximized();
499 outDlg->show(); 499 outDlg->show();
500 qApp->processEvents(); 500 qApp->processEvents();
501 FILE *fp; 501 FILE *fp;
502 char line[130]; 502 char line[130];
503 outDlg->OutputEdit->append( tr("Trying to umount.")); 503 outDlg->OutputEdit->append( tr("Trying to umount."));
504 outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); 504 outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE);
505 505
506 sleep(1); 506 sleep(1);
507// qDebug("Command is "+umountS); 507// qDebug("Command is "+umountS);
508 fp = popen( (const char *) umountS, "r"); 508 fp = popen( (const char *) umountS, "r");
509// qDebug("%d", fp); 509// qDebug("%d", fp);
510 if ( !fp ) { 510 if ( !fp ) {
511 qDebug("Could not execute '" + umountS + "'!\n" +(QString)strerror(errno)); 511 qDebug("Could not execute '" + umountS + "'!\n" +(QString)strerror(errno));
512 QMessageBox::warning( this, tr("Formatter"), tr("umount failed!"), tr("&OK") ); 512 QMessageBox::warning( this, tr("Formatter"), tr("umount failed!"), tr("&OK") );
513 pclose(fp); 513 pclose(fp);
514 return false; 514 return false;
515 } else { 515 } else {
516// outDlg->OutputEdit->append( currentText + tr("\nhas been successfully umounted.")); 516// outDlg->OutputEdit->append( currentText + tr("\nhas been successfully umounted."));
517// outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); 517// outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE);
518 while ( fgets( line, sizeof line, fp)) { 518 while ( fgets( line, sizeof line, fp)) {
519 if( ((QString)line).find("busy",0,TRUE) != -1) { 519 if( ((QString)line).find("busy",0,TRUE) != -1) {
520 qDebug("Could not find '" + umountS); 520 qDebug("Could not find '" + umountS);
521 QMessageBox::warning( this, tr("Formatter"), tr("Could not umount.\nDevice is busy!"), tr("&OK") ); 521 QMessageBox::warning( this, tr("Formatter"), tr("Could not umount.\nDevice is busy!"), tr("&OK") );
522 pclose(fp); 522 pclose(fp);
523 return false; 523 return false;
524 } else { 524 } else {
525 QString lineStr = line; 525 QString lineStr = line;
526 lineStr=lineStr.left(lineStr.length()-1); 526 lineStr=lineStr.left(lineStr.length()-1);
527 outDlg->OutputEdit->append(lineStr); 527 outDlg->OutputEdit->append(lineStr);
528 outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); 528 outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE);
529 } 529 }
530 } 530 }
531 } 531 }
532 pclose(fp); 532 pclose(fp);
533///////////////////////////////////// 533/////////////////////////////////////
534 fp = popen( (const char *) cmd, "r"); 534 fp = popen( (const char *) cmd, "r");
535 while ( fgets( line, sizeof line, fp)) { 535 while ( fgets( line, sizeof line, fp)) {
536 if( ((QString)line).find("No such device",0,TRUE) != -1) { 536 if( ((QString)line).find("No such device",0,TRUE) != -1) {
537 qDebug("No such device '" + umountS); 537 qDebug("No such device '" + umountS);
538 QMessageBox::warning( this, tr("Formatter"), tr("No such device!"), tr("&OK") ); 538 QMessageBox::warning( this, tr("Formatter"), tr("No such device!"), tr("&OK") );
539 pclose(fp); 539 pclose(fp);
540// outDlg->OutputEdit->append("No such device"); 540// outDlg->OutputEdit->append("No such device");
541// outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); 541// outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE);
542 return false; 542 return false;
543 } else { 543 } else {
544 QString lineStr = line; 544 QString lineStr = line;
545 lineStr=lineStr.left(lineStr.length()-1); 545 lineStr=lineStr.left(lineStr.length()-1);
546 outDlg->OutputEdit->append(lineStr); 546 outDlg->OutputEdit->append(lineStr);
547 outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); 547 outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE);
548 } 548 }
549 } 549 }
550 outDlg->OutputEdit->append(tr("You can now close the output window.")); 550 outDlg->OutputEdit->append(tr("You can now close the output window."));
551 outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); 551 outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE);
552// outDlg->OutputEdit->append( currentText + tr("\nhas been successfully formatted.")); 552// outDlg->OutputEdit->append( currentText + tr("\nhas been successfully formatted."));
553// outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); 553// outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE);
554 pclose(fp); 554 pclose(fp);
555 555
556///////////////////////////////////////// 556/////////////////////////////////////////
557 557
558 return true; 558 return true;
559} 559}
560 560
561bool FormatterApp::doFsckCheck() { 561bool FormatterApp::doFsckCheck() {
562 562
563 return FALSE; 563 return FALSE;
564} 564}
565 565
566int FormatterApp::formatCheck(const QString &deviceStr) { 566int FormatterApp::formatCheck(const QString &deviceStr) {
567 567
568 return -1; 568 return -1;
569} 569}
570 570
571int FormatterApp::runCommand(const QString &command) { 571int FormatterApp::runCommand(const QString &command) {
572 572
573 return -1; 573 return -1;
574} 574}