.TH "SDL_SetEventFilter" "3" "Tue 11 Sep 2001, 22:59" "SDL" "SDL API Reference" 
.SH "NAME"
SDL_SetEventFilter \- Sets up a filter to process all events before they are posted to the event queue\&.
.SH "SYNOPSIS"
.PP
\fB#include "SDL\&.h"
.sp
\fBvoid \fBSDL_SetEventFilter\fP\fR(\fBSDL_EventFilter filter\fR);
.SH "DESCRIPTION"
.PP
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: 
.PP
.nf
\f(CWtypedef int (*SDL_EventFilter)(const SDL_Event *event);\fR
.fi
.PP
 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\&.
.PP
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\&.
.PP
.RS
\fBNote:  
.PP
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\&.
.RE
.PP
.RS
\fBNote:  
.PP
\fIBe Careful!\fP The event filter function may run in a different thread so be careful what you do within it\&.
.RE
.SH "SEE ALSO"
.PP
\fI\fBSDL_Event\fR\fR, \fI\fBSDL_GetEventFilter\fP\fR, \fI\fBSDL_PushEvent\fP\fR
.\" created by instant / docbook-to-man, Tue 11 Sep 2001, 22:59
