docs/man3/SDL_SetEventFilter.3
author Aaron Wishnick <schnarf@gmail.com>
Wed, 18 Jun 2008 04:51:10 +0000
branchgsoc2008_audio_resampling
changeset 2655 b8e736c8a5a8
parent 2283 546f7c1eb755
child 4311 1238da4a7112
permissions -rw-r--r--
Added beginnings of resampling code.
     1 .TH "SDL_SetEventFilter" "3" "Tue 11 Sep 2001, 22:59" "SDL" "SDL API Reference" 
     2 .SH "NAME"
     3 SDL_SetEventFilter \- Sets up a filter to process all events before they are posted to the event queue\&.
     4 .SH "SYNOPSIS"
     5 .PP
     6 \fB#include "SDL\&.h"
     7 .sp
     8 \fBvoid \fBSDL_SetEventFilter\fP\fR(\fBSDL_EventFilter filter\fR);
     9 .SH "DESCRIPTION"
    10 .PP
    11 This function sets up a filter to process all events before they are posted to the event queue\&. This is a very powerful and flexible feature\&. The filter is prototyped as: 
    12 .PP
    13 .nf
    14 \f(CWtypedef int (*SDL_EventFilter)(const SDL_Event *event);\fR
    15 .fi
    16 .PP
    17  If the filter returns \fB1\fR, then the event will be added to the internal queue\&. If it returns \fB0\fR, then the event will be dropped from the queue\&. This allows selective filtering of dynamically\&.
    18 .PP
    19 There is one caveat when dealing with the \fBSDL_QUITEVENT\fP event type\&. The event filter is only called when the window manager desires to close the application window\&. If the event filter returns 1, then the window will be closed, otherwise the window will remain open if possible\&. If the quit event is generated by an interrupt signal, it will bypass the internal queue and be delivered to the application at the next event poll\&.
    20 .PP
    21 .RS
    22 \fBNote:  
    23 .PP
    24 Events pushed onto the queue with \fI\fBSDL_PushEvent\fP\fR or \fI\fBSDL_PeepEvents\fP\fR do not get passed through the event filter\&.
    25 .RE
    26 .PP
    27 .RS
    28 \fBNote:  
    29 .PP
    30 \fIBe Careful!\fP The event filter function may run in a different thread so be careful what you do within it\&.
    31 .RE
    32 .SH "SEE ALSO"
    33 .PP
    34 \fI\fBSDL_Event\fR\fR, \fI\fBSDL_GetEventFilter\fP\fR, \fI\fBSDL_PushEvent\fP\fR
    35 ...\" created by instant / docbook-to-man, Tue 11 Sep 2001, 22:59