# dmxcursor.h File Reference

`#include "mipointer.h"`

Go to the source code of this file.

## Data Structures

struct | _dmxCursorPriv

## Typedefs

typedef _dmxCursorPriv | dmxCursorPrivRec
typedef _dmxCursorPriv * | dmxCursorPrivPtr

## Functions

void | dmxReInitOrigins (void)
void | dmxInitOrigins (void)
void | dmxInitOverlap (void)
void | dmxCursorNoMulti (void)
void | dmxMoveCursor (ScreenPtr pScreen, int x, int y)
void | dmxCheckCursor (void)
int | dmxOnScreen (int x, int y, DMXScreenInfo *dmxScreen)
void | dmxHideCursor (DMXScreenInfo *dmxScreen)
void | dmxBECreateCursor (ScreenPtr pScreen, CursorPtr pCursor)
Bool | dmxBEFreeCursor (ScreenPtr pScreen, CursorPtr pCursor)

## Variables

miPointerScreenFuncRec | dmxPointerCursorFuncs
miPointerSpriteFuncRec | dmxPointerSpriteFuncs

## Detailed Description

Interface for cursor support.

See also:
  dmxcursor.c.

## Typedef Documentation

typedef struct _dmxCursorPriv * dmxCursorPrivPtr

| Cursor private area.

typedef struct _dmxCursorPriv dmxCursorPrivRec

| Cursor private area.

## Function Documentation

void dmxBECreateCursor | ( | ScreenPtr | pScreen,
|  | CursorPtr | pCursor
| ) |

| Create pCursor on the back-end associated with pScreen.

Bool dmxBEFreeCursor | ( | ScreenPtr | pScreen,
|  | CursorPtr | pCursor
| ) |

| Free pCursor on the back-end associated with pScreen.

void dmxCheckCursor | ( | void |  | ) |

| This routine is called during reconfiguration to make sure the cursor is visible.

void dmxCursorNoMulti | ( | void |  | ) |

| Turn off support for displaying multiple cursors on overlapped back-end displays. See #dmxCursorDoMultiCursors.

void dmxHideCursor | ( | DMXScreenInfo * | dmxScreen | ) |

This routine is used by the backend input routines to hide the cursor on a screen that is being used for relative input.

See also:
  dmxbackend.c

void dmxInitOrigins | ( | void |  | ) |

| Initialize screen origins (and relative position). This is called for each server generation. For dynamic reconfiguration, use dmxReInitOrigins() instead.

void dmxInitOverlap | ( | void |  | ) |

| Detects overlapping dmxScreens and creates circular lists. This uses an O(dmxNumScreens^2) algorithm, but dmxNumScreens is < 100 and the computation only needs to be performed for every server generation or dynamic reconfiguration .

void dmxMoveCursor | ( | ScreenPtr | pScreen,
|  | int | x,
|  | int | y
| ) |

| Move the cursor to coordinates (x, y)on pScreen. This function is usually called via dmxPointerSpriteFuncs, except during reconfiguration when the cursor is repositioned to force an update on newley overlapping screens and on screens that no longer overlap.

int dmxOnScreen | ( | int | x,
|  | int | y,
|  | DMXScreenInfo * | dmxScreen
| ) |

| Returns non-zero if the global x, y coordinate is on the screen window of the dmxScreen.

void dmxReInitOrigins | ( | void |  | ) |

| Recompute origin information in the dmxScreens list. This is either called from dmxInitOrigins() or from #dmxReconfig().

## Variable Documentation

miPointerScreenFuncRec dmxPointerCursorFuncs

Cursor functions for mi layer.

See also:
  dmxcursor.c

  dmxscrinit.c

miPointerSpriteFuncRec dmxPointerSpriteFuncs

Sprite functions for mi layer.

See also:
  dmxcursor.c

  dmxscrinit.c

Generated June 29, 2004 for Distributed Multihead X by doxygen 1.3.4. </addres>