' ' GtkGlExt definitions based on GtkGLExt 1.2.0 - their license below. ' ' Ported to BaCon INCLUDE file by Peter van Eerten - GPL. ' ' Version 1.0: Initial release ' ' ' GtkGLExt - OpenGL Extension to GTK+ ' 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. ' TRAP LOCAL CATCH GOTO gtkglext_handle_error IF INSTR(OS$, "Darwin") THEN gtkglext_LIB$="/System/Library/Frameworks/OpenGL.framework/Libraries/libgtkglext.dylib" ELSE gtkglext_LIB$ = "libgtkglext-x11-1.0.so" END IF gtkglext_seq = -1 LABEL gtkglext_import_retry INCR gtkglext_seq gtkglext_retry = FALSE IMPORT "gtk_gl_init(int*,void*)" FROM gtkglext_LIB$ TYPE void IF gtkglext_retry THEN GOTO gtkglext_import_retry GOTO gtkglext_continue LABEL gtkglext_handle_error IF gtkglext_seq IS 0 THEN gtkglext_LIB$ = "libgtkglext-x11-1.0.so.0" ELSE gtkglext_LIB$ = CONCAT$(LEFT$(gtkglext_LIB$, INSTRREV(gtkglext_LIB$, ".")), STR$(gtkglext_seq)) IF gtkglext_seq < 10 THEN gtkglext_retry = TRUE ELSE PRINT "No GtkGlExt library found!" END END IF RESUME LABEL gtkglext_continue CONST GDK_GL_MODE_RGB = 0 CONST GDK_GL_MODE_RGBA = 0 CONST GDK_GL_MODE_INDEX = 1 << 0 CONST GDK_GL_MODE_SINGLE = 0 CONST GDK_GL_MODE_DOUBLE = 1 << 1 CONST GDK_GL_MODE_STEREO = 1 << 2 CONST GDK_GL_MODE_ALPHA = 1 << 3 CONST GDK_GL_MODE_DEPTH = 1 << 4 CONST GDK_GL_MODE_STENCIL = 1 << 5 CONST GDK_GL_MODE_ACCUM = 1 << 6 CONST GDK_GL_MODE_MULTISAMPLE = 1 << 7 CONST GDK_GL_USE_GL = 1 CONST GDK_GL_BUFFER_SIZE = 2 CONST GDK_GL_LEVEL = 3 CONST GDK_GL_RGBA = 4 CONST GDK_GL_DOUBLEBUFFER = 5 CONST GDK_GL_STEREO = 6 CONST GDK_GL_AUX_BUFFERS = 7 CONST GDK_GL_RED_SIZE = 8 CONST GDK_GL_GREEN_SIZE = 9 CONST GDK_GL_BLUE_SIZE = 10 CONST GDK_GL_ALPHA_SIZE = 11 CONST GDK_GL_DEPTH_SIZE = 12 CONST GDK_GL_STENCIL_SIZE = 13 CONST GDK_GL_ACCUM_RED_SIZE = 14 CONST GDK_GL_ACCUM_GREEN_SIZE = 15 CONST GDK_GL_ACCUM_BLUE_SIZE = 16 CONST GDK_GL_ACCUM_ALPHA_SIZE = 17 CONST GDK_GL_CONFIG_CAVEAT = 0x20 CONST GDK_GL_X_VISUAL_TYPE = 0x22 CONST GDK_GL_TRANSPARENT_TYPE = 0x23 CONST GDK_GL_TRANSPARENT_INDEX_VALUE = 0x24 CONST GDK_GL_TRANSPARENT_RED_VALUE = 0x25 CONST GDK_GL_TRANSPARENT_GREEN_VALUE = 0x26 CONST GDK_GL_TRANSPARENT_BLUE_VALUE = 0x27 CONST GDK_GL_TRANSPARENT_ALPHA_VALUE = 0x28 CONST GDK_GL_DRAWABLE_TYPE = 0x8010 CONST GDK_GL_RENDER_TYPE = 0x8011 CONST GDK_GL_X_RENDERABLE = 0x8012 CONST GDK_GL_FBCONFIG_ID = 0x8013 CONST GDK_GL_MAX_PBUFFER_WIDTH = 0x8016 CONST GDK_GL_MAX_PBUFFER_HEIGHT = 0x8017 CONST GDK_GL_MAX_PBUFFER_PIXELS = 0x8018 CONST GDK_GL_VISUAL_ID = 0x800B CONST GDK_GL_SCREEN = 0x800C CONST GDK_GL_SAMPLE_BUFFERS = 100000 CONST GDK_GL_SAMPLES = 100001 CONST GDK_GL_CONFIG_CAVEAT_DONT_CARE = 0xFFFFFFFF CONST GDK_GL_CONFIG_CAVEAT_NONE = 0x8000 CONST GDK_GL_SLOW_CONFIG = 0x8001 CONST GDK_GL_NON_CONFORMANT_CONFIG = 0x800D CONST GDK_GL_VISUAL_TYPE_DONT_CARE = 0xFFFFFFFF CONST GDK_GL_TRUE_COLOR = 0x8002 CONST GDK_GL_DIRECT_COLOR = 0x8003 CONST GDK_GL_PSEUDO_COLOR = 0x8004 CONST GDK_GL_STATIC_COLOR = 0x8005 CONST GDK_GL_GRAY_SCALE = 0x8006 CONST GDK_GL_STATIC_GRAY = 0x8007 CONST GDK_GL_TRANSPARENT_NONE = 0x8000 CONST GDK_GL_TRANSPARENT_RGB = 0x8008 CONST GDK_GL_TRANSPARENT_INDEX = 0x8009 CONST GDK_GL_WINDOW_BIT = 1 << 0 CONST GDK_GL_PIXMAP_BIT = 1 << 1 CONST GDK_GL_PBUFFER_BIT = 1 << 2 CONST GDK_GL_RGBA_BIT = 1 << 0 CONST GDK_GL_COLOR_INDEX_BIT = 1 << 1 CONST GDK_GL_FRONT_LEFT_BUFFER_BIT = 1 << 0 CONST GDK_GL_FRONT_RIGHT_BUFFER_BIT = 1 << 1 CONST GDK_GL_BACK_LEFT_BUFFER_BIT = 1 << 2 CONST GDK_GL_BACK_RIGHT_BUFFER_BIT = 1 << 3 CONST GDK_GL_AUX_BUFFERS_BIT = 1 << 4 CONST GDK_GL_DEPTH_BUFFER_BIT = 1 << 5 CONST GDK_GL_STENCIL_BUFFER_BIT = 1 << 6 CONST GDK_GL_ACCUM_BUFFER_BIT = 1 << 7 CONST GDK_GL_BAD_SCREEN = 1 CONST GDK_GL_BAD_ATTRIBUTE = 2 CONST GDK_GL_NO_EXTENSION = 3 CONST GDK_GL_BAD_VISUAL = 4 CONST GDK_GL_BAD_CONTEXT = 5 CONST GDK_GL_BAD_VALUE = 6 CONST GDK_GL_BAD_ENUM = 7 CONST GDK_GL_RGBA_TYPE = 0x8014 CONST GDK_GL_COLOR_INDEX_TYPE = 0x8015 CONST GDK_GL_PRESERVED_CONTENTS = 0x801B CONST GDK_GL_LARGEST_PBUFFER = 0x801C CONST GDK_GL_WIDTH = 0x801D CONST GDK_GL_HEIGHT = 0x801E CONST GDK_GL_EVENT_MASK = 0x801F CONST GDK_GL_PBUFFER_PRESERVED_CONTENTS = 0x801B CONST GDK_GL_PBUFFER_LARGEST_PBUFFER = 0x801C CONST GDK_GL_PBUFFER_HEIGHT = 0x8040 CONST GDK_GL_PBUFFER_WIDTH = 0x8041 CONST GDK_GL_PBUFFER_CLOBBER_MASK = 1 << 27 CONST GDK_GL_DAMAGED = 0x8020 CONST GDK_GL_SAVED = 0x8021 CONST GDK_GL_WINDOW = 0x8022 CONST GDK_GL_PBUFFER = 0x8023 IMPORT "gdk_gl_init(int*,void*)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_init_check(int*,void*)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_parse_args(int*,void*)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_query_extension(void)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_query_extension_for_display(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_query_version(int*,int*)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_query_version_for_display(long,int*,int*)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_query_gl_extension(char*)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_get_proc_address(char*)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_config_new(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_config_new_for_screen(long,long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_config_new_by_mode(int)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_config_new_by_mode_for_screen(long,int)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_config_get_screen(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_config_get_attrib(long,int,int*)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_config_get_colormap(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_config_get_visual(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_config_get_depth(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_config_get_layer_plane(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_config_get_n_aux_buffers(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_config_get_n_sample_buffers(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_config_is_rgba(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_config_is_double_buffered(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_config_is_stereo(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_config_has_alpha(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_config_has_depth_buffer(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_config_has_stencil_buffer(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_config_has_accum_buffer(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_context_new(long,long,int,int)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_context_destroy(long)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_context_copy(long,long,long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_context_get_gl_drawable(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_context_get_gl_config(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_context_get_share_list(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_context_is_direct(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_context_get_render_type(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_context_get_current(void)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_drawable_make_current(long,long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_drawable_is_double_buffered(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_drawable_swap_buffers(long)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_drawable_wait_gl(long)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_drawable_wait_gdk(long)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_drawable_gl_begin(long,long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_gl_drawable_gl_end(long)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_drawable_get_gl_config(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_drawable_get_size(long,int*,int*)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_drawable_get_current(void)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_pixmap_new(long,long,long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_pixmap_destroy(long)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_pixmap_get_pixmap(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_pixmap_set_gl_capability(long,long,long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_pixmap_unset_gl_capability(long)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_pixmap_is_gl_capable(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_pixmap_get_gl_pixmap(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_window_new(long,long,long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_window_destroy(long)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_window_get_window(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_window_set_gl_capability(long,long,long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_window_unset_gl_capability(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_window_is_gl_capable(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_window_get_gl_window(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_font_use_pango_font(long,int,int,int)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_font_use_pango_font_for_display(long,long,int,int,int)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_gl_draw_cube(int,double)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_draw_sphere(int,double,int,int)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_draw_cone(int,double,double,int,int)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_draw_torus(int,double,double,int,int)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_draw_tetrahedron(int)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_draw_octahedron(int)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_draw_dodecahedron(int)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_draw_icosahedron(int)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_gl_draw_teapot(int,double)" FROM gtkglext_LIB$ TYPE void IMPORT "gdk_x11_gl_query_glx_extension(long,char*)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_x11_gl_config_new_from_visualid(int)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_x11_gl_config_new_from_visualid_for_screen(long,int,long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_x11_gl_config_get_xdisplay(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_x11_gl_config_get_screen_number(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_x11_gl_config_get_xvinfo(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_x11_gl_config_is_mesa_glx(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_x11_gl_context_foreign_new(long,long,int)" FROM gtkglext_LIB$ TYPE long IMPORT "gdk_x11_gl_context_get_glxcontext(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_x11_gl_pixmap_get_glxpixmap(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gdk_x11_gl_window_get_glxwindow(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gtk_gl_init_check(int*,void*)" FROM gtkglext_LIB$ TYPE int IMPORT "gtk_gl_parse_args(int*,void*)" FROM gtkglext_LIB$ TYPE int IMPORT "gtk_widget_set_gl_capability(long,long,long,int,int)" FROM gtkglext_LIB$ TYPE int IMPORT "gtk_widget_is_gl_capable(long)" FROM gtkglext_LIB$ TYPE int IMPORT "gtk_widget_get_gl_config(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gtk_widget_create_gl_context(long,long,int,int)" FROM gtkglext_LIB$ TYPE long IMPORT "gtk_widget_get_gl_context(long)" FROM gtkglext_LIB$ TYPE long IMPORT "gtk_widget_get_gl_window(long)" FROM gtkglext_LIB$ TYPE long TRAP SYSTEM CATCH RESET