Open Inventor Reference
SoMouseButtonEvent Class Reference

Mouse button press and release events. More...

#include <Inventor/events/SoMouseButtonEvent.h>

Inheritance diagram for SoMouseButtonEvent:
SoButtonEvent SoEvent

Public Types

enum  Button {
  ANY = 0 , BUTTON1 = 1 , BUTTON2 = 2 , BUTTON3 = 3 ,
  LEFT_BUTTON = BUTTON1 , MIDDLE_BUTTON = BUTTON2 , RIGHT_BUTTON = BUTTON3
}
 
- Public Types inherited from SoButtonEvent
enum  State { UP , DOWN , UNKNOWN }
 
- Public Types inherited from SoEvent
enum  MouseButtonsMask {
  NO_MOUSEBUTTON_MASK = 0 , LEFT_MOUSEBUTTON_MASK = 1 , MIDDLE_MOUSEBUTTON_MASK = 2 , RIGHT_MOUSEBUTTON_MASK = 4 ,
  ALL_MOUSEBUTTONS_MASK = LEFT_MOUSEBUTTON_MASK + MIDDLE_MOUSEBUTTON_MASK + RIGHT_MOUSEBUTTON_MASK
}
 This describes the bit mask values of setButtonMask and getButtonMask. More...
 

Public Member Functions

 SoMouseButtonEvent ()
 Constructor.
 
virtual ~SoMouseButtonEvent ()
 
void setButton (SoMouseButtonEvent::Button b)
 set/get which button generated the event, either SO_MOUSE_BUTTON1, SO_MOUSE_BUTTON2, or SO_MOUSE_BUTTON3
 
SoMouseButtonEvent::Button getButton () const
 
void setIsDoubleClick (bool b)
 set if the button press is a double click; MEVIS Inventor only
 
bool isDoubleClick () const
 get if the button press is a double click; MEVIS Inventor only
 
- Public Member Functions inherited from SoButtonEvent
 SoButtonEvent ()
 Constructor.
 
virtual ~SoButtonEvent ()
 
void setState (SoButtonEvent::State s)
 get state of the button
 
SoButtonEvent::State getState () const
 
- Public Member Functions inherited from SoEvent
 SoEvent ()
 Constructor and destructor.
 
virtual ~SoEvent ()
 Constructor and destructor.
 
virtual SoType getTypeId () const
 Return the type id for this event instance.
 
bool isOfType (SoType type) const
 This returns TRUE if the event is an instance of or derived from an event of the passed type.
 
void setTime (SbTime t)
 Set the time at which the event occurred.
 
SbTime getTime () const
 Get the time at which the event occurred.
 
void setPosition (const SbVec2s &p)
 Set the window pixel location of the cursor when the event occurred.
 
const SbVec2sgetPosition () const
 Get position in pixel coodinates.
 
const SbVec2sgetPosition (const SbViewportRegion &vpRgn) const
 Get position relative to the specified viewport bounds.
 
const SbVec2fgetNormalizedPosition (const SbViewportRegion &vpRgn) const
 Get the normalized location of the cursor when the event occurred, relative to the specified viewport region.
 
void setShiftDown (bool isDown)
 Set whether the modifier keys were down when the event occurred.
 
void setCtrlDown (bool isDown)
 Set whether the modifier keys were down when the event occurred.
 
void setAltDown (bool isDown)
 Set whether the modifier keys were down when the event occurred.
 
bool wasShiftDown () const
 Get whether the modifier keys were down when the event occurred.
 
bool wasCtrlDown () const
 Get whether the modifier keys were down when the event occurred.
 
bool wasAltDown () const
 Get whether the modifier keys were down when the event occurred.
 
void setMouseButtonMask (int mask)
 Get which mouse buttons are currently pressed (as bit mask)
 
int getMouseButtonMask () const
 Set which mouse buttons are currently pressed.
 

Static Public Member Functions

static bool isButtonPressEvent (const SoEvent *e, SoMouseButtonEvent::Button whichButton)
 convenience routines to see if an SoEvent is a press or release of the passed mouse button
 
static bool isButtonReleaseEvent (const SoEvent *e, SoMouseButtonEvent::Button whichButton)
 
static void initClass ()
 
- Static Public Member Functions inherited from SoButtonEvent
static void initClass ()
 
- Static Public Member Functions inherited from SoEvent
static SoType getClassTypeId ()
 Return the type id for the SoEvent class.
 
static void initClass ()
 Initializes base event class.
 
static void initClasses ()
 Initialize ALL Inventor event classes.
 

Detailed Description

SoMouseButtonEvent represents mouse button press and release events in the Inventor event model.

See Also
SoEvent, SoButtonEvent, SoKeyboardEvent, SoLocation2Event, SoMotion3Event, SoSpaceballButtonEvent, SoHandleEventAction, SoEventCallback, SoSelection, SoInteraction

Definition at line 87 of file SoMouseButtonEvent.h.

Member Enumeration Documentation

◆ Button

Enumerator
ANY 
BUTTON1 
BUTTON2 
BUTTON3 
LEFT_BUTTON 
MIDDLE_BUTTON 
RIGHT_BUTTON 

Definition at line 92 of file SoMouseButtonEvent.h.

Constructor & Destructor Documentation

◆ SoMouseButtonEvent()

SoMouseButtonEvent::SoMouseButtonEvent ( )

◆ ~SoMouseButtonEvent()

virtual SoMouseButtonEvent::~SoMouseButtonEvent ( )
virtual

Member Function Documentation

◆ getButton()

SoMouseButtonEvent::Button SoMouseButtonEvent::getButton ( ) const
inline

Definition at line 112 of file SoMouseButtonEvent.h.

◆ initClass()

static void SoMouseButtonEvent::initClass ( )
static

◆ isButtonPressEvent()

static bool SoMouseButtonEvent::isButtonPressEvent ( const SoEvent e,
SoMouseButtonEvent::Button  whichButton 
)
static

◆ isButtonReleaseEvent()

static bool SoMouseButtonEvent::isButtonReleaseEvent ( const SoEvent e,
SoMouseButtonEvent::Button  whichButton 
)
static

◆ isDoubleClick()

bool SoMouseButtonEvent::isDoubleClick ( ) const
inline

Definition at line 118 of file SoMouseButtonEvent.h.

◆ setButton()

void SoMouseButtonEvent::setButton ( SoMouseButtonEvent::Button  b)
inline
Note
the mouseButtonMask property includes the mouse button for the DOWN event, and excludes the mouse button for the UP event.

Definition at line 111 of file SoMouseButtonEvent.h.

◆ setIsDoubleClick()

void SoMouseButtonEvent::setIsDoubleClick ( bool  b)
inline

Definition at line 115 of file SoMouseButtonEvent.h.


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