7#include "../../third_party/imgui/imgui.h"
8#include "../../BlueprintEditor/BBVariableRegistry.h"
63 ImGui::Text(
"GetBBValue: %s",
m_nodeName.c_str());
64 ImGui::PopStyleColor();
71 ImGui::TextDisabled(
"(no template)");
77 const std::vector<VarSpec>&
vars =
bbReg.GetAllVariables();
79 ImGui::Text(
"Select Variable:");
83 ImGui::SetNextItemWidth(200.0f);
87 for (
size_t i = 0;
i <
vars.size(); ++
i)
93 if (ImGui::Selectable(
v.displayLabel.c_str(), selected))
103 ImGui::SetItemDefaultFocus();
117 ImGui::Text(
"Variable Info:");
134 default:
typeStr =
"Unknown";
break;
136 ImGui::Text(
"Type: %s",
typeStr.c_str());
139 if (!
entry.Default.IsNone())
141 ImGui::Text(
"Default: ");
151 const ::Vector
v =
entry.Default.AsVector();
152 ImGui::Text(
"(%.2f, %.2f, %.2f)",
v.x,
v.y,
v.z);
155 default: ImGui::Text(
"(N/A)");
break;
ComponentTypeID GetComponentTypeID_Static()
UI Properties panel for a GetBBValue node – variable selector with preview.
Non-singleton registry populated from the active TaskGraphTemplate.
void LoadFromTemplate(const TaskGraphTemplate &tmpl)
Rebuilds the registry from the blackboard entries of a template.
void RenderTitleSection()
Renders the title section (node name in blue background).
void SetBBKey(const std::string &key)
Sets the currently selected BB key.
std::string m_bbKey
Current BB key selection.
void SetNodeName(const std::string &name)
Sets the node name displayed in the title section.
void RenderVariableSelector()
Renders the variable dropdown and info.
const TaskGraphTemplate * m_template
Template reference (not owned)
void RenderVariableInfo()
Renders variable type and default value information.
bool m_dirty
Changed since last ClearDirty()
GetBBValuePropertyPanel()
Constructs the panel.
void Render()
Renders the panel into the current ImGui context.
const std::string & GetBBKey() const
Returns the current (possibly modified) BB key.
std::string m_nodeName
Node name for display.
void SetTemplate(const TaskGraphTemplate *tmpl)
Sets the template reference for blackboard variable lookup.
Immutable, shareable task graph asset.
std::vector< BlackboardEntry > Blackboard
Local blackboard declared in this graph.
< Provides AssetID and INVALID_ASSET_ID
@ Int
32-bit signed integer
@ Float
Single-precision float.
@ Vector
3-component vector (Vector from vector.h)
Metadata for a single blackboard variable entry.
std::string name
Variable key (e.g. "health", "target")