00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00024
00025 #ifndef SFML_EVENT_H
00026 #define SFML_EVENT_H
00027
00029
00031 #include <SFML/Config.h>
00032
00033
00037 typedef enum
00038 {
00039 sfKeyA = 'a', sfKeyZ = 'z', sfKeyE = 'e', sfKeyR = 'r', sfKeyT = 't', sfKeyY = 'y', sfKeyU = 'u', sfKeyI = 'i',
00040 sfKeyO = 'o', sfKeyP = 'p', sfKeyQ = 'q', sfKeyS = 's', sfKeyD = 'd', sfKeyF = 'f', sfKeyG = 'g', sfKeyH = 'h',
00041 sfKeyJ = 'j', sfKeyK = 'k', sfKeyL = 'l', sfKeyM = 'm', sfKeyW = 'w', sfKeyX = 'x', sfKeyC = 'c', sfKeyV = 'v',
00042 sfKeyB = 'b', sfKeyN = 'n',
00043 sfKeyNum0 = '0', sfKeyNum1 = '1', sfKeyNum2 = '2', sfKeyNum3 = '3', sfKeyNum4 = '4',
00044 sfKeyNum5 = '5', sfKeyNum6 = '6', sfKeyNum7 = '7', sfKeyNum8 = '8', sfKeyNum9 = '9',
00045 sfKeyEscape = 256,
00046 sfKeyControl, sfKeyShift, sfKeyAlt,
00047 sfKeySpace, sfKeyReturn, sfKeyBack, sfKeyTab, sfKeyPageUp, sfKeyPageDown, sfKeyEnd, sfKeyHome, sfKeyInsert,
00048 sfKeyDelete, sfKeyAdd, sfKeySubtract, sfKeyMultiply, sfKeyDivide,
00049 sfKeyLeft, sfKeyRight, sfKeyUp, sfKeyDown,
00050 sfKeyNumpad0, sfKeyNumpad1, sfKeyNumpad2, sfKeyNumpad3, sfKeyNumpad4, sfKeyNumpad5, sfKeyNumpad6, sfKeyNumpad7,
00051 sfKeyNumpad8, sfKeyNumpad9,
00052 sfKeyF1, sfKeyF2, sfKeyF3, sfKeyF4, sfKeyF5, sfKeyF6, sfKeyF7, sfKeyF8, sfKeyF9, sfKeyF10, sfKeyF11, sfKeyF12,
00053 sfKeyF13, sfKeyF14, sfKeyF15,
00054 sfKeyPause,
00055
00056 sfKeyCount
00057 } sfKeyCode;
00058
00059
00063 typedef enum
00064 {
00065 sfButtonLeft,
00066 sfButtonRight,
00067 sfButtonMiddle,
00068 sfButtonX1,
00069 sfButtonX2
00070 } sfMouseButton;
00071
00072
00076 typedef enum
00077 {
00078 sfJoyAxisX,
00079 sfJoyAxisY,
00080 sfJoyAxisZ,
00081 sfJoyAxisR,
00082 sfJoyAxisU,
00083 sfJoyAxisV,
00084 sfJoyAxisPOV
00085 } sfJoyAxis;
00086
00087
00091 typedef enum
00092 {
00093 sfEvtClosed,
00094 sfEvtResized,
00095 sfEvtLostFocus,
00096 sfEvtGainedFocus,
00097 sfEvtTextEntered,
00098 sfEvtKeyPressed,
00099 sfEvtKeyReleased,
00100 sfEvtMouseWheelMoved,
00101 sfEvtMouseButtonPressed,
00102 sfEvtMouseButtonReleased,
00103 sfEvtMouseMoved,
00104 sfEvtJoyButtonPressed,
00105 sfEvtJoyButtonReleased,
00106 sfEvtJoyMoved
00107 } sfEventType;
00108
00109
00113 typedef union
00114 {
00116
00118 sfEventType Type;
00119
00123 struct
00124 {
00125 sfEventType Type;
00126 sfUint16 Unicode;
00127 } Text;
00128
00132 struct
00133 {
00134 sfEventType Type;
00135 sfKeyCode Code;
00136 sfBool Alt;
00137 sfBool Control;
00138 sfBool Shift;
00139 } Key;
00140
00144 struct
00145 {
00146 sfEventType Type;
00147 unsigned int X;
00148 unsigned int Y;
00149 } MouseMove;
00150
00154 struct
00155 {
00156 sfEventType Type;
00157 sfMouseButton Button;
00158 } MouseButton;
00159
00163 struct
00164 {
00165 sfEventType Type;
00166 int Delta;
00167 } MouseWheel;
00168
00172 struct
00173 {
00174 sfEventType Type;
00175 unsigned int JoystickId;
00176 sfJoyAxis Axis;
00177 float Position;
00178 } JoyMove;
00179
00183 struct
00184 {
00185 sfEventType Type;
00186 unsigned int JoystickId;
00187 unsigned int Button;
00188 } JoyButton;
00189
00193 struct
00194 {
00195 sfEventType Type;
00196 unsigned int Width;
00197 unsigned int Height;
00198 } Size;
00199 } sfEvent;
00200
00201
00202 #endif // SFML_EVENT_H