I sent you a partial port of the v3 header.
Code: Select all
; ;/*************************************************************************
; * GLFW - An OpenGL library
; * API version: 3.0
; * WWW: http://www.glfw.org/
; *------------------------------------------------------------------------
; * Copyright (c) 2002-2006 Marcus Geelnard
; * Copyright (c) 2006-2010 Camilla Berglund <elmindreda@elmindreda.org>
; *
; * This software is provided 'as-is', without any express Or implied
; * warranty. In no event will the authors be held liable For any damages
; * arising from the use of this software.
; *
; * Permission is granted To anyone To use this software For any purpose,
; * including commercial applications, And To alter it And redistribute it
; * freely, subject To the following restrictions:
; *
; * 1. The origin of this software must Not be misrepresented; you must not
; * claim that you wrote the original software. If you use this software
; * in a product, an acknowledgment in the product documentation would
; * be appreciated but is Not required.
; *
; * 2. Altered source versions must be plainly marked As such, And must Not
; * be misrepresented As being the original software.
; *
; * 3. This notice may Not be removed Or altered from any source
; * distribution.
; *
; *************************************************************************/
; ;/*************************************************************************
; * GLFW version
; *************************************************************************/
#GLFW_VERSION_MAJOR = 3
#GLFW_VERSION_MINOR = 0
#GLFW_VERSION_REVISION =0
; ;/*************************************************************************
; * Input handling definitions
; *************************************************************************/
;;/* Key And button state/action definitions */
#GLFW_RELEASE = 0
#GLFW_PRESS = 1
; ;/* Keyboard raw key codes.
; * These key codes are inspired by the USB HID Usage Tables v1.12 (p. 53-60),
; * but re-arranged To Map To 7-bit ASCII For printable keys (function keys are
; * put in the 256+ range).
; * The naming of the key codes follow these rules:
; * - The US keyboard layout is used.
; * - Names of printable alpha-numeric characters are used (e.g. "A", "R",
; * "3", etc).
; * - For non-alphanumeric characters, Unicode:ish names are used (e.g.
; * "COMMA", "LEFT_SQUARE_BRACKET", etc). Note that some names do Not
; * correspond To the Unicode standard (usually For brevity).
; * - Keys that lack a clear US mapping are named "WORLD_x".
; * - For non-printable keys, custom names are used (e.g. "F4",
; * "BACKSPACE", etc).
; */
;
; ;/* Printable keys */
#GLFW_KEY_SPACE = 32
#GLFW_KEY_APOSTROPHE = 39 ;' ;/* ' */
#GLFW_KEY_COMMA = 44 ;' ;/* , */
#GLFW_KEY_MINUS = 45 ;' ;/* - */
#GLFW_KEY_PERIOD = 46 ;' ;/* . */
#GLFW_KEY_SLASH = 47 ;';/* / */
#GLFW_KEY_0 = 48
#GLFW_KEY_1 = 49
#GLFW_KEY_2 = 50
#GLFW_KEY_3 = 51
#GLFW_KEY_4 = 52
#GLFW_KEY_5 = 53
#GLFW_KEY_6 = 54
#GLFW_KEY_7 = 55
#GLFW_KEY_8 = 56
#GLFW_KEY_9 = 57
#GLFW_KEY_SEMICOLON = 59 ;;/* ; */
#GLFW_KEY_EQUAL = 61 ;;/* = */
#GLFW_KEY_A = 65
#GLFW_KEY_B = 66
#GLFW_KEY_C = 67
#GLFW_KEY_D = 68
#GLFW_KEY_E = 69
#GLFW_KEY_F = 70
#GLFW_KEY_G = 71
#GLFW_KEY_H = 72
#GLFW_KEY_I = 73
#GLFW_KEY_J = 74
#GLFW_KEY_K = 75
#GLFW_KEY_L = 76
#GLFW_KEY_M = 77
#GLFW_KEY_N = 78
#GLFW_KEY_O = 79
#GLFW_KEY_P = 80
#GLFW_KEY_Q = 81
#GLFW_KEY_R = 82
#GLFW_KEY_S = 83
#GLFW_KEY_T = 84
#GLFW_KEY_U = 85
#GLFW_KEY_V = 86
#GLFW_KEY_W = 87
#GLFW_KEY_X = 88
#GLFW_KEY_Y = 89
#GLFW_KEY_Z = 90
#GLFW_KEY_LEFT_BRACKET = 91 ;;/* [ */
#GLFW_KEY_BACKSLASH = 92 ;;/* \ */
#GLFW_KEY_RIGHT_BRACKET = 93 ;;/* ] */
#GLFW_KEY_GRAVE_ACCENT = 96 ;;/* ` */
#GLFW_KEY_WORLD_1 = 161 ;;/* non-US #1 */
#GLFW_KEY_WORLD_2 = 162 ;;/* non-US #2 */
;;/* Function keys */
#GLFW_KEY_ESCAPE = 256
#GLFW_KEY_ENTER = 257
#GLFW_KEY_TAB = 258
#GLFW_KEY_BACKSPACE = 259
#GLFW_KEY_INSERT = 260
#GLFW_KEY_DELETE = 261
#GLFW_KEY_RIGHT = 262
#GLFW_KEY_LEFT = 263
#GLFW_KEY_DOWN = 264
#GLFW_KEY_UP = 265
#GLFW_KEY_PAGE_UP = 266
#GLFW_KEY_PAGE_DOWN= 267
#GLFW_KEY_HOME = 268
#GLFW_KEY_END = 269
#GLFW_KEY_CAPS_LOCK = 280
#GLFW_KEY_SCROLL_LOCK = 281
#GLFW_KEY_NUM_LOCK = 282
#GLFW_KEY_PRINT_SCREEN = 283
#GLFW_KEY_PAUSE = 284
#GLFW_KEY_F1 = 290
#GLFW_KEY_F2 = 291
#GLFW_KEY_F3 = 292
#GLFW_KEY_F4 = 293
#GLFW_KEY_F5 = 294
#GLFW_KEY_F6 = 295
#GLFW_KEY_F7 = 296
#GLFW_KEY_F8 = 297
#GLFW_KEY_F9 = 298
#GLFW_KEY_F10 = 299
#GLFW_KEY_F11 = 300
#GLFW_KEY_F12 = 301
#GLFW_KEY_F13 = 302
#GLFW_KEY_F14 = 303
#GLFW_KEY_F15 = 304
#GLFW_KEY_F16 = 305
#GLFW_KEY_F17 = 306
#GLFW_KEY_F18 = 307
#GLFW_KEY_F19 = 308
#GLFW_KEY_F20 = 309
#GLFW_KEY_F21 = 310
#GLFW_KEY_F22 = 311
#GLFW_KEY_F23 = 312
#GLFW_KEY_F24 = 313
#GLFW_KEY_F25 = 314
#GLFW_KEY_KP_0 = 320
#GLFW_KEY_KP_1 = 321
#GLFW_KEY_KP_2 = 322
#GLFW_KEY_KP_3 = 323
#GLFW_KEY_KP_4 = 324
#GLFW_KEY_KP_5 = 325
#GLFW_KEY_KP_6 = 326
#GLFW_KEY_KP_7 = 327
#GLFW_KEY_KP_8 = 328
#GLFW_KEY_KP_9 = 329
#GLFW_KEY_KP_DECIMAL = 330
#GLFW_KEY_KP_DIVIDE = 331
#GLFW_KEY_KP_MULTIPLY = 332
#GLFW_KEY_KP_SUBTRACT = 333
#GLFW_KEY_KP_ADD = 334
#GLFW_KEY_KP_ENTER = 335
#GLFW_KEY_KP_EQUAL = 336
#GLFW_KEY_LEFT_SHIFT = 340
#GLFW_KEY_LEFT_CONTROL = 341
#GLFW_KEY_LEFT_ALT = 342
#GLFW_KEY_LEFT_SUPER = 343
#GLFW_KEY_RIGHT_SHIFT = 344
#GLFW_KEY_RIGHT_CONTROL = 345
#GLFW_KEY_RIGHT_ALT = 346
#GLFW_KEY_RIGHT_SUPER = 347
#GLFW_KEY_MENU = 348
#GLFW_KEY_LAST = #GLFW_KEY_MENU
;;/* GLFW 2.x key name aliases (deprecated) */
#GLFW_KEY_ESC = #GLFW_KEY_ESCAPE
#GLFW_KEY_DEL = #GLFW_KEY_DELETE
#GLFW_KEY_PAGEUP = #GLFW_KEY_PAGE_UP
#GLFW_KEY_PAGEDOWN = #GLFW_KEY_PAGE_DOWN
#GLFW_KEY_KP_NUM_LOCK = #GLFW_KEY_NUM_LOCK
#GLFW_KEY_LCTRL = #GLFW_KEY_LEFT_CONTROL
#GLFW_KEY_LSHIFT = #GLFW_KEY_LEFT_SHIFT
#GLFW_KEY_LALT = #GLFW_KEY_LEFT_ALT
#GLFW_KEY_LSUPER = #GLFW_KEY_LEFT_SUPER
#GLFW_KEY_RCTRL = #GLFW_KEY_RIGHT_CONTROL
#GLFW_KEY_RSHIFT = #GLFW_KEY_RIGHT_SHIFT
#GLFW_KEY_RALT = #GLFW_KEY_RIGHT_ALT
#GLFW_KEY_RSUPER = #GLFW_KEY_RIGHT_SUPER
;/* Mouse button definitions */
#GLFW_MOUSE_BUTTON_1 = 0
#GLFW_MOUSE_BUTTON_2 = 1
#GLFW_MOUSE_BUTTON_3 = 2
#GLFW_MOUSE_BUTTON_4 = 3
#GLFW_MOUSE_BUTTON_5 = 4
#GLFW_MOUSE_BUTTON_6 = 5
#GLFW_MOUSE_BUTTON_7 = 6
#GLFW_MOUSE_BUTTON_8 = 7
#GLFW_MOUSE_BUTTON_LAST = #GLFW_MOUSE_BUTTON_8
;/* Mouse button aliases */
#GLFW_MOUSE_BUTTON_LEFT = #GLFW_MOUSE_BUTTON_1
#GLFW_MOUSE_BUTTON_RIGHT = #GLFW_MOUSE_BUTTON_2
#GLFW_MOUSE_BUTTON_MIDDLE = #GLFW_MOUSE_BUTTON_3
;/* Joystick identifiers */
#GLFW_JOYSTICK_1 = 0
#GLFW_JOYSTICK_2 = 1
#GLFW_JOYSTICK_3 = 2
#GLFW_JOYSTICK_4 = 3
#GLFW_JOYSTICK_5 = 4
#GLFW_JOYSTICK_6 = 5
#GLFW_JOYSTICK_7 = 6
#GLFW_JOYSTICK_8 = 7
#GLFW_JOYSTICK_9 = 8
#GLFW_JOYSTICK_10 = 9
#GLFW_JOYSTICK_11 = 10
#GLFW_JOYSTICK_12 = 11
#GLFW_JOYSTICK_13 = 12
#GLFW_JOYSTICK_14 = 13
#GLFW_JOYSTICK_15 = 14
#GLFW_JOYSTICK_16 = 15
#GLFW_JOYSTICK_LAST = #GLFW_JOYSTICK_16
;/*************************************************************************
; * Other definitions
; *************************************************************************/
;/* glfwOpenWindow modes */
#GLFW_WINDOWED = $00010001
#GLFW_FULLSCREEN = $00010002
;/* glfwGetWindowParam tokens */
#GLFW_ACTIVE = $00020001
#GLFW_ICONIFIED = $00020002
#GLFW_ACCELERATED = $00020003
#GLFW_OPENGL_REVISION = $00020004
;/* The following constants are used For both glfwGetWindowParam
; * And glfwOpenWindowHint
; */
#GLFW_RED_BITS = $00021000
#GLFW_GREEN_BITS = $00021001
#GLFW_BLUE_BITS = $00021002
#GLFW_ALPHA_BITS = $00021003
#GLFW_DEPTH_BITS = $00021004
#GLFW_STENCIL_BITS = $00021005
#GLFW_REFRESH_RATE = $00021006
#GLFW_ACCUM_RED_BITS = $00021007
#GLFW_ACCUM_GREEN_BITS = $00021008
#GLFW_ACCUM_BLUE_BITS = $00021009
#GLFW_ACCUM_ALPHA_BITS = $0002100A
#GLFW_AUX_BUFFERS = $0002100B
#GLFW_STEREO = $0002100C
#GLFW_WINDOW_RESIZABLE = $0002100D
#GLFW_FSAA_SAMPLES = $0002100E
#GLFW_OPENGL_VERSION_MAJOR = $0002100F
#GLFW_OPENGL_VERSION_MINOR = $00021010
#GLFW_OPENGL_FORWARD_COMPAT = $00021011
#GLFW_OPENGL_DEBUG_CONTEXT = $00021012
#GLFW_OPENGL_PROFILE = $00021013
#GLFW_OPENGL_ROBUSTNESS = $00021014
;/* GLFW_OPENGL_ROBUSTNESS mode tokens */
#GLFW_OPENGL_NO_ROBUSTNESS = $00000000
#GLFW_OPENGL_NO_RESET_NOTIFICATION = $00000001
#GLFW_OPENGL_LOSE_CONTEXT_ON_RESET = $00000002
;/* GLFW_OPENGL_PROFILE bit tokens */
#GLFW_OPENGL_NO_PROFILE = $00000000
#GLFW_OPENGL_CORE_PROFILE = $00000001
#GLFW_OPENGL_COMPAT_PROFILE = $00000002
#GLFW_OPENGL_ES2_PROFILE = $00000004
;/* glfwGetInputMode/glfwSetInputMode tokens */
#GLFW_CURSOR_MODE = $00030001
#GLFW_STICKY_KEYS = $00030002
#GLFW_STICKY_MOUSE_BUTTONS = $00030003
#GLFW_SYSTEM_KEYS = $00030004
#GLFW_KEY_REPEAT = $00030005
;/* GLFW_CURSOR_MODE values */
#GLFW_CURSOR_NORMAL = $00040001
#GLFW_CURSOR_HIDDEN = $00040002
#GLFW_CURSOR_CAPTURED = $00040003
;/* glfwGetJoystickParam tokens */
#GLFW_PRESENT = $00050001
#GLFW_AXES = $00050002
#GLFW_BUTTONS = $00050003
;/* glfwGetError/glfwErrorString tokens */
#GLFW_NO_ERROR = 0
#GLFW_NOT_INITIALIZED = $00070001
#GLFW_NO_CURRENT_WINDOW = $00070002
#GLFW_INVALID_ENUM = $00070003
#GLFW_INVALID_VALUE = $00070004
#GLFW_OUT_OF_MEMORY = $00070005
#GLFW_OPENGL_UNAVAILABLE = $00070006
#GLFW_VERSION_UNAVAILABLE = $00070007
#GLFW_PLATFORM_ERROR = $00070008
#GLFW_WINDOW_NOT_ACTIVE = $00070009
#GLFW_FORMAT_UNAVAILABLE = $0007000A
;/* Gamma ramps */
#GLFW_GAMMA_RAMP_SIZE = 256
;/*************************************************************************
; * Typedefs
; *************************************************************************/
; ;/* Window handle type */
; typedef void* ;
;
; ;/* Function pointer types */
; typedef void (* GLFWerrorfun)(int,const char*);
; typedef void (* sizefun)(,int,int);
; typedef Int (* closefun)();
; typedef void (* refreshfun)();
; typedef void (* focusfun)(,int);
; typedef void (* iconifyfun)(,int);
; typedef void (* GLFWmousebuttonfun)(,int,int);
; typedef void (* GLFWmouseposfun)(,int,int);
; typedef void (* GLFWcursorenterfun)(,int);
; typedef void (* GLFWscrollfun)(,double,double);
; typedef void (* GLFWkeyfun)(,int,int);
; typedef void (* GLFWcharfun)(,int);
;/* The video mode Structure used by glfwGetVideoModes */
Structure GLFWvidmode;
Width.l
Height.l;
RedBits.l
BlueBits.l
GreenBits.l
EndStructure
Structure GLFWgammaramp;
red.u[#GLFW_GAMMA_RAMP_SIZE];
green.u[#GLFW_GAMMA_RAMP_SIZE];
blue.u[#GLFW_GAMMA_RAMP_SIZE];
EndStructure
#static = 1
CompilerIf #Static
ImportC "-lGLU" : EndImport
ImportC "./src/libglfw.a"
glfwInit();
glfwTerminate();
glfwGetVersion(*major,*minor,*rev);
glfwGetVersionString();
;/* Error handling */
glfwGetError();
glfwErrorString(error.i);
glfwSetErrorCallback(*cbfun);
;/* Video mode functions */
glfwGetVideoModes(*GLFWvidmode,maxcount.i);
glfwGetDesktopMode(*GLFWvidmode);
;/* Gamma ramp functions */
glfwSetGamma(gamma.f);
glfwGetGammaRamp(*GLFWgammaramp);
glfwSetGammaRamp(*GLFWgammaramp);
;/* Window handling */
glfwOpenWindow(width.i,height.i,mode.i,title.s,share.i);
glfwOpenWindowHint(target.i,hint.i);
glfwIsWindow(window.i);
glfwCloseWindow(window.i);
glfwSetWindowTitle(title.s);
glfwGetWindowSize(*width,*height);
glfwSetWindowSize(width,height);
glfwGetWindowPos(*xpos,*ypos);
glfwSetWindowPos(xpos,ypos);
glfwIconifyWindow(window);
glfwRestoreWindow(window);
glfwGetWindowParam(window,param);
glfwSetWindowUserPointer(window,*pointer);
glfwGetWindowUserPointer(window);
glfwSetWindowSizeCallback(*cbfun);
glfwSetWindowCloseCallback(*cbfun);
glfwSetWindowRefreshCallback(*cbfun);
glfwSetWindowFocusCallback(*cbfun);
glfwSetWindowIconifyCallback(*cbfun);
;/* Event handling */
glfwPollEvents();
glfwWaitEvents();
;/* Input handling */
glfwGetInputMode(window.i, mode.i);
glfwSetInputMode( window.i, mode.i,value.i);
glfwGetKey( window.i,key.i);
glfwGetMouseButton( window.i, button.i);
glfwGetMousePos( window.i, *xpos,*ypos);
glfwSetMousePos( window.i, xpos.i,ypos.i);
glfwGetScrollOffset( window.i, *xoffset.Double, *yoffset.Double);
glfwSetKeyCallback(cbfun.i);
glfwSetCharCallback(cbfun.i);
glfwSetMouseButtonCallback(cbfun.i);
glfwSetMousePosCallback(cbfun.i);
glfwSetCursorEnterCallback(cbfun.i);
glfwSetScrollCallback(cbfun.i);
;/* Joystick input */
glfwGetJoystickParam(joy.i,param.i);
glfwGetJoystickPos(joy.i, *pos.float,numaxes.i);
glfwGetJoystickButtons(joy,*buttons.string,numbuttons.i);
;/* Clipboard */
glfwSetClipboardString(window.i,string.s);
glfwGetClipboardString( window.i);
;/* Time */
glfwGetTime();
glfwSetTime(time.d);
;/* OpenGL support */
glfwMakeContextCurrent(window.i);
glfwGetCurrentContext();
glfwSwapBuffers();
glfwSwapInterval(interval.i);
glfwExtensionSupported(extension.s);
glfwGetProcAddress(procname.s);
glfwCopyContext(src.i,dst.i,mask.i);
EndImport
CompilerElse
;/*************************************************************************
; * Prototypes
; *************************************************************************/
;/* Initialization, termination And version querying */
PrototypeC glfwInit();
PrototypeC glfwTerminate();
PrototypeC glfwGetVersion(*major,*minor,*rev);
PrototypeC.s glfwGetVersionString();
;/* Error handling */
PrototypeC glfwGetError();
PrototypeC.s glfwErrorString(error.i);
PrototypeC glfwSetErrorCallback(*cbfun);
;/* Video mode functions */
PrototypeC glfwGetVideoModes(*GLFWvidmode,maxcount.i);
PrototypeC glfwGetDesktopMode(*GLFWvidmode);
;/* Gamma ramp functions */
PrototypeC glfwSetGamma(gamma.f);
PrototypeC glfwGetGammaRamp(*GLFWgammaramp);
PrototypeC glfwSetGammaRamp(*GLFWgammaramp);
;/* Window handling */
PrototypeC glfwOpenWindow(width.i,height.i,mode.i,title.s,share.i);
PrototypeC glfwOpenWindowHint(target.i,hint.i);
PrototypeC glfwIsWindow(window.i);
PrototypeC glfwCloseWindow(window.i);
PrototypeC glfwSetWindowTitle(title.s);
PrototypeC glfwGetWindowSize(*width,*height);
PrototypeC glfwSetWindowSize(width,height);
PrototypeC glfwGetWindowPos(*xpos,*ypos);
PrototypeC glfwSetWindowPos(xpos,ypos);
PrototypeC glfwIconifyWindow(window);
PrototypeC glfwRestoreWindow(window);
PrototypeC glfwGetWindowParam(window,param);
PrototypeC glfwSetWindowUserPointer(window,*pointer);
PrototypeC glfwGetWindowUserPointer(window);
PrototypeC glfwSetWindowSizeCallback(*cbfun);
PrototypeC glfwSetWindowCloseCallback(*cbfun);
PrototypeC glfwSetWindowRefreshCallback(*cbfun);
PrototypeC glfwSetWindowFocusCallback(*cbfun);
PrototypeC glfwSetWindowIconifyCallback(*cbfun);
;/* Event handling */
PrototypeC glfwPollEvents();
PrototypeC glfwWaitEvents();
;/* Input handling */
PrototypeC glfwGetInputMode(window.i, mode.i);
PrototypeC glfwSetInputMode( window.i, mode.i,value.i);
PrototypeC glfwGetKey( window.i,key.i);
PrototypeC glfwGetMouseButton( window.i, button.i);
PrototypeC glfwGetMousePos( window.i, *xpos,*ypos);
PrototypeC glfwSetMousePos( window.i, xpos.i,ypos.i);
PrototypeC glfwGetScrollOffset( window.i, *xoffset.Double, *yoffset.Double);
PrototypeC glfwSetKeyCallback(cbfun.i);
PrototypeC glfwSetCharCallback(cbfun.i);
PrototypeC glfwSetMouseButtonCallback(cbfun.i);
PrototypeC glfwSetMousePosCallback(cbfun.i);
PrototypeC glfwSetCursorEnterCallback(cbfun.i);
PrototypeC glfwSetScrollCallback(cbfun.i);
;/* Joystick input */
PrototypeC glfwGetJoystickParam(joy.i,param.i);
PrototypeC glfwGetJoystickPos(joy.i, *pos.float,numaxes.i);
PrototypeC glfwGetJoystickButtons(joy,*buttons.string,numbuttons.i);
;/* Clipboard */
PrototypeC glfwSetClipboardString(window.i,string.s);
PrototypeC.s glfwGetClipboardString( window.i);
;/* Time */
PrototypeC.d glfwGetTime();
PrototypeC glfwSetTime(time.d);
;/* OpenGL support */
PrototypeC glfwMakeContextCurrent(window.i);
PrototypeC glfwGetCurrentContext();
PrototypeC glfwSwapBuffers();
PrototypeC glfwSwapInterval(interval.i);
PrototypeC glfwExtensionSupported(extension.s);
PrototypeC glfwGetProcAddress(procname.s);
PrototypeC glfwCopyContext(src.i,dst.i,mask.i);
;===
CompilerSelect #PB_Compiler_OS
CompilerCase #PB_OS_Linux
#libGLFWExtention = ".so"
CompilerCase #PB_OS_Windows
#libGLFWExtention = ".dll"
CompilerCase #PB_OS_MacOS
#libGLFWExtention = ".dylib"
CompilerEndSelect
Global libGLFW, libpath.s
libGLFW = OpenLibrary(#PB_Any,"libglfw" + #libGLFWExtention)
If libGLFW
Global glfwInit.glfwInit = GetFunction(libGLFW,"glfwInit");
Global glfwTerminate.glfwTerminate = GetFunction(libGLFW,"glfwTerminate");
Global glfwGetVersion.glfwGetVersion = GetFunction(libGLFW,"glfwGetVersion")
Global glfwGetVersionString.glfwGetVersionString = GetFunction(libGLFW,"glfwGetVersionString");
;/* Error handling */
Global glfwGetError.glfwGetError = GetFunction(libGLFW,"glfwGetError");
Global glfwErrorStringGetFunction.glfwErrorString = GetFunction(libGLFW,"glfwErrorStringGetFunction")
Global glfwSetErrorCallback. glfwSetErrorCallback = GetFunction(libGLFW,"glfwSetErrorCallback");
;/* Video mode functions */
Global glfwGetVideoModes.glfwGetVideoModes = GetFunction(libGLFW,"glfwGetVideoModes");
Global glfwGetDesktopMode. glfwGetDesktopMode = GetFunction(libGLFW,"glfwGetDesktopMode");
;/* Gamma ramp functions */
Global glfwSetGamma.glfwSetGamma = GetFunction(libGLFW,"glfwSetGamma")
Global glfwGetGammaRamp.glfwGetGammaRamp = GetFunction(libGLFW,"glfwGetGammaRamp");
Global glfwSetGammaRamp.glfwSetGammaRamp = GetFunction(libGLFW,"glfwSetGammaRamp");
;/* Window handling */
Global glfwOpenWindow.glfwOpenWindow = GetFunction(libGLFW,"glfwOpenWindow");
Global glfwOpenWindowHint.glfwOpenWindowHint = GetFunction(libGLFW,"glfwOpenWindowHint")
Global glfwIsWindow.glfwIsWindow = GetFunction(libGLFW,"glfwIsWindow")
Global glfwCloseWindow.glfwCloseWindow = GetFunction(libGLFW,"glfwCloseWindow")
Global glfwSetWindowTitle.glfwSetWindowTitle = GetFunction(libGLFW,"glfwSetWindowTitle");
Global glfwGetWindowSize.glfwGetWindowSize = GetFunction(libGLFW,"glfwGetWindowSize");
Global glfwSetWindowSize.glfwSetWindowSize = GetFunction(libGLFW,"glfwSetWindowSize");
Global glfwGetWindowPos.glfwGetWindowPos = GetFunction(libGLFW,"glfwGetWindowPos")
Global glfwSetWindowPos.glfwSetWindowPos = GetFunction(libGLFW,"glfwSetWindowPos");
Global glfwIconifyWindow.glfwIconifyWindow = GetFunction(libGLFW,"glfwIconifyWindow")
Global glfwRestoreWindow.glfwRestoreWindow = GetFunction(libGLFW,"glfwRestoreWindow")
Global glfwGetWindowParam. glfwGetWindowParam = GetFunction(libGLFW," glfwGetWindowParam")
Global glfwSetWindowUserPointer.glfwSetWindowUserPointer = GetFunction(libGLFW,"glfwSetWindowUserPointer");
Global glfwGetWindowUserPointer.glfwGetWindowUserPointer = GetFunction(libGLFW,"glfwGetWindowUserPointer");
Global glfwSetWindowSizeCallback.glfwSetWindowSizeCallback = GetFunction(libGLFW,"glfwSetWindowSizeCallback");
Global glfwSetWindowCloseCallback.glfwSetWindowCloseCallback = GetFunction(libGLFW,"glfwSetWindowCloseCallback");
Global glfwSetWindowRefreshCallback.glfwSetWindowRefreshCallback = GetFunction(libGLFW,"glfwSetWindowRefreshCallback");
Global glfwSetWindowFocusCallback.glfwSetWindowFocusCallback = GetFunction(libGLFW,glfwSetWindowFocusCallback")
Global glfwSetWindowIconifyCallback. glfwSetWindowIconifyCallback GetFunction(libGLFW," glfwSetWindowIconifyCallback")
;/* Event handling */
Global glfwPollEvents.glfwPollEvents = GetFunction(libGLFW,"glfwPollEvents");
Global glfwWaitEvents.glfwWaitEvents = GetFunction(libGLFW,"glfwWaitEvents")
;/* Input handling */
Global glfwGetInputMode.glfwGetInputMode =GetFunction(libGLFW,"glfwGetInputMode");
Global glfwSetInputMode.glfwSetInputMode = GetFunction(libGLFW,"glfwSetInputMode");
Global glfwGetKey.glfwGetKey = GetFunction(libGLFW,"glfwGetKey")
Global glfwGetMouseButton. glfwGetMouseButton = GetFunction(libGLFW,"glfwGetMouseButton")
Global glfwGetMousePos.glfwGetMousePos = GetFunction(libGLFW,"glfwGetMousePos")
Global glfwSetMousePos.glfwSetMousePos = GetFunction(libGLFW,"glfwSetMousePos");
Global glfwGetScrollOffset.glfwGetScrollOffset = GetFunction(libGLFW,"glfwGetScrollOffset")
Global glfwSetKeyCallback.glfwSetKeyCallback = GetFunction(libGLFW,"glfwSetKeyCallback");
Global glfwSetCharCallback.glfwSetCharCallback = GetFunction(libGLFW,"glfwSetCharCallback")
Global glfwSetMouseButtonCallback. glfwSetMouseButtonCallback = GetFunction(libGLFW," glfwSetMouseButtonCallback")
Global glfwSetMousePosCallback.glfwSetMousePosCallback = GetFunction(libGLFW,"glfwSetMousePosCallback")
Global glfwSetCursorEnterCallback. glfwSetCursorEnterCallback = GetFunction(libGLFW," glfwSetCursorEnterCallback")
Global glfwSetScrollCallback.glfwSetScrollCallback = GetFunction(libGLFW,"glfwSetScrollCallback")
;/* Joystick input */
Global glfwGetJoystickParam.glfwGetJoystickParam = GetFunction(libGLFW,"glfwGetJoystickParam")
Global glfwGetJoystickButtons.glfwGetJoystickButtons = GetFunction(libGLFW,"glfwGetJoystickButtons")
;/* Clipboard */
Global glfwSetClipboardString.glfwSetClipboardString = GetFunction(libGLFW,"glfwSetClipboardString")
Global glfwGetClipboardString.glfwGetClipboardString = GetFunction(libGLFW,"glfwGetClipboardString")
;/* Time */
Global glfwGetTime.glfwGetTime = GetFunction(libGLFW,"glfwGetTime");
Global glfwSetTime.glfwSetTime = GetFunction(libGLFW,"glfwSetTime")
;/* OpenGL support */
Global glfwMakeContextCurrent.glfwMakeContextCurrent = GetFunction(libGLFW,"glfwMakeContextCurrent")
Global glfwGetCurrentContext.glfwGetCurrentContext = GetFunction(libGLFW,"glfwGetCurrentContext");
Global glfwSwapBuffers.glfwSwapBuffers = GetFunction(libGLFW,"glfwSwapBuffers");
Global glfwSwapInterval. glfwSwapInterval = GetFunction(libGLFW," glfwSwapInterval");
Global glfwExtensionSupported.glfwExtensionSupported =GetFunction(libGLFW,"glfwExtensionSupported");
Global glfwGetProcAddress.glfwGetProcAddress = GetFunction(libGLFW,"glfwGetProcAddress")
Global glfwCopyContext.glfwCopyContext = GetFunction(libGLFW," glfwCopyContext");
EndIf
CompilerEndIf