2 * Terence Welsh Screensaver - Euphoria
3 * http://www.reallyslick.com/
5 * Ported to KDE by Karl Robillard
6 * Copyright (C) 2002 Terence M. Welsh
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License as
10 * published by the Free Software Foundation; either version 2 of
11 * the License, or (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with this program. If not, see <http://www.gnu.org/licenses/>.
32 class EuphoriaWidget
: public QGLWidget
45 UHFTEM
, // ultra high frequency tunneling electron microscope
52 EuphoriaWidget( QWidget
* parent
=0 );
55 void updateParameters();
56 void setDefaults( int which
);
61 void resizeGL( int w
, int h
);
64 void keyPressEvent( QKeyEvent
* );
76 unsigned char* feedbackmap
;
81 // feedback texture object
82 unsigned int feedbacktex
;
108 // Using QTimer rather than timerEvent() to avoid getting locked out of
109 // the QEvent loop on lower-end systems. Ian Geiser <geiseri@kde.org>
110 // says this is the way to go.
120 #include <kscreensaver.h>
123 class KEuphoriaScreenSaver
: public KScreenSaver
129 KEuphoriaScreenSaver( WId id
);
130 virtual ~KEuphoriaScreenSaver();
132 int mode() const { return _mode
; }
142 EuphoriaWidget
* _effect
;
149 class KEuphoriaSetup
: public KDialog
154 KEuphoriaSetup( QWidget
* parent
= 0 );
163 KEuphoriaScreenSaver
* _saver
;
167 #endif //__EUPHORIASS_H__