Diffstat (limited to 'noncore/apps/advancedfm/advancedfmMenu.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/apps/advancedfm/advancedfmMenu.cpp | 80 |
1 files changed, 48 insertions, 32 deletions
diff --git a/noncore/apps/advancedfm/advancedfmMenu.cpp b/noncore/apps/advancedfm/advancedfmMenu.cpp index 5fa8d0c..27a119f 100644 --- a/noncore/apps/advancedfm/advancedfmMenu.cpp +++ b/noncore/apps/advancedfm/advancedfmMenu.cpp @@ -5,24 +5,26 @@ copyright : (C) 2002 by ljp email : ljp@llornkcor.com * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * ***************************************************************************/ #include "advancedfm.h" #include "inputDialog.h" #include "output.h" #include "filePermissions.h" +#include <opie/otabwidget.h> + #include <qpe/lnkproperties.h> #include <qpe/qpeapplication.h> #include <qpe/qpemenubar.h> #include <qpe/qpetoolbar.h> #include <qpe/resource.h> #include <qpe/qcopenvelope_qws.h> #include <qpe/applnk.h> #include <qpe/ir.h> #include <qmessagebox.h> #include <qmultilineedit.h> @@ -44,61 +46,75 @@ #include <dirent.h> void AdvancedFm::doLocalCd() { localListClicked( Local_View->currentItem()); } void AdvancedFm::doRemoteCd() { localListClicked( Remote_View->currentItem()); } void AdvancedFm::showMenuHidden() { - if(TabWidget->currentPageIndex() == 0) - showHidden(); - else - showRemoteHidden(); + if (b) { + currentDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All); + currentRemoteDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All); + fileMenu->setItemChecked( fileMenu->idAt(0),TRUE); +// b=FALSE; + + } else { + currentDir.setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All); + currentRemoteDir.setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All); + fileMenu->setItemChecked( fileMenu->idAt(0),FALSE); +// b=TRUE; + } + populateLocalView(); + populateRemoteView(); +// if(TabWidget->getCurrentTab() == 0) +// showHidden(); +// else +// showRemoteHidden(); // if(b) qDebug("<<<<<<<<<<<<<<<<<<<<<<<<<<<< true"); if(b) b = false; else b = true; } void AdvancedFm::showHidden() { if (b) { currentDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All); - fileMenu->setItemChecked( fileMenu->idAt(0),TRUE); +// fileMenu->setItemChecked( fileMenu->idAt(0),TRUE); // b=FALSE; } else { currentDir.setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All); - fileMenu->setItemChecked( fileMenu->idAt(0),FALSE); +// fileMenu->setItemChecked( fileMenu->idAt(0),FALSE); // b=TRUE; } populateLocalView(); } void AdvancedFm::showRemoteHidden() { if (b) { currentRemoteDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All); // b=TRUE; } else { currentRemoteDir.setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All); // b=FALSE; } populateRemoteView(); } void AdvancedFm::runThis() { QString fs; - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { QString curFile = Local_View->currentItem()->text(0); if(curFile != "../") { fs= getFileSystemType((const QString &) currentDir.canonicalPath()); QFileInfo fileInfo( currentDir.canonicalPath()+"/"+curFile); qDebug( fileInfo.owner()); if( (fileInfo.permission( QFileInfo::ExeUser) | fileInfo.permission( QFileInfo::ExeGroup) | fileInfo.permission( QFileInfo::ExeOther)) // & fs.find("vfat",0,TRUE) == -1) { | fs == "vfat" && fileInfo.filePath().contains("/bin") ) { QCopEnvelope e("QPE/System", "execute(QString)" ); e << curFile; @@ -132,25 +148,25 @@ void AdvancedFm::runThis() { QString execStr = nf.exec(); qDebug(execStr); if( execStr.isEmpty() ) { } else { nf.execute(); } } } } } void AdvancedFm::runText() { - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { QString curFile = Local_View->currentItem()->text(0); if(curFile != "../") { curFile = currentDir.canonicalPath()+"/"+curFile; QCopEnvelope e("QPE/Application/textedit", "setDocument(QString)" ); e << curFile; } } else { QString curFile = Remote_View->currentItem()->text(0); if(curFile != "../") { curFile = currentRemoteDir.canonicalPath()+"/"+curFile; DocLnk nf(curFile); QCopEnvelope e("QPE/Application/textedit", "setDocument(QString)" ); @@ -314,71 +330,71 @@ void AdvancedFm::remoteRename() QMessageBox::message(tr("Note"),tr("Could not rename")); } populateRemoteView(); } } void AdvancedFm::filePerms() { QStringList curFileList = getPath(); QString filePath; - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { filePath = currentDir.canonicalPath()+"/"; } else { filePath= currentRemoteDir.canonicalPath()+"/"; } for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { filePermissions *filePerm; filePerm = new filePermissions(this, "Permissions",true,0,(const QString &)(filePath+*it)); filePerm->showMaximized(); filePerm->exec(); if( filePerm) delete filePerm; } - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { populateLocalView(); } else { populateRemoteView(); } } void AdvancedFm::doProperties() { #if defined(QT_QWS_OPIE) QStringList curFileList = getPath(); QString filePath; - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { filePath = currentDir.canonicalPath()+"/"; } else { filePath= currentRemoteDir.canonicalPath()+"/"; } qDebug("%d",curFileList.count()); for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { qDebug((filePath+*it)); DocLnk lnk( (filePath+*it)); LnkProperties prop( &lnk ); prop.showMaximized(); prop.exec(); } #endif } void AdvancedFm::upDir() { - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { QString current = currentDir.canonicalPath(); QDir dir(current); dir.cdUp(); current = dir.canonicalPath(); chdir( current.latin1() ); currentDir.cd( current, TRUE); populateLocalView(); update(); } else { QString current = currentRemoteDir.canonicalPath(); QDir dir(current); dir.cdUp(); @@ -386,25 +402,25 @@ void AdvancedFm::upDir() { chdir( current.latin1() ); currentRemoteDir.cd( current, TRUE); populateRemoteView(); update(); } } void AdvancedFm::copy() { qApp->processEvents(); QStringList curFileList = getPath(); if( curFileList.count() > 0) { QString curFile, item, destFile; - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { item=(*it); if(item.find("->",0,TRUE)) //symlink item = item.left(item.find("->",0,TRUE)); destFile = currentRemoteDir.canonicalPath()+"/"+ item; qDebug("Destination file is "+destFile); curFile = currentDir.canonicalPath()+"/"+ item; qDebug("CurrentFile file is " + curFile); @@ -418,25 +434,25 @@ void AdvancedFm::copy() { break; case 1: return; break; }; } if(!copyFile(destFile, curFile) ) { QMessageBox::message("AdvancedFm","Could not copy\n"+curFile +"to\n"+destFile); return; } } populateRemoteView(); - TabWidget->setCurrentPage(1); + TabWidget->setCurrentTab(1); } else { for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { item= (*it); if(item.find("->",0,TRUE)) //symlink item = item.left(item.find("->",0,TRUE)); destFile = currentDir.canonicalPath()+"/"+ item; qDebug("Destination file is "+destFile); curFile = currentRemoteDir.canonicalPath()+"/"+ item;; @@ -454,37 +470,37 @@ void AdvancedFm::copy() { return; break; }; } if(!copyFile(destFile, curFile) ) { QMessageBox::message("AdvancedFm",tr("Could not copy\n") +curFile +tr("to\n")+destFile); return; } } populateLocalView(); - TabWidget->setCurrentPage(0); + TabWidget->setCurrentTab(0); } } } void AdvancedFm::copyAs() { qApp->processEvents(); QStringList curFileList = getPath(); QString curFile; InputDialog *fileDlg; - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { qDebug("tab 1"); for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { QString destFile; curFile = currentDir.canonicalPath()+"/"+(*it); fileDlg = new InputDialog( this,tr("Copy "+curFile+" As"), TRUE, 0); fileDlg->setInputText((const QString &) destFile ); fileDlg->exec(); if( fileDlg->result() == 1 ) { QString filename = fileDlg->LineEdit1->text(); destFile = currentRemoteDir.canonicalPath()+"/"+filename; @@ -503,25 +519,25 @@ void AdvancedFm::copyAs() { }; } if(!copyFile(destFile, curFile) ) { QMessageBox::message("AdvancedFm",tr("Could not copy\n") +curFile +tr("to\n")+destFile); return; } } delete fileDlg; } populateRemoteView(); - TabWidget->setCurrentPage(1); + TabWidget->setCurrentTab(1); } else { for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { curFile = currentRemoteDir.canonicalPath()+"/"+(*it); fileDlg = new InputDialog( this,tr("Copy "+curFile+" As"), TRUE, 0); QString destFile; fileDlg->setInputText((const QString &) destFile); fileDlg->exec(); if( fileDlg->result() == 1 ) { @@ -543,35 +559,35 @@ void AdvancedFm::copyAs() { } if(!copyFile(destFile, curFile) ) { QMessageBox::message("AdvancedFm",tr("Could not copy\n") +curFile +tr("to\n")+destFile); return; } } delete fileDlg; } populateLocalView(); - TabWidget->setCurrentPage(0); + TabWidget->setCurrentTab(0); } } void AdvancedFm::copySameDir() { qApp->processEvents(); QStringList curFileList = getPath(); QString curFile, item, destFile; InputDialog *fileDlg; - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { item=(*it); curFile = currentDir.canonicalPath()+"/"+ item; fileDlg = new InputDialog(this,tr("Copy ")+curFile+tr(" As"),TRUE, 0); fileDlg->setInputText((const QString &) destFile ); fileDlg->exec(); if( fileDlg->result() == 1 ) { QString filename = fileDlg->LineEdit1->text(); @@ -640,25 +656,25 @@ void AdvancedFm::copySameDir() { } populateRemoteView(); } } void AdvancedFm::move() { qApp->processEvents(); QStringList curFileList = getPath(); if( curFileList.count() > 0) { QString curFile, destFile, item; - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { item=(*it); QString destFile = currentRemoteDir.canonicalPath(); if(destFile.right(1).find("/",0,TRUE) == -1) destFile+="/"; destFile += item; curFile = currentDir.canonicalPath(); qDebug("Destination file is "+destFile); @@ -669,25 +685,25 @@ void AdvancedFm::move() { qDebug("CurrentFile file is " + curFile); QFile f( curFile); if( f.exists()) { if(!copyFile( destFile, curFile) ) { QMessageBox::message(tr("Note"),tr("Could not move\n")+curFile); return; } else QFile::remove(curFile); } } - TabWidget->setCurrentPage(1); + TabWidget->setCurrentTab(1); } else { //view 2 for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { item = (*it); QString destFile = currentDir.canonicalPath(); if(destFile.right(1).find("/",0,TRUE) == -1) destFile+="/"; destFile += item; @@ -699,25 +715,25 @@ void AdvancedFm::move() { curFile +="/"; curFile+= item; qDebug("CurrentFile file is " + curFile); QFile f( curFile); if( f.exists()) { if(!copyFile( destFile, curFile) ) { QMessageBox::message(tr("Note"),tr("Could not move\n") + curFile); return; } else QFile::remove( curFile); } - TabWidget->setCurrentPage(0); + TabWidget->setCurrentTab(0); } } populateRemoteView(); populateLocalView(); } } bool AdvancedFm::copyFile( const QString & dest, const QString & src ) { char bf[ 50000 ]; int bytesRead; bool success = TRUE; struct stat status; @@ -740,25 +756,25 @@ bool AdvancedFm::copyFile( const QString & dest, const QString & src ) { } // Set file permissions if( stat( (const char *) src, &status ) == 0 ){ chmod( (const char *) dest, status.st_mode ); } return success; } void AdvancedFm::runCommand() { QString curFile; - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { if( Local_View->currentItem()) curFile = currentDir.canonicalPath() +"/"+ Local_View->currentItem()->text(0); } else { if(Remote_View->currentItem()) curFile = currentRemoteDir.canonicalPath() + "/"+Remote_View->currentItem()->text(0); } InputDialog *fileDlg; fileDlg = new InputDialog(this,tr("Run Command"),TRUE, 0); fileDlg->setInputText(curFile); fileDlg->exec(); QString command; @@ -786,48 +802,48 @@ void AdvancedFm::runCommand() { lineStr=lineStr.left(lineStr.length()-1); outDlg->OutputEdit->append(lineStr); outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); } } pclose(fp); } } void AdvancedFm::runCommandStd() { QString curFile; - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { if( Local_View->currentItem()) curFile = currentDir.canonicalPath() +"/"+ Local_View->currentItem()->text(0); } else { if(Remote_View->currentItem()) curFile = currentRemoteDir.canonicalPath() +"/" + Remote_View->currentItem()->text(0); } InputDialog *fileDlg; fileDlg = new InputDialog(this,tr("Run Command"),TRUE, 0); fileDlg->setInputText(curFile); fileDlg->exec(); QString command; if( fileDlg->result() == 1 ) { qApp->processEvents(); command = fileDlg->LineEdit1->text() + " &"; system(command.latin1()); } } void AdvancedFm::fileStatus() { QString curFile; - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { curFile = Local_View->currentItem()->text(0); } else { curFile = Remote_View->currentItem()->text(0); } QString command = " stat -l "+ curFile +" 2>&1"; Output *outDlg; outDlg = new Output(this, tr("AdvancedFm Output"),FALSE); outDlg->showMaximized(); outDlg->show(); qApp->processEvents(); FILE *fp; char line[130]; @@ -841,91 +857,91 @@ void AdvancedFm::fileStatus() { } else { while ( fgets( line, sizeof line, fp)) { outDlg->OutputEdit->append(line); outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); } } pclose(fp); } void AdvancedFm::mkDir() { - if (TabWidget->currentPageIndex() == 0) + if (TabWidget->getCurrentTab() == 0) localMakDir(); else remoteMakDir(); } void AdvancedFm::rn() { - if (TabWidget->currentPageIndex() == 0) + if (TabWidget->getCurrentTab() == 0) localRename(); else remoteRename(); } void AdvancedFm::del() { - if (TabWidget->currentPageIndex() == 0) + if (TabWidget->getCurrentTab() == 0) localDelete(); else remoteDelete(); } void AdvancedFm::mkSym() { QString cmd; QStringList curFileList = getPath(); if( curFileList.count() > 0) { - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { QString destName = currentRemoteDir.canonicalPath()+"/"+(*it); if(destName.right(1) == "/") destName = destName.left( destName.length() -1); QString curFile = currentDir.canonicalPath()+"/"+(*it); if( curFile.right(1) == "/") curFile = curFile.left( curFile.length() -1); cmd = "ln -s "+curFile+" "+destName; qDebug(cmd); system(cmd.latin1() ); } populateRemoteView(); - TabWidget->setCurrentPage(1); + TabWidget->setCurrentTab(1); } else { for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { QString destName = currentDir.canonicalPath()+"/"+(*it); if(destName.right(1) == "/") destName = destName.left( destName.length() -1); QString curFile = currentRemoteDir.canonicalPath()+"/"+(*it); if( curFile.right(1) == "/") curFile = curFile.left( curFile.length() -1); cmd = "ln -s "+curFile+" "+destName; qDebug(cmd); system(cmd.latin1() ); } populateLocalView(); - TabWidget->setCurrentPage(0); + TabWidget->setCurrentTab(0); } } } void AdvancedFm::doBeam() { Ir ir; if(!ir.supported()){ } else { QStringList curFileList = getPath(); if( curFileList.count() > 0) { - if (TabWidget->currentPageIndex() == 0) { + if (TabWidget->getCurrentTab() == 0) { for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { QString curFile = currentDir.canonicalPath()+"/"+(*it); if( curFile.right(1) == "/") curFile = curFile.left( curFile.length() -1); Ir *file = new Ir(this, "IR"); connect(file, SIGNAL(done(Ir*)), this, SLOT( fileBeamFinished( Ir * ))); file->send( curFile, curFile ); } } else { for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) { |