Olympe Engine 2.0
2D Game Engine with ECS Architecture
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Olympe::GetBBValuePropertyPanel Class Reference

ImGui sub-panel for editing GetBBValue node's blackboard variable selection. More...

#include <GetBBValuePropertyPanel.h>

+ Collaboration diagram for Olympe::GetBBValuePropertyPanel:

Public Member Functions

 GetBBValuePropertyPanel ()
 Constructs the panel.
 
 ~GetBBValuePropertyPanel ()=default
 
 GetBBValuePropertyPanel (const GetBBValuePropertyPanel &)=delete
 
GetBBValuePropertyPaneloperator= (const GetBBValuePropertyPanel &)=delete
 
void SetNodeName (const std::string &name)
 Sets the node name displayed in the title section.
 
void SetTemplate (const TaskGraphTemplate *tmpl)
 Sets the template reference for blackboard variable lookup.
 
void SetBBKey (const std::string &key)
 Sets the currently selected BB key.
 
const std::string & GetBBKey () const
 Returns the current (possibly modified) BB key.
 
bool IsDirty () const
 Returns true if the BB key has been modified since the last call to ClearDirty().
 
void ClearDirty ()
 Resets the dirty flag.
 
void Render ()
 Renders the panel into the current ImGui context.
 

Private Member Functions

void RenderTitleSection ()
 Renders the title section (node name in blue background).
 
void RenderVariableSelector ()
 Renders the variable dropdown and info.
 
void RenderVariableInfo ()
 Renders variable type and default value information.
 

Private Attributes

std::string m_nodeName
 Node name for display.
 
std::string m_bbKey
 Current BB key selection.
 
const TaskGraphTemplatem_template
 Template reference (not owned)
 
bool m_dirty = false
 Changed since last ClearDirty()
 

Detailed Description

ImGui sub-panel for editing GetBBValue node's blackboard variable selection.

The panel does NOT own the template — it holds a reference. The caller is responsible for persisting changes back to the node definition.

Definition at line 36 of file GetBBValuePropertyPanel.h.

Constructor & Destructor Documentation

◆ GetBBValuePropertyPanel() [1/2]

Olympe::GetBBValuePropertyPanel::GetBBValuePropertyPanel ( )
explicit

Constructs the panel.

Definition at line 16 of file GetBBValuePropertyPanel.cpp.

◆ ~GetBBValuePropertyPanel()

Olympe::GetBBValuePropertyPanel::~GetBBValuePropertyPanel ( )
default

◆ GetBBValuePropertyPanel() [2/2]

Olympe::GetBBValuePropertyPanel::GetBBValuePropertyPanel ( const GetBBValuePropertyPanel )
delete

Member Function Documentation

◆ ClearDirty()

void Olympe::GetBBValuePropertyPanel::ClearDirty ( )
inline

Resets the dirty flag.

Definition at line 83 of file GetBBValuePropertyPanel.h.

References m_dirty.

◆ GetBBKey()

const std::string & Olympe::GetBBValuePropertyPanel::GetBBKey ( ) const

Returns the current (possibly modified) BB key.

Definition at line 40 of file GetBBValuePropertyPanel.cpp.

References m_bbKey.

◆ IsDirty()

bool Olympe::GetBBValuePropertyPanel::IsDirty ( ) const
inline

Returns true if the BB key has been modified since the last call to ClearDirty().

Definition at line 78 of file GetBBValuePropertyPanel.h.

References m_dirty.

◆ operator=()

GetBBValuePropertyPanel & Olympe::GetBBValuePropertyPanel::operator= ( const GetBBValuePropertyPanel )
delete

◆ Render()

void Olympe::GetBBValuePropertyPanel::Render ( )

Renders the panel into the current ImGui context.

Definition at line 49 of file GetBBValuePropertyPanel.cpp.

References RenderTitleSection(), RenderVariableInfo(), and RenderVariableSelector().

+ Here is the call graph for this function:

◆ RenderTitleSection()

void Olympe::GetBBValuePropertyPanel::RenderTitleSection ( )
private

Renders the title section (node name in blue background).

Definition at line 60 of file GetBBValuePropertyPanel.cpp.

References GetComponentTypeID_Static(), and m_nodeName.

Referenced by Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RenderVariableInfo()

void Olympe::GetBBValuePropertyPanel::RenderVariableInfo ( )
private

Renders variable type and default value information.

Definition at line 111 of file GetBBValuePropertyPanel.cpp.

References Olympe::TaskGraphTemplate::Blackboard, Olympe::Bool, Olympe::Float, GetComponentTypeID_Static(), Olympe::Int, m_bbKey, m_template, Olympe::String, and Olympe::Vector.

Referenced by Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RenderVariableSelector()

void Olympe::GetBBValuePropertyPanel::RenderVariableSelector ( )
private

Renders the variable dropdown and info.

Definition at line 67 of file GetBBValuePropertyPanel.cpp.

References GetComponentTypeID_Static(), Olympe::BBVariableRegistry::LoadFromTemplate(), m_bbKey, m_dirty, m_template, and Olympe::VarSpec::name.

Referenced by Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetBBKey()

void Olympe::GetBBValuePropertyPanel::SetBBKey ( const std::string &  key)

Sets the currently selected BB key.

Definition at line 35 of file GetBBValuePropertyPanel.cpp.

References GetComponentTypeID_Static(), and m_bbKey.

+ Here is the call graph for this function:

◆ SetNodeName()

void Olympe::GetBBValuePropertyPanel::SetNodeName ( const std::string &  name)

Sets the node name displayed in the title section.

Definition at line 25 of file GetBBValuePropertyPanel.cpp.

References m_nodeName.

◆ SetTemplate()

void Olympe::GetBBValuePropertyPanel::SetTemplate ( const TaskGraphTemplate tmpl)

Sets the template reference for blackboard variable lookup.

Definition at line 30 of file GetBBValuePropertyPanel.cpp.

References GetComponentTypeID_Static(), and m_template.

+ Here is the call graph for this function:

Member Data Documentation

◆ m_bbKey

std::string Olympe::GetBBValuePropertyPanel::m_bbKey
private

Current BB key selection.

Definition at line 114 of file GetBBValuePropertyPanel.h.

Referenced by GetBBKey(), RenderVariableInfo(), RenderVariableSelector(), and SetBBKey().

◆ m_dirty

bool Olympe::GetBBValuePropertyPanel::m_dirty = false
private

Changed since last ClearDirty()

Definition at line 116 of file GetBBValuePropertyPanel.h.

Referenced by ClearDirty(), IsDirty(), and RenderVariableSelector().

◆ m_nodeName

std::string Olympe::GetBBValuePropertyPanel::m_nodeName
private

Node name for display.

Definition at line 113 of file GetBBValuePropertyPanel.h.

Referenced by RenderTitleSection(), and SetNodeName().

◆ m_template

const TaskGraphTemplate* Olympe::GetBBValuePropertyPanel::m_template
private

Template reference (not owned)

Definition at line 115 of file GetBBValuePropertyPanel.h.

Referenced by RenderVariableInfo(), RenderVariableSelector(), and SetTemplate().


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