Diffstat (limited to 'noncore/net/opieftp/opieftp.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/net/opieftp/opieftp.cpp | 140 |
1 files changed, 118 insertions, 22 deletions
diff --git a/noncore/net/opieftp/opieftp.cpp b/noncore/net/opieftp/opieftp.cpp index 919649e..fb57193 100644 --- a/noncore/net/opieftp/opieftp.cpp +++ b/noncore/net/opieftp/opieftp.cpp | |||
@@ -74,18 +74,21 @@ OpieFtp::OpieFtp( ) | |||
74 | layout->setSpacing( 2); | 74 | layout->setSpacing( 2); |
75 | layout->setMargin( 2); | 75 | layout->setMargin( 2); |
76 | 76 | ||
77 | connect( qApp,SIGNAL( aboutToQuit()),SLOT( cleanUp()) ); | 77 | connect( qApp,SIGNAL( aboutToQuit()),SLOT( cleanUp()) ); |
78 | 78 | ||
79 | QPEMenuBar *menuBar = new QPEMenuBar(this); | 79 | QPEMenuBar *menuBar = new QPEMenuBar(this); |
80 | // QPEToolBar *menuBar = new QPEToolBar(this); | ||
81 | // menuBar->setHorizontalStretchable( TRUE ); | ||
82 | |||
80 | connectionMenu = new QPopupMenu( this ); | 83 | connectionMenu = new QPopupMenu( this ); |
81 | localMenu = new QPopupMenu( this ); | 84 | localMenu = new QPopupMenu( this ); |
82 | remoteMenu = new QPopupMenu( this ); | 85 | remoteMenu = new QPopupMenu( this ); |
83 | tabMenu = new QPopupMenu( this ); | 86 | tabMenu = new QPopupMenu( this ); |
84 | 87 | ||
85 | layout->addMultiCellWidget( menuBar, 0, 0, 0, 3 ); | 88 | layout->addMultiCellWidget( menuBar, 0, 0, 0, 2 ); |
86 | 89 | ||
87 | menuBar->insertItem( tr( "Connection" ), connectionMenu); | 90 | menuBar->insertItem( tr( "Connection" ), connectionMenu); |
88 | menuBar->insertItem( tr( "Local" ), localMenu); | 91 | menuBar->insertItem( tr( "Local" ), localMenu); |
89 | menuBar->insertItem( tr( "Remote" ), remoteMenu); | 92 | menuBar->insertItem( tr( "Remote" ), remoteMenu); |
90 | menuBar->insertItem( tr( "View" ), tabMenu); | 93 | menuBar->insertItem( tr( "View" ), tabMenu); |
91 | 94 | ||
@@ -110,14 +113,35 @@ OpieFtp::OpieFtp( ) | |||
110 | 113 | ||
111 | tabMenu->insertItem( tr( "Switch to Local" ), this, SLOT( switchToLocalTab() )); | 114 | tabMenu->insertItem( tr( "Switch to Local" ), this, SLOT( switchToLocalTab() )); |
112 | tabMenu->insertItem( tr( "Switch to Remote" ), this, SLOT( switchToRemoteTab() )); | 115 | tabMenu->insertItem( tr( "Switch to Remote" ), this, SLOT( switchToRemoteTab() )); |
113 | tabMenu->insertItem( tr( "Switch to Config" ), this, SLOT( switchToConfigTab() )); | 116 | tabMenu->insertItem( tr( "Switch to Config" ), this, SLOT( switchToConfigTab() )); |
114 | tabMenu->setCheckable(TRUE); | 117 | tabMenu->setCheckable(TRUE); |
115 | 118 | ||
119 | |||
120 | cdUpButton = new QPushButton(Resource::loadIconSet("up"),"",this,"cdUpButton"); | ||
121 | cdUpButton ->setFixedSize( QSize( 20, 20 ) ); | ||
122 | connect( cdUpButton ,SIGNAL(released()),this,SLOT( upDir()) ); | ||
123 | cdUpButton ->setFlat(TRUE); | ||
124 | layout->addMultiCellWidget( cdUpButton, 0, 0, 3, 3 ); | ||
125 | cdUpButton->hide(); | ||
126 | |||
127 | // docButton = new QPushButton(Resource::loadIconSet("DocsIcon"),"",this,"docsButton"); | ||
128 | // docButton->setFixedSize( QSize( 20, 20 ) ); | ||
129 | // connect( docButton,SIGNAL(released()),this,SLOT( docButtonPushed()) ); | ||
130 | // docButton->setFlat(TRUE); | ||
131 | // layout->addMultiCellWidget( docButton, 0, 0, 6, 6 ); | ||
132 | |||
133 | homeButton = new QPushButton( Resource::loadIconSet("home"),"",this,"homeButton"); | ||
134 | homeButton->setFixedSize( QSize( 20, 20 ) ); | ||
135 | connect(homeButton,SIGNAL(released()),this,SLOT(homeButtonPushed()) ); | ||
136 | homeButton->setFlat(TRUE); | ||
137 | layout->addMultiCellWidget( homeButton, 0, 0, 4, 4); | ||
138 | homeButton->hide(); | ||
139 | |||
116 | TabWidget = new QTabWidget( this, "TabWidget" ); | 140 | TabWidget = new QTabWidget( this, "TabWidget" ); |
117 | layout->addMultiCellWidget( TabWidget, 1, 1, 0, 3 ); | 141 | layout->addMultiCellWidget( TabWidget, 1, 1, 0, 4 ); |
118 | 142 | ||
119 | // TabWidget->setTabShape(QTabWidget::Triangular); | 143 | // TabWidget->setTabShape(QTabWidget::Triangular); |
120 | 144 | ||
121 | tab = new QWidget( TabWidget, "tab" ); | 145 | tab = new QWidget( TabWidget, "tab" ); |
122 | tabLayout = new QGridLayout( tab ); | 146 | tabLayout = new QGridLayout( tab ); |
123 | tabLayout->setSpacing( 2); | 147 | tabLayout->setSpacing( 2); |
@@ -245,24 +269,25 @@ OpieFtp::OpieFtp( ) | |||
245 | 269 | ||
246 | currentDir.setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All); | 270 | currentDir.setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All); |
247 | currentDir.setPath( QDir::currentDirPath()); | 271 | currentDir.setPath( QDir::currentDirPath()); |
248 | // currentDir.setSorting(/* QDir::Size*/ /*| QDir::Reversed | */QDir::DirsFirst); | 272 | // currentDir.setSorting(/* QDir::Size*/ /*| QDir::Reversed | */QDir::DirsFirst); |
249 | 273 | ||
250 | currentPathCombo = new QComboBox( FALSE, this, "currentPathCombo" ); | 274 | currentPathCombo = new QComboBox( FALSE, this, "currentPathCombo" ); |
251 | layout->addMultiCellWidget( currentPathCombo, 3, 3, 0, 3 ); | 275 | layout->addMultiCellWidget( currentPathCombo, 3, 3, 0, 4); |
276 | |||
252 | currentPathCombo->setEditable(TRUE); | 277 | currentPathCombo->setEditable(TRUE); |
253 | currentPathCombo->lineEdit()->setText( currentDir.canonicalPath()); | 278 | currentPathCombo->lineEdit()->setText( currentDir.canonicalPath()); |
254 | 279 | ||
255 | connect( currentPathCombo, SIGNAL( activated( const QString & ) ), | 280 | connect( currentPathCombo, SIGNAL( activated( const QString & ) ), |
256 | this, SLOT( currentPathComboActivated( const QString & ) ) ); | 281 | this, SLOT( currentPathComboActivated( const QString & ) ) ); |
257 | 282 | ||
258 | connect( currentPathCombo->lineEdit(),SIGNAL(returnPressed()), | 283 | connect( currentPathCombo->lineEdit(),SIGNAL(returnPressed()), |
259 | this,SLOT(currentPathComboChanged())); | 284 | this,SLOT(currentPathComboChanged())); |
260 | 285 | ||
261 | ProgressBar = new QProgressBar( this, "ProgressBar" ); | 286 | ProgressBar = new QProgressBar( this, "ProgressBar" ); |
262 | layout->addMultiCellWidget( ProgressBar, 4, 4, 0, 3 ); | 287 | layout->addMultiCellWidget( ProgressBar, 4, 4, 0, 4); |
263 | 288 | ||
264 | // fillCombos(); | 289 | // fillCombos(); |
265 | 290 | ||
266 | filterStr="*"; | 291 | filterStr="*"; |
267 | b=FALSE; | 292 | b=FALSE; |
268 | populateLocalView(); | 293 | populateLocalView(); |
@@ -295,23 +320,34 @@ void OpieFtp::tabChanged(QWidget *w) | |||
295 | { | 320 | { |
296 | if (TabWidget->currentPageIndex() == 0) { | 321 | if (TabWidget->currentPageIndex() == 0) { |
297 | currentPathCombo->lineEdit()->setText( currentDir.canonicalPath()); | 322 | currentPathCombo->lineEdit()->setText( currentDir.canonicalPath()); |
298 | tabMenu->setItemChecked(tabMenu->idAt(0),TRUE); | 323 | tabMenu->setItemChecked(tabMenu->idAt(0),TRUE); |
299 | tabMenu->setItemChecked(tabMenu->idAt(1),FALSE); | 324 | tabMenu->setItemChecked(tabMenu->idAt(1),FALSE); |
300 | tabMenu->setItemChecked(tabMenu->idAt(2),FALSE); | 325 | tabMenu->setItemChecked(tabMenu->idAt(2),FALSE); |
326 | if(cdUpButton->isHidden()) | ||
327 | cdUpButton->show(); | ||
328 | if(homeButton->isHidden()) | ||
329 | homeButton->show(); | ||
330 | |||
301 | } | 331 | } |
302 | if (TabWidget->currentPageIndex() == 1) { | 332 | if (TabWidget->currentPageIndex() == 1) { |
303 | currentPathCombo->lineEdit()->setText( currentRemoteDir ); | 333 | currentPathCombo->lineEdit()->setText( currentRemoteDir ); |
304 | tabMenu->setItemChecked(tabMenu->idAt(1),TRUE); | 334 | tabMenu->setItemChecked(tabMenu->idAt(1),TRUE); |
305 | tabMenu->setItemChecked(tabMenu->idAt(0),FALSE); | 335 | tabMenu->setItemChecked(tabMenu->idAt(0),FALSE); |
306 | tabMenu->setItemChecked(tabMenu->idAt(2),FALSE); | 336 | tabMenu->setItemChecked(tabMenu->idAt(2),FALSE); |
337 | if(cdUpButton->isHidden()) | ||
338 | cdUpButton->show(); | ||
339 | homeButton->hide(); | ||
340 | |||
307 | } | 341 | } |
308 | if (TabWidget->currentPageIndex() == 2) { | 342 | if (TabWidget->currentPageIndex() == 2) { |
309 | tabMenu->setItemChecked(tabMenu->idAt(2),TRUE); | 343 | tabMenu->setItemChecked(tabMenu->idAt(2),TRUE); |
310 | tabMenu->setItemChecked(tabMenu->idAt(0),FALSE); | 344 | tabMenu->setItemChecked(tabMenu->idAt(0),FALSE); |
311 | tabMenu->setItemChecked(tabMenu->idAt(1),FALSE); | 345 | tabMenu->setItemChecked(tabMenu->idAt(1),FALSE); |
346 | cdUpButton->hide(); | ||
347 | homeButton->hide(); | ||
312 | } | 348 | } |
313 | } | 349 | } |
314 | 350 | ||
315 | void OpieFtp::newConnection() | 351 | void OpieFtp::newConnection() |
316 | { | 352 | { |
317 | UsernameComboBox->lineEdit()->setText(""); | 353 | UsernameComboBox->lineEdit()->setText(""); |
@@ -339,13 +375,13 @@ void OpieFtp::connectorBtnToggled(bool On) | |||
339 | } | 375 | } |
340 | 376 | ||
341 | } | 377 | } |
342 | 378 | ||
343 | void OpieFtp::connector() | 379 | void OpieFtp::connector() |
344 | { | 380 | { |
345 | QCopEnvelope ( "QPE/System", "busy()" ); | 381 | // QCopEnvelope ( "QPE/System", "busy()" ); |
346 | // qApp->processEvents(); | 382 | // qApp->processEvents(); |
347 | currentRemoteDir=remotePath->text(); | 383 | currentRemoteDir=remotePath->text(); |
348 | if(ServerComboBox->currentText().isEmpty()) { | 384 | if(ServerComboBox->currentText().isEmpty()) { |
349 | QMessageBox::warning(this,tr("Ftp"),tr("Please set the server info"),tr("Ok"),0,0); | 385 | QMessageBox::warning(this,tr("Ftp"),tr("Please set the server info"),tr("Ok"),0,0); |
350 | TabWidget->setCurrentPage(2); | 386 | TabWidget->setCurrentPage(2); |
351 | ServerComboBox->setFocus(); | 387 | ServerComboBox->setFocus(); |
@@ -382,13 +418,13 @@ void OpieFtp::connector() | |||
382 | return ; | 418 | return ; |
383 | } | 419 | } |
384 | remoteDirList("/") ; | 420 | remoteDirList("/") ; |
385 | setCaption(ftp_host); | 421 | setCaption(ftp_host); |
386 | writeConfig(); | 422 | writeConfig(); |
387 | connectServerBtn->setText( tr("Disconnect")); | 423 | connectServerBtn->setText( tr("Disconnect")); |
388 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 424 | // QCopEnvelope ( "QPE/System", "notBusy()" ); |
389 | } | 425 | } |
390 | 426 | ||
391 | void OpieFtp::disConnector() | 427 | void OpieFtp::disConnector() |
392 | { | 428 | { |
393 | if(conn) | 429 | if(conn) |
394 | FtpQuit(conn); | 430 | FtpQuit(conn); |
@@ -399,13 +435,13 @@ void OpieFtp::disConnector() | |||
399 | connectServerBtn->setOn(FALSE); | 435 | connectServerBtn->setOn(FALSE); |
400 | } | 436 | } |
401 | 437 | ||
402 | void OpieFtp::localUpload() | 438 | void OpieFtp::localUpload() |
403 | { | 439 | { |
404 | int fsz; | 440 | int fsz; |
405 | QCopEnvelope ( "QPE/System", "busy()" ); | 441 | // QCopEnvelope ( "QPE/System", "busy()" ); |
406 | // qApp->processEvents(); | 442 | // qApp->processEvents(); |
407 | QList<QListViewItem> * getSelectedItems( QListView * Local_View ); | 443 | QList<QListViewItem> * getSelectedItems( QListView * Local_View ); |
408 | QListViewItemIterator it( Local_View ); | 444 | QListViewItemIterator it( Local_View ); |
409 | for ( ; it.current(); ++it ) { | 445 | for ( ; it.current(); ++it ) { |
410 | if ( it.current()->isSelected() ) { | 446 | if ( it.current()->isSelected() ) { |
411 | QString strItem = it.current()->text(0); | 447 | QString strItem = it.current()->text(0); |
@@ -435,13 +471,14 @@ void OpieFtp::localUpload() | |||
435 | nullifyCallBack(); | 471 | nullifyCallBack(); |
436 | } //end currentSelected | 472 | } //end currentSelected |
437 | it.current()->setSelected(FALSE); | 473 | it.current()->setSelected(FALSE); |
438 | } | 474 | } |
439 | TabWidget->setCurrentPage(1); | 475 | TabWidget->setCurrentPage(1); |
440 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate | 476 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate |
441 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 477 | // QCopEnvelope ( "QPE/System", "notBusy()" ); |
478 | |||
442 | } | 479 | } |
443 | 480 | ||
444 | void OpieFtp::nullifyCallBack() | 481 | void OpieFtp::nullifyCallBack() |
445 | { | 482 | { |
446 | FtpOptions(FTPLIB_CALLBACK, NULL, conn); | 483 | FtpOptions(FTPLIB_CALLBACK, NULL, conn); |
447 | FtpOptions(FTPLIB_IDLETIME, NULL, conn); | 484 | FtpOptions(FTPLIB_IDLETIME, NULL, conn); |
@@ -450,13 +487,13 @@ void OpieFtp::nullifyCallBack() | |||
450 | } | 487 | } |
451 | 488 | ||
452 | void OpieFtp::remoteDownload() | 489 | void OpieFtp::remoteDownload() |
453 | { | 490 | { |
454 | // qApp->processEvents(); | 491 | // qApp->processEvents(); |
455 | int fsz; | 492 | int fsz; |
456 | QCopEnvelope ( "QPE/System", "busy()" ); | 493 | // QCopEnvelope ( "QPE/System", "busy()" ); |
457 | 494 | ||
458 | QList<QListViewItem> * getSelectedItems( QListView * Remote_View ); | 495 | QList<QListViewItem> * getSelectedItems( QListView * Remote_View ); |
459 | QListViewItemIterator it( Remote_View ); | 496 | QListViewItemIterator it( Remote_View ); |
460 | for ( ; it.current(); ++it ) { | 497 | for ( ; it.current(); ++it ) { |
461 | if ( it.current()->isSelected() ) { | 498 | if ( it.current()->isSelected() ) { |
462 | QString strItem = it.current()->text(0); | 499 | QString strItem = it.current()->text(0); |
@@ -489,49 +526,50 @@ void OpieFtp::remoteDownload() | |||
489 | nullifyCallBack(); | 526 | nullifyCallBack(); |
490 | } | 527 | } |
491 | it.current()->setSelected(FALSE); | 528 | it.current()->setSelected(FALSE); |
492 | } | 529 | } |
493 | TabWidget->setCurrentPage(0); | 530 | TabWidget->setCurrentPage(0); |
494 | populateLocalView(); | 531 | populateLocalView(); |
495 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 532 | // QCopEnvelope ( "QPE/System", "notBusy()" ); |
533 | |||
496 | } | 534 | } |
497 | 535 | ||
498 | bool OpieFtp::remoteDirList(const QString &dir) | 536 | bool OpieFtp::remoteDirList(const QString &dir) |
499 | { | 537 | { |
500 | QString tmp = QDir::homeDirPath(); | 538 | QString tmp = QDir::homeDirPath(); |
501 | if(tmp.right(1) != "/") | 539 | if(tmp.right(1) != "/") |
502 | tmp+="/._temp"; | 540 | tmp+="/._temp"; |
503 | else | 541 | else |
504 | tmp+="._temp"; | 542 | tmp+="._temp"; |
505 | // qDebug("Listing remote dir "+tmp); | 543 | // qDebug("Listing remote dir "+tmp); |
506 | QCopEnvelope ( "QPE/System", "busy()" ); | 544 | // QCopEnvelope ( "QPE/System", "busy()" ); |
507 | if (!FtpDir( tmp.latin1(), dir.latin1(), conn) ) { | 545 | if (!FtpDir( tmp.latin1(), dir.latin1(), conn) ) { |
508 | QString msg; | 546 | QString msg; |
509 | msg.sprintf(tr("Unable to list the directory\n")+dir+"\n%s",FtpLastResponse(conn) ); | 547 | msg.sprintf(tr("Unable to list the directory\n")+dir+"\n%s",FtpLastResponse(conn) ); |
510 | msg.replace(QRegExp(":"),"\n"); | 548 | msg.replace(QRegExp(":"),"\n"); |
511 | QMessageBox::message(tr("Note"),msg); | 549 | QMessageBox::message(tr("Note"),msg); |
512 | return false; | 550 | return false; |
513 | } | 551 | } |
514 | populateRemoteView() ; | 552 | populateRemoteView() ; |
515 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 553 | // QCopEnvelope ( "QPE/System", "notBusy()" ); |
516 | return true; | 554 | return true; |
517 | } | 555 | } |
518 | 556 | ||
519 | bool OpieFtp::remoteChDir(const QString &dir) | 557 | bool OpieFtp::remoteChDir(const QString &dir) |
520 | { | 558 | { |
521 | QCopEnvelope ( "QPE/System", "busy()" ); | 559 | // QCopEnvelope ( "QPE/System", "busy()" ); |
522 | if (!FtpChdir( dir.latin1(), conn )) { | 560 | if (!FtpChdir( dir.latin1(), conn )) { |
523 | QString msg; | 561 | QString msg; |
524 | msg.sprintf(tr("Unable to change directories\n")+dir+"\n%s",FtpLastResponse(conn)); | 562 | msg.sprintf(tr("Unable to change directories\n")+dir+"\n%s",FtpLastResponse(conn)); |
525 | msg.replace(QRegExp(":"),"\n"); | 563 | msg.replace(QRegExp(":"),"\n"); |
526 | QMessageBox::message(tr("Note"),msg); | 564 | QMessageBox::message(tr("Note"),msg); |
527 | // qDebug(msg); | 565 | // qDebug(msg); |
528 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 566 | // QCopEnvelope ( "QPE/System", "notBusy()" ); |
529 | return FALSE; | 567 | return FALSE; |
530 | } | 568 | } |
531 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 569 | // QCopEnvelope ( "QPE/System", "notBusy()" ); |
532 | return TRUE; | 570 | return TRUE; |
533 | } | 571 | } |
534 | 572 | ||
535 | void OpieFtp::populateLocalView() | 573 | void OpieFtp::populateLocalView() |
536 | { | 574 | { |
537 | Local_View->clear(); | 575 | Local_View->clear(); |
@@ -596,12 +634,13 @@ void OpieFtp::populateLocalView() | |||
596 | isDir=FALSE; | 634 | isDir=FALSE; |
597 | ++it; | 635 | ++it; |
598 | } | 636 | } |
599 | Local_View->setSorting( 3,FALSE); | 637 | Local_View->setSorting( 3,FALSE); |
600 | currentPathCombo->lineEdit()->setText( currentDir.canonicalPath() ); | 638 | currentPathCombo->lineEdit()->setText( currentDir.canonicalPath() ); |
601 | fillCombo( (const QString &)currentDir); | 639 | fillCombo( (const QString &)currentDir); |
640 | |||
602 | } | 641 | } |
603 | 642 | ||
604 | bool OpieFtp::populateRemoteView( ) | 643 | bool OpieFtp::populateRemoteView( ) |
605 | { | 644 | { |
606 | // qDebug("populate remoteview"); | 645 | // qDebug("populate remoteview"); |
607 | QString sfile=QDir::homeDirPath(); | 646 | QString sfile=QDir::homeDirPath(); |
@@ -696,13 +735,13 @@ void OpieFtp::remoteListClicked(QListViewItem *selectedItem) | |||
696 | // qDebug("RemoteCurrentDir1 "+oldRemoteCurrentDir); | 735 | // qDebug("RemoteCurrentDir1 "+oldRemoteCurrentDir); |
697 | 736 | ||
698 | } else { | 737 | } else { |
699 | currentRemoteDir = currentRemoteDir+strItem; | 738 | currentRemoteDir = currentRemoteDir+strItem; |
700 | } | 739 | } |
701 | } else { | 740 | } else { |
702 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 741 | // QCopEnvelope ( "QPE/System", "notBusy()" ); |
703 | return; | 742 | return; |
704 | } | 743 | } |
705 | } | 744 | } |
706 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate | 745 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate |
707 | if(currentRemoteDir.right(1) !="/") | 746 | if(currentRemoteDir.right(1) !="/") |
708 | currentRemoteDir +="/"; | 747 | currentRemoteDir +="/"; |
@@ -748,12 +787,13 @@ void OpieFtp::localListClicked(QListViewItem *selectedItem) | |||
748 | return; | 787 | return; |
749 | } | 788 | } |
750 | } //end not symlink | 789 | } //end not symlink |
751 | chdir(strItem.latin1()); | 790 | chdir(strItem.latin1()); |
752 | } | 791 | } |
753 | } | 792 | } |
793 | |||
754 | } | 794 | } |
755 | 795 | ||
756 | void OpieFtp::doLocalCd() | 796 | void OpieFtp::doLocalCd() |
757 | { | 797 | { |
758 | localListClicked( Local_View->currentItem()); | 798 | localListClicked( Local_View->currentItem()); |
759 | } | 799 | } |
@@ -885,28 +925,28 @@ void OpieFtp::remoteMakDir() | |||
885 | InputDialog *fileDlg; | 925 | InputDialog *fileDlg; |
886 | fileDlg = new InputDialog(this,tr("Make Directory"),TRUE, 0); | 926 | fileDlg = new InputDialog(this,tr("Make Directory"),TRUE, 0); |
887 | fileDlg->exec(); | 927 | fileDlg->exec(); |
888 | if( fileDlg->result() == 1 ) { | 928 | if( fileDlg->result() == 1 ) { |
889 | QString filename = fileDlg->LineEdit1->text();//+".playlist"; | 929 | QString filename = fileDlg->LineEdit1->text();//+".playlist"; |
890 | QString tmp=currentRemoteDir+filename; | 930 | QString tmp=currentRemoteDir+filename; |
891 | QCopEnvelope ( "QPE/System", "busy()" ); | 931 | // QCopEnvelope ( "QPE/System", "busy()" ); |
892 | if(FtpMkdir( tmp.latin1(), conn) == 0) { | 932 | if(FtpMkdir( tmp.latin1(), conn) == 0) { |
893 | QString msg; | 933 | QString msg; |
894 | msg.sprintf(tr("Unable to make directory\n")+"%s",FtpLastResponse(conn)); | 934 | msg.sprintf(tr("Unable to make directory\n")+"%s",FtpLastResponse(conn)); |
895 | msg.replace(QRegExp(":"),"\n"); | 935 | msg.replace(QRegExp(":"),"\n"); |
896 | QMessageBox::message(tr("Note"),msg); | 936 | QMessageBox::message(tr("Note"),msg); |
897 | } | 937 | } |
898 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 938 | // QCopEnvelope ( "QPE/System", "notBusy()" ); |
899 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate | 939 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate |
900 | } | 940 | } |
901 | } | 941 | } |
902 | 942 | ||
903 | void OpieFtp::remoteDelete() | 943 | void OpieFtp::remoteDelete() |
904 | { | 944 | { |
905 | QString f = Remote_View->currentItem()->text(0); | 945 | QString f = Remote_View->currentItem()->text(0); |
906 | QCopEnvelope ( "QPE/System", "busy()" ); | 946 | // QCopEnvelope ( "QPE/System", "busy()" ); |
907 | if( f.right(1) =="/") { | 947 | if( f.right(1) =="/") { |
908 | QString path= currentRemoteDir+f; | 948 | QString path= currentRemoteDir+f; |
909 | switch ( QMessageBox::warning(this,tr("Delete"),tr("Do you really want to delete\n")+f+"?" | 949 | switch ( QMessageBox::warning(this,tr("Delete"),tr("Do you really want to delete\n")+f+"?" |
910 | ,tr("Yes"),tr("No"),0,0,1) ) { | 950 | ,tr("Yes"),tr("No"),0,0,1) ) { |
911 | case 0: { | 951 | case 0: { |
912 | f=currentDir.canonicalPath()+"/"+f; | 952 | f=currentDir.canonicalPath()+"/"+f; |
@@ -933,33 +973,33 @@ void OpieFtp::remoteDelete() | |||
933 | } | 973 | } |
934 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate | 974 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate |
935 | } | 975 | } |
936 | break; | 976 | break; |
937 | }; | 977 | }; |
938 | } | 978 | } |
939 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 979 | // QCopEnvelope ( "QPE/System", "notBusy()" ); |
940 | } | 980 | } |
941 | 981 | ||
942 | void OpieFtp::remoteRename() | 982 | void OpieFtp::remoteRename() |
943 | { | 983 | { |
944 | QString curFile = Remote_View->currentItem()->text(0); | 984 | QString curFile = Remote_View->currentItem()->text(0); |
945 | InputDialog *fileDlg; | 985 | InputDialog *fileDlg; |
946 | fileDlg = new InputDialog(this,tr("Rename"),TRUE, 0); | 986 | fileDlg = new InputDialog(this,tr("Rename"),TRUE, 0); |
947 | fileDlg->setTextEdit((const QString &)curFile); | 987 | fileDlg->setTextEdit((const QString &)curFile); |
948 | fileDlg->exec(); | 988 | fileDlg->exec(); |
949 | if( fileDlg->result() == 1 ) { | 989 | if( fileDlg->result() == 1 ) { |
950 | QString oldName = currentRemoteDir +"/"+ curFile; | 990 | QString oldName = currentRemoteDir +"/"+ curFile; |
951 | QString newName = currentRemoteDir +"/"+ fileDlg->LineEdit1->text();//+".playlist"; | 991 | QString newName = currentRemoteDir +"/"+ fileDlg->LineEdit1->text();//+".playlist"; |
952 | QCopEnvelope ( "QPE/System", "busy()" ); | 992 | // QCopEnvelope ( "QPE/System", "busy()" ); |
953 | if(FtpRename( oldName.latin1(), newName.latin1(),conn) == 0) { | 993 | if(FtpRename( oldName.latin1(), newName.latin1(),conn) == 0) { |
954 | QString msg; | 994 | QString msg; |
955 | msg.sprintf(tr("Unable to rename file\n")+"%s",FtpLastResponse(conn)); | 995 | msg.sprintf(tr("Unable to rename file\n")+"%s",FtpLastResponse(conn)); |
956 | msg.replace(QRegExp(":"),"\n"); | 996 | msg.replace(QRegExp(":"),"\n"); |
957 | QMessageBox::message(tr("Note"),msg); | 997 | QMessageBox::message(tr("Note"),msg); |
958 | } | 998 | } |
959 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 999 | // QCopEnvelope ( "QPE/System", "notBusy()" ); |
960 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate | 1000 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate |
961 | } | 1001 | } |
962 | } | 1002 | } |
963 | 1003 | ||
964 | void OpieFtp::localRename() | 1004 | void OpieFtp::localRename() |
965 | { | 1005 | { |
@@ -1188,6 +1228,62 @@ void OpieFtp::deleteServer() | |||
1188 | && cfg.readEntry(temp).find(username,0,TRUE) != -1 | 1228 | && cfg.readEntry(temp).find(username,0,TRUE) != -1 |
1189 | && !remoteServerStr.isEmpty()) { | 1229 | && !remoteServerStr.isEmpty()) { |
1190 | qDebug(temp); | 1230 | qDebug(temp); |
1191 | } | 1231 | } |
1192 | } | 1232 | } |
1193 | } | 1233 | } |
1234 | |||
1235 | void OpieFtp::upDir() | ||
1236 | { | ||
1237 | if (TabWidget->currentPageIndex() == 0) { | ||
1238 | QString current = currentDir.canonicalPath(); | ||
1239 | QDir dir(current); | ||
1240 | dir.cdUp(); | ||
1241 | current = dir.canonicalPath(); | ||
1242 | chdir( current.latin1() ); | ||
1243 | currentDir.cd( current, TRUE); | ||
1244 | populateLocalView(); | ||
1245 | update(); | ||
1246 | } else { | ||
1247 | if( FtpCDUp( conn) == 0) { | ||
1248 | QString msg; | ||
1249 | msg.sprintf(tr("Unable to cd up\n")+"%s",FtpLastResponse(conn)); | ||
1250 | msg.replace(QRegExp(":"),"\n"); | ||
1251 | QMessageBox::message(tr("Note"),msg); | ||
1252 | // qDebug(msg); | ||
1253 | } | ||
1254 | char path[256]; | ||
1255 | if( FtpPwd( path,sizeof(path),conn) == 0) { //this is easier than fudging the string | ||
1256 | QString msg; | ||
1257 | msg.sprintf(tr("Unable to get working dir\n")+"%s",FtpLastResponse(conn)); | ||
1258 | msg.replace(QRegExp(":"),"\n"); | ||
1259 | QMessageBox::message(tr("Note"),msg); | ||
1260 | // qDebug(msg); | ||
1261 | } | ||
1262 | currentRemoteDir=path; | ||
1263 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate | ||
1264 | if(currentRemoteDir.right(1) !="/") | ||
1265 | currentRemoteDir +="/"; | ||
1266 | currentPathCombo->lineEdit()->setText( currentRemoteDir); | ||
1267 | fillRemoteCombo( (const QString &)currentRemoteDir); | ||
1268 | populateRemoteView( ); | ||
1269 | } | ||
1270 | } | ||
1271 | |||
1272 | void OpieFtp::docButtonPushed() { | ||
1273 | QString current = QPEApplication::documentDir(); | ||
1274 | chdir( current.latin1() ); | ||
1275 | currentDir.cd( current, TRUE); | ||
1276 | populateLocalView(); | ||
1277 | update(); | ||
1278 | |||
1279 | } | ||
1280 | |||
1281 | void OpieFtp::homeButtonPushed() { | ||
1282 | if (TabWidget->currentPageIndex() == 0) { | ||
1283 | QString current = QDir::homeDirPath(); | ||
1284 | chdir( current.latin1() ); | ||
1285 | currentDir.cd( current, TRUE); | ||
1286 | populateLocalView(); | ||
1287 | update(); | ||
1288 | } | ||
1289 | } | ||