provide imgui allocator to plugins

This commit is contained in:
Green Sky 2024-05-22 15:14:43 +02:00
parent 013d1fef3b
commit aaa23194c5
No known key found for this signature in database

View File

@ -73,7 +73,19 @@ MainScreen::MainScreen(SDL_Renderer* renderer_, Theme& theme_, std::string save_
// TODO: pm?
// graphics
g_provideInstance("ImGuiContext", ImGui::GetVersion(), "host", ImGui::GetCurrentContext());
g_provideInstance<ImGuiContext>("ImGuiContext", ImGui::GetVersion(), "host", ImGui::GetCurrentContext());
{
ImGuiMemAllocFunc alloc_func = nullptr;
ImGuiMemFreeFunc free_func = nullptr;
void* user_data = nullptr;
ImGui::GetAllocatorFunctions(&alloc_func, &free_func, &user_data);
// function pointers are funky
g_provideInstance("ImGuiMemAllocFunc", ImGui::GetVersion(), "host", reinterpret_cast<void*>(alloc_func));
g_provideInstance("ImGuiMemFreeFunc", ImGui::GetVersion(), "host", reinterpret_cast<void*>(free_func));
g_provideInstance("ImGuiMemUserData", ImGui::GetVersion(), "host", user_data);
}
g_provideInstance<TextureUploaderI>("TextureUploaderI", "host", &sdlrtu);
}