summaryrefslogtreecommitdiffstats
path: root/kscreensaver/xsavers/swarm.h
blob: dd4b2f6dd25401b1e75b7514c43d4825dddd3df2 (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
61
62
63
64
65
//-----------------------------------------------------------------------------
//
// kswarm - port of "swarm" from xlock
//

#ifndef __SWARM_H__
#define __SWARM_H__

#include <qtimer.h>

#include <kdialogbase.h>
#include "saver.h"


class kSwarmSaver : public kScreenSaver
{
	Q_OBJECT
public:
	kSwarmSaver( Drawable drawable );
	virtual ~kSwarmSaver();

	void setSpeed( int spd );
	void setLevels( int l );

protected:
	void readSettings();

protected slots:
	void slotTimeout();

protected:
	KRandomSequence rnd;
	QTimer      timer;
	int         colorContext;

	int         speed;
	int			maxLevels;
};

class kSwarmSetup : public KDialogBase
{
	Q_OBJECT
public:
	kSwarmSetup( QWidget *parent = NULL, const char *name = NULL );

protected:
	void readSettings();

private slots:
	void slotSpeed( int );
	void slotLevels( int );

	void slotOk();
	void slotHelp();

private:
	QWidget *preview;
	kSwarmSaver *saver;

	int			speed;
	int			maxLevels;
};

#endif