view docs/html/sdljoybuttonevent.html @ 896:b56dc586a5ef

Date: Tue, 16 Mar 2004 12:40:33 +0000 From: Alan Swanson Subject: [SDL] [PATCH] Linux joystick evdev axis count fix The event device configuration under Linux does not check the returned ioctl value when reading the axis information. This means extra undefined axes are returned. Note, in EV_HandleEvents, the default for case EV_ABS is to return any axis information which is fine as we have already checked for all valid absolute axes. No new axes should be returned after opening the device. (Unless, of course, the evdev allows closing and reassigning a new device while in use and I can't believe that happens.)
author Sam Lantinga <slouken@libsdl.org>
date Sun, 16 May 2004 22:48:06 +0000
parents 355632dca928
children
line wrap: on
line source

<HTML
><HEAD
><TITLE
>SDL_JoyButtonEvent</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
"><LINK
REL="HOME"
TITLE="SDL Library Documentation"
HREF="index.html"><LINK
REL="UP"
TITLE="SDL Event Structures."
HREF="eventstructures.html"><LINK
REL="PREVIOUS"
TITLE="SDL_JoyAxisEvent"
HREF="sdljoyaxisevent.html"><LINK
REL="NEXT"
TITLE="SDL_JoyHatEvent"
HREF="sdljoyhatevent.html"></HEAD
><BODY
CLASS="REFENTRY"
BGCOLOR="#FFF8DC"
TEXT="#000000"
LINK="#0000ee"
VLINK="#551a8b"
ALINK="#ff0000"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>SDL Library Documentation</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="sdljoyaxisevent.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="sdljoyhatevent.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><H1
><A
NAME="SDLJOYBUTTONEVENT"
></A
>SDL_JoyButtonEvent</H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN4258"
></A
><H2
>Name</H2
>SDL_JoyButtonEvent&nbsp;--&nbsp;Joystick button event structure</DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN4261"
></A
><H2
>Structure Definition</H2
><PRE
CLASS="PROGRAMLISTING"
>typedef struct{
  Uint8 type;
  Uint8 which;
  Uint8 button;
  Uint8 state;
} SDL_JoyButtonEvent;</PRE
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN4264"
></A
><H2
>Structure Data</H2
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN4266"
></A
><P
></P
><TABLE
BORDER="0"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><TT
CLASS="STRUCTFIELD"
><I
>type</I
></TT
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><TT
CLASS="LITERAL"
>SDL_JOYBUTTONDOWN</TT
> or <TT
CLASS="LITERAL"
>SDL_JOYBUTTONUP</TT
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><TT
CLASS="STRUCTFIELD"
><I
>which</I
></TT
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
>Joystick device index</TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><TT
CLASS="STRUCTFIELD"
><I
>button</I
></TT
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
>Joystick button index</TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><TT
CLASS="STRUCTFIELD"
><I
>state</I
></TT
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><TT
CLASS="LITERAL"
>SDL_PRESSED</TT
> or <TT
CLASS="LITERAL"
>SDL_RELEASED</TT
></TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN4289"
></A
><H2
>Description</H2
><P
><SPAN
CLASS="STRUCTNAME"
>SDL_JoyButtonEvent</SPAN
> is a member of the <A
HREF="sdlevent.html"
><SPAN
CLASS="STRUCTNAME"
>SDL_Event</SPAN
></A
> union and is used when an event of type <TT
CLASS="LITERAL"
>SDL_JOYBUTTONDOWN</TT
> or <TT
CLASS="LITERAL"
>SDL_JOYBUTTONUP</TT
> is reported.</P
><P
>A <TT
CLASS="LITERAL"
>SDL_JOYBUTTONDOWN</TT
> or <TT
CLASS="LITERAL"
>SDL_JOYBUTTONUP</TT
> event occurs when ever a user presses or releases a button on a joystick. The field <TT
CLASS="STRUCTFIELD"
><I
>which</I
></TT
> is the index of the joystick that reported the event and <TT
CLASS="STRUCTFIELD"
><I
>button</I
></TT
> is the index of the button (for a more detailed explaination see the <A
HREF="joystick.html"
>Joystick section</A
>). <TT
CLASS="STRUCTFIELD"
><I
>state</I
></TT
> is the current state or the button which is either <TT
CLASS="LITERAL"
>SDL_PRESSED</TT
> or <TT
CLASS="LITERAL"
>SDL_RELEASED</TT
>.</P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN4306"
></A
><H2
>See Also</H2
><P
><A
HREF="sdlevent.html"
><SPAN
CLASS="STRUCTNAME"
>SDL_Event</SPAN
></A
>,
<A
HREF="joystick.html"
>Joystick Functions</A
>,
<A
HREF="sdljoystickeventstate.html"
><TT
CLASS="FUNCTION"
>SDL_JoystickEventState</TT
></A
>,
<A
HREF="sdljoystickgetbutton.html"
><TT
CLASS="FUNCTION"
>SDL_JoystickGetButton</TT
></A
></P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="sdljoyaxisevent.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="sdljoyhatevent.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>SDL_JoyAxisEvent</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="eventstructures.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>SDL_JoyHatEvent</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>