summaryrefslogtreecommitdiffstats
path: root/ktux/sprite.h
blob: 9b60abe4eb2ea12537385772d7c8b0da2053a00f (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
66
67
68
69
70
71
72
73
74
//-----------------------------------------------------------------------------
//
// ksprite - TQCanvas based screensaver
//
// Copyright (c)  Martin R. Jones 1996
//

#ifndef __SPRITE_H__
#define __SPRITE_H__

#include <tqtimer.h>
#include <tqpushbutton.h>
#include <tqptrlist.h>
#include <tqstrlist.h>
#include <tqcanvas.h>
#include <kscreensaver.h>
#include "spriteanim.h"

//-----------------------------------------------------------------------------
class KSpriteSaver : public KScreenSaver
{
	Q_OBJECT
  
public:
    KSpriteSaver( WId id );
    virtual ~KSpriteSaver();

    void setSpeed(int speed);

private:
    void readSettings();
    void initialise();
    void blank();

protected slots:
    void slotTimeout();

protected:
    virtual void timerEvent(TQTimerEvent *);

protected:
    TQCanvas	*mCanvas;
    TQCanvasView	*mView;
    TQTimer	mTimer;
    int                 mSpeed;
    TQPtrList<SpriteGroup>  mGroups;
    TQMemArray<int>    mTimerIds;
};

class KSpriteSetup : public TQDialog
{
    Q_OBJECT
  
public:
    KSpriteSetup( TQWidget *parent = NULL, const char *name = NULL );
    ~KSpriteSetup();

protected:
    void readSettings();

private slots:
    void slotSpeed(int s);
    void slotOkPressed();
    void slotAbout();

private:
    int     speed;
    TQWidget *preview;
    KSpriteSaver *saver;
};


#endif