summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie2/opieui/fileselector/ofileselector.cpp15
-rw-r--r--libopie2/opieui/fileselector/ofileselector_p.h4
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
@@ -242,17 +242,14 @@ 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()
{
@@ -280,8 +277,13 @@ QString OFileSelectorItem::path()const
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 )
{
@@ -293,10 +295,11 @@ QString OFileSelectorItem::key( int id, bool )const
ke.append("1" );
ke.append( text(1) );
}
return ke;
- }
- else
+ }else if(id == 2) {
+ return text(2).rightJustify(20, '0');
+ }else
return text( id );
}
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
@@ -136,11 +136,11 @@ public:
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
{