---
name: "SoXtMouse"
section: "3iv"
platform: "linux"
package: "inventor-doc"
version: "2.1.6+ds-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SoXtMouse"
---

# SoXtMouse(3iv)

translates and reports events for the mouse

## NAME

SoXtMouse — translates and reports events for the mouse

## INHERITS FROM

SoXtDevice \> SoXtMouse

## SYNOPSIS

**#include \<Inventor/Xt/devices/SoXtMouse.h\>**

**#define SO\_XT\_ALL\_MOUSE\_EVENTS**\
     **(ButtonPressMask \| ButtonReleaseMask \|**\
      **PointerMotionMask \| ButtonMotionMask)**

Methods from class SoXtMouse:

	**SoXtMouse(EventMask mask = SO\_XT\_ALL\_MOUSE\_EVENTS)**\
 	**~SoXtMouse()**

Methods from class SoXtDevice:

**virtual void**	**enable(Widget w, XtEventHandler f, XtPointer data, Window win = NULL)**\
 **virtual void**	**disable(Widget w, XtEventHandler f, XtPointer data)**\
 **virtual const SoEvent \***	**translateEvent(XAnyEvent \*xevent)**\
 **void**	**setWindowSize(const SbVec2s &size)**\
 **const SbVec2s &**	**getWindowSize() const**

## DESCRIPTION

**This class manages events generated by the mouse, including mouse motion (SoLocation2Event**), and mouse button press and release events (**SoMouseButtonEvent**).

## METHODS

	**SoXtMouse(EventMask mask = SO\_XT\_ALL\_MOUSE\_EVENTS)**\
 	**~SoXtMouse()**\
 Constructor and destructor. To the constructor, pass which mouse events you are interested in as a bitwise OR of the following values:

ButtonPressMask — Mouse press events

ButtonReleaseMask — Mouse release events

PointerMotionMask — Mouse motion with no buttons

ButtonMotionMask — Mouse motion with buttons pressed

Or simply pass the defined value SO\_XT\_ALL\_MOUSE\_EVENTS for all mouse events. The device will only report events of this type for the widget it is enabled on.

## SEE ALSO

**SoXtDevice, SoLocation2Event, SoMouseButtonEvent**
