kpresenter

KPrEffectHandler.h
1/* This file is part of the KDE project
2 Copyright (C) 2004 Thorsten Zachmann <zachmann@kde.org>
3
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public
6 License as published by the Free Software Foundation; either
7 version 2 of the License, or (at your option) any later version.
8
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to
16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
18*/
19
20#ifndef EFFECTHANDLER_H
21#define EFFECTHANDLER_H
22
23#include <tqpixmap.h>
24#include <tqptrlist.h>
25#include <tqstring.h>
26
27#include "global.h"
28#include "presstep.h"
29
30class TQPaintDevice;
31class KPrObject;
32class KPrView;
33
34class KPrEffectHandler
35{
36public:
47 KPrEffectHandler( PresStep step, bool back, TQPaintDevice *dst, TQPixmap *src, const TQPtrList<KPrObject> &objects, KPrView *view, int _presSpeed );
48
52 ~KPrEffectHandler();
53
62 bool doEffect();
63
70 void finish();
71protected:
76 bool doAppearEffectStep( KPrObject *object );
77
82 bool doDisappearEffectStep( KPrObject *object );
83
89 bool appearNone( KPrObject *object );
90
96 bool appearComeLeft( KPrObject *object );
97
103 bool appearComeTop( KPrObject *object );
104
110 bool appearComeRight( KPrObject *object );
111
117 bool appearComeBottom( KPrObject *object );
118
124 bool appearComeLeftTop( KPrObject *object );
125
131 bool appearComeLeftBottom( KPrObject *object );
132
138 bool appearComeRightTop( KPrObject *object );
139
145 bool appearComeRightBottom( KPrObject *object );
146
151 bool appearWipeLeft( KPrObject *object );
152
157 bool appearWipeRight( KPrObject *object );
158
163 bool appearWipeTop( KPrObject *object );
164
169 bool appearWipeBottom( KPrObject *object );
170
176 bool disappearGoLeft( KPrObject *object );
177
183 bool disappearGoRight( KPrObject *object );
184
190 bool disappearGoTop( KPrObject *object );
191
197 bool disappearGoBottom( KPrObject *object );
198
204 bool disappearGoLeftTop( KPrObject *object );
205
211 bool disappearGoLeftBottom( KPrObject *object );
212
218 bool disappearGoRightTop( KPrObject *object );
219
225 bool disappearGoRightBottom( KPrObject *object );
226
231 bool disappearWipeLeft( KPrObject *object );
232
237 bool disappearWipeRight( KPrObject *object );
238
243 bool disappearWipeTop( KPrObject *object );
244
249 bool disappearWipeBottom( KPrObject *object );
250
255 void drawObject( KPrObject *object, int x, int y, TQPixmap *screen, TQRect *clipRect = 0 );
256
261 int m_effectStep;
262
266 PresStep m_step;
267
271 bool m_back;
272
276 TQPaintDevice *m_dst;
277
283 TQPixmap *m_src;
284
288 TQPixmap m_paint;
289
293 TQPtrList<KPrObject> m_objects;
294
300 TQPtrList<KPrObject> m_appearEffectObjects;
301
306 TQPtrList<KPrObject> m_disappearEffectObjects;
307
309 KPrView *m_view;
310
314 int m_stepWidth;
315
319 int m_stepHeight;
320
324 TQPtrList<TQRect> m_repaintRects;
325
330 TQPtrList<TQRect> m_lastRepaintRects;
331
335 TQString m_soundEffect;
336
340 int m_objectTimer;
341};
342
343
344#endif /* EFFECTHANDLER_H */
Class for keeping a presentation step m_pageNumber the current page number 0 based m_step the current...
Definition presstep.h:32