/* * X events handling functions * * Copyright 1993 Alexandre Julliard * */ #include "message.h" /**********************************************************************/ EVENT_DRIVER *EVENT_Driver = NULL; /*********************************************************************** * EVENT_Init * * Initialize network IO. */ BOOL EVENT_Init(void) { return EVENT_Driver->pInit(); } /*********************************************************************** * EVENT_AddIO */ void EVENT_AddIO(int fd, unsigned io_type) { EVENT_Driver->pAddIO(fd, io_type); } /*********************************************************************** * EVENT_DeleteIO */ void EVENT_DeleteIO(int fd, unsigned io_type) { EVENT_Driver->pDeleteIO(fd, io_type); } /*********************************************************************** * EVENT_WaitNetEvent * * Wait for a network event, optionally sleeping until one arrives. * Return TRUE if an event is pending, FALSE on timeout or error * (for instance lost connection with the server). */ BOOL EVENT_WaitNetEvent(BOOL sleep, BOOL peek) { return EVENT_Driver->pWaitNetEvent(sleep, peek); } /*********************************************************************** * EVENT_Synchronize * * Synchronize with the X server. Should not be used too often. */ void EVENT_Synchronize(void) { EVENT_Driver->pSynchronize(); } /********************************************************************** * EVENT_CheckFocus */ BOOL EVENT_CheckFocus(void) { return EVENT_Driver->pCheckFocus(); } /*********************************************************************** * EVENT_QueryPointer */ BOOL EVENT_QueryPointer(DWORD *posX, DWORD *posY, DWORD *state) { return EVENT_Driver->pQueryPointer(posX, posY, state); } /*********************************************************************** * EVENT_DummyMotionNotify * * Generate a dummy MotionNotify event. Used to force a WM_SETCURSOR message. */ void EVENT_DummyMotionNotify(void) { EVENT_Driver->pDummyMotionNotify(); } /********************************************************************** * EVENT_Pending */ BOOL EVENT_Pending() { return EVENT_Driver->pPending(); } /*********************************************************************** * IsUserIdle (USER.333) * * Check if we have pending X events. */ BOOL16 WINAPI IsUserIdle16(void) { return EVENT_Driver->pIsUserIdle(); } /*********************************************************************** * EVENT_WakeUp * * Wake up the scheduler (EVENT_WaitNetEvent). Use by 32 bit thread * when thew want signaled an event to a 16 bit task. This function * will become obsolete when an Asynchronous thread will be implemented */ void EVENT_WakeUp(void) { EVENT_Driver->pWakeUp(); }