-rw-r--r-- | noncore/net/opieftp/opieftp.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/noncore/net/opieftp/opieftp.cpp b/noncore/net/opieftp/opieftp.cpp index 36de842..6be28d6 100644 --- a/noncore/net/opieftp/opieftp.cpp +++ b/noncore/net/opieftp/opieftp.cpp | |||
@@ -274,97 +274,98 @@ OpieFtp::~OpieFtp() | |||
274 | } | 274 | } |
275 | 275 | ||
276 | void OpieFtp::cleanUp() | 276 | void OpieFtp::cleanUp() |
277 | { | 277 | { |
278 | if(conn) | 278 | if(conn) |
279 | FtpQuit(conn); | 279 | FtpQuit(conn); |
280 | QString sfile=QDir::homeDirPath(); | 280 | QString sfile=QDir::homeDirPath(); |
281 | if(sfile.right(1) != "/") | 281 | if(sfile.right(1) != "/") |
282 | sfile+="/._temp"; | 282 | sfile+="/._temp"; |
283 | else | 283 | else |
284 | sfile+="._temp"; | 284 | sfile+="._temp"; |
285 | QFile file( sfile); | 285 | QFile file( sfile); |
286 | if(file.exists()) | 286 | if(file.exists()) |
287 | file.remove(); | 287 | file.remove(); |
288 | } | 288 | } |
289 | 289 | ||
290 | void OpieFtp::tabChanged(QWidget *w) | 290 | void OpieFtp::tabChanged(QWidget *w) |
291 | { | 291 | { |
292 | if (TabWidget->currentPageIndex() == 0) { | 292 | if (TabWidget->currentPageIndex() == 0) { |
293 | currentPathCombo->lineEdit()->setText( currentDir.canonicalPath()); | 293 | currentPathCombo->lineEdit()->setText( currentDir.canonicalPath()); |
294 | tabMenu->setItemChecked(tabMenu->idAt(0),TRUE); | 294 | tabMenu->setItemChecked(tabMenu->idAt(0),TRUE); |
295 | tabMenu->setItemChecked(tabMenu->idAt(1),FALSE); | 295 | tabMenu->setItemChecked(tabMenu->idAt(1),FALSE); |
296 | tabMenu->setItemChecked(tabMenu->idAt(2),FALSE); | 296 | tabMenu->setItemChecked(tabMenu->idAt(2),FALSE); |
297 | } | 297 | } |
298 | if (TabWidget->currentPageIndex() == 1) { | 298 | if (TabWidget->currentPageIndex() == 1) { |
299 | currentPathCombo->lineEdit()->setText( currentRemoteDir ); | 299 | currentPathCombo->lineEdit()->setText( currentRemoteDir ); |
300 | tabMenu->setItemChecked(tabMenu->idAt(1),TRUE); | 300 | tabMenu->setItemChecked(tabMenu->idAt(1),TRUE); |
301 | tabMenu->setItemChecked(tabMenu->idAt(0),FALSE); | 301 | tabMenu->setItemChecked(tabMenu->idAt(0),FALSE); |
302 | tabMenu->setItemChecked(tabMenu->idAt(2),FALSE); | 302 | tabMenu->setItemChecked(tabMenu->idAt(2),FALSE); |
303 | } | 303 | } |
304 | if (TabWidget->currentPageIndex() == 2) { | 304 | if (TabWidget->currentPageIndex() == 2) { |
305 | tabMenu->setItemChecked(tabMenu->idAt(2),TRUE); | 305 | tabMenu->setItemChecked(tabMenu->idAt(2),TRUE); |
306 | tabMenu->setItemChecked(tabMenu->idAt(0),FALSE); | 306 | tabMenu->setItemChecked(tabMenu->idAt(0),FALSE); |
307 | tabMenu->setItemChecked(tabMenu->idAt(1),FALSE); | 307 | tabMenu->setItemChecked(tabMenu->idAt(1),FALSE); |
308 | } | 308 | } |
309 | } | 309 | } |
310 | 310 | ||
311 | void OpieFtp::newConnection() | 311 | void OpieFtp::newConnection() |
312 | { | 312 | { |
313 | UsernameComboBox->lineEdit()->setText(""); | 313 | UsernameComboBox->lineEdit()->setText(""); |
314 | PasswordEdit->setText( "" ); | 314 | PasswordEdit->setText( "" ); |
315 | ServerComboBox->lineEdit()->setText( ""); | 315 | ServerComboBox->lineEdit()->setText( ""); |
316 | remotePath->setText( currentRemoteDir = "/"); | 316 | remotePath->setText( currentRemoteDir = "/"); |
317 | PortSpinBox->setValue( 21); | 317 | PortSpinBox->setValue( 21); |
318 | TabWidget->setCurrentPage(2); | 318 | TabWidget->setCurrentPage(2); |
319 | currentServerConfig = -1; | 319 | currentServerConfig = -1; |
320 | } | 320 | } |
321 | 321 | ||
322 | void OpieFtp::serverComboEdited(const QString & edit) { | 322 | void OpieFtp::serverComboEdited(const QString & edit) |
323 | { | ||
323 | if( !edit.isEmpty() ) { | 324 | if( !edit.isEmpty() ) { |
324 | currentServerConfig = -1; | 325 | currentServerConfig = -1; |
325 | // qDebug("comboedited"); | 326 | // qDebug("comboedited"); |
326 | } | 327 | } |
327 | } | 328 | } |
328 | 329 | ||
329 | void OpieFtp::connectorBtnToggled(bool On) | 330 | void OpieFtp::connectorBtnToggled(bool On) |
330 | { | 331 | { |
331 | if(On) { | 332 | if(On) { |
332 | connector(); | 333 | connector(); |
333 | } else { | 334 | } else { |
334 | disConnector(); | 335 | disConnector(); |
335 | } | 336 | } |
336 | 337 | ||
337 | } | 338 | } |
338 | 339 | ||
339 | void OpieFtp::connector() | 340 | void OpieFtp::connector() |
340 | { | 341 | { |
341 | QCopEnvelope ( "QPE/System", "busy()" ); | 342 | QCopEnvelope ( "QPE/System", "busy()" ); |
342 | // qApp->processEvents(); | 343 | // qApp->processEvents(); |
343 | currentRemoteDir=remotePath->text(); | 344 | currentRemoteDir=remotePath->text(); |
344 | if(ServerComboBox->currentText().isEmpty()) { | 345 | if(ServerComboBox->currentText().isEmpty()) { |
345 | QMessageBox::warning(this,tr("Ftp"),tr("Please set the server info"),tr("Ok"),0,0); | 346 | QMessageBox::warning(this,tr("Ftp"),tr("Please set the server info"),tr("Ok"),0,0); |
346 | TabWidget->setCurrentPage(2); | 347 | TabWidget->setCurrentPage(2); |
347 | ServerComboBox->setFocus(); | 348 | ServerComboBox->setFocus(); |
348 | connectServerBtn->setOn(FALSE); | 349 | connectServerBtn->setOn(FALSE); |
349 | connectServerBtn->setText( tr("Connect")); | 350 | connectServerBtn->setText( tr("Connect")); |
350 | return; | 351 | return; |
351 | } | 352 | } |
352 | FtpInit(); | 353 | FtpInit(); |
353 | TabWidget->setCurrentPage(1); | 354 | TabWidget->setCurrentPage(1); |
354 | QString ftp_host = ServerComboBox->currentText(); | 355 | QString ftp_host = ServerComboBox->currentText(); |
355 | QString ftp_user = UsernameComboBox->currentText(); | 356 | QString ftp_user = UsernameComboBox->currentText(); |
356 | QString ftp_pass = PasswordEdit->text(); | 357 | QString ftp_pass = PasswordEdit->text(); |
357 | QString port=PortSpinBox->cleanText(); | 358 | QString port=PortSpinBox->cleanText(); |
358 | port.stripWhiteSpace(); | 359 | port.stripWhiteSpace(); |
359 | 360 | ||
360 | if(ftp_host.find("ftp://",0, TRUE) != -1 ) | 361 | if(ftp_host.find("ftp://",0, TRUE) != -1 ) |
361 | ftp_host=ftp_host.right(ftp_host.length()-6); | 362 | ftp_host=ftp_host.right(ftp_host.length()-6); |
362 | ftp_host+=":"+port; | 363 | ftp_host+=":"+port; |
363 | if (!FtpConnect( ftp_host.latin1(), &conn)) { | 364 | if (!FtpConnect( ftp_host.latin1(), &conn)) { |
364 | QMessageBox::message(tr("Note"),tr("Unable to connect to\n")+ftp_host); | 365 | QMessageBox::message(tr("Note"),tr("Unable to connect to\n")+ftp_host); |
365 | connectServerBtn->setOn(FALSE); | 366 | connectServerBtn->setOn(FALSE); |
366 | connectServerBtn->setText( tr("Connect")); | 367 | connectServerBtn->setText( tr("Connect")); |
367 | return ; | 368 | return ; |
368 | } | 369 | } |
369 | if (!FtpLogin( ftp_user.latin1(), ftp_pass.latin1(),conn )) { | 370 | if (!FtpLogin( ftp_user.latin1(), ftp_pass.latin1(),conn )) { |
370 | QString msg; | 371 | QString msg; |
@@ -609,155 +610,154 @@ bool OpieFtp::populateRemoteView( ) | |||
609 | QFile file( sfile); | 610 | QFile file( sfile); |
610 | Remote_View->clear(); | 611 | Remote_View->clear(); |
611 | QString s, File_Name; | 612 | QString s, File_Name; |
612 | QListViewItem *itemDir=NULL, *itemFile=NULL; | 613 | QListViewItem *itemDir=NULL, *itemFile=NULL; |
613 | QString fileL, fileS, fileDate; | 614 | QString fileL, fileS, fileDate; |
614 | if ( file.open(IO_ReadOnly)) { | 615 | if ( file.open(IO_ReadOnly)) { |
615 | QTextStream t( &file ); // use a text stream | 616 | QTextStream t( &file ); // use a text stream |
616 | while ( !t.eof()) { | 617 | while ( !t.eof()) { |
617 | s = t.readLine(); | 618 | s = t.readLine(); |
618 | fileL = s.right(s.length()-55); | 619 | fileL = s.right(s.length()-55); |
619 | fileL = fileL.stripWhiteSpace(); | 620 | fileL = fileL.stripWhiteSpace(); |
620 | if(s.left(1) == "d") | 621 | if(s.left(1) == "d") |
621 | fileL = fileL+"/"; | 622 | fileL = fileL+"/"; |
622 | // fileL = "/"+fileL+"/"; | 623 | // fileL = "/"+fileL+"/"; |
623 | fileS = s.mid( 30, 42-30); | 624 | fileS = s.mid( 30, 42-30); |
624 | fileS = fileS.stripWhiteSpace(); | 625 | fileS = fileS.stripWhiteSpace(); |
625 | fileDate = s.mid( 42, 55-42); | 626 | fileDate = s.mid( 42, 55-42); |
626 | fileDate = fileDate.stripWhiteSpace(); | 627 | fileDate = fileDate.stripWhiteSpace(); |
627 | if(fileL.find("total",0,TRUE) == -1) { | 628 | if(fileL.find("total",0,TRUE) == -1) { |
628 | if(s.left(1) == "d" || fileL.find("/",0,TRUE) != -1) { | 629 | if(s.left(1) == "d" || fileL.find("/",0,TRUE) != -1) { |
629 | QListViewItem * item = new QListViewItem( Remote_View, fileL, fileS, fileDate,"d"); | 630 | QListViewItem * item = new QListViewItem( Remote_View, fileL, fileS, fileDate,"d"); |
630 | item->setPixmap( 0, Resource::loadPixmap( "folder" )); | 631 | item->setPixmap( 0, Resource::loadPixmap( "folder" )); |
631 | // if(itemDir) | 632 | // if(itemDir) |
632 | item->moveItem(itemDir); | 633 | item->moveItem(itemDir); |
633 | itemDir=item; | 634 | itemDir=item; |
634 | } else { | 635 | } else { |
635 | QListViewItem * item = new QListViewItem( Remote_View, fileL, fileS, fileDate,"f"); | 636 | QListViewItem * item = new QListViewItem( Remote_View, fileL, fileS, fileDate,"f"); |
636 | item->setPixmap( 0, Resource::loadPixmap( "fileopen" )); | 637 | item->setPixmap( 0, Resource::loadPixmap( "fileopen" )); |
637 | // if(itemFile) | 638 | // if(itemFile) |
638 | item->moveItem(itemDir); | 639 | item->moveItem(itemDir); |
639 | item->moveItem(itemFile); | 640 | item->moveItem(itemFile); |
640 | itemFile=item; | 641 | itemFile=item; |
641 | } | 642 | } |
642 | } | 643 | } |
643 | } | 644 | } |
644 | QListViewItem * item1 = new QListViewItem( Remote_View, "../"); | 645 | QListViewItem * item1 = new QListViewItem( Remote_View, "../"); |
645 | item1->setPixmap( 0, Resource::loadPixmap( "folder" )); | 646 | item1->setPixmap( 0, Resource::loadPixmap( "folder" )); |
646 | file.close(); | 647 | file.close(); |
647 | if( file.exists()) | 648 | if( file.exists()) |
648 | file. remove(); | 649 | file. remove(); |
649 | } else | 650 | } else |
650 | qDebug("temp file not opened successfullly "+sfile); | 651 | qDebug("temp file not opened successfullly "+sfile); |
651 | Remote_View->setSorting( 4,TRUE); | 652 | Remote_View->setSorting( 4,TRUE); |
652 | return true; | 653 | return true; |
653 | } | 654 | } |
654 | 655 | ||
655 | void OpieFtp::remoteListClicked(QListViewItem *selectedItem) | 656 | void OpieFtp::remoteListClicked(QListViewItem *selectedItem) |
656 | { | 657 | { |
657 | if(item) { | 658 | if( selectedItem) { |
658 | QCopEnvelope ( "QPE/System", "busy()" ); | 659 | QCopEnvelope ( "QPE/System", "busy()" ); |
659 | QString oldRemoteCurrentDir = currentRemoteDir; | 660 | QString oldRemoteCurrentDir = currentRemoteDir; |
660 | QString strItem=selectedItem->text(0); | 661 | QString strItem=selectedItem->text(0); |
661 | strItem=strItem.simplifyWhiteSpace(); | 662 | strItem=strItem.simplifyWhiteSpace(); |
662 | if(strItem == "../") { // the user wants to go ^ | 663 | if(strItem == "../") { // the user wants to go ^ |
663 | if( FtpCDUp( conn) == 0) { | 664 | if( FtpCDUp( conn) == 0) { |
664 | QString msg; | 665 | QString msg; |
665 | msg.sprintf(tr("Unable to cd up\n")+"%s",FtpLastResponse(conn)); | 666 | msg.sprintf(tr("Unable to cd up\n")+"%s",FtpLastResponse(conn)); |
666 | msg.replace(QRegExp(":"),"\n"); | 667 | msg.replace(QRegExp(":"),"\n"); |
667 | QMessageBox::message(tr("Note"),msg); | 668 | QMessageBox::message(tr("Note"),msg); |
668 | qDebug(msg); | 669 | qDebug(msg); |
669 | } | 670 | } |
670 | char path[256]; | 671 | char path[256]; |
671 | if( FtpPwd( path,sizeof(path),conn) == 0) { //this is easier than fudging the string | 672 | if( FtpPwd( path,sizeof(path),conn) == 0) { //this is easier than fudging the string |
672 | QString msg; | 673 | QString msg; |
673 | msg.sprintf(tr("Unable to get working dir\n")+"%s",FtpLastResponse(conn)); | 674 | msg.sprintf(tr("Unable to get working dir\n")+"%s",FtpLastResponse(conn)); |
674 | msg.replace(QRegExp(":"),"\n"); | 675 | msg.replace(QRegExp(":"),"\n"); |
675 | QMessageBox::message(tr("Note"),msg); | 676 | QMessageBox::message(tr("Note"),msg); |
676 | qDebug(msg); | 677 | qDebug(msg); |
677 | } | 678 | } |
678 | currentRemoteDir=path; | 679 | currentRemoteDir=path; |
679 | } else { | 680 | } else { |
680 | if(strItem.find("->",0,TRUE) != -1) { //symlink on some servers | 681 | if(strItem.find("->",0,TRUE) != -1) { //symlink on some servers |
681 | strItem=strItem.right( strItem.length() - strItem.find("->",0,TRUE) - 2 ); | 682 | strItem=strItem.right( strItem.length() - strItem.find("->",0,TRUE) - 2 ); |
682 | strItem = strItem.stripWhiteSpace(); | 683 | strItem = strItem.stripWhiteSpace(); |
683 | currentRemoteDir = strItem; | 684 | currentRemoteDir = strItem; |
684 | if( !remoteChDir( (const QString &)strItem)) { | 685 | if( !remoteChDir( (const QString &)strItem)) { |
685 | currentRemoteDir = oldRemoteCurrentDir; | 686 | currentRemoteDir = oldRemoteCurrentDir; |
686 | strItem=""; | 687 | strItem=""; |
687 | qDebug("RemoteCurrentDir1 "+oldRemoteCurrentDir); | 688 | qDebug("RemoteCurrentDir1 "+oldRemoteCurrentDir); |
688 | } | 689 | } |
689 | } else if(strItem.find("/",0,TRUE) != -1) { // this is a directory | 690 | } else if(strItem.find("/",0,TRUE) != -1) { // this is a directory |
690 | qDebug("trying directory"); | 691 | qDebug("trying directory"); |
691 | if( !remoteChDir( (const QString &)currentRemoteDir + strItem)) { | 692 | if( !remoteChDir( (const QString &)currentRemoteDir + strItem)) { |
692 | currentRemoteDir = oldRemoteCurrentDir; | 693 | currentRemoteDir = oldRemoteCurrentDir; |
693 | strItem=""; | 694 | strItem=""; |
694 | qDebug("RemoteCurrentDir1 "+oldRemoteCurrentDir); | 695 | qDebug("RemoteCurrentDir1 "+oldRemoteCurrentDir); |
695 | 696 | ||
696 | } else { | 697 | } else { |
697 | currentRemoteDir = currentRemoteDir+strItem; | 698 | currentRemoteDir = currentRemoteDir+strItem; |
698 | } | 699 | } |
699 | } else { | 700 | } else { |
700 | qDebug("download "+strItem); | 701 | qDebug("download "+strItem); |
701 | } | 702 | } |
702 | } | 703 | } |
703 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate | 704 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate |
704 | if(currentRemoteDir.right(1) !="/") | 705 | if(currentRemoteDir.right(1) !="/") |
705 | currentRemoteDir +="/"; | 706 | currentRemoteDir +="/"; |
706 | currentPathCombo->lineEdit()->setText( currentRemoteDir ); | 707 | currentPathCombo->lineEdit()->setText( currentRemoteDir ); |
707 | fillRemoteCombo( (const QString &)currentDir); | 708 | fillRemoteCombo( (const QString &)currentDir); |
708 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 709 | QCopEnvelope ( "QPE/System", "notBusy()" ); |
709 | } | 710 | } |
710 | } | 711 | } |
711 | 712 | ||
712 | void OpieFtp::localListClicked(QListViewItem *selectedItem) | 713 | void OpieFtp::localListClicked(QListViewItem *selectedItem) |
713 | { | 714 | { |
714 | // qDebug(selectedItem->text(0)); | 715 | if(selectedItem!= NULL) { |
715 | if(item!= NULL) { | ||
716 | 716 | ||
717 | QString strItem=selectedItem->text(0); | 717 | QString strItem=selectedItem->text(0); |
718 | QString strSize=selectedItem->text(1); | 718 | QString strSize=selectedItem->text(1); |
719 | strSize=strSize.stripWhiteSpace(); | 719 | strSize=strSize.stripWhiteSpace(); |
720 | if(strItem.find("@",0,TRUE) !=-1 || strItem.find("->",0,TRUE) !=-1 ) { //if symlink | 720 | if(strItem.find("@",0,TRUE) !=-1 || strItem.find("->",0,TRUE) !=-1 ) { //if symlink |
721 | // is symlink | 721 | // is symlink |
722 | QString strItem2 = strItem.right( (strItem.length() - strItem.find("->",0,TRUE)) - 4); | 722 | QString strItem2 = strItem.right( (strItem.length() - strItem.find("->",0,TRUE)) - 4); |
723 | if(QDir(strItem2).exists() ) { | 723 | if(QDir(strItem2).exists() ) { |
724 | currentDir.cd(strItem2, TRUE); | 724 | currentDir.cd(strItem2, TRUE); |
725 | populateLocalView(); | 725 | populateLocalView(); |
726 | } | 726 | } |
727 | } else { // not a symlink | 727 | } else { // not a symlink |
728 | if(strItem.find(". .",0,TRUE) && strItem.find("/",0,TRUE)!=-1 ) { | 728 | if(strItem.find(". .",0,TRUE) && strItem.find("/",0,TRUE)!=-1 ) { |
729 | if(QDir(QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem)).exists() ) { | 729 | if(QDir(QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem)).exists() ) { |
730 | strItem=QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem); | 730 | strItem=QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem); |
731 | currentDir.cd(strItem,FALSE); | 731 | currentDir.cd(strItem,FALSE); |
732 | populateLocalView(); | 732 | populateLocalView(); |
733 | } else { | 733 | } else { |
734 | currentDir.cdUp(); | 734 | currentDir.cdUp(); |
735 | populateLocalView(); | 735 | populateLocalView(); |
736 | } | 736 | } |
737 | if(QDir(strItem).exists()){ | 737 | if(QDir(strItem).exists()){ |
738 | currentDir.cd(strItem, TRUE); | 738 | currentDir.cd(strItem, TRUE); |
739 | populateLocalView(); | 739 | populateLocalView(); |
740 | } | 740 | } |
741 | } else { | 741 | } else { |
742 | strItem=QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem); | 742 | strItem=QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem); |
743 | if( QFile::exists(strItem ) ) { | 743 | if( QFile::exists(strItem ) ) { |
744 | // qDebug("upload "+strItem); | 744 | // qDebug("upload "+strItem); |
745 | } | 745 | } |
746 | } //end not symlink | 746 | } //end not symlink |
747 | chdir(strItem.latin1()); | 747 | chdir(strItem.latin1()); |
748 | } | 748 | } |
749 | } | 749 | } |
750 | } | 750 | } |
751 | 751 | ||
752 | void OpieFtp::doLocalCd() | 752 | void OpieFtp::doLocalCd() |
753 | { | 753 | { |
754 | localListClicked( Local_View->currentItem()); | 754 | localListClicked( Local_View->currentItem()); |
755 | } | 755 | } |
756 | 756 | ||
757 | void OpieFtp:: doRemoteCd() | 757 | void OpieFtp:: doRemoteCd() |
758 | { | 758 | { |
759 | remoteListClicked( Remote_View->currentItem()); | 759 | remoteListClicked( Remote_View->currentItem()); |
760 | 760 | ||
761 | } | 761 | } |
762 | 762 | ||
763 | void OpieFtp::showHidden() | 763 | void OpieFtp::showHidden() |