00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef __DB_LIST_H
00022 #define __DB_LIST_H
00023
00024 #include <QList>
00025
00026 #include "../DataClasses/DataClass.h"
00027 #include "sql.h"
00028
00029
00038 class dbList
00039 {
00040 private:
00041 QList<DataClass * > * pdcList;
00042 private:
00050 QList<DataClass * > * allChildrenDeep(DataClass * parent);
00051 public:
00052
00054 dbList();
00058 dbList(QList<DataClass * > * p_dcList);
00059
00060
00063 QList<DataClass * > * list();
00071 QList<DataClass * > * allChildren(DataClass * parent, bool deep = false);
00072
00073
00078 inline void insert(int posn, DataClass * data){pdcList->insert(posn,data);}
00082 inline void append(DataClass * data){pdcList->append(data);}
00088 DataClass * remove(int posn);
00093 template <typename LessThan>
00094 void resort (LessThan lessThan){qSort(pdcList->begin(), pdcList->end(),lessThan);};
00095
00096
00098 inline int size() {return pdcList->size();}
00103 DataClass * at(int posn);
00104
00106 void dump();
00107 };
00108
00109 #endif