[Overview][Constants][Types][Procedures and functions][Variables][Index] | Reference for unit 'Mouse' (#rtl)

# TMouseDriver

Mouse driver structure

## Declaration

Source position: mouseh.inc line 49

`type TMouseDriver = record`
`UseDefaultQueue: Boolean;` |  | Should the default event queue mechanism be used.
`InitDriver: procedure;` |  | Called when the driver must be initialized
`DoneDriver: procedure;` |  | Called when the driver will be unloaded.
`DetectMouse: function: Byte;` |  | Function called when the mouse must be detected.
`ShowMouse: procedure;` |  | Function called when the mouse cursor must be shown.
`HideMouse: procedure;` |  | Function called when the mouse cursor must be hidden.
`GetMouseX: function: Word;` |  | Called to get the mouse cursors horizontal position.
`GetMouseY: function: Word;` |  | Called to get the mouse cursors vertical position.
`GetMouseButtons: function: Word;` |  | Called to get the currently pressed mouse buttons.
`SetMouseXY: procedure(` |  | Called when the current mouse position must be set.
`x: Word;`
`y: Word`
`);`
`GetMouseEvent: procedure(` |  | Called to get the next mouse event. Waits if needed.
`var MouseEvent: TMouseEvent`
`);`
`PollMouseEvent: function(` |  | Called to get the next mouse event. Does not wait.
`var MouseEvent: TMouseEvent`
`):Boolean;`
`PutMouseEvent: procedure(` |  | Called to put a mouse event back in the queue.
`const MouseEvent: TMouseEvent`
`);`
`end;`

## Description

The TMouseDriver record is used to implement a mouse driver in the SetMouseDriver function. Its fields must be filled in before calling the SetMouseDriver function.

## See also

SetMouseDriver |  | Set a new mouse driver.

Documentation generated on: Feb 26 2014