From 8a87ca1f7de6a205b47986db8ad4a082f39b9c34 Mon Sep 17 00:00:00 2001 From: llornkcor Date: Mon, 12 May 2003 14:52:31 +0000 Subject: show file selected if setDoc/openDir qcop is file --- (limited to 'noncore/apps/advancedfm/advancedfm.cpp') diff --git a/noncore/apps/advancedfm/advancedfm.cpp b/noncore/apps/advancedfm/advancedfm.cpp index 6b7fa1f..60558e7 100644 --- a/noncore/apps/advancedfm/advancedfm.cpp +++ b/noncore/apps/advancedfm/advancedfm.cpp @@ -902,11 +902,34 @@ void AdvancedFm::gotoDirectory(const QString &file) { QString curDir = file; QDir *thisDir = CurrentDir(); - - if(QDir( curDir).exists() ) { + if(QDir( curDir).exists() ) { thisDir->setPath( curDir ); chdir( curDir.latin1() ); thisDir->cd( curDir, TRUE); populateView(); } + else if(QFileInfo(curDir).exists()) { + QFileInfo fileInfo(curDir); + curDir=fileInfo.dirPath(); + if(QDir( curDir).exists() ) { + thisDir->setPath( curDir ); + chdir( curDir.latin1() ); + thisDir->cd( curDir, TRUE); + populateView(); + } + findFile(file); + } + +} + +void AdvancedFm::findFile(const QString &fileName) { + QFileInfo fi(fileName); + QListView *thisView = CurrentView(); + QListViewItemIterator it( thisView ); + for ( ; it.current(); ++it ) { + if(it.current()->text(0) == fi.fileName()) { + it.current()->setSelected(true); + thisView->ensureItemVisible(it.current()); + } + } } -- cgit v0.9.0.2