Gnash
0.8.11dev
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
gui
qt
Qt4Glue.h
Go to the documentation of this file.
1
//
2
// Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010,
3
// 2011 Free Software Foundation, Inc
4
//
5
// This program is free software; you can redistribute it and/or modify
6
// it under the terms of the GNU General Public License as published by
7
// the Free Software Foundation; either version 3 of the License, or
8
// (at your option) any later version.
9
//
10
// This program is distributed in the hope that it will be useful,
11
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
// GNU General Public License for more details.
14
//
15
// You should have received a copy of the GNU General Public License
16
// along with this program; if not, write to the Free Software
17
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18
19
#ifndef GNASH_KDE4_GLUE_H
20
#define GNASH_KDE4_GLUE_H
21
22
#ifdef HAVE_CONFIG_H
23
#include "
gnashconfig.h
"
24
#endif
25
26
#include "
snappingrange.h
"
27
28
#include <QWidget>
29
30
class
QRect;
31
class
QGLWidget;
32
33
namespace
gnash {
34
class
Renderer;
35
class
DrawingWidget;
36
class
Qt4Gui;
37
}
38
39
namespace
gnash {
40
41
class
DrawingWidget
:
public
QWidget
42
{
43
Q_OBJECT
44
45
public
:
46
DrawingWidget
(
Qt4Gui
& gui);
47
~DrawingWidget
() {}
48
49
#ifdef RENDERER_OPENGL
50
QGLWidget* _glWidget;
51
#endif
52
53
public
slots:
54
55
void
properties
();
56
void
preferences
();
57
void
play
();
58
void
pause
();
59
void
stop
();
60
void
restart
();
61
void
refresh
();
62
void
fullscreen
(
bool
isFull);
63
void
quit
();
64
65
protected
:
66
void
paintEvent
(QPaintEvent* event);
67
void
timerEvent
(QTimerEvent* event);
68
void
resizeEvent
(QResizeEvent* event);
69
void
mouseReleaseEvent
(QMouseEvent* event);
70
void
mousePressEvent
(QMouseEvent* event);
71
void
mouseMoveEvent
(QMouseEvent* event);
72
void
wheelEvent
(QWheelEvent* event);
73
74
void
keyPressEvent
(QKeyEvent* event);
75
void
keyReleaseEvent
(QKeyEvent* event);
76
void
contextMenuEvent
(QContextMenuEvent* event);
77
78
private
:
79
Qt4Gui
& _gui;
80
};
81
82
class
Qt4Glue
83
{
84
public
:
85
Qt4Glue
() :
_drawing_area
(NULL) {}
86
virtual
~Qt4Glue
() { }
87
virtual
bool
init
(
int
argc,
char
**argv[]) = 0;
88
89
virtual
void
prepDrawingArea
(
DrawingWidget
*drawing_area) = 0;
90
virtual
Renderer
*
createRenderHandler
() = 0;
91
virtual
void
render
() = 0;
92
virtual
void
render
(
const
QRect& updateRect) = 0;
93
virtual
void
setInvalidatedRegions
(
const
InvalidatedRanges
&
/* ranges */
) {}
94
virtual
void
resize
(
int
,
int
) {}
95
virtual
void
initBuffer
(
int
,
int
) {}
96
protected
:
97
DrawingWidget
*
_drawing_area
;
98
};
99
100
}
// namespace gnash
101
102
#endif
Generated on Thu Apr 4 2013 16:43:48 for Gnash by
1.8.3.1