Gnash
0.8.11dev
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
gui
sdl
sdlsup.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
20
#ifndef SDLSUP_H
21
#define SDLSUP_H
22
23
#ifdef HAVE_CONFIG_H
24
#include "
gnashconfig.h
"
25
#endif
26
27
#include "
gui.h
"
28
29
#include "SDL.h"
30
#include "SDL_thread.h"
31
32
#ifdef RENDERER_AGG
33
# include "
sdl_agg_glue.h
"
34
#elif defined(RENDERER_CAIRO)
35
# include "
sdl_cairo_glue.h
"
36
#elif defined(RENDERER_OPENGL)
37
# include "
sdl_ogl_glue.h
"
38
#endif
39
40
41
#ifdef RENDERER_CAIRO
42
# include <cairo.h>
43
#endif
44
45
namespace
gnash
46
{
47
48
class
SDLGui
:
public
Gui
49
{
50
public
:
51
SDLGui
(
unsigned
long
xid,
float
scale,
bool
loop,
RunResources
&
r
);
52
virtual
~SDLGui
();
53
virtual
bool
init
(
int
argc,
char
**argv[]);
54
virtual
bool
createWindow
(
const
char
*title,
int
width
,
int
height
,
55
int
xPosition = 0,
int
yPosition = 0);
56
virtual
bool
run
();
57
virtual
bool
createMenu
();
58
virtual
bool
setupEvents
();
59
virtual
void
renderBuffer
();
60
virtual
void
setInterval
(
unsigned
int
interval);
61
virtual
void
disableCoreTrap
();
62
virtual
void
setTimeout
(
unsigned
int
timeout);
63
64
void
key_event
(SDL_KeyboardEvent * key,
bool
down);
65
66
// See gui.h for documentation
67
void
setInvalidatedRegions
(
const
InvalidatedRanges
& ranges);
68
69
private
:
70
unsigned
int
_timeout;
71
bool
_core_trap;
72
74
void
resize_event();
75
77
void
expose_event();
78
79
static
key::code
sdl_to_gnash_key(SDL_KeyboardEvent* key);
80
static
int
sdl_to_gnash_modifier(
int
state);
81
82
#ifdef RENDERER_AGG
83
SdlAggGlue
_glue;
84
#elif defined(RENDERER_CAIRO)
85
SdlCairoGlue
_glue;
86
#elif defined(RENDERER_OPENGL)
87
SdlOglGlue
_glue;
88
#endif
89
90
};
91
92
// void xt_event_handler(Widget xtwidget, gpointer instance,
93
// XEvent *xevent, Boolean *b);
94
95
// end of namespace gnash
96
}
97
98
// end of __SDLSUP_H__
99
#endif
Generated on Sat Jun 30 2012 00:52:49 for Gnash by
1.8.1.1