Main Page | Alphabetical List | Data Structures | File List | Data Fields | Globals

dmxevents.c File Reference

#include "dmxinputinit.h"
#include "dmxevents.h"
#include "dmxcb.h"
#include "dmxcommon.h"
#include "dmxcursor.h"
#include "dmxmotion.h"
#include "dmxeq.h"
#include "dmxsigio.h"
#include "dmxmap.h"
#include "keysym.h"
#include "opaque.h"
#include "inputstr.h"
#include "mipointer.h"
#include "XIstubs.h"


void dmxGetGlobalPosition (int *x, int *y)
void dmxInvalidateGlobalPosition (void)
void dmxMotion (DevicePtr pDev, int *v, int firstAxes, int axesCount, DMXMotionType type, DMXBlockType block)
void dmxEnqueue (DevicePtr pDev, int type, int detail, KeySym keySym, XEvent *e, DMXBlockType block)
int dmxCheckSpecialKeys (DevicePtr pDev, KeySym keySym)

Detailed Description

Provide support and helper functions for enqueing events received by the low-level input drivers.

Function Documentation

int dmxCheckSpecialKeys DevicePtr  pDev,
KeySym  keySym

A pointer to this routine is passed to low-level input drivers so that all special keychecking is unified to this file. This function returns 0 if no special keys have been pressed. If the user has requested termination of the DMX server, -1 is returned. If the user has requested a switch to a VT, then the (1-based) number of that VT is returned.

void dmxEnqueue DevicePtr  pDev,
int  type,
int  detail,
KeySym  keySym,
XEvent *  e,
DMXBlockType  block

Enqueue a non-motion event from the pDev device with the specified type and detail. If the event is a KeyPress or KeyRelease event, then the keySym is also specified.

If block is set to DMX_BLOCK, then the SIGIO handler will be blocked around calls to dmxeqEnqueue().

void dmxGetGlobalPosition int *  x,
int *  y

Return DMX's notion of the pointer position in the global coordinate space.

void dmxInvalidateGlobalPosition void   ) 

Invalidate the global position for #dmxCoreMotion.

void dmxMotion DevicePtr  pDev,
int *  v,
int  firstAxes,
int  axesCount,
DMXMotionType  type,
DMXBlockType  block

Enqueue a motion event for pDev. The v vector has length axesCount, and contains values for each of the axes, starting at firstAxes.

The type of the motion may be DMX_RELATIVE, DMX_ABSOLUTE, or DMX_ABSOLUTE_CONFINED (in the latter case, the pointer will not be allowed to move outside the global boundaires).

If block is set to DMX_BLOCK, then the SIGIO handler will be blocked around calls to dmxeqEnqueue().

Generated June 13, 2004 for Distributed Multihead X by doxygen 1.3.4.