summaryrefslogtreecommitdiff
path: root/core/apps/textedit/fileBrowser.cpp
Unidiff
Diffstat (limited to 'core/apps/textedit/fileBrowser.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/apps/textedit/fileBrowser.cpp18
1 files changed, 14 insertions, 4 deletions
diff --git a/core/apps/textedit/fileBrowser.cpp b/core/apps/textedit/fileBrowser.cpp
index eea7144..41e800c 100644
--- a/core/apps/textedit/fileBrowser.cpp
+++ b/core/apps/textedit/fileBrowser.cpp
@@ -174,53 +174,63 @@ void fileBrowser::populateList()
174 QFileInfoListIterator it(*list); 174 QFileInfoListIterator it(*list);
175 QFileInfo *fi; 175 QFileInfo *fi;
176 while ( (fi=it.current()) ) { 176 while ( (fi=it.current()) ) {
177 177
178 if (fi->isSymLink() ){ 178 if (fi->isSymLink() ){
179 QString symLink=fi->readLink(); 179 QString symLink=fi->readLink();
180// qDebug("Symlink detected "+symLink); 180// qDebug("Symlink detected "+symLink);
181 QFileInfo sym( symLink); 181 QFileInfo sym( symLink);
182 fileS.sprintf( "%10li", sym.size() ); 182 fileS.sprintf( "%10li", sym.size() );
183 fileL.sprintf( "%s -> %s", sym.fileName().data(),sym.absFilePath().data() ); 183 fileL.sprintf( "%s -> %s", sym.fileName().data(),sym.absFilePath().data() );
184 fileDate = sym.lastModified().toString(); 184 fileDate = sym.lastModified().toString();
185 } else { 185 } else {
186// qDebug("Not a dir: "+currentDir.canonicalPath()+fileL); 186// qDebug("Not a dir: "+currentDir.canonicalPath()+fileL);
187 fileS.sprintf( "%10li", fi->size() ); 187 fileS.sprintf( "%10li", fi->size() );
188 fileL.sprintf( "%s",fi->fileName().data() ); 188 fileL.sprintf( "%s",fi->fileName().data() );
189 fileDate= fi->lastModified().toString(); 189 fileDate= fi->lastModified().toString();
190 if( QDir(QDir::cleanDirPath(currentDir.canonicalPath()+"/"+fileL)).exists() ) { 190 if( QDir(QDir::cleanDirPath(currentDir.canonicalPath()+"/"+fileL)).exists() ) {
191 fileL+="/"; 191 fileL+="/";
192 isDir=TRUE; 192 isDir=TRUE;
193// qDebug( fileL); 193// qDebug( fileL);
194 } 194 }
195 } 195 }
196 if(fileL !="./") { 196 if(fileL !="./") {
197 item= new QListViewItem( ListView,fileL,fileS , fileDate); 197 item= new QListViewItem( ListView,fileL,fileS , fileDate);
198 if(isDir || fileL.find("/",0,TRUE) != -1) 198 QPixmap pm;
199 item->setPixmap( 0, Resource::loadPixmap( "folder" )); 199 pm= Resource::loadPixmap( "folder" );
200 else 200 if(isDir || fileL.find("/",0,TRUE) != -1)
201 item->setPixmap( 0, Resource::loadPixmap( "fileopen" )); 201 item->setPixmap( 0,pm );
202 else
203 item->setPixmap( 0, Resource::loadPixmap( "fileopen" ));
204 if( fileL.find("->",0,TRUE) != -1) {
205 // overlay link image
206 QPixmap lnk = Resource::loadPixmap( "symlink" );
207 QPainter painter( &pm );
208 painter.drawPixmap( pm.width()-lnk.width(), pm.height()-lnk.height(), lnk );
209 pm.setMask( pm.createHeuristicMask( FALSE ) );
210 item->setPixmap( 0, pm);
202 } 211 }
212 }
203 isDir=FALSE; 213 isDir=FALSE;
204 ++it; 214 ++it;
205 } 215 }
206 ListView->setSorting( 3, FALSE); 216 ListView->setSorting( 3, FALSE);
207 QString currentPath = currentDir.canonicalPath(); 217 QString currentPath = currentDir.canonicalPath();
208 218
209 fillCombo( (const QString &)currentPath); 219 fillCombo( (const QString &)currentPath);
210// dirPathCombo->lineEdit()->setText(currentPath); 220// dirPathCombo->lineEdit()->setText(currentPath);
211 221
212// if( dirPathStringList.grep(currentPath,TRUE).isEmpty() ) { 222// if( dirPathStringList.grep(currentPath,TRUE).isEmpty() ) {
213// dirPathCombo->clear(); 223// dirPathCombo->clear();
214// dirPathStringList.prepend(currentPath ); 224// dirPathStringList.prepend(currentPath );
215// dirPathCombo->insertStringList( dirPathStringList,-1); 225// dirPathCombo->insertStringList( dirPathStringList,-1);
216// } 226// }
217} 227}
218 228
219void fileBrowser::upDir() 229void fileBrowser::upDir()
220{ 230{
221 QString current = currentDir.canonicalPath(); 231 QString current = currentDir.canonicalPath();
222 QDir dir(current); 232 QDir dir(current);
223 dir.cdUp(); 233 dir.cdUp();
224 current = dir.canonicalPath(); 234 current = dir.canonicalPath();
225 chdir( current.latin1() ); 235 chdir( current.latin1() );
226 currentDir.cd( current, TRUE); 236 currentDir.cd( current, TRUE);