author | zecke <zecke> | 2004-11-14 17:40:57 (UTC) |
---|---|---|
committer | zecke <zecke> | 2004-11-14 17:40:57 (UTC) |
commit | 61dc3dd61685a1bfc6aba33ad81f8348bb992a11 (patch) (side-by-side diff) | |
tree | 74994977ad38557c91a2f16975a9d8798c3365ec | |
parent | 9507723db1df320547a0cb660b9b923d41438fdf (diff) | |
download | opie-61dc3dd61685a1bfc6aba33ad81f8348bb992a11.zip opie-61dc3dd61685a1bfc6aba33ad81f8348bb992a11.tar.gz opie-61dc3dd61685a1bfc6aba33ad81f8348bb992a11.tar.bz2 |
-Fix bug in OFileSelector ListView spotted by hrw
to sort the 'size' column according their 'Number'-Halbordnung
and not by string comparsion
-rw-r--r-- | libopie2/opieui/fileselector/ofileselector.cpp | 15 | ||||
-rw-r--r-- | libopie2/opieui/fileselector/ofileselector_p.h | 4 |
2 files changed, 11 insertions, 8 deletions
diff --git a/libopie2/opieui/fileselector/ofileselector.cpp b/libopie2/opieui/fileselector/ofileselector.cpp index 01a51a2..718f743 100644 --- a/libopie2/opieui/fileselector/ofileselector.cpp +++ b/libopie2/opieui/fileselector/ofileselector.cpp @@ -240,21 +240,18 @@ 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 ) + : QListViewItem( view ), m_dir(dir), m_isDir(isDir), m_locked(isLocked) { setPixmap(0, pixmap ); setText(1, path ); setText(2, size ); setText(3, date ); - m_isDir = isDir; - m_dir = dir; - m_locked = isLocked; } OFileSelectorItem::~OFileSelectorItem() { } @@ -278,12 +275,17 @@ QString OFileSelectorItem::path()const return text( 1 ); } QString OFileSelectorItem::key( int id, bool )const { QString ke; + + /* + * id = 0 ||id == 1 : Sort By Name but Directories at Top + * id = 2 : Sort By Size: Prepend '0' to the key + */ if( id == 0 || id == 1 ) { // name if( m_isDir ) { ke.append("0" ); ke.append( text(1) ); @@ -291,14 +293,15 @@ QString OFileSelectorItem::key( int id, bool )const else { ke.append("1" ); ke.append( text(1) ); } return ke; - } - else + }else if(id == 2) { + return text(2).rightJustify(20, '0'); + }else return text( id ); } OFileViewFileListView::OFileViewFileListView( QWidget* parent, const QString& startDir, OFileSelector* sel) :QWidget( parent ), m_sel( sel ) diff --git a/libopie2/opieui/fileselector/ofileselector_p.h b/libopie2/opieui/fileselector/ofileselector_p.h index 790d2bd..15db916 100644 --- a/libopie2/opieui/fileselector/ofileselector_p.h +++ b/libopie2/opieui/fileselector/ofileselector_p.h @@ -134,15 +134,15 @@ public: bool isDir()const; QString directory()const; QString path()const; QString key(int id, bool )const; private: - bool m_locked : 1; - bool m_isDir : 1; QString m_dir; + bool m_isDir : 1; + bool m_locked : 1; }; class OFileViewFileListView : public QWidget { Q_OBJECT public: |