summaryrefslogtreecommitdiff
path: root/noncore/apps/zsafe/extra/qsettings.h
blob: 95e87b5d314ad267312c9d9b221c9e85968103b6 (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
/*
** $Id$
*/

#ifndef _QSETTINGS_H_
#define _QSETTINGS_H_

#include <qstring.h>
#include <qstringlist.h>
#include <qasciidict.h>

// class to hold one category item

class QSettings
{
public:
        enum Format {
		Native = 0,
		Ini
	};
	enum System {
		Unix = 0,
		Windows,
		Mac
	};
	enum Scope {
		User,
		Global
	};
	
	QSettings(const QString &file=0);
	~QSettings();

	void insertSearchPath (System, const QString &);

	QString readEntry (const QString &, const QString &def = QString::null);
	int     readNumEntry (const QString &, int def = 0);
	bool    readBoolEntry (const QString &, bool def = 0);

	bool    writeEntry (const QString &, int);
	bool    writeEntry (const QString &, bool);
	bool    writeEntry (const QString &, const QString &);
	bool    writeEntry (const QString &, const char *);

	bool    removeEntry (const QString &);

	QStringList entryList (const QString &) const;

protected:

private:
	QAsciiDict <QString> prefs; // key, value dictonary
	QString fn; // preference filename

};
#endif // _QSETTINGS_H_