Isle
Loading...
Searching...
No Matches
LegoControlManagerNotificationParam Class Reference

[AI] Notification parameter for the LegoControlManager, used to propagate information about control events (like clicks) to listeners. More...

#include <legocontrolmanager.h>

Inheritance diagram for LegoControlManagerNotificationParam:
Collaboration diagram for LegoControlManagerNotificationParam:

Public Member Functions

 LegoControlManagerNotificationParam ()
 [AI] Default constructor initializing members to their default invalid states. More...
 
const char * GetClickedAtom () const
 [AI] Returns the atom string associated with the control event. More...
 
void SetClickedObjectId (MxS32 p_clickedObjectId)
 [AI] Sets the object ID of the clicked control/presenter. More...
 
void SetClickedAtom (const char *p_clickedAtom)
 [AI] Sets the atom string that identifies the clicked control. More...
 
void SetUnknown0x28 (MxS16 p_unk0x28)
 [AI] Sets the value of the unknown field at offset 0x28. More...
 
- Public Member Functions inherited from LegoEventNotificationParam
MxNotificationParamClone () const override
 Creates a deep copy of this notification parameter object. More...
 
 LegoEventNotificationParam ()
 Default constructor. More...
 
 LegoEventNotificationParam (NotificationId p_type, MxCore *p_sender, MxU8 p_modifier, MxS32 p_x, MxS32 p_y, MxU8 p_key)
 Constructor with all parameter fields for event reporting. More...
 
LegoROIGetROI ()
 Returns the ROI (3D Object) associated with this event, if any. More...
 
MxU8 GetModifier ()
 Returns modifier bitmask for this event (mouse/keyboard state). More...
 
MxU8 GetKey () const
 Returns the keycode for this event, or 0 if not used. More...
 
MxS32 GetX () const
 Returns X (horizontal) coordinate for the event, usually screen-relative in pixels. More...
 
MxS32 GetY () const
 Returns Y (vertical) coordinate for the event, usually screen-relative in pixels. More...
 
void SetROI (LegoROI *p_roi)
 Sets the ROI reference (object involved in the event). More...
 
void SetModifier (MxU8 p_modifier)
 Sets the modifier state bitmask for the event. More...
 
void SetKey (MxU8 p_key)
 Sets the keycode for the event. More...
 
void SetX (MxS32 p_x)
 Sets the X (horizontal) coordinate for the event. More...
 
void SetY (MxS32 p_y)
 Sets the Y (vertical) coordinate for the event. More...
 
- Public Member Functions inherited from MxNotificationParam
 MxNotificationParam ()
 [AI] Constructs a default notification parameter with type c_notificationType0 and no sender. More...
 
 MxNotificationParam (NotificationId p_type, MxCore *p_sender)
 [AI] Constructs a notification parameter with a specific type and sender. More...
 
virtual MxNotificationParamClone () const
 [AI] Creates a copy of this notification parameter object on the heap. More...
 
NotificationId GetNotification () const
 [AI] Retrieves the current notification type of this parameter. More...
 
MxCoreGetSender () const
 [AI] Retrieves the sender pointer associated with this notification. More...
 
void SetNotification (NotificationId p_type)
 [AI] Sets the notification type for this parameter object. More...
 
void SetSender (MxCore *p_sender)
 [AI] Sets the sender pointer for this notification parameter. More...
 
- Public Member Functions inherited from MxParam
virtual ~MxParam ()
 [AI] Virtual destructor for safe polymorphic deletion of derived parameter objects. More...
 

Public Attributes

MxS32 m_clickedObjectId
 [AI] Object ID of the clicked control/presenter (or -1 if not set). [AI] More...
 
const char * m_clickedAtom
 [AI] Atom string for the clicked control (unique string identifier; may be NULL). [AI] More...
 
MxS16 m_unk0x28
 [AI] Undetermined; settable via SetUnknown0x28. [AI] More...
 

Additional Inherited Members

- Public Types inherited from LegoEventNotificationParam
enum  { c_lButtonState = 1 , c_rButtonState = 2 , c_modKey1 = 4 , c_modKey2 = 8 }
 Modifier and mouse button state bit-flag values for user input. More...
 
- Protected Attributes inherited from LegoEventNotificationParam
MxU8 m_modifier
 Bitmask of button/modifier state at the time of the event. More...
 
MxS32 m_x
 X position (horizontal pixel coordinate) for event, typically relative to window/screen. More...
 
MxS32 m_y
 Y position (vertical pixel coordinate) for event, typically relative to window/screen. More...
 
MxU8 m_key
 Key code of event, if any (else 0). More...
 
LegoROIm_roi
 Reference to involved world object (ROI), if any (else NULL). More...
 
- Protected Attributes inherited from MxNotificationParam
NotificationId m_type
 [AI] Type of notification/event carried by this object (see NotificationId). More...
 
MxCorem_sender
 [AI] Pointer to the MxCore instance that sent or originated this notification. More...
 

Detailed Description

[AI] Notification parameter for the LegoControlManager, used to propagate information about control events (like clicks) to listeners.

[AI] This class extends LegoEventNotificationParam and adds additional info about the control object involved (such as the object ID and a related 'atom' string). Used by LegoControlManager to notify interested parties about control-related actions, e.g. UI button clicks. The class also provides setters to customize notification details before broadcasting. [AI]

Definition at line 15 of file legocontrolmanager.h.

Constructor & Destructor Documentation

◆ LegoControlManagerNotificationParam()

LegoControlManagerNotificationParam::LegoControlManagerNotificationParam ( )
inline

[AI] Default constructor initializing members to their default invalid states.

[AI] Sets m_clickedObjectId to -1 to indicate no object, and m_clickedAtom to NULL. [AI]

Definition at line 21 of file legocontrolmanager.h.

Member Function Documentation

◆ GetClickedAtom()

const char * LegoControlManagerNotificationParam::GetClickedAtom ( ) const
inline

[AI] Returns the atom string associated with the control event.

Returns
[AI] Pointer to the atom string of the clicked control (may be NULL if unset).

Definition at line 31 of file legocontrolmanager.h.

◆ SetClickedAtom()

void LegoControlManagerNotificationParam::SetClickedAtom ( const char *  p_clickedAtom)
inline

[AI] Sets the atom string that identifies the clicked control.

Parameters
p_clickedAtom[AI] The null-terminated string to set as the atom.

Definition at line 43 of file legocontrolmanager.h.

◆ SetClickedObjectId()

void LegoControlManagerNotificationParam::SetClickedObjectId ( MxS32  p_clickedObjectId)
inline

[AI] Sets the object ID of the clicked control/presenter.

Parameters
p_clickedObjectId[AI] The object ID to set.

Definition at line 37 of file legocontrolmanager.h.

◆ SetUnknown0x28()

void LegoControlManagerNotificationParam::SetUnknown0x28 ( MxS16  p_unk0x28)
inline

[AI] Sets the value of the unknown field at offset 0x28.

Parameters
p_unk0x28[AI] Value to set.

[AI] The purpose of this field is undetermined at this time.

Definition at line 50 of file legocontrolmanager.h.

Member Data Documentation

◆ m_clickedAtom

const char* LegoControlManagerNotificationParam::m_clickedAtom

[AI] Atom string for the clicked control (unique string identifier; may be NULL). [AI]

Definition at line 53 of file legocontrolmanager.h.

◆ m_clickedObjectId

MxS32 LegoControlManagerNotificationParam::m_clickedObjectId

[AI] Object ID of the clicked control/presenter (or -1 if not set). [AI]

Definition at line 52 of file legocontrolmanager.h.

◆ m_unk0x28

MxS16 LegoControlManagerNotificationParam::m_unk0x28

[AI] Undetermined; settable via SetUnknown0x28. [AI]

Definition at line 54 of file legocontrolmanager.h.


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