Manpage logo

SoQtMouse - The SoQtMouse class is the mouse input device abstraction.

NAME  SYNOPSIS  Public Types  Public Member Functions  Additional Inherited Members  Detailed Description  Member Enumeration Documentation  enum SoQtMouse::Events  Constructor & Destructor Documentation  SoQtMouse::SoQtMouse (int mask = ALL_EVENTS)  SoQtMouse::˜SoQtMouse (void ) [virtual]  Member Function Documentation  void SoQtMouse::enable (QWidget * widget, SoQtEventHandler * handler, void* closure) [virtual]  void SoQtMouse::disable (QWidget * widget, SoQtEventHandler * handler, void* closure) [virtual]  const SoEvent * SoQtMouse::translateEvent (QEvent * event) [virtual]  Author 

NAME

SoQtMouse − The SoQtMouse class is the mouse input device abstraction.

SYNOPSIS

#include <Inventor/Qt/devices/SoQtMouse.h>

Inherits SoQtDevice.

Public Types

enum Events { BUTTON_PRESS = 0x01, BUTTON_RELEASE = 0x02, POINTER_MOTION = 0x04, BUTTON_MOTION = 0x08, ALL_EVENTS = BUTTON_PRESS | BUTTON_RELEASE | POINTER_MOTION | BUTTON_MOTION }

Public Member Functions

SoQtMouse (int eventmask=ALL_EVENTS)
virtual ˜SoQtMouse (void)
virtual void enable (QWidget *widget, SoQtEventHandler *handler, void *closure)
virtual void disable (QWidget *widget, SoQtEventHandler *handler, void *closure)
virtual const SoEvent * translateEvent (QEvent *event)

Public Member Functions inherited from SoQtDevice

virtual ˜SoQtDevice ()
void setWindowSize (const SbVec2s size)
SbVec2s getWindowSize (void) const

Public Member Functions inherited from SoQtObject

virtual SoType getTypeId (void) const =0
SbBool isOfType (SoType type) const

Additional Inherited Members

Static Public Member Functions inherited from SoQtDevice

static void initClasses (void)

Static Public Member Functions inherited from SoQtObject

static void initClass (void)
static SoType getClassTypeId (void)
static void init (void)

Protected Member Functions inherited from SoQtDevice

SoQtDevice (void)
void setEventPosition (SoEvent *event, int x, int y) const
void addEventHandler (QWidget *, SoQtEventHandler *, void *)
void removeEventHandler (QWidget *, SoQtEventHandler *, void *)
void invokeHandlers (QEvent *event)

Static Protected Member Functions inherited from SoQtDevice

static SbVec2s getLastEventPosition (void)

Detailed Description

The SoQtMouse class is the mouse input device abstraction.

The SoQtMouse class is the glue between native mouse handling and mouse interaction in the Inventor scene graph.

All components derived from the SoQtRenderArea have got an SoQtMouse device attached by default.

One important note for application programmers: our mappings to SoMouseButtonEvent::BUTTON2 and SoMouseButtonEvent::BUTTON3 do not match the mappings in SGI’s InventorXt library or TGS’s SoWin library for 3-button mice. They map mouse buttons like this:

left button: SoMouseButtonEvent::BUTTON1

middle button: SoMouseButtonEvent::BUTTON2

right button: SoMouseButtonEvent::BUTTON3

While in this SIM SoQt library the mappings are:

left button: SoMouseButtonEvent::BUTTON1

middle button: SoMouseButtonEvent::BUTTON3

right button: SoMouseButtonEvent::BUTTON2

This is a conscious design decision we’ve made. The reason is that BUTTON2 should be the right mouse button whether you have a 2-button mouse or a 3-button mouse.

Member Enumeration Documentation

enum SoQtMouse::Events

Enumeration over supported mouse events.
Enumerator

BUTTON_PRESS

Maskbit for mouse button press events.

BUTTON_RELEASE

Maskbit for mouse button release events.

POINTER_MOTION

Maskbit for mouse pointer motion events.

BUTTON_MOTION

Maskbit for mouse pointer motion events with one or more mouse buttons pressed.

ALL_EVENTS

Mask which includes all the maskbits in the enum (i.e. use this to signal interest in all kinds of events for the mouse device).

Constructor & Destructor Documentation

SoQtMouse::SoQtMouse (int mask = ALL_EVENTS)

Constructor. The mask argument should contain the set of SoQtMouse::Events one is interested in tracking.

SoQtMouse::˜SoQtMouse (void ) [virtual]

Destructor.

Member Function Documentation

void SoQtMouse::enable (QWidget * widget, SoQtEventHandler * handler, void* closure) [virtual]

This method will enable the device for the widget.

handler is invoked with the closure argument when an event occur in widget.
Implements SoQtDevice.

void SoQtMouse::disable (QWidget * widget, SoQtEventHandler * handler, void* closure) [virtual]

This method will disable the handler for the device.
Implements SoQtDevice.

const SoEvent * SoQtMouse::translateEvent (QEvent * event) [virtual]

Translates a native event from the underlying toolkit into a generic event.

This is then returned in the form of an instance of a subclass of the Inventor API’s SoEvent class, either an SoMouseButtonEvent or an SoLocation2Event, depending on whether the native event is a mouse button press / release, or a mouse cursor movement event.

The mapping of the mouse buttons upon generation of SoMouseButtonEvent events will be done as follows:

left mouse button: SoMouseButtonEvent::BUTTON1

right mouse button: SoMouseButtonEvent::BUTTON2

middle mouse button, if available: SoMouseButtonEvent::BUTTON3

forward motion on a wheel mouse: SoMouseButtonEvent::BUTTON4

backward motion on a wheel mouse: SoMouseButtonEvent::BUTTON5

Note that the rightmost mouse button will always map to SoMouseButtonEvent::BUTTON2, even on a 3-button mouse.
Implements SoQtDevice.

Author

Generated automatically by Doxygen for SoQt from the source code.


Updated 2026-06-01 - jenkler.se | uex.se