(index ("init" 0) ("window" 114) ("make-context-current" 223) ("make-window" 388) ("with-window" 2098) ("window-position-callback" 2306) ("window-size-callback" 2639) ("window-close-callback" 2947) ("window-focus-callback" 3182) ("window-iconify-callback" 3529) ("framebuffer-size-callback" 3879) ("mouse-button-callback" 4231) ("cursor-enter-callback" 5036) ("cursor-position-callback" 5370) ("scroll-callback" 5672) ("key-callback" 5943) ("char-callback" 6596) ("monitor-callback" 6880) ("set-window-position-callback!" 7220) ("set-window-size-callback!" 7220) ("set-window-close-callback!" 7220) ("set-window-focus-callback!" 7220) ("set-window-iconify-callback!" 7220) ("set-framebuffer-size-callback!" 7220) ("set-mouse-button-callback!" 7220) ("set-cursor-enter-callback!" 7220) ("set-cursor-position-callback!" 7220) ("set-scroll-callback!" 7220) ("set-key-callback!" 7220) ("set-char-callback!" 7220) ("set-monitor-callback!" 7220) ("get-version" 8716) ("get-monitors" 8879) ("get-monitor-position" 9053) ("get-monitor-physical-size" 9295) ("get-video-modes" 9489) ("get-window-position" 9666) ("set-window-position" 9869) ("get-window-size" 10028) ("get-framebuffer-size" 10198) ("get-cursor-position" 10381) ("set-cursor-position" 10601) ("get-joystick-axes" 10801) ("get-joystick-buttons" 11040))
(def (sig (procedure " (init)" (id init))) (p "Initializes glfw. Not needed when using " (tt "with-window") "."))
(def (sig (parameter " window" (id window))) (p "Contains the window associated with the current context."))
(def (sig (procedure " (make-context-current WINDOW)" (id make-context-current))) (p "Performs " (tt "glfwMakeContextCurrent") " while setting " (tt "window") "."))
(def (sig (procedure " (make-window WIDTH HEIGHT NAME #!key (fullscreen? #f) (swap-interval 1) resizable visible decorated red-bits green-bits blue-bits alpha-bits depth-bits stencil-bits accum-red-bits accum-green-bits accum-blue-bits accum-alpha-bits aux-buffers samples refresh-rate sterio srgb-capable client-api context-version-major context-version-minor context-robustness opengl-forward-compat opengl-debug-context opengl-profile)" (id make-window))) (p "Create a window with title string " (tt "NAME") " and dimensions " (tt "WIDTH") " by " (tt "HEIGHT") ". The keys correspond to the available " (link "http://www.glfw.org/docs/latest/window.html#window_hints" "GLFW window hints") ". " (tt "resizable") ", " (tt "visible") ", " (tt "decorated") ", " (tt "sterio") ", " (tt "srgb-capable") ", " (tt "opengl-forward-compat") ", " (tt "opengl-debug-context") " accept boolean arguments, while all other accept either an integer or an appropriate GLFW constant as per the documentation.") (p "Sets the current context to the window that was created. The swap interval of the window is set to the value of the " (tt "swap-interval") " key. Finally, this initializes all of the window-specific callbacks.") (p "When using with OS X, make sure you ask for the right context. Only OS X 10.7+ support core contexts, and only limited contexts are supported. See " (link "http://www.glfw.org/faq.html#how-do-i-create-an-opengl-30-context" "the GLFW FAQ") ". For instance:") (pre "   (make-window WIDTH HEIGHT NAME\n                context-version-major: 3\n                context-version-minor: 2\n                opengl-forward-compat: #t\n                opengl-profile: +opengl-core-profile+)\n   \n   "))
(def (sig (syntax " (with-window (WIDTH HEIGHT NAME . KEYS) BODY ...)" (id with-window))) (p "Initializes GLFW, creates a window as per " (tt "make-window") ", and runs " (tt "BODY") " before cleaning up."))
(def (sig (parameter " window-position-callback" (id window-position-callback))) (p "Called when a window is moved. Expects a function with the signature " (tt "(lambda (WINDOW X Y) ...)") ". " (tt "WINDOW") " is the window that was moved. " (tt "X") " and " (tt "Y") " are the coordinates of the upper-left corner of the window."))
(def (sig (parameter " window-size-callback" (id window-size-callback))) (p "Called when a window is resized. Expects a function with the signature " (tt "(lambda (WINDOW W H) ...)") ". " (tt "WINDOW") " is the window that was resized. " (tt "W") " and " (tt "H") " are the new dimensions  of the window."))
(def (sig (parameter " window-close-callback" (id window-close-callback))) (p "Called when a window is closed. Expects a function with the signature " (tt "(lambda (WINDOW) ...)") ". " (tt "WINDOW") " is the window that was closed."))
(def (sig (parameter " window-focus-callback" (id window-focus-callback))) (p "Called when a window comes into or goes out of focus. Expects a function with the signature " (tt "(lambda (WINDOW FOCUSED?) ...)") ". " (tt "WINDOW") " is the affected window, while " (tt "FOCUSED?") " is true when the window has been focused and false otherwise."))
(def (sig (parameter " window-iconify-callback" (id window-iconify-callback))) (p "Called when a window is iconified or restored. Expects a function with the signature " (tt "(lambda (WINDOW ICONIFIED?) ...)") ". " (tt "WINDOW") " is the affected window, while " (tt "ICONIFIED?") " is true when the window has been iconified and false otherwise."))
(def (sig (parameter " framebuffer-size-callback" (id framebuffer-size-callback))) (p "Called when a framebuffer is resized. Expects a function with the signature " (tt "(lambda (WINDOW W H) ...)") ". " (tt "WINDOW") " is the window whose framebuffer was resized. " (tt "W") " and " (tt "H") " are the new dimensions, in pixels, of the framebuffer."))
(def (sig (parameter " mouse-button-callback" (id mouse-button-callback))) (p "Called when a mouse button is pressed or released. Expects a function with the signature " (tt "(lambda (WINDOW BUTTON ACTION MODS) ...)") ". " (tt "WINDOW") " is the window where the button was pressed, " (tt "BUTTON") " is the name of the mouse button (one of " (tt "+mouse-button-1+") " through " (tt "+mouse-button-8+") ", " (tt "+mouse-button-last+") ", " (tt "+mouse-button-left+") ", " (tt "+mouse-button-right+") ", " (tt "+mouse-button-middle+") "), " (tt "ACTION") " is one of " (tt "+press+") " or " (tt "+release+") ", and " (tt "MODS") " is a bit field describing the modifier keys that were held down (any of " (tt "+mod-shift+") ", " (tt "+mod-control+") ", " (tt "+mod-alt+") ", or " (tt "+mod-super+") ")."))
(def (sig (parameter " cursor-enter-callback" (id cursor-enter-callback))) (p "Called when a cursor enters or leaves a window. Expects a function with the signature " (tt "(lambda (WINDOW ENTERED?) ...)") ". " (tt "WINDOW") " is the affected window, and " (tt "ENTERED?") " is true when the window was entered and false otherwise."))
(def (sig (parameter " cursor-position-callback" (id cursor-position-callback))) (p "Called when a cursor moves. Expects a function with the signature " (tt "(lambda (WINDOW X Y) ...)") ". " (tt "WINDOW") " is the affected window. " (tt "X") " and " (tt "Y") " is the new coordinates of the cursor."))
(def (sig (parameter " scroll-callback" (id scroll-callback))) (p "Called when a scroll occurs. Expects a function with the signature " (tt "(lambda (WINDOW X Y) ...)") ". " (tt "WINDOW") " is the affected window. " (tt "X") " and " (tt "Y") " are the scroll offsets."))
(def (sig (parameter " key-callback" (id key-callback))) (p "Called when a key is pressed or released. Expects a function with the signature " (tt "(lambda (WINDOW KEY SCANCODE ACTION MODS) ...)") ". " (tt "WINDOW") " is the window where the button was pressed, " (tt "KEY") " is the name of the key, " (tt "SCANCODE") " is the system-specific scancode of the key, " (tt "ACTION") " is one of " (tt "+press+") ", " (tt "+release+") " or " (tt "+repeat+") ", and " (tt "MODS") " is a bit field describing the modifier keys that were held down (any of " (tt "+mod-shift+") ", " (tt "+mod-control+") ", " (tt "+mod-alt+") ", or " (tt "+mod-super+") ")."))
(def (sig (parameter " char-callback" (id char-callback))) (p "Called when character is entered. Expects a function with the signature " (tt "(lambda (WINDOW CHAR) ...)") ". " (tt "WINDOW") " is the affected window, and  " (tt "CHAR") " is the unicode code point of the character."))
(def (sig (parameter " monitor-callback" (id monitor-callback))) (p "Called when a monitor is connected or disconnected. Expects a function with the signature " (tt "(lambda (MONITOR EVENT) ...)") ". " (tt "MONITOR") " is a pointer to the affected monitor, " (tt "EVENT") " is either " (tt "+connected+") " or " (tt "+disconnected+") "."))
(def (sig (procedure " (set-window-position-callback! [WINDOW [CALLBACK]])" (id set-window-position-callback!)) (procedure " (set-window-size-callback! [WINDOW [CALLBACK]])" (id set-window-size-callback!)) (procedure " (set-window-close-callback! [WINDOW [CALLBACK]])" (id set-window-close-callback!)) (procedure " (set-window-focus-callback! [WINDOW [CALLBACK]])" (id set-window-focus-callback!)) (procedure " (set-window-iconify-callback! [WINDOW [CALLBACK]])" (id set-window-iconify-callback!)) (procedure " (set-framebuffer-size-callback! [WINDOW [CALLBACK]])" (id set-framebuffer-size-callback!)) (procedure " (set-mouse-button-callback! [WINDOW [CALLBACK]])" (id set-mouse-button-callback!)) (procedure " (set-cursor-enter-callback! [WINDOW [CALLBACK]])" (id set-cursor-enter-callback!)) (procedure " (set-cursor-position-callback! [WINDOW [CALLBACK]])" (id set-cursor-position-callback!)) (procedure " (set-scroll-callback! [WINDOW [CALLBACK]])" (id set-scroll-callback!)) (procedure " (set-key-callback! [WINDOW [CALLBACK]])" (id set-key-callback!)) (procedure " (set-char-callback! [WINDOW [CALLBACK]])" (id set-char-callback!)) (procedure " (set-monitor-callback! [WINDOW [CALLBACK]])" (id set-monitor-callback!))) (p "Set the callback functions associated with " (tt "WINDOW") ". Used when the callback parameters are not desired. " (tt "WINDOW") " defaults to " (tt "window") ". " (tt "CALLBACK") " defaults to an external function that calls the corresponding callback parameter."))
(def (sig (procedure " (get-version)" (id get-version))) (p "Returns three values: the major version , minor version , and revision number of the GLFW library."))
(def (sig (procedure " (get-monitors)" (id get-monitors))) (p "Returns two values: A pointer to an array of GLFWmonitor references, and the number of values in the array."))
(def (sig (procedure " (get-monitor-position MONITOR)" (id get-monitor-position))) (p "Returns two values: the x and y position, in screen coordinates, of the upper-left corner of the " (tt "MONITOR") "’s viewport on the virtual screen."))
(def (sig (procedure " (get-monitor-physical-size MONITOR)" (id get-monitor-physical-size))) (p "Returns two values: the physical width and height, in millimetres, of the " (tt "MONITOR") "."))
(def (sig (procedure " (get-video-modes MONITOR)" (id get-video-modes))) (p "Returns two values: A pointer to an array of video modes, and the number of values in the array."))
(def (sig (procedure " (get-window-position WINDOW)" (id get-window-position))) (p "Returns two values: the x and y position, in screen coordinates, of the upper-left corner of the " (tt "WINDOW") "."))
(def (sig (procedure " (set-window-position WINDOW X Y)" (id set-window-position))) (p "Set the position of the upper-left corner of the " (tt "WINDOW") "."))
(def (sig (procedure " (get-window-size WINDOW)" (id get-window-size))) (p "Returns two values: the width and height, in screen coordinates, of the " (tt "WINDOW") "."))
(def (sig (procedure " (get-framebuffer-size WINDOW)" (id get-framebuffer-size))) (p "Returns two values: the width and height, in pixels, of the framebuffer of " (tt "WINDOW") "."))
(def (sig (procedure " (get-cursor-position WINDOW)" (id get-cursor-position))) (p "Returns two values: the x and y position of the cursor, relative to the upper-left edge of the client area of the " (tt "WINDOW") "."))
(def (sig (procedure " (set-cursor-position WINDOW X Y)" (id set-cursor-position))) (p "Set the position of the cursor, relative to the upper-left edge of the client area of the " (tt "WINDOW") "."))
(def (sig (procedure " (get-joystick-axes JOYSTICK)" (id get-joystick-axes))) (p "Returns two values: a pointer to an array of floats representing the values of all axes of the specified joystick, and the number of values in the array."))
(def (sig (procedure " (get-joystick-buttons JOYSTICK)" (id get-joystick-buttons))) (p "Returns two values: a pointer to an array of bytes representing the state of all buttons on the specified joystick, and the number of values in the array."))
