summaryrefslogtreecommitdiff
path: root/noncore/unsupported/oipkg/packagelist.h
blob: d0f8897138a85fc54e233afd5d59d5ee77dc6a75 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#ifndef PACKAGELIST_H
#define PACKAGELIST_H

#include <qdict.h>
#include "package.h"
#include "pksettings.h"
#include "debug.h"

class PackageList //:QObject
{
//  	Q_OBJECT
public:
//	static QString all = QObject::tr("All");

  PackageList();
  PackageList( PackageManagerSettings* );
 	virtual ~PackageList();
  void insertPackage( Package* );
  Package* find( QString );
  Package* next();
  Package* first();

  QStringList getSections();
  QStringList getSubSections();
  void setSettings( PackageManagerSettings* );
  void filterPackages( QString );
  Package* getByName( QString );
  void clear();
  void allPackages();

  QDict<Package> *versions;

public slots:
  void setSection(QString);
  void setSubSection(QString);
 // virtual void update();

protected:
  int currentPackage;
  int packageCount;

  PackageManagerSettings     *settings;
  QDict<Package>         packageList;
  QDict<Package>         origPackageList;
  QDictIterator<Package> packageIter;

  bool empty;
  QString            aktSection;
  QString            aktSubSection;
  QStringList        sections;
  QDict<QStringList> subSections;
  QDict<bool> sectionsDict;


  void updateSections( Package* );
  void readFileEntries( QString file, QString dest="" );
};


#endif