CSFML
Main Page
Data Structures
Files
File List
Globals
include
SFML
Window
Event.h
Go to the documentation of this file.
1
2
//
3
// SFML - Simple and Fast Multimedia Library
4
// Copyright (C) 2007-2013 Laurent Gomila (laurent.gom@gmail.com)//
5
// This software is provided 'as-is', without any express or implied warranty.
6
// In no event will the authors be held liable for any damages arising from the use of this software.
7
//
8
// Permission is granted to anyone to use this software for any purpose,
9
// including commercial applications, and to alter it and redistribute it freely,
10
// subject to the following restrictions:
11
//
12
// 1. The origin of this software must not be misrepresented;
13
// you must not claim that you wrote the original software.
14
// If you use this software in a product, an acknowledgment
15
// in the product documentation would be appreciated but is not required.
16
//
17
// 2. Altered source versions must be plainly marked as such,
18
// and must not be misrepresented as being the original software.
19
//
20
// 3. This notice may not be removed or altered from any source distribution.
21
//
23
24
#ifndef SFML_EVENT_H
25
#define SFML_EVENT_H
26
28
// Headers
30
#include <
SFML/Window/Export.h
>
31
#include <
SFML/Window/Joystick.h
>
32
#include <
SFML/Window/Keyboard.h
>
33
#include <
SFML/Window/Mouse.h
>
34
35
40
typedef
enum
41
{
42
sfEvtClosed
,
43
sfEvtResized
,
44
sfEvtLostFocus
,
45
sfEvtGainedFocus
,
46
sfEvtTextEntered
,
47
sfEvtKeyPressed
,
48
sfEvtKeyReleased
,
49
sfEvtMouseWheelMoved
,
50
sfEvtMouseButtonPressed
,
51
sfEvtMouseButtonReleased
,
52
sfEvtMouseMoved
,
53
sfEvtMouseEntered
,
54
sfEvtMouseLeft
,
55
sfEvtJoystickButtonPressed
,
56
sfEvtJoystickButtonReleased
,
57
sfEvtJoystickMoved
,
58
sfEvtJoystickConnected
,
59
sfEvtJoystickDisconnected
60
}
sfEventType
;
61
62
67
typedef
struct
68
{
69
sfEventType
type
;
70
sfKeyCode
code
;
71
sfBool
alt
;
72
sfBool
control
;
73
sfBool
shift
;
74
sfBool
system
;
75
}
sfKeyEvent
;
76
81
typedef
struct
82
{
83
sfEventType
type
;
84
sfUint32
unicode
;
85
}
sfTextEvent
;
86
91
typedef
struct
92
{
93
sfEventType
type
;
94
int
x
;
95
int
y
;
96
}
sfMouseMoveEvent
;
97
102
typedef
struct
103
{
104
sfEventType
type
;
105
sfMouseButton
button
;
106
int
x
;
107
int
y
;
108
}
sfMouseButtonEvent
;
109
114
typedef
struct
115
{
116
sfEventType
type
;
117
int
delta
;
118
int
x
;
119
int
y
;
120
}
sfMouseWheelEvent
;
121
126
typedef
struct
127
{
128
sfEventType
type
;
129
unsigned
int
joystickId
;
130
sfJoystickAxis
axis
;
131
float
position
;
132
}
sfJoystickMoveEvent
;
133
138
typedef
struct
139
{
140
sfEventType
type
;
141
unsigned
int
joystickId
;
142
unsigned
int
button
;
143
}
sfJoystickButtonEvent
;
144
149
typedef
struct
150
{
151
sfEventType
type
;
152
unsigned
int
joystickId
;
153
}
sfJoystickConnectEvent
;
154
159
typedef
struct
160
{
161
sfEventType
type
;
162
unsigned
int
width
;
163
unsigned
int
height
;
164
}
sfSizeEvent
;
165
166
171
typedef
union
172
{
174
// Member data
176
sfEventType
type
;
177
sfSizeEvent
size
;
178
sfKeyEvent
key
;
179
sfTextEvent
text
;
180
sfMouseMoveEvent
mouseMove
;
181
sfMouseButtonEvent
mouseButton
;
182
sfMouseWheelEvent
mouseWheel
;
183
sfJoystickMoveEvent
joystickMove
;
184
sfJoystickButtonEvent
joystickButton
;
185
sfJoystickConnectEvent
joystickConnect
;
186
}
sfEvent
;
187
188
189
#endif // SFML_EVENT_H