summaryrefslogtreecommitdiffstats
path: root/kdelirc/kdelirc/mode.h
blob: e52c04260c4e6e64de7004f9c92cb5f7ca62a040 (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
//
//
// C++ Interface: $MODULE$
//
// Description:
//
//
// Author: Gav Wood <gav@kde.org>, (C) 2003
//
// Copyright: See COPYING file that comes with this distribution
//
//
#ifndef MODE_H
#define MODE_H

#include <qstring.h>

#include "remoteserver.h"

/**
@author Gav Wood
*/

class KConfig;

class Mode
{
	QString theName, theRemote, theIconFile;

public:
	void setName(const QString &a) { theName = a; }
	void setRemote(const QString &a) { theRemote = a; }
	void setIconFile(const QString &a) { theIconFile = a; }

	const QString &name() const { return theName; }
	const QString &remote() const { return theRemote; }
	const QString &iconFile() const { return theIconFile; }
	const QString &remoteName() const { return RemoteServer::remoteServer()->getRemoteName(theRemote); }

	const Mode &loadFromConfig(KConfig &theConfig, int index);
	void saveToConfig(KConfig &theConfig, int index);

	bool operator==(const Mode &mode) const { return mode.theName == theName && mode.theRemote == theRemote; }

	Mode();
	Mode(const QString &remote, const QString &name, const QString &iconFile = QString::null);
	~Mode();
};

#endif