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

#include <tqvaluelist.h>
#include <tqpair.h>
#include <tqstring.h>
#include <tqmap.h>

#include "iraction.h"
#include "mode.h"

/**
@author Gav Wood
*/

class TDEConfig;

typedef TQValueListIterator<IRAction> IRAIt;
typedef TQValueList<IRAIt> IRAItList;

class IRActions: protected TQValueList<IRAction>
{
private:
	void purgeAllBindings(TDEConfig &theConfig);

public:
	IRAIt addAction(const IRAction &theAction);
	IRAItList findByButton(const TQString &remote, const TQString &button);
	IRAItList findByMode(const Mode &mode);
	IRAItList findByModeButton(const Mode &mode, const TQString &button);

	void erase(const IRAIt &action) { TQValueList<IRAction>::erase(action); }
	void renameMode(const Mode &mode, const TQString &to);

	void loadFromConfig(TDEConfig &theConfig);
	void saveToConfig(TDEConfig &theConfig);
};


#endif