From b89dcfd9e4a4d35d530d527eab962655f9719153 Mon Sep 17 00:00:00 2001 From: peterino2 Date: Sat, 7 Jun 2025 14:35:18 -0700 Subject: [PATCH] adding a null backend for nfd --- lib/nfd/build.zig | 16 ++++++++++------ lib/nfd/src/nfd_null.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+), 6 deletions(-) create mode 100644 lib/nfd/src/nfd_null.c diff --git a/lib/nfd/build.zig b/lib/nfd/build.zig index cd50f02..7517ff2 100644 --- a/lib/nfd/build.zig +++ b/lib/nfd/build.zig @@ -31,15 +31,19 @@ pub fn build(b: *std.Build) void { }); mod.linkSystemLibrary("ole32", .{}); } else if (target.result.os.tag == .linux) { + // mod.addCSourceFile(.{ + // .file = b.path("src/nfd_gtk.c"), + // .flags = &.{}, + // }); mod.addCSourceFile(.{ - .file = b.path("src/nfd_gtk.c"), + .file = b.path("src/nfd_null.c"), .flags = &.{}, }); - mod.linkSystemLibrary("gdk-3", .{}); - mod.linkSystemLibrary("atk-1.0", .{}); - mod.linkSystemLibrary("gtk-3", .{}); - mod.linkSystemLibrary("glib-2.0", .{}); - mod.linkSystemLibrary("gobject-2.0", .{}); + // mod.linkSystemLibrary("gdk-3", .{}); + // mod.linkSystemLibrary("atk-1.0", .{}); + // mod.linkSystemLibrary("gtk-3", .{}); + // mod.linkSystemLibrary("glib-2.0", .{}); + // mod.linkSystemLibrary("gobject-2.0", .{}); } const p2dep = b.dependency("p2", .{ .target = target, .optimize = optimize }); diff --git a/lib/nfd/src/nfd_null.c b/lib/nfd/src/nfd_null.c new file mode 100644 index 0000000..db2b0d9 --- /dev/null +++ b/lib/nfd/src/nfd_null.c @@ -0,0 +1,42 @@ +/* + Native File Dialog + + http://www.frogtoss.com/labs +*/ + +#include +#include +#include +#include "nfd.h" +#include "nfd_common.h" + + +const char INIT_FAIL_MSG[] = "gtk_init_check failed to initilaize GTK+"; + +nfdresult_t NFD_OpenDialog( const nfdchar_t *filterList, + const nfdchar_t *defaultPath, + nfdchar_t **outPath ) +{ + return NFD_CANCEL; +} + + +nfdresult_t NFD_OpenDialogMultiple( const nfdchar_t *filterList, + const nfdchar_t *defaultPath, + nfdpathset_t *outPaths ) +{ + return NFD_CANCEL; +} + +nfdresult_t NFD_SaveDialog( const nfdchar_t *filterList, + const nfdchar_t *defaultPath, + nfdchar_t **outPath ) +{ + return NFD_CANCEL; +} + +nfdresult_t NFD_PickFolder(const nfdchar_t *defaultPath, + nfdchar_t **outPath) +{ + return NFD_CANCEL; +}