summaryrefslogtreecommitdiffstats
path: root/examples/network/ftpclient/ftpviewitem.cpp
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-07-10 15:24:15 -0500
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-07-10 15:24:15 -0500
commitbd0f3345a938b35ce6a12f6150373b0955b8dd12 (patch)
tree7a520322212d48ebcb9fbe1087e7fca28b76185c /examples/network/ftpclient/ftpviewitem.cpp
downloadqt3-bd0f3345a938b35ce6a12f6150373b0955b8dd12.tar.gz
qt3-bd0f3345a938b35ce6a12f6150373b0955b8dd12.zip
Add Qt3 development HEAD version
Diffstat (limited to 'examples/network/ftpclient/ftpviewitem.cpp')
-rw-r--r--examples/network/ftpclient/ftpviewitem.cpp58
1 files changed, 58 insertions, 0 deletions
diff --git a/examples/network/ftpclient/ftpviewitem.cpp b/examples/network/ftpclient/ftpviewitem.cpp
new file mode 100644
index 0000000..bb5d689
--- /dev/null
+++ b/examples/network/ftpclient/ftpviewitem.cpp
@@ -0,0 +1,58 @@
+/****************************************************************************
+**
+** Copyright (C) 1992-2008 Trolltech ASA. All rights reserved.
+**
+** This file is part of an example program for Qt. This example
+** program may be used, distributed and modified without limitation.
+**
+*****************************************************************************/
+
+#include <qpixmap.h>
+
+#include "ftpviewitem.h"
+
+
+FtpViewItem::FtpViewItem( QListView *parent, Type t, const QString &name, const QString &size, const QString &lastModified )
+ : QListViewItem(parent,name,size,lastModified), type(t)
+{
+ // the pixmaps for folders and files are in an image collection
+ if ( type == Directory )
+ setPixmap( 0, QPixmap::fromMimeSource( "folder.png" ) );
+ else
+ setPixmap( 0, QPixmap::fromMimeSource( "file.png" ) );
+}
+
+int FtpViewItem::compare( QListViewItem * i, int col, bool ascending ) const
+{
+ // The entry ".." is always the first one.
+ if ( text(0) == ".." ) {
+ if ( ascending )
+ return -1;
+ else
+ return 1;
+ }
+ if ( i->text(0) == ".." ) {
+ if ( ascending )
+ return 1;
+ else
+ return -1;
+ }
+
+ // Directories are before files.
+ if ( type != ((FtpViewItem*)i)->type ) {
+ if ( type == Directory ) {
+ if ( ascending )
+ return -1;
+ else
+ return 1;
+ } else {
+ if ( ascending )
+ return 1;
+ else
+ return -1;
+ }
+ }
+
+ // Use default sorting otherwise.
+ return QListViewItem::compare( i, col, ascending );
+}