|
VirtualBox Main API
|
Notification when the guest mouse pointer shape has changed. More...
Public Attributes | |
| readonly attribute boolean | visible |
| Flag whether the pointer is visible. | |
| readonly attribute boolean | alpha |
| Flag whether the pointer has an alpha channel. | |
| readonly attribute unsigned long | xhot |
| The pointer hot spot X coordinate. | |
| readonly attribute unsigned long | yhot |
| The pointer hot spot Y coordinate. | |
| readonly attribute unsigned long | width |
| Width of the pointer shape in pixels. | |
| readonly attribute unsigned long | height |
| Height of the pointer shape in pixels. | |
| readonly attribute octet[] | shape |
| Shape buffer arrays. | |
Public Attributes inherited from IEvent | |
| readonly attribute VBoxEventType | type |
| Event type. | |
| readonly attribute IEventSource | source |
| Source of this event. | |
| readonly attribute boolean | waitable |
| If we can wait for this event being processed. | |
Additional Inherited Members | |
Public Member Functions inherited from IEvent | |
| void | setProcessed () |
| Internal method called by the system when all listeners of a particular event have called IEventSource::eventProcessed. | |
| void | waitProcessed (in long timeout, [retval] out boolean result) |
| Wait until time outs, or this event is processed. | |
Notification when the guest mouse pointer shape has changed.
The new shape data is given.
{A6DCF6E8-416B-4181-8C4A-45EC95177AEF} | readonly attribute boolean IMousePointerShapeChangedEvent::visible |
Flag whether the pointer is visible.
| readonly attribute boolean IMousePointerShapeChangedEvent::alpha |
Flag whether the pointer has an alpha channel.
| readonly attribute unsigned long IMousePointerShapeChangedEvent::xhot |
The pointer hot spot X coordinate.
| readonly attribute unsigned long IMousePointerShapeChangedEvent::yhot |
The pointer hot spot Y coordinate.
| readonly attribute unsigned long IMousePointerShapeChangedEvent::width |
Width of the pointer shape in pixels.
| readonly attribute unsigned long IMousePointerShapeChangedEvent::height |
Height of the pointer shape in pixels.
| readonly attribute octet [] IMousePointerShapeChangedEvent::shape |
Shape buffer arrays.
The shape buffer contains a 1-bpp (bits per pixel) AND mask followed by a 32-bpp XOR (color) mask.
For pointers without alpha channel the XOR mask pixels are 32-bit values: (lsb)BGR0(msb). For pointers with alpha channel the XOR mask consists of (lsb)BGRA(msb) 32-bit values.
An AND mask is used for pointers with alpha channel, so if the callback does not support alpha, the pointer could be displayed as a normal color pointer.
The AND mask is a 1-bpp bitmap with byte aligned scanlines. The size of the AND mask therefore is cbAnd = (width + 7) / 8 * height. The padding bits at the end of each scanline are undefined.
The XOR mask follows the AND mask on the next 4-byte aligned offset: uint8_t *pXor = pAnd + (cbAnd + 3) & ~3. Bytes in the gap between the AND and the XOR mask are undefined. The XOR mask scanlines have no gap between them and the size of the XOR mask is: cXor = width * 4 * height.