Files
UnleashedRecomp/UnleashedRecomp/gpu/imgui/imgui_common.cpp
2025-02-09 14:25:06 +03:00

23 lines
631 B
C++

#include "imgui_common.h"
static std::vector<std::unique_ptr<ImGuiCallbackData>> g_callbackData;
static uint32_t g_callbackDataIndex = 0;
ImGuiCallbackData* AddImGuiCallback(ImGuiCallback callback)
{
if (g_callbackDataIndex >= g_callbackData.size())
g_callbackData.emplace_back(std::make_unique<ImGuiCallbackData>());
auto& callbackData = g_callbackData[g_callbackDataIndex];
++g_callbackDataIndex;
ImGui::GetBackgroundDrawList()->AddCallback(reinterpret_cast<ImDrawCallback>(callback), callbackData.get());
return callbackData.get();
}
void ResetImGuiCallbacks()
{
g_callbackDataIndex = 0;
}