-rw-r--r-- | bin/kdepim/WhatsNew.txt | 3 | ||||
-rw-r--r-- | microkde/ofileselector_p.cpp | 34 |
2 files changed, 30 insertions, 7 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt index eaf4b56..dd02be5 100644 --- a/bin/kdepim/WhatsNew.txt +++ b/bin/kdepim/WhatsNew.txt @@ -5,16 +5,19 @@ Info about the changes in new versions of KDE-Pim/Pi KO/Pi: Added info about the completion sate of a todo in the ListView/Searchdialog. If in TodoView is selected "do not show compledted todos" then completed todos are not shown in the ListView as well. KA/Pi: In the addressee selection dialog now the formatted name is shown, if not empty. +Fixed in the file selector on the Zaurus the problem that symbolic links to files/dirs were ignored. +Fixed the sorting for size in the file selector on the Z. + ********** VERSION 2.1.7 ************ KO/Pi: Fixed several problems in the new Resource handling. Added more options to the search dialog. Fixed a problem in the Month view. Added more options to the dialog when setting a todo to stopped. diff --git a/microkde/ofileselector_p.cpp b/microkde/ofileselector_p.cpp index f85f8f4..e2af32b 100644 --- a/microkde/ofileselector_p.cpp +++ b/microkde/ofileselector_p.cpp @@ -151,20 +151,33 @@ QWidget* ODocumentFileView::widget( QWidget* parent ) { */ OFileSelectorItem::OFileSelectorItem( QListView* view, const QPixmap& pixmap, const QString& path, const QString& date, const QString& size, const QString& dir, bool isLocked, bool isDir ) : QListViewItem( view ) { + + QString kind; + QString _path = path; + if ( isDir ) + kind = "dir"; + else + kind = "file"; setPixmap(0, pixmap ); - setText(1, path ); + int arrow = path.find( "->" ); + if (arrow > 0 ) { + kind += path.mid( arrow ); + _path = path.left(arrow); + } + setText(1, _path ); setText(2, size ); setText(3, date ); + setText(4, kind ); m_isDir = isDir; m_dir = dir; m_locked = isLocked; } OFileSelectorItem::~OFileSelectorItem() { } bool OFileSelectorItem::isLocked()const { @@ -185,17 +198,22 @@ QString OFileSelectorItem::key( int id, bool )const { if( m_isDir ){ ke.append("0" ); ke.append( text(1) ); }else{ ke.append("1" ); ke.append( text(1) ); } return ke; - }else + } else if ( id == 2 ) { + QString sort = "00000000"; + sort = sort.left( 9-text( 2 ).length()) + text( 2 ); + return sort; + + } else return text( id ); } OFileViewFileListView::OFileViewFileListView( QWidget* parent, const QString& startDir, OFileSelector* sel) : QWidget( parent ), m_sel( sel ) { m_all = false; @@ -340,30 +358,32 @@ void OFileViewFileListView::reread( bool all ) { continue; } /* * It is a symlink we try to resolve it now but don't let us attack by DOS * */ if( fi->isSymLink() ){ - QString file = fi->dirPath( true ) + "/" + fi->readLink(); - for( int i = 0; i<=4; i++) { // 5 tries to prevent dos + qDebug("SYMLINK "); + QString file = fi->readLink(); + for( int i = 0; i<=5; i++) { // 5 tries to prevent dos QFileInfo info( file ); + qDebug("FILE %s ", file.latin1()); if( !info.exists() ){ addSymlink( fi, TRUE ); break; }else if( info.isDir() ){ addDir( fi, TRUE ); break; }else if( info.isFile() ){ addFile( fi, TRUE ); break; }else if( info.isSymLink() ){ - file = info.dirPath(true ) + "/" + info.readLink() ; + file = info.readLink() ; break; }else if( i == 4){ // couldn't resolve symlink add it as symlink addSymlink( fi ); } } // off for loop for symlink resolving }else if( fi->isDir() ) addDir( fi ); else if( fi->isFile() ) @@ -481,17 +501,17 @@ void OFileViewFileListView::addFile( QFileInfo* info, bool symlink ) { QWMatrix matrix; QPixmap pixer(Resource::loadPixmap("UnknownDocument") ); matrix.scale( .4, .4 ); pix = pixer.xForm( matrix ); } dir = info->dirPath( true ); locked = false; if ( symlink ) - name = info->fileName() + " -> " + info->dirPath() + "/" + info->readLink(); + name = info->fileName() + " -> " + info->readLink(); else{ name = info->fileName(); if ( ( (selector()->mode() == OFileSelector::Open)&& !info->isReadable() ) || ( (selector()->mode() == OFileSelector::Save)&& !info->isWritable() ) ) { locked = true; pix = Resource::loadPixmap("locked"); } } (void)new OFileSelectorItem( m_view, pix, name, @@ -507,17 +527,17 @@ void OFileViewFileListView::addDir( QFileInfo* info, bool symlink ) { locked = true; if ( symlink ) pix = Resource::loadPixmap( "symlink" ); else pix = Resource::loadPixmap( "lockedfolder" ); }else pix = symlink ? Resource::loadPixmap( "symlink") : Resource::loadPixmap("folder"); - name = symlink ? info->fileName() + " -> " + info->dirPath(true) + "/" + info->readLink() : + name = symlink ? info->fileName() + " -> " + info->readLink() : info->fileName(); (void)new OFileSelectorItem( m_view, pix, name, KGlobal::locale()->formatDateTime(info->lastModified(),true, true, KLocale::ISODate), QString::number( info->size() ), info->dirPath( true ), locked, true ); |