Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# QTabletEvent Class Reference

The QTabletEvent class contains parameters that describe a Tablet event. More...

    #include <QTabletEvent>

Inherits QInputEvent.

- List of all members, including inherited members
- Obsolete members

### Public Types

- enum TabletDevice { NoDevice, Puck, Stylus, Eraser }

### Public Functions

- QTabletEvent ( Type type, const QPoint & position, const QPoint & globalPos, int device, int pressure, int xTilt, int yTilt, const QPair<int, int> & uId )
- TabletDevice device () const
- const QPoint & globalPos () const
- int globalX () const
- int globalY () const
- const QPoint & pos () const
- int pressure () const
- QPair<int, int> uniqueId ()
- int x () const
- int xTilt () const
- int y () const
- int yTilt () const

- 3 public functions inherited from QInputEvent
- 2 public functions inherited from QEvent

## Detailed Description

The QTabletEvent class contains parameters that describe a Tablet event.

Tablet Events are generated from a Wacom tablet. Most of the time you will want to deal with events from the tablet as if they were events from a mouse; for example, you would retrieve the cursor position with x(), y(), pos(), globalX(), globalY(), and globalPos(). In some situations you may wish to retrieve the extra information provided by the tablet device driver; for example, you might want to adjust color brightness based on pressure. QTabletEvent allows you to read the pressure(), the xTilt(), and yTilt(), as well as the type of device being used with device() (see TabletDevice).

A tablet event contains a special accept flag that indicates whether the receiver wants the event. You should call QTabletEvent::accept() if you handle the tablet event; otherwise it will be sent to the parent widget.

The QWidget::setEnabled() function can be used to enable or disable mouse and keyboard events for a widget.

The event handler QWidget::tabletEvent() receives all three types of tablet events. Qt will first send a tabletEvent then, if it is not accepted, it will send a mouse event. This allows applications that don't utilize tablets to use a tablet like a mouse, while also enabling those who want to use both tablets and mouses differently.

## Member Type Documentation

### enum QTabletEvent::TabletDevice

This enum defines what type of device is generating the event.

`QTabletEvent::NoDevice` | No device, or an unknown device.
`QTabletEvent::Puck` | A Puck (a device that is similar to a flat mouse with a transparent circle with cross-hairs).
`QTabletEvent::Stylus` | A Stylus (the narrow end of the pen).
`QTabletEvent::Eraser` | An Eraser (the broad end of the pen).

## Member Function Documentation

### QTabletEvent::QTabletEvent ( Type type, const QPoint & position, const QPoint & globalPos, int device, int pressure, int xTilt, int yTilt, const QPair<int, int> & uId )

Construct a tablet event of the given type. The position indicates where the event occurred in the widget; globalPos is the corresponding position in absolute coordinates. The device contains the device type; pressure contains the pressure exerted on the device; xTilt and yTilt contain the device's degree of tilt from the X and Y axes respectively. The uId contains an event ID.

On Irix, globalPos will contain the high-resolution coordinates received from the tablet device driver, instead of from the windowing system.

See also pos(), globalPos(), device(), pressure(), xTilt(), yTilt(), and uniqueId().

### TabletDevice QTabletEvent::device () const

Returns the type of device that generated the event.

This is useful if you want to know which end of a pen was used to draw on the tablet.

See also TabletDevice.

### const QPoint & QTabletEvent::globalPos () const

Returns the global position of the device at the time of the event. This is important on asynchronous windows systems like X11; whenever you move your widgets around in response to mouse events, globalPos() can differ significantly from the current position QCursor::pos().

See also globalX() and globalY().

### int QTabletEvent::globalX () const

Returns the global x position of the mouse pointer at the time of the event.

See also globalY() and globalPos().

### int QTabletEvent::globalY () const

Returns the global y position of the mouse pointer at the time of the event.

See also globalX() and globalPos().

### const QPoint & QTabletEvent::pos () const

Returns the position of the device, relative to the widget that received the event.

If you move widgets around in response to mouse events, use globalPos() instead of this function.

See also x(), y(), and globalPos().

### int QTabletEvent::pressure () const

Returns the pressure that is exerted on the device. This number is a value from 0 (no pressure) to 255 (maximum pressure) inclusive. The pressure is always scaled to be within this range no matter how many pressure levels the underlying hardware supports.

### QPair<int, int> QTabletEvent::uniqueId ()

Returns a unique ID for the current device, making it possible to differentiate between multiple devices being used at the same time on the tablet. The `first` member contains a value for the type, the `second` member contains a physical ID obtained from the device. Each combination of these values is unique.

Note that the `first` value will vary due to different driver implementations on each platform supported by Qt.

It is possible to generate a unique ID for any Wacom device.

### int QTabletEvent::x () const

Returns the x position of the device, relative to the widget that received the event.

See also y() and pos().

### int QTabletEvent::xTilt () const

Returns the angle between the device (a pen, for example) and the perpendicular in the direction of the x axis. Positive values are towards the tablet's physical right. The angle is in the range -60 to +60 degrees.

See also yTilt().

### int QTabletEvent::y () const

Returns the y position of the device, relative to the widget that received the event.

See also x() and pos().

### int QTabletEvent::yTilt () const

Returns the angle between the device (a pen, for example) and the perpendicular in the direction of the y axis. Positive values are towards the bottom of the tablet. The angle is within the range -60 to +60 degrees.

See also xTilt().