src/events/SDL_events_c.h
author Sam Lantinga <slouken@libsdl.org>
Sun, 28 May 2006 13:04:16 +0000
branchSDL-1.3
changeset 1662 782fd950bd46
parent 1612 97d0966f4bf7
child 1668 4da1ee79c9af
permissions -rw-r--r--
Revamp of the video system in progress - adding support for multiple displays, multiple windows, and a full video mode selection API.

WARNING: None of the video drivers have been updated for the new API yet! The API is still under design and very fluid.

The code is now run through a consistent indent format:
indent -i4 -nut -nsc -br -ce

The headers are being converted to automatically generate doxygen documentation.
slouken@0
     1
/*
slouken@0
     2
    SDL - Simple DirectMedia Layer
slouken@1312
     3
    Copyright (C) 1997-2006 Sam Lantinga
slouken@0
     4
slouken@0
     5
    This library is free software; you can redistribute it and/or
slouken@1312
     6
    modify it under the terms of the GNU Lesser General Public
slouken@0
     7
    License as published by the Free Software Foundation; either
slouken@1312
     8
    version 2.1 of the License, or (at your option) any later version.
slouken@0
     9
slouken@0
    10
    This library is distributed in the hope that it will be useful,
slouken@0
    11
    but WITHOUT ANY WARRANTY; without even the implied warranty of
slouken@0
    12
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
slouken@1312
    13
    Lesser General Public License for more details.
slouken@0
    14
slouken@1312
    15
    You should have received a copy of the GNU Lesser General Public
slouken@1312
    16
    License along with this library; if not, write to the Free Software
slouken@1312
    17
    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
slouken@0
    18
slouken@0
    19
    Sam Lantinga
slouken@252
    20
    slouken@libsdl.org
slouken@0
    21
*/
slouken@1402
    22
#include "SDL_config.h"
slouken@0
    23
slouken@0
    24
/* Useful functions and variables from SDL_events.c */
slouken@0
    25
#include "SDL_events.h"
slouken@0
    26
slouken@0
    27
/* Start and stop the event processing loop */
slouken@1662
    28
extern int SDL_StartEventLoop (Uint32 flags);
slouken@1662
    29
extern void SDL_StopEventLoop (void);
slouken@1662
    30
extern void SDL_QuitInterrupt (void);
slouken@0
    31
slouken@1662
    32
extern void SDL_Lock_EventThread (void);
slouken@1662
    33
extern void SDL_Unlock_EventThread (void);
slouken@1662
    34
extern Uint32 SDL_EventThreadID (void);
slouken@0
    35
slouken@0
    36
/* Event handler init routines */
slouken@1662
    37
extern int SDL_KeyboardInit (void);
slouken@1662
    38
extern int SDL_MouseInit (void);
slouken@1662
    39
extern int SDL_QuitInit (void);
slouken@0
    40
slouken@1123
    41
/* Event handler quit routines */
slouken@1662
    42
extern void SDL_KeyboardQuit (void);
slouken@1662
    43
extern void SDL_MouseQuit (void);
slouken@1662
    44
extern void SDL_QuitQuit (void);
slouken@1123
    45
slouken@0
    46
/* The event filter function */
slouken@0
    47
extern SDL_EventFilter SDL_EventOK;
slouken@0
    48
slouken@0
    49
/* The array of event processing states */
slouken@0
    50
extern Uint8 SDL_ProcessEvents[SDL_NUMEVENTS];
slouken@0
    51
slouken@0
    52
/* Internal event queueing functions
slouken@1662
    53
   (from SDL_mouse.c, SDL_keyboard.c, SDL_quit.c, SDL_events.c, SDL_windowevents.c)
slouken@0
    54
 */
slouken@1662
    55
extern int SDL_PrivateWindowEvent (SDL_WindowID windowID, Uint8 windowevent,
slouken@1662
    56
                                   int data1, int data2);
slouken@1662
    57
extern int SDL_PrivateMouseMotion (Uint8 buttonstate, int relative, Sint16 x,
slouken@1662
    58
                                   Sint16 y);
slouken@1662
    59
extern int SDL_PrivateMouseButton (Uint8 state, Uint8 button, Sint16 x,
slouken@1662
    60
                                   Sint16 y);
slouken@1662
    61
extern int SDL_PrivateKeyboard (Uint8 state, SDL_keysym * key);
slouken@1662
    62
extern int SDL_PrivateQuit (void);
slouken@1662
    63
extern int SDL_PrivateSysWMEvent (SDL_SysWMmsg * message);
slouken@0
    64
slouken@0
    65
/* Used by the activity event handler to remove mouse focus */
slouken@1662
    66
extern void SDL_ResetMouse (void);
slouken@0
    67
slouken@0
    68
/* Used by the activity event handler to remove keyboard focus */
slouken@1662
    69
extern void SDL_ResetKeyboard (void);
slouken@0
    70
slouken@0
    71
/* Used by the event loop to queue pending keyboard repeat events */
slouken@1662
    72
extern void SDL_CheckKeyRepeat (void);
slouken@0
    73
slouken@0
    74
/* Used by the OS keyboard code to detect whether or not to do UNICODE */
slouken@0
    75
#ifndef DEFAULT_UNICODE_TRANSLATION
slouken@1662
    76
#define DEFAULT_UNICODE_TRANSLATION 0   /* Default off because of overhead */
slouken@0
    77
#endif
slouken@0
    78
extern int SDL_TranslateUNICODE;
slouken@1662
    79
slouken@1662
    80
/* vi: set ts=4 sw=4 expandtab: */