From c3f8ee64e905cdb103b5bfa07525fb4e85c31120 Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Wed, 24 Jul 2013 11:49:27 -0500 Subject: Initial import of kasablanca 0.4.0.2 --- src/kbitem.cpp | 76 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 src/kbitem.cpp (limited to 'src/kbitem.cpp') diff --git a/src/kbitem.cpp b/src/kbitem.cpp new file mode 100644 index 0000000..5978496 --- /dev/null +++ b/src/kbitem.cpp @@ -0,0 +1,76 @@ +// +// C++ Implementation: KbItem +// +// Description: +// +// +// Author: mkulke , (C) 2003 +// +// Copyright: See COPYING file that comes with this distribution +// +// + +// enable > 2gb support (LFS) + +#define _LARGEFILE_SOURCE +#define _LARGEFILE64_SOURCE + +#include +#include "kbfileinfo.h" + +#include "kbitem.h" + + +KbItem::KbItem(KbFileInfo kfi, QListView* parent, QListViewItem* after) : QListViewItem(parent, after) +{ + m_file = kfi.fileName(); + m_path = kfi.dirPath(), + m_date = kfi.Date(), + m_size = kfi.Size(), + m_date_int = kfi.DateInt(); + + setText(0, m_file); + setText(1, QString::number(m_size)); + setText(2, m_date); +} + +KbItem::KbItem(QListView* parent, QListViewItem* after) : QListViewItem(parent, after) +{ +} + +KbItem::~KbItem() +{ +} + +int KbItem::compare(QListViewItem * i, int col, bool ascending) const +{ + if ((this->rtti() == 1001) && (i->rtti() == 1002)) + { + if (ascending) return -1; + else return 1; + } + else if ((this->rtti() == 1002) && (i->rtti() == 1001)) + { + if (ascending) return 1; + else return -1; + } + + if (col == 1) + { + unsigned int x = this->text(1).toInt(); + unsigned int y = i->text(1).toInt(); + if (x == y) return 0; + if (x < y) return -1; + if (x > y) return 1; + } + if (col == 2) + { + unsigned int x = this->m_date_int; + unsigned int y = static_cast(i)->m_date_int; + if (x == y) return 0; + if (x < y) return -1; + if (x > y) return 1; + } + return QListViewItem::compare(i, col, ascending); +} + -- cgit v1.2.1