summaryrefslogtreecommitdiff
path: root/plugins/gtkui/gtkglext-gtk2/gdk/win32/gdkglquery-win32.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/gtkui/gtkglext-gtk2/gdk/win32/gdkglquery-win32.c')
-rw-r--r--plugins/gtkui/gtkglext-gtk2/gdk/win32/gdkglquery-win32.c252
1 files changed, 0 insertions, 252 deletions
diff --git a/plugins/gtkui/gtkglext-gtk2/gdk/win32/gdkglquery-win32.c b/plugins/gtkui/gtkglext-gtk2/gdk/win32/gdkglquery-win32.c
deleted file mode 100644
index 97e4e63a..00000000
--- a/plugins/gtkui/gtkglext-gtk2/gdk/win32/gdkglquery-win32.c
+++ /dev/null
@@ -1,252 +0,0 @@
-/* GdkGLExt - OpenGL Extension to GDK
- * Copyright (C) 2002-2004 Naofumi Yasufuku
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- */
-
-#include <string.h>
-
-#include "gdkglwin32.h"
-#include "gdkglprivate-win32.h"
-#include "gdkglquery.h"
-
-#ifdef GDKGLEXT_MULTIHEAD_SUPPORT
-#include <gdk/gdkdisplay.h>
-#endif /* GDKGLEXT_MULTIHEAD_SUPPORT */
-
-gboolean
-gdk_gl_query_extension (void)
-{
- return TRUE;
-
-#if 0
- DWORD version = GetVersion ();
- DWORD major = (DWORD) (LOBYTE (LOWORD (version)));
-
- if (version < 0x80000000) /* Windows NT/2000/XP */
- {
- if (major >= 3)
- return TRUE;
- }
- else /* Windows 95/98/Me */
- {
- if (major >= 4)
- return TRUE;
- }
-
- return FALSE;
-#endif
-}
-
-#ifdef GDKGLEXT_MULTIHEAD_SUPPORT
-
-gboolean
-gdk_gl_query_extension_for_display (GdkDisplay *display)
-{
- g_return_val_if_fail (display == gdk_display_get_default (), FALSE);
-
- return TRUE;
-
-#if 0
- DWORD version = GetVersion ();
- DWORD major = (DWORD) (LOBYTE (LOWORD (version)));
-
- if (version < 0x80000000) /* Windows NT/2000/XP */
- {
- if (major >= 3)
- return TRUE;
- }
- else /* Windows 95/98/Me */
- {
- if (major >= 4)
- return TRUE;
- }
-
- return FALSE;
-#endif
-}
-
-#endif /* GDKGLEXT_MULTIHEAD_SUPPORT */
-
-gboolean
-gdk_gl_query_version (int *major,
- int *minor)
-{
- DWORD version = GetVersion ();
-
- /* return Windows version. */
- *major = (int) (LOBYTE (LOWORD (version)));
- *minor = (int) (HIBYTE (LOWORD (version)));
-
- return TRUE;
-}
-
-#ifdef GDKGLEXT_MULTIHEAD_SUPPORT
-
-gboolean
-gdk_gl_query_version_for_display (GdkDisplay *display,
- int *major,
- int *minor)
-{
- DWORD version;
-
- g_return_val_if_fail (display == gdk_display_get_default (), FALSE);
-
- version = GetVersion ();
-
- /* return Windows version. */
- *major = (int) (LOBYTE (LOWORD (version)));
- *minor = (int) (HIBYTE (LOWORD (version)));
-
- return TRUE;
-}
-
-#endif /* GDKGLEXT_MULTIHEAD_SUPPORT */
-
-gboolean
-gdk_win32_gl_query_wgl_extension (GdkGLConfig *glconfig,
- const char *extension)
-{
- typedef const char * (WINAPI * __wglGetExtensionsStringARBProc) (HDC);
- typedef const char * (WINAPI * __wglGetExtensionsStringEXTProc) (void);
- __wglGetExtensionsStringARBProc wgl_get_extensions_string_arb;
- __wglGetExtensionsStringEXTProc wgl_get_extensions_string_ext;
-
- static const char *extensions = NULL;
- const char *start;
- char *where, *terminator;
- HDC hdc;
-
- /* Extension names should not have spaces. */
- where = strchr (extension, ' ');
- if (where || *extension == '\0')
- return FALSE;
-
- if (extensions == NULL)
- {
- /* Try wglGetExtensionsStringARB. */
-
- wgl_get_extensions_string_arb =
- (__wglGetExtensionsStringARBProc) gdk_gl_get_proc_address ("wglGetExtensionsStringARB");
-
- if (wgl_get_extensions_string_arb)
- {
- hdc = GetDC (NULL);
- if (hdc == NULL)
- {
- g_warning ("cannot get DC");
- }
- else
- {
- extensions = wgl_get_extensions_string_arb (hdc);
- ReleaseDC (NULL, hdc);
- }
- }
-
- if (extensions == NULL)
- {
- /* Try wglGetExtensionsStringEXT. */
-
- wgl_get_extensions_string_ext =
- (__wglGetExtensionsStringEXTProc) gdk_gl_get_proc_address ("wglGetExtensionsStringEXT");
-
- if (wgl_get_extensions_string_ext)
- extensions = wgl_get_extensions_string_ext ();
- }
-
- if (extensions == NULL)
- return FALSE;
- }
-
- /* It takes a bit of care to be fool-proof about parsing
- the WGL extensions string. Don't be fooled by
- sub-strings, etc. */
- start = extensions;
- for (;;)
- {
- where = strstr (start, extension);
- if (where == NULL)
- break;
-
- terminator = where + strlen (extension);
-
- if (where == start || *(where - 1) == ' ')
- if (*terminator == ' ' || *terminator == '\0')
- {
- GDK_GL_NOTE (MISC, g_message (" - %s - supported", extension));
- return TRUE;
- }
-
- start = terminator;
- }
-
- GDK_GL_NOTE (MISC, g_message (" - %s - not supported", extension));
-
- return FALSE;
-}
-
-GdkGLProc
-gdk_gl_get_proc_address (const char *proc_name)
-{
- GdkGLProc proc_address = NULL;
- HMODULE hmodule;
-
- GDK_GL_NOTE_FUNC ();
-
- if (strncmp ("glu", proc_name, 3) != 0)
- {
- /* Try wglGetProcAddress () */
-
- proc_address = (GdkGLProc) wglGetProcAddress (proc_name);
-
- GDK_GL_NOTE (IMPL, g_message (" ** wglGetProcAddress () - %s",
- proc_address ? "succeeded" : "failed"));
-
- if (proc_address != NULL)
- return proc_address;
-
- /* Try GetProcAddress () */
-
- /* opengl32.dll */
-
- GDK_GL_NOTE (MISC, g_message (" - Get opengl32.dll module handle"));
-
- hmodule = GetModuleHandle ("opengl32.dll");
- if (hmodule == NULL)
- g_warning ("Cannot get opengl32.dll module handle");
- else
- proc_address = (GdkGLProc) GetProcAddress (hmodule, proc_name);
-
- GDK_GL_NOTE (IMPL, g_message (" ** GetProcAddress () - %s",
- proc_address ? "succeeded" : "failed"));
- }
- else
- {
- /* glu32.dll */
-
- GDK_GL_NOTE (MISC, g_message (" - Get glu32.dll module handle"));
-
- hmodule = GetModuleHandle ("glu32.dll");
- if (hmodule == NULL)
- g_warning ("Cannot get glu32.dll module handle");
- else
- proc_address = (GdkGLProc) GetProcAddress (hmodule, proc_name);
-
- GDK_GL_NOTE (IMPL, g_message (" ** GetProcAddress () - %s",
- proc_address ? "succeeded" : "failed"));
- }
-
- return proc_address;
-}