diff options
author | David Robillard <d@drobilla.net> | 2019-11-03 15:06:28 +0100 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2019-11-03 21:03:18 +0100 |
commit | d53ce364a7c7c0d9b0d1fa87077df2dff69688e9 (patch) | |
tree | 79df347a766952a7888765d26a9bc867c38d7c84 | |
parent | b848d137909fa71e5ede2d46fa2fcb5f1509ecba (diff) |
Add puglGetNativeWorld()
-rw-r--r-- | pugl/detail/mac.m | 6 | ||||
-rw-r--r-- | pugl/detail/win.c | 6 | ||||
-rw-r--r-- | pugl/detail/x11.c | 6 | ||||
-rw-r--r-- | pugl/pugl.h | 10 |
4 files changed, 28 insertions, 0 deletions
diff --git a/pugl/detail/mac.m b/pugl/detail/mac.m index e8a5d57..f530c2e 100644 --- a/pugl/detail/mac.m +++ b/pugl/detail/mac.m @@ -695,6 +695,12 @@ puglFreeWorldInternals(PuglWorld* world) free(world->impl); } +void* +puglGetNativeWorld(PuglWorld* world) +{ + return NULL; +} + PuglInternals* puglInitViewInternals(void) { diff --git a/pugl/detail/win.c b/pugl/detail/win.c index e1deaf1..ee7eb01 100644 --- a/pugl/detail/win.c +++ b/pugl/detail/win.c @@ -130,6 +130,12 @@ puglInitWorldInternals(void) return impl; } +void* +puglGetNativeWorld(PuglWorld* PUGL_UNUSED(world)) +{ + return GetModuleHandle(NULL); +} + PuglInternals* puglInitViewInternals(void) { diff --git a/pugl/detail/x11.c b/pugl/detail/x11.c index fd47db3..e576b49 100644 --- a/pugl/detail/x11.c +++ b/pugl/detail/x11.c @@ -101,6 +101,12 @@ puglInitWorldInternals(void) return impl; } +void* +puglGetNativeWorld(PuglWorld* world) +{ + return world->impl->display; +} + PuglInternals* puglInitViewInternals(void) { diff --git a/pugl/pugl.h b/pugl/pugl.h index 70d6f42..1344410 100644 --- a/pugl/pugl.h +++ b/pugl/pugl.h @@ -442,6 +442,16 @@ PUGL_API void puglFreeWorld(PuglWorld* world); /** + Return a pointer to the native handle of the world. + + On X11, this returns a pointer to the Display. + On OSX, this returns NULL. + On Windows, this returns a handle to the calling process module. +*/ +PUGL_API void* +puglGetNativeWorld(PuglWorld* world); + +/** Set the class name of the application. This is a stable identifier for the application, used as the window |