Sign in Join
FPDoc Onlineexperiment

gpm unit

Interface to GPM (General Purpose Mouse) library.

The GPM unit implements an interface to libgpm, the console program for mouse handling. This unit was created by Peter Vreman, and is only available on Linux.

When this unit is used, your program is linked to the C libraries, so you must take care of the C library version. Also, it will only work with version 1.17 or higher of the libgpm library.

Classes and records

Tgpm_connectrecordGPM server connection information.
Tgpm_eventrecordGPM event record.
Tgpm_roirecordRecord used to define regions of interest.

Procedures and functions

Gpm_AnyDoublefunctionCheck whether event has double click event.
Gpm_AnySinglefunctionCheck whether event has a single click event.
Gpm_AnyTriplefunctionCheck whether event has a triple click event.
gpm_closefunctionClose connection to GPM server.
gpm_fitvaluesfunctionChange coordinates to fit physical screen.
gpm_fitvaluesMfunctionChange coordinates to fit margin.
gpm_geteventfunctionGet event from event queue.
gpm_getsnapshotfunctionReturn servers' current image of mouse state.
gpm_lowerroifunctionLower a region of interest in the stack.
gpm_openfunctionOpen connection to GPM server.
gpm_poproifunctionPop region of interest from the stack.
gpm_pushroifunctionPush region of interest on the stack.
gpm_raiseroifunctionRaise region of interest in the stack.
gpm_repeatfunctionCheck for presence of mouse event.
Gpm_StrictDoublefunctionCheck whether event contains only a double-click event.
Gpm_StrictSinglefunctionCheck whether event contains only a single-click event.
Gpm_StrictTriplefunctionCheck whether event contains only a triple-click event.

Types

Pgpm_connecttypePointer to record.
Pgpm_eventtypePointer to record.
Pgpm_roitypePointer to record.
PgpmconnecttypePointer to record.
PgpmeventtypePointer to record.
PgpmroitypePointer to record.
TgpmconnecttypeAlias for record.
TGpmEtypetypeType for event type.
TgpmeventtypeAlias for record.
TGpmHandlerprocedure typeMouse event handler callback.
TGpmMargintypeType to hold area margin.
TgpmroitypeAlias for Record.

Constants

_PATH_DEVconstantLocation of /dev directory.
_PATH_VARRUNconstantLocation of run PID files directory.
GPM_B_LEFTconstantLeft mouse button identifier.
GPM_B_MIDDLEconstantMiddle mouse button identifier.
GPM_B_RIGHTconstantRight mouse button identifier.
GPM_BOTconstantBottom of area.
GPM_DOUBLEconstantMouse double click event.
GPM_DOWNconstantMouse button down event.
GPM_DRAGconstantMouse drag event.
GPM_ENTERconstantEnter area event.
GPM_HARDconstant?
GPM_LEAVEconstantLeave area event.
GPM_LFTconstantLeft side of area.
GPM_MAGICconstantConstant identifying GPM in .
GPM_MFLAGconstantMotion flag.
GPM_MOVEconstantMouse move event.
GPM_NODE_CTLconstantControl socket.
GPM_NODE_DEVconstantDevice socket filename.
GPM_NODE_DIRconstantWhere to write socket.
GPM_NODE_DIR_MODEconstantMode of socket.
GPM_NODE_FIFOconstantFIFO name.
GPM_NODE_PIDconstantName of PID file.
GPM_RGTconstantRight side of area.
GPM_SINGLEconstantMouse single click event.
GPM_TOPconstantTop of area.
GPM_TRIPLEconstantMouse triple click event.
GPM_UPconstantMouse button up event.

Variables

gpm_current_roivariableInternal gpm library variable. Do not use.
gpm_handlervariableInternal gpm library variable. Do not use.
gpm_roivariableInternal gpm library variable. Do not use.
gpm_roi_datavariableInternal gpm library variable. Do not use.
gpm_roi_handlervariableInternal gpm library variable. Do not use.

Uses

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.