summaryrefslogtreecommitdiff
authorllornkcor <llornkcor>2002-04-28 21:59:34 (UTC)
committer llornkcor <llornkcor>2002-04-28 21:59:34 (UTC)
commit726d985ddb6a5c7eb25a48efdadb189eb38b9a2a (patch) (side-by-side diff)
treee92814b56ee706ccb1d95a0c2e86294aa79ab2c2
parentd9a38221ea876cae8ef8b015968e14af75e202bb (diff)
downloadopie-726d985ddb6a5c7eb25a48efdadb189eb38b9a2a.zip
opie-726d985ddb6a5c7eb25a48efdadb189eb38b9a2a.tar.gz
opie-726d985ddb6a5c7eb25a48efdadb189eb38b9a2a.tar.bz2
fixed multi symlink handling
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/apps/advancedfm/advancedfm.cpp133
1 files changed, 68 insertions, 65 deletions
diff --git a/noncore/apps/advancedfm/advancedfm.cpp b/noncore/apps/advancedfm/advancedfm.cpp
index bd513c0..b5fcccf 100644
--- a/noncore/apps/advancedfm/advancedfm.cpp
+++ b/noncore/apps/advancedfm/advancedfm.cpp
@@ -320,9 +320,9 @@ void AdvancedFm::populateLocalView()
item->setPixmap( 0,pm );
} else {
- if(fi->isExecutable()) {
- pm = Resource::loadPixmap( "exec");
- item->setPixmap( 0,pm);
- }
- else if( !fi->isReadable() ) {
+// if(fi->isExecutable()) {
+// pm = Resource::loadPixmap( "exec");
+// item->setPixmap( 0,pm);
+// }
+ if( !fi->isReadable() ) {
pm = Resource::loadPixmap( "locked" );
item->setPixmap( 0,pm);
@@ -436,9 +436,9 @@ void AdvancedFm::populateRemoteView()
item->setPixmap( 0,pm );
} else {
- if(fi->isExecutable()) {
- pm = Resource::loadPixmap( "exec");
- item->setPixmap( 0,pm);
- }
- else if( !fi->isReadable() ) {
+// if(fi->isExecutable()) {
+// pm = Resource::loadPixmap( "exec");
+// item->setPixmap( 0,pm);
+// }
+ if( !fi->isReadable() ) {
pm = Resource::loadPixmap( "locked" );
item->setPixmap( 0,pm);
@@ -717,8 +717,8 @@ void AdvancedFm::runThis() {
QString curFile = Local_View->currentItem()->text(0);
QFileInfo fileInfo( currentDir.canonicalPath()+"/"+curFile);
- if(fileInfo.isExecutable()) {
- QCopEnvelope e("QPE/System", "execute(QString)" );
- e << curFile;
- } else {
+// if(fileInfo.isExecutable()) {
+// QCopEnvelope e("QPE/System", "execute(QString)" );
+// e << curFile;
+// } else {
curFile = currentDir.canonicalPath()+"/"+curFile;
DocLnk nf(curFile);
@@ -729,13 +729,13 @@ void AdvancedFm::runThis() {
nf.execute();
}
- }
+// }
// MimeType mt( curFile);
} else {
QString curFile = Remote_View->currentItem()->text(0);
QFileInfo fileInfo( currentRemoteDir.canonicalPath()+"/"+curFile);
- if(fileInfo.isExecutable()) {
- QCopEnvelope e("QPE/System", "execute(QString)" );
- e << curFile;
- } else {
+// if(fileInfo.isExecutable()) {
+// QCopEnvelope e("QPE/System", "execute(QString)" );
+// e << curFile;
+// } else {
curFile = currentRemoteDir.canonicalPath()+"/"+curFile;
DocLnk nf(curFile);
@@ -746,5 +746,5 @@ void AdvancedFm::runThis() {
nf.execute();
}
- }
+// }
// MimeType mt( curFile);
}
@@ -1047,5 +1047,5 @@ QStringList AdvancedFm::getPath() {
for ( ; it.current(); ++it ) {
if ( it.current()->isSelected() ) {
- strList << currentDir.canonicalPath()+"/"+ it.current()->text(0);
+ strList << it.current()->text(0);
}
}
@@ -1140,18 +1140,22 @@ void AdvancedFm::copy()
for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) {
- QString destFile = currentRemoteDir.canonicalPath();
- if(destFile.right(1).find("/",0,TRUE) == -1)
- destFile+="/";
- destFile +=(*it);
- curFile = currentDir.canonicalPath();
- if(curFile.right(1).find("/",0,TRUE) == -1)
- curFile +="/";
- curFile +=(*it);
+ QString destFile = currentRemoteDir.canonicalPath()+"/"+(*it);
+// if(destFile.right(1).find("/",0,TRUE) == -1)
+// destFile+="/";
+// destFile +=(*it);
+
+ curFile = currentDir.canonicalPath()+"/"+(*it);
+// if(curFile.right(1).find("/",0,TRUE) == -1)
+// curFile +="/";
+// curFile +=(*it);
+
QFile f(destFile);
if( f.exists())
f.remove();
- if(!copyFile(destFile, curFile) )
+ if(!copyFile(destFile, curFile) ) {
+ QMessageBox::message("AdvancedFm","Could not copy\n"+curFile +"to\n"+destFile);
qWarning("nothin doing");
}
+ }
populateRemoteView();
TabWidget->setCurrentPage(1);
@@ -1160,18 +1164,16 @@ void AdvancedFm::copy()
for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) {
- QString destFile = currentDir.canonicalPath();
- if(destFile.right(1).find("/",0,TRUE) == -1)
- destFile+="/";
- destFile +=(*it);
- curFile = currentRemoteDir.canonicalPath();
- if(curFile.right(1).find("/",0,TRUE) == -1)
- curFile +="/";
- curFile +=(*it);
+ QString destFile = currentDir.canonicalPath()+"/"+(*it);
+ curFile = currentRemoteDir.canonicalPath()+"/"+(*it);
+
QFile f(destFile);
if( f.exists())
f.remove();
- if(!copyFile(destFile, curFile) )
+ if(!copyFile(destFile, curFile) ) {
+ QMessageBox::message("AdvancedFm","Could not copy\n"+curFile +"to\n"+destFile);
+
qWarning("nothin doing");
}
+ }
populateLocalView();
TabWidget->setCurrentPage(0);
@@ -1189,8 +1191,5 @@ void AdvancedFm::copyAs()
for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) {
QString destFile;
- curFile = currentDir.canonicalPath();
- if(curFile.right(1).find("/",0,TRUE) == -1)
- curFile +="/";
- curFile+=(*it);
+ curFile = currentDir.canonicalPath()+"/"+(*it);
// InputDialog *fileDlg;
// fileDlg = new InputDialog(this,tr("Copy As"),TRUE, 0);
@@ -1199,16 +1198,15 @@ void AdvancedFm::copyAs()
if( fileDlg->result() == 1 ) {
QString filename = fileDlg->LineEdit1->text();
- destFile = currentRemoteDir.canonicalPath();
- if(destFile.right(1).find("/",0,TRUE) == -1)
- destFile+="/";
- destFile +=(*it);
+ destFile = currentRemoteDir.canonicalPath()+"/"+(*it);
QFile f(destFile);
if( f.exists())
f.remove();
- if(!copyFile(destFile, curFile) )
+ if(!copyFile(destFile, curFile) ) {
+ QMessageBox::message("AdvancedFm","Could not copy\n"+curFile +"to\n"+destFile);
qWarning("nothin doing");
}
}
+ }
populateRemoteView();
@@ -1218,8 +1216,5 @@ void AdvancedFm::copyAs()
for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) {
- curFile = currentDir.canonicalPath();
- if(curFile.right(1).find("/",0,TRUE) == -1)
- curFile +="/";
- curFile+=(*it);
+ curFile = currentDir.canonicalPath()+"/"+(*it);
QString destFile;
fileDlg->setInputText((const QString &) destFile);
@@ -1227,16 +1222,15 @@ void AdvancedFm::copyAs()
if( fileDlg->result() == 1 ) {
QString filename = fileDlg->LineEdit1->text();
- destFile = currentDir.canonicalPath();
- if(destFile.right(1).find("/",0,TRUE) == -1)
- destFile+="/";
- destFile +=(*it);
+ destFile = currentDir.canonicalPath()+"/"+(*it);
QFile f(destFile);
if( f.exists())
f.remove();
- if(!copyFile(destFile, curFile) )
+ if(!copyFile(destFile, curFile) ) {
+ QMessageBox::message("AdvancedFm","Could not copy\n"+curFile +"to\n"+destFile);
qWarning("nothin doing");
}
}
+ }
populateLocalView();
TabWidget->setCurrentPage(0);
@@ -1535,20 +1529,29 @@ void AdvancedFm::keyReleaseEvent( QKeyEvent *e)
void AdvancedFm::mkSym() {
QString cmd;
+ QStringList curFileList = getPath();
+
if (TabWidget->currentPageIndex() == 0) {
- QString curFile = Local_View->currentItem()->text(0);
- if(curFile.right(1) == "/") curFile = curFile.left(curFile.length() - 1);
- QString destName = currentRemoteDir.canonicalPath()+"/"+curFile;
- curFile = currentDir.canonicalPath()+"/"+curFile;
+ for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) {
+
+ QString destName = currentRemoteDir.canonicalPath()+"/"+(*it);
+ QString curFile = currentDir.canonicalPath()+"/"+(*it);
cmd = "ln -s "+curFile+" "+destName;
+ qDebug(cmd);
system(cmd.latin1() );
+ }
populateRemoteView();
+ TabWidget->setCurrentPage(1);
} else {
- QString curFile = Remote_View->currentItem()->text(0);
- if(curFile.right(1) == "/") curFile = curFile.left(curFile.length() - 1);
- QString destName = currentDir.canonicalPath()+"/"+curFile;
- curFile = currentRemoteDir.canonicalPath()+"/"+curFile;
+ for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) {
+
+ QString destName = currentDir.canonicalPath()+"/"+(*it);
+ QString curFile = currentRemoteDir.canonicalPath()+"/"+(*it);
+
cmd = "ln -s "+curFile+" "+destName;
+ qDebug(cmd);
system(cmd.latin1() );
+ }
populateLocalView();
+ TabWidget->setCurrentPage(0);
}
}