aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2020-11-22 12:34:35 +0100
committerDavid Robillard <d@drobilla.net>2020-11-25 14:18:04 +0100
commit7ce9b578a4433f9606b14291fb3b816aa67999d9 (patch)
tree917fd395aac4708142776b3826900f94e859de53 /src
parent3e9a2e01da169007b6fc16492f812055645f6d5f (diff)
downloadpugl-7ce9b578a4433f9606b14291fb3b816aa67999d9.tar.gz
pugl-7ce9b578a4433f9606b14291fb3b816aa67999d9.tar.bz2
pugl-7ce9b578a4433f9606b14291fb3b816aa67999d9.zip
Move puglEnterContext and puglLeaveContext to GL backends
These only do anything for OpenGL, and it seems unlikely that they will ever be used for anything else. So, move them to the GL headers to remove clutter from the core API, and ensure that they are only used in GL applications that include the appropriate headers and link with a GL backend. Also add missing C++ bindings.
Diffstat (limited to 'src')
-rw-r--r--src/implementation.c12
-rw-r--r--src/mac_gl.m12
-rw-r--r--src/win_gl.c12
-rw-r--r--src/x11_gl.c12
4 files changed, 36 insertions, 12 deletions
diff --git a/src/implementation.c b/src/implementation.c
index 88794f2..35c4c26 100644
--- a/src/implementation.c
+++ b/src/implementation.c
@@ -292,18 +292,6 @@ puglDispatchEvents(PuglWorld* world)
#endif
PuglStatus
-puglEnterContext(PuglView* view)
-{
- return view->backend->enter(view, NULL);
-}
-
-PuglStatus
-puglLeaveContext(PuglView* view)
-{
- return view->backend->leave(view, NULL);
-}
-
-PuglStatus
puglSetEventFunc(PuglView* view, PuglEventFunc eventFunc)
{
view->eventFunc = eventFunc;
diff --git a/src/mac_gl.m b/src/mac_gl.m
index f8847c0..8a48578 100644
--- a/src/mac_gl.m
+++ b/src/mac_gl.m
@@ -189,6 +189,18 @@ puglGetProcAddress(const char *name)
return func;
}
+PuglStatus
+puglEnterContext(PuglView* view)
+{
+ return view->backend->enter(view, NULL);
+}
+
+PuglStatus
+puglLeaveContext(PuglView* view)
+{
+ return view->backend->leave(view, NULL);
+}
+
const PuglBackend*
puglGlBackend(void)
{
diff --git a/src/win_gl.c b/src/win_gl.c
index e46ece8..662baef 100644
--- a/src/win_gl.c
+++ b/src/win_gl.c
@@ -310,6 +310,18 @@ puglGetProcAddress(const char* name)
: (PuglGlFunc)GetProcAddress(GetModuleHandle("opengl32.dll"), name);
}
+PuglStatus
+puglEnterContext(PuglView* view)
+{
+ return view->backend->enter(view, NULL);
+}
+
+PuglStatus
+puglLeaveContext(PuglView* view)
+{
+ return view->backend->leave(view, NULL);
+}
+
const PuglBackend*
puglGlBackend(void)
{
diff --git a/src/x11_gl.c b/src/x11_gl.c
index 34ac7e8..64061d1 100644
--- a/src/x11_gl.c
+++ b/src/x11_gl.c
@@ -209,6 +209,18 @@ puglGetProcAddress(const char* name)
return glXGetProcAddress((const uint8_t*)name);
}
+PuglStatus
+puglEnterContext(PuglView* view)
+{
+ return view->backend->enter(view, NULL);
+}
+
+PuglStatus
+puglLeaveContext(PuglView* view)
+{
+ return view->backend->leave(view, NULL);
+}
+
const PuglBackend*
puglGlBackend(void)
{