SoEvent(3)

πŸ“¦ version 3.1.3, in fedora 43, fedora 44

πŸ’… SoEvent(3) β€” Library Functions Manual ✨

okay so bestie, you're looking at the manual page for SoEvent, and honestly? it's giving foundation. it's the blueprint. every other event in Coin is lowkey standing on its shoulders 🫢


🌸 NAME 🌸

SoEvent β€” the SoEvent class is the base class for all Coin events. like, the base class. the mother of all events. periodt.


πŸŽ€ SYNOPSIS πŸŽ€

#include <Inventor/events/SoEvent.h>

Inherited by SoButtonEvent, SoLocation2Event, and SoMotion3Event. (iconic lineage, no notes πŸ’–)

Public Member Functions πŸ‘‘

SoEvent (void)
virtual ~SoEvent ()
SbBool isOfType (SoType type) const
virtual SoType getTypeId (void) const
void setTime (const SbTime t)
SbTime getTime (void) const
void setPosition (const SbVec2s &p)
const SbVec2s & getPosition (void) const
const SbVec2s getPosition (const SbViewportRegion &vpRgn) const
const SbVec2f getNormalizedPosition (const SbViewportRegion &vpRgn)
    const
void setShiftDown (SbBool isDown)
SbBool wasShiftDown (void) const
void setCtrlDown (SbBool isDown)
SbBool wasCtrlDown (void) const
void setAltDown (SbBool isDown)
SbBool wasAltDown (void) const

Static Public Member Functions ⭐

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

πŸ¦‹ Detailed Description πŸ¦‹

The SoEvent class is the base class for all Coin events. yes, all of them. main character energy fr fr πŸ’…

Coin contains its own set of event classes, independent of the underlying window system. like, Coin said "i don't need your platform-specific drama, i have my own events" 😌

Upon system specific events, a translation is done by the window specific device classes into one of the Coin event object classes listed below. The event is then typically sent by the render area to an SoSceneManager which will apply it to the scenegraph through an SoHandleEventAction. it's a whole relay race, bestie πŸƒβ™€οΈβœ¨

Events may be caught by the user by attaching an SoEventCallback node to the scenegraph, or it can automatically be handled by a dragger or manipulator in the graph. two paths, both slay πŸ’–

πŸ‘€ See also

SoButtonEvent, SoKeyboardEvent, SoLocation2Event, SoMotion3Event

SoMouseButtonEvent, SoSpaceballButtonEvent

SoEventCallback, SoHandleEventAction


πŸŽ€ Constructor & Destructor Documentation πŸŽ€

SoEvent::SoEvent (void )

Constructor, will set all modifiers to "off" state. everything starts chillin', no keys pressed, pure vibes 🌸

SoEvent::~SoEvent () [virtual]

Destructor. say bye bye πŸ‘‹


🌈 Member Function Documentation 🌈

SbBool SoEvent::isOfType (SoType type) const

Returns TRUE if this object either has the same type as the given type parameter, or if type belongs to a superclass of ourselves. so it's like "are you me, or are you my ancestor" πŸ’€

SoType SoEvent::getClassTypeId (void ) [static]

This static method returns the SoType object associated with objects of this class. the ✨ official ID ✨

SoType SoEvent::getTypeId (void ) const [virtual]

Returns the actual type id of an instantiated object. like, what you actually are, not what you're pretending to be 🫢

Reimplemented in SoButtonEvent, SoKeyboardEvent, SoLocation2Event, SoMotion3Event, SoMouseButtonEvent, and SoSpaceballButtonEvent. (the whole squad got their own version πŸ‘‘)

void SoEvent::setTime (const SbTime t)

From a system specific device object, set the time the event occurred. ⏰

See also: getTime()

SbTime SoEvent::getTime (void ) const

Returns the time the event occurred. timestamped, bestie πŸ“Έ

See also: getPosition(), wasShiftDown(), wasCtrlDown(), wasAltDown()

void SoEvent::setPosition (const SbVec2s & p)

From a system specific device object, set the mouse pointer position when the event occurred. πŸ–±οΈ

See also: getPosition(), getNormalizedPosition()

const SbVec2s & SoEvent::getPosition (void ) const

Returns the mouse pointer position when the event occurred. The coordinates are given relative to the window coordinates. so like, window-relative, not viewport-relative, okay? don't mix them up πŸ™ˆ

See also: getNormalizedPosition(), getTime(), wasShiftDown(), wasCtrlDown(), wasAltDown()

const SbVec2s SoEvent::getPosition (const SbViewportRegion & vpRgn) const

Returns the mouse pointer position when the event occurred. The coordinates are given relative to the viewport coordinates. yes bestie there are two getPositions, they're different, that's the whole point πŸ’…

See also: getNormalizedPosition(), getTime(), wasShiftDown(), wasCtrlDown(), wasAltDown()

const SbVec2f SoEvent::getNormalizedPosition (const SbViewportRegion & vpRgn) const

Returns the mouse pointer position when the event occurred. The coordinates are given relative to the viewport coordinates, normalized according to the size of the viewport. so like, 0.0 to 1.0 territory, cute little fractions 🌸

See also: getPosition(), getTime(), wasShiftDown(), wasCtrlDown(), wasAltDown()

void SoEvent::setShiftDown (SbBool isDown)

From a system specific device object, set the state of the Shift key(s) when the event occurred. ⬆️

See also: wasShiftDown(), setCtrlDown(), setAltDown()

SbBool SoEvent::wasShiftDown (void ) const

Returns state of Shift key(s) when the event occurred. was shift held down? yes or no, that's it 🫢

See also: wasCtrlDown(), wasAltDown(), getPosition(), getTime()

void SoEvent::setCtrlDown (SbBool isDown)

From a system specific device object, set the state of the Ctrl key(s) when the event occurred. πŸŽ›οΈ

See also: wasCtrlDown(), setShiftDown(), setAltDown()

SbBool SoEvent::wasCtrlDown (void ) const

Returns state of Ctrl key(s) when the event occurred.

See also: wasShiftDown(), wasAltDown(), getPosition(), getTime()

void SoEvent::setAltDown (SbBool isDown)

From a system specific device object, set the state of the Alt key(s) when the event occurred. 🌟

See also: wasAltDown(), setCtrlDown(), setShiftDown()

SbBool SoEvent::wasAltDown (void ) const

Returns state of Alt key(s) when the event occurred.

See also: wasShiftDown(), wasCtrlDown(), getPosition(), getTime()

void SoEvent::initClass (void ) [static]

Initialize SoEvent and all it's known subclasses (i.e. all subclasses which are part of the standard classes in the Coin library). the whole family gets initialized together, it's a group chat moment πŸ’–

This method is called from SoDB::init(), so it's very unlikely that you will have to call it explicitly. so like, don't worry about it bestie, it's already handled for you 😌


✍️ Author

Generated automatically by Doxygen for Coin from the source code. (not a human, just a robot doing its lil thing πŸ€–βœ¨)


and that's the whole page, bestie!! πŸŽ€ this was Coin, Version 3.1.3, and the page is SoEvent(3) β€” go forth and handle some events, you absolute icon πŸ‘‘πŸ’…πŸ¦‹

πŸ“¦ where this page comes from