00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #include <qlistview.h>
00012 #include <qptrlist.h>
00013
00018 class NQPtrList : public QPtrList<QListViewItem>
00019 {
00020 public:
00022 NQPtrList() {};
00024 NQPtrList(const NQPtrList &l) : QPtrList<QListViewItem>(l) {};
00025
00026 protected:
00028 virtual inline int compareItems( QPtrCollection::Item item1, QPtrCollection::Item item2 );
00029 };
00030
00031 inline int NQPtrList::compareItems( QPtrCollection::Item item1, QPtrCollection::Item item2 )
00032 {
00033 int ret = 0;
00034 QListViewItem *litem1 = static_cast<QListViewItem*>(item1);
00035 QListViewItem *litem2 = static_cast<QListViewItem*>(item2);
00036
00037 if (!litem1 || !litem2)
00038 return 0;
00039
00040 if (litem1->depth() == litem2->depth())
00041 ret = 0;
00042 else if (litem1->depth() > litem2->depth())
00043 ret = 1;
00044 else
00045 ret = -1;
00046
00047 return ret;
00048 }
00049
00050