INPUT Types Reference¶
Per-function autodoc pages link to these types via the type name (e.g., [List](types-input.md#list)).
Clickable inner types: inside each struct definition, field types that are themselves structs/unions/enums are clickable hyperlinks to their own definitions.
Contents¶
inputevent.h¶
IENewTablet¶
Source: devices/inputevent.h
Since: 3.1+
struct IENewTablet
{
/* Pointer to a hook you wish to be called back through, in
* order to handle scaling. You will be provided with the
* width and height you are expected to scale your tablet
* to, perhaps based on some user preferences.
* If NULL, the tablet's specified range will be mapped directly
* to that width and height for you, and you will not be
* called back.
*/
struct Hook *ient_CallBack;
/* Post-scaling coordinates and fractional coordinates.
* DO NOT FILL THESE IN AT THE TIME THE EVENT IS WRITTEN!
* Your driver will be called back and provided information
* about the width and height of the area to scale the
* tablet into. It should scale the tablet coordinates
* (perhaps based on some preferences controlling aspect
* ratio, etc.) and place the scaled result into these
* fields. The ient_ScaledX and ient_ScaledY fields are
* in screen-pixel resolution, but the origin ( [0,0]-point )
* is not defined. The ient_ScaledXFraction and
* ient_ScaledYFraction fields represent sub-pixel position
* information, and should be scaled to fill a UWORD fraction.
*/
UWORD ient_ScaledX, ient_ScaledY;
UWORD ient_ScaledXFraction, ient_ScaledYFraction;
/* Current tablet coordinates along each axis: */
ULONG ient_TabletX, ient_TabletY;
/* Tablet range along each axis. For example, if ient_TabletX
* can take values 0-999, ient_RangeX should be 1000.
*/
ULONG ient_RangeX, ient_RangeY;
/* Pointer to tag-list of additional tablet attributes.
* See for the tag values.
*/
struct TagItem *ient_TagList;
};
IEPointerPixel¶
Source: devices/inputevent.h
Since: 2.0+
struct IEPointerPixel {
struct Screen *iepp_Screen; /* pointer to an open screen */
struct { /* pixel coordinates in iepp_Screen */
WORD X;
WORD Y;
} iepp_Position;
};
IEPointerTablet¶
Source: devices/inputevent.h
Since: 2.0+
struct IEPointerTablet {
struct {
UWORD X;
UWORD Y;
} iept_Range; /* 0 is min, these are max */
struct {
UWORD X;
UWORD Y;
} iept_Value; /* between 0 and iept_Range */
WORD iept_Pressure; /* -128 to 127 (unused, set to 0) */
};
InputEvent¶
Source: devices/inputevent.h
Since: 1.3+
struct InputEvent {
struct InputEvent *ie_NextEvent; /* the chronologically next event */
UBYTE ie_Class; /* the input event class */
UBYTE ie_SubClass; /* optional subclass of the class */
UWORD ie_Code; /* the input event code */
UWORD ie_Qualifier; /* qualifiers in effect for the event*/
union {
struct {
WORD ie_x; /* the pointer position for the event*/
WORD ie_y;
} ie_xy;
APTR ie_addr; /* the event address */
struct {
UBYTE ie_prev1DownCode; /* previous down keys for dead */ [2.0+]
UBYTE ie_prev1DownQual; /* key translation: the ie_Code */ [2.0+]
UBYTE ie_prev2DownCode; /* & low byte of ie_Qualifier for */ [2.0+]
UBYTE ie_prev2DownQual; /* last & second last down keys */ [2.0+]
} ie_dead;
} ie_position;
TimeVal_Type ie_TimeStamp; /* the system tick at the event */
};