OpenWalnut  1.3.1
Public Types | Public Member Functions | Private Attributes | List of all members
WPickInfo Class Reference

Encapsulates info for pick action. More...

#include <WPickInfo.h>

Public Types

enum  modifierKey {
  NONE, SHIFT, STRG, ALT,
  WIN
}
 Different types of modifier keys. More...
enum  WMouseButton {
  NOMOUSE, MOUSE_LEFT, MOUSE_RIGHT, MOUSE_MIDDLE,
  MOUSE4, MOUSE5
}
 Different types of mouse buttons. More...

Public Member Functions

 WPickInfo (std::string name, std::string viewerName, WPosition pickPosition, std::pair< float, float > pixelCoords, modifierKey modKey, WMouseButton mButton=WPickInfo::MOUSE_LEFT, WVector3d pickNormal=WVector3d(), int32_t wheelValue=0)
 Creates an object with the needed information.
 WPickInfo ()
 Creates an object with the empty name, zero position and no modkey.
modifierKey getModifierKey () const
 Get the modifier key associated with the pick.
WMouseButton getMouseButton () const
 Get the mouse button associated with the pick.
void setModifierKey (const modifierKey &modKey)
 Set the modifier key associated with the pick.
void setMouseButton (const WMouseButton &mButton)
 Set the modifier key associated with the pick.
std::string getName () const
 Get name of picked object.
std::string getViewerName () const
 Get name of the viewer.
WPosition getPickPosition () const
 Get position where object was hit.
WVector3d getPickNormal () const
 Get normal at position where object was hit.
WVector2d getPickPixel () const
 Returns the picked pixel coordinates in screen-space.
int32_t getScrollWheel () const
 Returns an integer denoting the wheel movement.
bool operator== (WPickInfo rhs) const
 Tests two pick infos for equality.
bool operator!= (WPickInfo rhs) const
 Tests two pick infos for inequality.

Private Attributes

std::string m_name
 name of picked object.
std::string m_viewerName
 name of the viewer
WPosition m_pickPosition
 position where object was hit.
std::pair< float, float > m_pixelCoords
 Pixel coordinates of the mouse.
modifierKey m_modKey
 modifier key associated with the pick
WMouseButton m_mouseButton
 which mouse button was used for the pick
WVector3d m_pickNormal
 normal at position where object was hit.
int32_t m_scrollValue
 the scroll wheel value.

Detailed Description

Encapsulates info for pick action.

Definition at line 40 of file WPickInfo.h.

Member Enumeration Documentation

Different types of modifier keys.

Definition at line 46 of file WPickInfo.h.

Different types of mouse buttons.

Definition at line 58 of file WPickInfo.h.

Constructor & Destructor Documentation

WPickInfo::WPickInfo ( std::string  name,
std::string  viewerName,
WPosition  pickPosition,
std::pair< float, float >  pixelCoords,
modifierKey  modKey,
WMouseButton  mButton = WPickInfo::MOUSE_LEFT,
WVector3d  pickNormal = WVector3d(),
int32_t  wheelValue = 0 
)
inline

Creates an object with the needed information.

Parameters
namename of picked object
viewerNamename of the viewer
pickPositionposition where object was hit
pixelCoordspixel coordinates of the mouse
modKeyrelevant modifier key pressed during the pick
mButtonmouse button that initiated the pick
pickNormalnormal at position where object was hit. (0,0,0) means not set.
wheelValuethe value of the scroll wheel

Definition at line 192 of file WPickInfo.h.

WPickInfo::WPickInfo ( )
inline

Creates an object with the empty name, zero position and no modkey.

Definition at line 211 of file WPickInfo.h.

Member Function Documentation

WPickInfo::modifierKey WPickInfo::getModifierKey ( ) const
inline

Get the modifier key associated with the pick.

Returns
the mod key

Definition at line 222 of file WPickInfo.h.

References m_modKey.

Referenced by WPickHandler::pick(), WROIBox::updateGFX(), and WROISphere::updateGFX().

WPickInfo::WMouseButton WPickInfo::getMouseButton ( ) const
inline

Get the mouse button associated with the pick.

Returns
the mouse button

Definition at line 232 of file WPickInfo.h.

References m_mouseButton.

std::string WPickInfo::getName ( ) const
inline

Get name of picked object.

Returns
object name

Definition at line 242 of file WPickInfo.h.

References m_name.

Referenced by WPickHandler::pick(), WROIBox::updateGFX(), and WROISphere::updateGFX().

WVector3d WPickInfo::getPickNormal ( ) const
inline

Get normal at position where object was hit.

Returns
pick normal

Definition at line 257 of file WPickInfo.h.

References m_pickNormal.

Referenced by WPickHandler::pick(), and WROIBox::updateGFX().

WVector2d WPickInfo::getPickPixel ( ) const
inline

Returns the picked pixel coordinates in screen-space.

Returns
the coordinates

Definition at line 274 of file WPickInfo.h.

References m_pixelCoords.

Referenced by WROIBox::updateGFX(), and WROISphere::updateGFX().

WPosition WPickInfo::getPickPosition ( ) const
inline

Get position where object was hit.

Returns
the pick position

Definition at line 252 of file WPickInfo.h.

References m_pickPosition.

Referenced by WPickHandler::pick().

int32_t WPickInfo::getScrollWheel ( ) const
inline

Returns an integer denoting the wheel movement.

If the value gets smaller, the wheel scrolled down.

Returns
the value.

Definition at line 282 of file WPickInfo.h.

References m_scrollValue.

Referenced by WROIBox::updateGFX().

std::string WPickInfo::getViewerName ( ) const
inline

Get name of the viewer.

Returns
viewer name

Definition at line 247 of file WPickInfo.h.

References m_viewerName.

bool WPickInfo::operator!= ( WPickInfo  rhs) const
inline

Tests two pick infos for inequality.

Parameters
rhsright hand side of comparison
Returns
true if not equal

Definition at line 269 of file WPickInfo.h.

bool WPickInfo::operator== ( WPickInfo  rhs) const
inline

Tests two pick infos for equality.

Parameters
rhsright hand side of comparison
Returns
true if equal

Definition at line 262 of file WPickInfo.h.

References m_modKey, m_name, and m_pickPosition.

void WPickInfo::setModifierKey ( const modifierKey modKey)
inline

Set the modifier key associated with the pick.

Parameters
modKeynew modifier key

Definition at line 227 of file WPickInfo.h.

References m_modKey.

Referenced by WPickHandler::updatePickInfoModifierKeys().

void WPickInfo::setMouseButton ( const WMouseButton mButton)
inline

Set the modifier key associated with the pick.

Parameters
mButtonnew mouse button

Definition at line 237 of file WPickInfo.h.

References m_mouseButton.

Member Data Documentation

modifierKey WPickInfo::m_modKey
private

modifier key associated with the pick

Definition at line 186 of file WPickInfo.h.

Referenced by getModifierKey(), operator==(), and setModifierKey().

WMouseButton WPickInfo::m_mouseButton
private

which mouse button was used for the pick

Definition at line 187 of file WPickInfo.h.

Referenced by getMouseButton(), and setMouseButton().

std::string WPickInfo::m_name
private

name of picked object.

Definition at line 182 of file WPickInfo.h.

Referenced by getName(), and operator==().

WVector3d WPickInfo::m_pickNormal
private

normal at position where object was hit.

Definition at line 188 of file WPickInfo.h.

Referenced by getPickNormal().

WPosition WPickInfo::m_pickPosition
private

position where object was hit.

Definition at line 184 of file WPickInfo.h.

Referenced by getPickPosition(), and operator==().

std::pair< float, float > WPickInfo::m_pixelCoords
private

Pixel coordinates of the mouse.

Definition at line 185 of file WPickInfo.h.

Referenced by getPickPixel().

int32_t WPickInfo::m_scrollValue
private

the scroll wheel value.

Definition at line 189 of file WPickInfo.h.

Referenced by getScrollWheel().

std::string WPickInfo::m_viewerName
private

name of the viewer

Definition at line 183 of file WPickInfo.h.

Referenced by getViewerName().


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