7#include "BlueprintEditor.h"
8#include "../third_party/imgui/imgui.h"
24 std::cout <<
"[ValidationPanel] Initialized\n";
29 std::cout <<
"[ValidationPanel] Shutdown\n";
34 ImGui::Begin(
"Validation");
41 if (ImGui::Button(
"Validate Now"))
85 std::cout <<
"[ValidationPanel] Found " <<
m_Errors.size() <<
" validation errors\n";
118 ImGui::TextColored(
ImVec4(0.0f, 1.0f, 0.0f, 1.0f),
"-> No validation errors");
122 ImGui::Text(
"Validation Summary:");
156 ImGui::BeginChild(
"ErrorList",
ImVec2(0, 0),
true);
168 ImGui::PopStyleColor();
176 if (!
error.nodeName.empty())
181 if (ImGui::Selectable(
label.c_str(), isSelected))
188 if (ImGui::IsItemHovered())
190 ImGui::BeginTooltip();
191 if (
error.nodeId >= 0)
193 ImGui::Text(
"Node ID: %d",
error.nodeId);
195 if (!
error.category.empty())
197 ImGui::Text(
"Category: %s",
error.category.c_str());
201 ImGui::TextWrapped(
"%s",
error.message.c_str());
211 if (
error.nodeId >= 0)
215 std::cout <<
"[ValidationPanel] Clicked on error for node " <<
error.nodeId << std::endl;
ComponentTypeID GetComponentTypeID_Static()
int GetErrorCount(const std::vector< ValidationError > &errors, ErrorSeverity severity) const
static ImVec4 SeverityToColor(ErrorSeverity severity)
static const char * SeverityToString(ErrorSeverity severity)
std::vector< ValidationError > ValidateGraph(const NodeGraph *graph)
NodeGraph * GetActiveGraph()
static NodeGraphManager & Get()
void ValidateActiveGraph()
BlueprintValidator m_Validator
float m_LastValidationTime
std::vector< ValidationError > m_Errors
void RenderErrorSummary()
bool HasCriticalErrors() const
void OnErrorClicked(const ValidationError &error)