diff --git a/pkg/cimgui/c.zig b/pkg/cimgui/c.zig index 19a619634..f9b8ff920 100644 --- a/pkg/cimgui/c.zig +++ b/pkg/cimgui/c.zig @@ -1,24 +1,4 @@ -const c = @cImport({ +pub const c = @cImport({ @cDefine("CIMGUI_DEFINE_ENUMS_AND_STRUCTS", "1"); @cInclude("cimgui.h"); }); - -// Export all of the C API -pub usingnamespace c; - -// OpenGL -pub extern fn ImGui_ImplOpenGL3_Init(?[*:0]const u8) callconv(.C) bool; -pub extern fn ImGui_ImplOpenGL3_Shutdown() callconv(.C) void; -pub extern fn ImGui_ImplOpenGL3_NewFrame() callconv(.C) void; -pub extern fn ImGui_ImplOpenGL3_RenderDrawData(*c.ImDrawData) callconv(.C) void; - -// Metal -pub extern fn ImGui_ImplMetal_Init(*anyopaque) callconv(.C) bool; -pub extern fn ImGui_ImplMetal_Shutdown() callconv(.C) void; -pub extern fn ImGui_ImplMetal_NewFrame(*anyopaque) callconv(.C) void; -pub extern fn ImGui_ImplMetal_RenderDrawData(*c.ImDrawData, *anyopaque, *anyopaque) callconv(.C) void; - -// OSX -pub extern fn ImGui_ImplOSX_Init(*anyopaque) callconv(.C) bool; -pub extern fn ImGui_ImplOSX_Shutdown() callconv(.C) void; -pub extern fn ImGui_ImplOSX_NewFrame(*anyopaque) callconv(.C) void; diff --git a/pkg/cimgui/main.zig b/pkg/cimgui/main.zig index 22183a367..e6e54c357 100644 --- a/pkg/cimgui/main.zig +++ b/pkg/cimgui/main.zig @@ -1,3 +1,20 @@ -pub const c = @import("c.zig"); +pub const c = @import("c.zig").c; + +// OpenGL +pub extern fn ImGui_ImplOpenGL3_Init(?[*:0]const u8) callconv(.C) bool; +pub extern fn ImGui_ImplOpenGL3_Shutdown() callconv(.C) void; +pub extern fn ImGui_ImplOpenGL3_NewFrame() callconv(.C) void; +pub extern fn ImGui_ImplOpenGL3_RenderDrawData(*c.ImDrawData) callconv(.C) void; + +// Metal +pub extern fn ImGui_ImplMetal_Init(*anyopaque) callconv(.C) bool; +pub extern fn ImGui_ImplMetal_Shutdown() callconv(.C) void; +pub extern fn ImGui_ImplMetal_NewFrame(*anyopaque) callconv(.C) void; +pub extern fn ImGui_ImplMetal_RenderDrawData(*c.ImDrawData, *anyopaque, *anyopaque) callconv(.C) void; + +// OSX +pub extern fn ImGui_ImplOSX_Init(*anyopaque) callconv(.C) bool; +pub extern fn ImGui_ImplOSX_Shutdown() callconv(.C) void; +pub extern fn ImGui_ImplOSX_NewFrame(*anyopaque) callconv(.C) void; test {} diff --git a/pkg/spirv-cross/c.zig b/pkg/spirv-cross/c.zig index 42ad77dab..08a999a3b 100644 --- a/pkg/spirv-cross/c.zig +++ b/pkg/spirv-cross/c.zig @@ -1,3 +1,3 @@ -pub usingnamespace @cImport({ +pub const c = @cImport({ @cInclude("spirv_cross_c.h"); }); diff --git a/pkg/spirv-cross/main.zig b/pkg/spirv-cross/main.zig index e66cd7094..1ef5493ba 100644 --- a/pkg/spirv-cross/main.zig +++ b/pkg/spirv-cross/main.zig @@ -1 +1 @@ -pub const c = @import("c.zig"); +pub const c = @import("c.zig").c; diff --git a/src/apprt/embedded.zig b/src/apprt/embedded.zig index efeb2cf6f..d3b2d6f29 100644 --- a/src/apprt/embedded.zig +++ b/src/apprt/embedded.zig @@ -1157,7 +1157,7 @@ pub const Inspector = struct { pub fn deinit(self: Backend) void { switch (self) { - .metal => if (builtin.target.isDarwin()) cimgui.c.ImGui_ImplMetal_Shutdown(), + .metal => if (builtin.target.isDarwin()) cimgui.ImGui_ImplMetal_Shutdown(), } } }; @@ -1203,7 +1203,7 @@ pub const Inspector = struct { self.backend = null; } - if (!cimgui.c.ImGui_ImplMetal_Init(device.value)) { + if (!cimgui.ImGui_ImplMetal_Init(device.value)) { log.warn("failed to initialize metal backend", .{}); return false; } @@ -1229,7 +1229,7 @@ pub const Inspector = struct { // ImGui completes all its state processing. I don't know how to fix // this. for (0..2) |_| { - cimgui.c.ImGui_ImplMetal_NewFrame(desc.value); + cimgui.ImGui_ImplMetal_NewFrame(desc.value); try self.newFrame(); cimgui.c.igNewFrame(); @@ -1251,7 +1251,7 @@ pub const Inspector = struct { .{desc.value}, ); defer encoder.msgSend(void, objc.sel("endEncoding"), .{}); - cimgui.c.ImGui_ImplMetal_RenderDrawData( + cimgui.ImGui_ImplMetal_RenderDrawData( cimgui.c.igGetDrawData(), command_buffer.value, encoder.value,