Coin Logo Coin3D is Free Software,
published under the BSD 3-clause license.
https://bitbucket.org/Coin3D/
http://www.kongsberg.com/kogt/
SoQtDevice Class Referenceabstract

The SoQtDevice class is the base class for the translation devices. More...

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

Inheritance diagram for SoQtDevice:
SoQtObject SoQtKeyboard SoQtMouse

Public Member Functions

virtual ~SoQtDevice ()
 
virtual void enable (QWidget *w, SoQtEventHandler *handler, void *closure)=0
 
virtual void disable (QWidget *w, SoQtEventHandler *handler, void *closure)=0
 
virtual const SoEventtranslateEvent (QEvent *event)=0
 
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
 

Static Public Member Functions

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

 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

static SbVec2s getLastEventPosition (void)
 

Detailed Description

The SoQtDevice class is the base class for the translation devices.

The SoQt device classes provide glue functionality for translating native GUI events from the underlying toolkit to Inventor scenegraph SoEvent events.

The device classes are mainly of interest to application programmers when writing extensions for new types of devices, and seldom in other contexts – so they can most often be ignored.

Constructor & Destructor Documentation

◆ ~SoQtDevice()

SoQtDevice::~SoQtDevice ( )
virtual

Public virtual destructor.

◆ SoQtDevice()

SoQtDevice::SoQtDevice ( void  )
protected

Constructor. Protected to only enable invocation from derived device classes.

Member Function Documentation

◆ enable()

void SoQtDevice::enable ( QWidget *  widget,
SoQtEventHandler *  handler,
void *  closure 
)
pure virtual

This method will enable the device for the widget.

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

Implemented in SoQtMouse, and SoQtKeyboard.

◆ disable()

void SoQtDevice::disable ( QWidget *  widget,
SoQtEventHandler *  handler,
void *  closure 
)
pure virtual

This method will disable the handler for the device.

Implemented in SoQtMouse, and SoQtKeyboard.

◆ translateEvent()

const SoEvent * SoQtDevice::translateEvent ( QEvent *  event)
pure virtual

This method translates from native events to Open Inventor SoEvent events.

Implemented in SoQtMouse, and SoQtKeyboard.

◆ setWindowSize()

void SoQtDevice::setWindowSize ( const SbVec2s  size)

This method sets the cached size of the window the device is "attached" to.

◆ getWindowSize()

SbVec2s SoQtDevice::getWindowSize ( void  ) const

This method returns the cached window size.

◆ initClasses()

void SoQtDevice::initClasses ( void  )
static

This function initializes the type system for all the SoQt device classes. It is called indirectly when calling SoQt::init(), so the application programmer doesn't have to bother with it.

◆ setEventPosition()

void SoQtDevice::setEventPosition ( SoEvent event,
int  x,
int  y 
) const
protected

This method fills in the position information of event, translating the coordinates into the correct coordinate system.

◆ getLastEventPosition()

SbVec2s SoQtDevice::getLastEventPosition ( void  )
staticprotected

Returns last event position that was set with SoQtDevice::setEventPosition().

◆ addEventHandler()

void SoQtDevice::addEventHandler ( QWidget *  widget,
SoQtEventHandler *  handler,
void *  closure 
)
protected

Stores an event handler for the widget, which can later be invoked with SoQtDevice::invokeHandlers(). Used by extension device types.

◆ removeEventHandler()

void SoQtDevice::removeEventHandler ( QWidget *  widget,
SoQtEventHandler *  handler,
void *  closure 
)
protected

Remove a handler registered with SoQtDevice::addEventHandler().

◆ invokeHandlers()

void SoQtDevice::invokeHandlers ( QEvent *  event)
protected

Invoke all handlers registered with SoQtDevice::addEventHandler().


The documentation for this class was generated from the following files: