author | llornkcor <llornkcor> | 2002-03-30 02:00:10 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-03-30 02:00:10 (UTC) |
commit | 4fc58d156db9197bc8299f040d4337ea85b9f0d2 (patch) (side-by-side diff) | |
tree | 7baa553895a5ccdb35c8309b8a5c43a8f05a24ec | |
parent | e49717bf2fa15791c2437a3ac69058ac909f0c6b (diff) | |
download | opie-4fc58d156db9197bc8299f040d4337ea85b9f0d2.zip opie-4fc58d156db9197bc8299f040d4337ea85b9f0d2.tar.gz opie-4fc58d156db9197bc8299f040d4337ea85b9f0d2.tar.bz2 |
fixed a workaround for an apparent bug in libqte when the listview is multi, and you try to select one item and popup the menu.., it needs extended mode selection to work
-rw-r--r-- | noncore/net/opieftp/opieftp.cpp | 89 |
1 files changed, 43 insertions, 46 deletions
diff --git a/noncore/net/opieftp/opieftp.cpp b/noncore/net/opieftp/opieftp.cpp index 3e13466..956409f 100644 --- a/noncore/net/opieftp/opieftp.cpp +++ b/noncore/net/opieftp/opieftp.cpp @@ -131,9 +131,9 @@ OpieFtp::OpieFtp( ) Local_View->addColumn( tr("Date"),-1); Local_View->setColumnAlignment(2,QListView::AlignRight); Local_View->setAllColumnsShowFocus(TRUE); Local_View->setMultiSelection( TRUE ); - + Local_View->setSelectionMode(QlistView::Extended); QPEApplication::setStylusOperation( Local_View->viewport(),QPEApplication::RightOnHold); tabLayout->addWidget( Local_View, 0, 0 ); @@ -160,8 +160,9 @@ OpieFtp::OpieFtp( ) Remote_View->addColumn( tr("Dir"),-1); Remote_View->setColumnAlignment(4,QListView::AlignRight); Remote_View->setAllColumnsShowFocus(TRUE); Remote_View->setMultiSelection( TRUE ); + Remote_View->setSelectionMode(QlistView::Extended); QPEApplication::setStylusOperation( Remote_View->viewport(),QPEApplication::RightOnHold); connect( Remote_View, SIGNAL( clicked( QListViewItem*)), @@ -284,8 +285,9 @@ void OpieFtp::cleanUp() sfile+="._temp"; QFile file( sfile); if(file.exists()) file.remove(); + exit(0); } void OpieFtp::tabChanged(QWidget *w) { @@ -393,51 +395,50 @@ void OpieFtp::disConnector() currentRemoteDir="/"; Remote_View->clear(); connectServerBtn->setText( tr("Connect")); connectServerBtn->setOn(FALSE); - } void OpieFtp::localUpload() { int fsz; QCopEnvelope ( "QPE/System", "busy()" ); // qApp->processEvents(); QList<QListViewItem> * getSelectedItems( QListView * Local_View ); - QListViewItemIterator it( Local_View ); - for ( ; it.current(); ++it ) { - if ( it.current()->isSelected() ) { - QString strItem = it.current()->text(0); - QString localFile = currentDir.canonicalPath()+"/"+strItem; - QString remoteFile= currentRemoteDir+strItem; - QFileInfo fi(localFile); - if( !fi.isDir()) { - fsz=fi.size(); - ProgressBar->setTotalSteps(fsz); - - FtpOptions(FTPLIB_CALLBACK, (long) log_progress, conn); - FtpOptions(FTPLIB_IDLETIME, (long) 1000, conn); - FtpOptions(FTPLIB_CALLBACKARG, (long) &fsz, conn); - FtpOptions(FTPLIB_CALLBACKBYTES, (long) fsz/10, conn); - qDebug("Put: %s, %s",localFile.latin1(),remoteFile.latin1()); - - if( !FtpPut( localFile.latin1(), remoteFile.latin1(),FTPLIB_IMAGE, conn ) ) { - QString msg; - msg.sprintf(tr("Unable to upload\n")+"%s",FtpLastResponse(conn)); - msg.replace(QRegExp(":"),"\n"); - QMessageBox::message(tr("Note"),msg); - } - } else { - QMessageBox::message(tr("Note"),tr("Cannot upload directories")); + QListViewItemIterator it( Local_View ); + for ( ; it.current(); ++it ) { + if ( it.current()->isSelected() ) { + QString strItem = it.current()->text(0); + QString localFile = currentDir.canonicalPath()+"/"+strItem; + QString remoteFile= currentRemoteDir+strItem; + QFileInfo fi(localFile); + if( !fi.isDir()) { + fsz=fi.size(); + ProgressBar->setTotalSteps(fsz); + + FtpOptions(FTPLIB_CALLBACK, (long) log_progress, conn); + FtpOptions(FTPLIB_IDLETIME, (long) 1000, conn); + FtpOptions(FTPLIB_CALLBACKARG, (long) &fsz, conn); + FtpOptions(FTPLIB_CALLBACKBYTES, (long) fsz/10, conn); + qDebug("Put: %s, %s",localFile.latin1(),remoteFile.latin1()); + + if( !FtpPut( localFile.latin1(), remoteFile.latin1(),FTPLIB_IMAGE, conn ) ) { + QString msg; + msg.sprintf(tr("Unable to upload\n")+"%s",FtpLastResponse(conn)); + msg.replace(QRegExp(":"),"\n"); + QMessageBox::message(tr("Note"),msg); } - ProgressBar->reset(); - nullifyCallBack(); - it.current()->setSelected(FALSE); - } //end currentSelected - } - TabWidget->setCurrentPage(1); - remoteDirList( (const QString &)currentRemoteDir); //this also calls populate - QCopEnvelope ( "QPE/System", "notBusy()" ); + } else { + QMessageBox::message(tr("Note"),tr("Cannot upload directories")); + } + ProgressBar->reset(); + nullifyCallBack(); + it.current()->setSelected(FALSE); + } //end currentSelected + } + TabWidget->setCurrentPage(1); + remoteDirList( (const QString &)currentRemoteDir); //this also calls populate + QCopEnvelope ( "QPE/System", "notBusy()" ); } void OpieFtp::nullifyCallBack() { @@ -484,9 +485,9 @@ void OpieFtp::remoteDownload() QMessageBox::message(tr("Note"),msg); } ProgressBar->reset(); nullifyCallBack(); - it.current()->setSelected(FALSE); + it.current()->setSelected(FALSE); } } TabWidget->setCurrentPage(0); populateLocalView(); @@ -521,9 +522,9 @@ bool OpieFtp::remoteChDir(const QString &dir) QString msg; msg.sprintf(tr("Unable to change directories\n")+dir+"\n%s",FtpLastResponse(conn)); msg.replace(QRegExp(":"),"\n"); QMessageBox::message(tr("Note"),msg); - qDebug(msg); + qDebug(msg); QCopEnvelope ( "QPE/System", "notBusy()" ); return FALSE; } QCopEnvelope ( "QPE/System", "notBusy()" ); @@ -779,22 +780,18 @@ void OpieFtp::showHidden() void OpieFtp::ListPressed( int mouse, QListViewItem *item, const QPoint &point, int i) { // if(item) -if (mouse == 2) { - showLocalMenu(item); + if (mouse == 2) { + showLocalMenu(item); } } void OpieFtp::RemoteListPressed( int mouse, QListViewItem *item, const QPoint &point, int i) { - switch (mouse) { - case 1: - break; - case 2: - showRemoteMenu(item); - break; - }; + if(mouse == 2) { + showRemoteMenu(item); + } } void OpieFtp::showRemoteMenu(QListViewItem * item) { |