Files
Rockgrave/tests/editor_headless/impl.cpp
T
2026-10-25 03:29:04 -03:00

25 lines
1.0 KiB
C++

// No-op raylib / ImGui back-ends + scripted mouse state so the editor's logic can run headless.
#include <cstdarg>
#include <cstdlib>
#include <cstdio>
#include "raylib.h"
#include "imgui.h"
#include "rlgl.h"
void *MemAlloc(unsigned int size) { return calloc(1, size); }
void MemFree(void *p) { free(p); }
void UploadMesh(Mesh *, bool) {}
void UnloadMesh(Mesh m) { MemFree(m.vertices); MemFree(m.texcoords); MemFree(m.normals); MemFree(m.colors); }
bool FileExists(const char *) { return false; }
bool DirectoryExists(const char *) { return false; }
void TraceLog(int, const char *, ...) {}
static ImGuiIO g_io;
bool g_down[3], g_clicked[3], g_released[3];
ImGuiIO &ImGui::GetIO() { return g_io; }
bool ImGui::IsMouseDown(ImGuiMouseButton b) { return g_down[b]; }
bool ImGui::IsMouseClicked(ImGuiMouseButton b, bool) { return g_clicked[b]; }
bool ImGui::IsMouseReleased(ImGuiMouseButton b) { return g_released[b]; }
bool ImGui::IsKeyDown(ImGuiKey) { return false; }
bool ImGui::IsKeyPressed(ImGuiKey, bool) { return false; }