|
|
@ -133,10 +133,38 @@ extern "C" {
|
|
|
|
|
|
|
|
|
|
|
|
/* Most GL/glu.h variants on Windows need wchar_t
|
|
|
|
/* Most GL/glu.h variants on Windows need wchar_t
|
|
|
|
* OpenGL/gl.h blocks the definition of ptrdiff_t by glext.h on OS X */
|
|
|
|
* OpenGL/gl.h blocks the definition of ptrdiff_t by glext.h on OS X */
|
|
|
|
#include <stddef.h>
|
|
|
|
#if !defined(GLFW_INCLUDE_NONE)
|
|
|
|
|
|
|
|
#include <stddef.h>
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* Include the chosen client API headers.
|
|
|
|
/* ---------------- GLFW related system specific defines ----------------- */
|
|
|
|
*/
|
|
|
|
|
|
|
|
#if defined(__APPLE_CC__)
|
|
|
|
|
|
|
|
#if defined(GLFW_INCLUDE_GLCOREARB)
|
|
|
|
|
|
|
|
#include <OpenGL/gl3.h>
|
|
|
|
|
|
|
|
#elif !defined(GLFW_INCLUDE_NONE)
|
|
|
|
|
|
|
|
#define GL_GLEXT_LEGACY
|
|
|
|
|
|
|
|
#include <OpenGL/gl.h>
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined(GLFW_INCLUDE_GLU)
|
|
|
|
|
|
|
|
#include <OpenGL/glu.h>
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
|
|
|
#if defined(GLFW_INCLUDE_GLCOREARB)
|
|
|
|
|
|
|
|
#include <GL/glcorearb.h>
|
|
|
|
|
|
|
|
#elif defined(GLFW_INCLUDE_ES1)
|
|
|
|
|
|
|
|
#include <GLES/gl.h>
|
|
|
|
|
|
|
|
#elif defined(GLFW_INCLUDE_ES2)
|
|
|
|
|
|
|
|
#include <GLES2/gl2.h>
|
|
|
|
|
|
|
|
#elif defined(GLFW_INCLUDE_ES3)
|
|
|
|
|
|
|
|
#include <GLES3/gl3.h>
|
|
|
|
|
|
|
|
#elif !defined(GLFW_INCLUDE_NONE)
|
|
|
|
|
|
|
|
#include <GL/gl.h>
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined(GLFW_INCLUDE_GLU)
|
|
|
|
|
|
|
|
#include <GL/glu.h>
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if defined(GLFW_DLL) && defined(_GLFW_BUILD_DLL)
|
|
|
|
#if defined(GLFW_DLL) && defined(_GLFW_BUILD_DLL)
|
|
|
|
/* GLFW_DLL is defined by users of GLFW when compiling programs that will link
|
|
|
|
/* GLFW_DLL is defined by users of GLFW when compiling programs that will link
|
|
|
@ -173,35 +201,6 @@ extern "C" {
|
|
|
|
|
|
|
|
|
|
|
|
/* -------------------- END SYSTEM/COMPILER SPECIFIC --------------------- */
|
|
|
|
/* -------------------- END SYSTEM/COMPILER SPECIFIC --------------------- */
|
|
|
|
|
|
|
|
|
|
|
|
/* Include the chosen client API headers.
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
#if defined(__APPLE_CC__)
|
|
|
|
|
|
|
|
#if defined(GLFW_INCLUDE_GLCOREARB)
|
|
|
|
|
|
|
|
#include <OpenGL/gl3.h>
|
|
|
|
|
|
|
|
#elif !defined(GLFW_INCLUDE_NONE)
|
|
|
|
|
|
|
|
#define GL_GLEXT_LEGACY
|
|
|
|
|
|
|
|
#include <OpenGL/gl.h>
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined(GLFW_INCLUDE_GLU)
|
|
|
|
|
|
|
|
#include <OpenGL/glu.h>
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
|
|
|
#if defined(GLFW_INCLUDE_GLCOREARB)
|
|
|
|
|
|
|
|
#include <GL/glcorearb.h>
|
|
|
|
|
|
|
|
#elif defined(GLFW_INCLUDE_ES1)
|
|
|
|
|
|
|
|
#include <GLES/gl.h>
|
|
|
|
|
|
|
|
#elif defined(GLFW_INCLUDE_ES2)
|
|
|
|
|
|
|
|
#include <GLES2/gl2.h>
|
|
|
|
|
|
|
|
#elif defined(GLFW_INCLUDE_ES3)
|
|
|
|
|
|
|
|
#include <GLES3/gl3.h>
|
|
|
|
|
|
|
|
#elif !defined(GLFW_INCLUDE_NONE)
|
|
|
|
|
|
|
|
#include <GL/gl.h>
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined(GLFW_INCLUDE_GLU)
|
|
|
|
|
|
|
|
#include <GL/glu.h>
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*************************************************************************
|
|
|
|
/*************************************************************************
|
|
|
|
* GLFW API tokens
|
|
|
|
* GLFW API tokens
|
|
|
@ -228,7 +227,7 @@ extern "C" {
|
|
|
|
* API changes.
|
|
|
|
* API changes.
|
|
|
|
* @ingroup init
|
|
|
|
* @ingroup init
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
#define GLFW_VERSION_REVISION 2
|
|
|
|
#define GLFW_VERSION_REVISION 4
|
|
|
|
/*! @} */
|
|
|
|
/*! @} */
|
|
|
|
|
|
|
|
|
|
|
|
/*! @name Key and button actions
|
|
|
|
/*! @name Key and button actions
|
|
|
@ -707,8 +706,8 @@ typedef void (* GLFWmousebuttonfun)(GLFWwindow*,int,int,int);
|
|
|
|
* This is the function signature for cursor position callback functions.
|
|
|
|
* This is the function signature for cursor position callback functions.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param[in] window The window that received the event.
|
|
|
|
* @param[in] window The window that received the event.
|
|
|
|
* @param[in] xpos The new x-coordinate of the cursor.
|
|
|
|
* @param[in] xpos The new x-coordinate, in screen coordinates, of the cursor.
|
|
|
|
* @param[in] ypos The new y-coordinate of the cursor.
|
|
|
|
* @param[in] ypos The new y-coordinate, in screen coordinates, of the cursor.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @sa glfwSetCursorPosCallback
|
|
|
|
* @sa glfwSetCursorPosCallback
|
|
|
|
*
|
|
|
|
*
|
|
|
@ -766,7 +765,7 @@ typedef void (* GLFWkeyfun)(GLFWwindow*,int,int,int,int);
|
|
|
|
* This is the function signature for Unicode character callback functions.
|
|
|
|
* This is the function signature for Unicode character callback functions.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param[in] window The window that received the event.
|
|
|
|
* @param[in] window The window that received the event.
|
|
|
|
* @param[in] character The Unicode code point of the character.
|
|
|
|
* @param[in] codepoint The Unicode code point of the character.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @sa glfwSetCharCallback
|
|
|
|
* @sa glfwSetCharCallback
|
|
|
|
*
|
|
|
|
*
|
|
|
@ -793,7 +792,7 @@ typedef void (* GLFWmonitorfun)(GLFWmonitor*,int);
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @ingroup monitor
|
|
|
|
* @ingroup monitor
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
typedef struct
|
|
|
|
typedef struct GLFWvidmode
|
|
|
|
{
|
|
|
|
{
|
|
|
|
/*! The width, in screen coordinates, of the video mode.
|
|
|
|
/*! The width, in screen coordinates, of the video mode.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
@ -823,7 +822,7 @@ typedef struct
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @ingroup monitor
|
|
|
|
* @ingroup monitor
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
typedef struct
|
|
|
|
typedef struct GLFWgammaramp
|
|
|
|
{
|
|
|
|
{
|
|
|
|
/*! An array of value describing the response of the red channel.
|
|
|
|
/*! An array of value describing the response of the red channel.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
@ -864,10 +863,7 @@ typedef struct
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @note This function may only be called from the main thread.
|
|
|
|
* @note This function may only be called from the main thread.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @note This function may take several seconds to complete on some systems,
|
|
|
|
* @note **OS X:** This function will change the current directory of the
|
|
|
|
* while on other systems it may take only a fraction of a second to complete.
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* @note **Mac OS X:** This function will change the current directory of the
|
|
|
|
|
|
|
|
* application to the `Contents/Resources` subdirectory of the application's
|
|
|
|
* application to the `Contents/Resources` subdirectory of the application's
|
|
|
|
* bundle, if present.
|
|
|
|
* bundle, if present.
|
|
|
|
*
|
|
|
|
*
|
|
|
@ -1233,17 +1229,26 @@ GLFWAPI void glfwWindowHint(int target, int hint);
|
|
|
|
* to not share resources.
|
|
|
|
* to not share resources.
|
|
|
|
* @return The handle of the created window, or `NULL` if an error occurred.
|
|
|
|
* @return The handle of the created window, or `NULL` if an error occurred.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
|
|
|
|
* @remarks **Windows:** Window creation will fail if the Microsoft GDI
|
|
|
|
|
|
|
|
* software OpenGL implementation is the only one available.
|
|
|
|
|
|
|
|
*
|
|
|
|
* @remarks **Windows:** If the executable has an icon resource named
|
|
|
|
* @remarks **Windows:** If the executable has an icon resource named
|
|
|
|
* `GLFW_ICON,` it will be set as the icon for the window. If no such icon is
|
|
|
|
* `GLFW_ICON,` it will be set as the icon for the window. If no such icon is
|
|
|
|
* present, the `IDI_WINLOGO` icon will be used instead.
|
|
|
|
* present, the `IDI_WINLOGO` icon will be used instead.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @remarks **Mac OS X:** The GLFW window has no icon, as it is not a document
|
|
|
|
* @remarks **OS X:** The GLFW window has no icon, as it is not a document
|
|
|
|
* window, but the dock icon will be the same as the application bundle's icon.
|
|
|
|
* window, but the dock icon will be the same as the application bundle's icon.
|
|
|
|
* Also, the first time a window is opened the menu bar is populated with
|
|
|
|
* Also, the first time a window is opened the menu bar is populated with
|
|
|
|
* common commands like Hide, Quit and About. The (minimal) about dialog uses
|
|
|
|
* common commands like Hide, Quit and About. The (minimal) about dialog uses
|
|
|
|
* information from the application's bundle. For more information on bundles,
|
|
|
|
* information from the application's bundle. For more information on bundles,
|
|
|
|
* see the Bundle Programming Guide provided by Apple.
|
|
|
|
* see the Bundle Programming Guide provided by Apple.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
|
|
|
|
* @remarks **X11:** There is no mechanism for setting the window icon yet.
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* @remarks The swap interval is not set during window creation, but is left at
|
|
|
|
|
|
|
|
* the default value for that platform. For more information, see @ref
|
|
|
|
|
|
|
|
* glfwSwapInterval.
|
|
|
|
|
|
|
|
*
|
|
|
|
* @note This function may only be called from the main thread.
|
|
|
|
* @note This function may only be called from the main thread.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @sa glfwDestroyWindow
|
|
|
|
* @sa glfwDestroyWindow
|
|
|
@ -1355,10 +1360,6 @@ GLFWAPI void glfwGetWindowPos(GLFWwindow* window, int* xpos, int* ypos);
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @note The window manager may put limits on what positions are allowed.
|
|
|
|
* @note The window manager may put limits on what positions are allowed.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @bug **X11:** Some window managers ignore the set position of hidden (i.e.
|
|
|
|
|
|
|
|
* unmapped) windows, instead placing them where it thinks is appropriate once
|
|
|
|
|
|
|
|
* they are shown.
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* @sa glfwGetWindowPos
|
|
|
|
* @sa glfwGetWindowPos
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @ingroup window
|
|
|
|
* @ingroup window
|
|
|
@ -1368,7 +1369,8 @@ GLFWAPI void glfwSetWindowPos(GLFWwindow* window, int xpos, int ypos);
|
|
|
|
/*! @brief Retrieves the size of the client area of the specified window.
|
|
|
|
/*! @brief Retrieves the size of the client area of the specified window.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* This function retrieves the size, in screen coordinates, of the client area
|
|
|
|
* This function retrieves the size, in screen coordinates, of the client area
|
|
|
|
* of the specified window.
|
|
|
|
* of the specified window. If you wish to retrieve the size of the
|
|
|
|
|
|
|
|
* framebuffer in pixels, see @ref glfwGetFramebufferSize.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param[in] window The window whose size to retrieve.
|
|
|
|
* @param[in] window The window whose size to retrieve.
|
|
|
|
* @param[out] width Where to store the width, in screen coordinates, of the
|
|
|
|
* @param[out] width Where to store the width, in screen coordinates, of the
|
|
|
@ -1409,7 +1411,8 @@ GLFWAPI void glfwSetWindowSize(GLFWwindow* window, int width, int height);
|
|
|
|
/*! @brief Retrieves the size of the framebuffer of the specified window.
|
|
|
|
/*! @brief Retrieves the size of the framebuffer of the specified window.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* This function retrieves the size, in pixels, of the framebuffer of the
|
|
|
|
* This function retrieves the size, in pixels, of the framebuffer of the
|
|
|
|
* specified window.
|
|
|
|
* specified window. If you wish to retrieve the size of the window in screen
|
|
|
|
|
|
|
|
* coordinates, see @ref glfwGetWindowSize.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param[in] window The window whose framebuffer to query.
|
|
|
|
* @param[in] window The window whose framebuffer to query.
|
|
|
|
* @param[out] width Where to store the width, in pixels, of the framebuffer,
|
|
|
|
* @param[out] width Where to store the width, in pixels, of the framebuffer,
|
|
|
@ -1592,7 +1595,10 @@ GLFWAPI GLFWwindowsizefun glfwSetWindowSizeCallback(GLFWwindow* window, GLFWwind
|
|
|
|
* @return The previously set callback, or `NULL` if no callback was set or an
|
|
|
|
* @return The previously set callback, or `NULL` if no callback was set or an
|
|
|
|
* error occurred.
|
|
|
|
* error occurred.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @remarks **Mac OS X:** Selecting Quit from the application menu will
|
|
|
|
* @par New in GLFW 3
|
|
|
|
|
|
|
|
* The close callback no longer returns a value.
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* @remarks **OS X:** Selecting Quit from the application menu will
|
|
|
|
* trigger the close callback for all windows.
|
|
|
|
* trigger the close callback for all windows.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @ingroup window
|
|
|
|
* @ingroup window
|
|
|
@ -1685,6 +1691,12 @@ GLFWAPI GLFWframebuffersizefun glfwSetFramebufferSizeCallback(GLFWwindow* window
|
|
|
|
* This function is no longer called by @ref glfwSwapBuffers. You need to call
|
|
|
|
* This function is no longer called by @ref glfwSwapBuffers. You need to call
|
|
|
|
* it or @ref glfwWaitEvents yourself.
|
|
|
|
* it or @ref glfwWaitEvents yourself.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
|
|
|
|
* @remarks On some platforms, a window move, resize or menu operation will
|
|
|
|
|
|
|
|
* cause event processing to block. This is due to how event processing is
|
|
|
|
|
|
|
|
* designed on those platforms. You can use the
|
|
|
|
|
|
|
|
* [window refresh callback](@ref GLFWwindowrefreshfun) to redraw the contents
|
|
|
|
|
|
|
|
* of your window when necessary during the operation.
|
|
|
|
|
|
|
|
*
|
|
|
|
* @note This function may only be called from the main thread.
|
|
|
|
* @note This function may only be called from the main thread.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @note This function may not be called from a callback.
|
|
|
|
* @note This function may not be called from a callback.
|
|
|
@ -1712,6 +1724,12 @@ GLFWAPI void glfwPollEvents(void);
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* This function is not required for joystick input to work.
|
|
|
|
* This function is not required for joystick input to work.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
|
|
|
|
* @remarks On some platforms, a window move, resize or menu operation will
|
|
|
|
|
|
|
|
* cause event processing to block. This is due to how event processing is
|
|
|
|
|
|
|
|
* designed on those platforms. You can use the
|
|
|
|
|
|
|
|
* [window refresh callback](@ref GLFWwindowrefreshfun) to redraw the contents
|
|
|
|
|
|
|
|
* of your window when necessary during the operation.
|
|
|
|
|
|
|
|
*
|
|
|
|
* @note This function may only be called from the main thread.
|
|
|
|
* @note This function may only be called from the main thread.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @note This function may not be called from a callback.
|
|
|
|
* @note This function may not be called from a callback.
|
|
|
@ -1747,9 +1765,12 @@ GLFWAPI int glfwGetInputMode(GLFWwindow* window, int mode);
|
|
|
|
* modes:
|
|
|
|
* modes:
|
|
|
|
* - `GLFW_CURSOR_NORMAL` makes the cursor visible and behaving normally.
|
|
|
|
* - `GLFW_CURSOR_NORMAL` makes the cursor visible and behaving normally.
|
|
|
|
* - `GLFW_CURSOR_HIDDEN` makes the cursor invisible when it is over the client
|
|
|
|
* - `GLFW_CURSOR_HIDDEN` makes the cursor invisible when it is over the client
|
|
|
|
* area of the window.
|
|
|
|
* area of the window but does not restrict the cursor from leaving. This is
|
|
|
|
* - `GLFW_CURSOR_DISABLED` disables the cursor and removes any limitations on
|
|
|
|
* useful if you wish to render your own cursor or have no visible cursor at
|
|
|
|
* cursor movement.
|
|
|
|
* all.
|
|
|
|
|
|
|
|
* - `GLFW_CURSOR_DISABLED` hides and grabs the cursor, providing virtual
|
|
|
|
|
|
|
|
* and unlimited cursor movement. This is useful for implementing for
|
|
|
|
|
|
|
|
* example 3D camera controls.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* If `mode` is `GLFW_STICKY_KEYS`, the value must be either `GL_TRUE` to
|
|
|
|
* If `mode` is `GLFW_STICKY_KEYS`, the value must be either `GL_TRUE` to
|
|
|
|
* enable sticky keys, or `GL_FALSE` to disable it. If sticky keys are
|
|
|
|
* enable sticky keys, or `GL_FALSE` to disable it. If sticky keys are
|
|
|
@ -1819,7 +1840,8 @@ GLFWAPI int glfwGetMouseButton(GLFWwindow* window, int button);
|
|
|
|
/*! @brief Retrieves the last reported cursor position, relative to the client
|
|
|
|
/*! @brief Retrieves the last reported cursor position, relative to the client
|
|
|
|
* area of the window.
|
|
|
|
* area of the window.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* This function returns the last reported position of the cursor to the
|
|
|
|
* This function returns the last reported position of the cursor, in screen
|
|
|
|
|
|
|
|
* coordinates, relative to the upper-left corner of the client area of the
|
|
|
|
* specified window.
|
|
|
|
* specified window.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* If the cursor is disabled (with `GLFW_CURSOR_DISABLED`) then the cursor
|
|
|
|
* If the cursor is disabled (with `GLFW_CURSOR_DISABLED`) then the cursor
|
|
|
@ -1842,11 +1864,13 @@ GLFWAPI int glfwGetMouseButton(GLFWwindow* window, int button);
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
GLFWAPI void glfwGetCursorPos(GLFWwindow* window, double* xpos, double* ypos);
|
|
|
|
GLFWAPI void glfwGetCursorPos(GLFWwindow* window, double* xpos, double* ypos);
|
|
|
|
|
|
|
|
|
|
|
|
/*! @brief Sets the position of the cursor, relative to the client area of the window.
|
|
|
|
/*! @brief Sets the position of the cursor, relative to the client area of the
|
|
|
|
|
|
|
|
* window.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* This function sets the position of the cursor. The specified window must be
|
|
|
|
* This function sets the position, in screen coordinates, of the cursor
|
|
|
|
* focused. If the window does not have focus when this function is called, it
|
|
|
|
* relative to the upper-left corner of the client area of the specified
|
|
|
|
* fails silently.
|
|
|
|
* window. The window must be focused. If the window does not have focus when
|
|
|
|
|
|
|
|
* this function is called, it fails silently.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* If the cursor is disabled (with `GLFW_CURSOR_DISABLED`) then the cursor
|
|
|
|
* If the cursor is disabled (with `GLFW_CURSOR_DISABLED`) then the cursor
|
|
|
|
* position is unbounded and limited only by the minimum and maximum values of
|
|
|
|
* position is unbounded and limited only by the minimum and maximum values of
|
|
|
@ -1854,9 +1878,9 @@ GLFWAPI void glfwGetCursorPos(GLFWwindow* window, double* xpos, double* ypos);
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param[in] window The desired window.
|
|
|
|
* @param[in] window The desired window.
|
|
|
|
* @param[in] xpos The desired x-coordinate, relative to the left edge of the
|
|
|
|
* @param[in] xpos The desired x-coordinate, relative to the left edge of the
|
|
|
|
* client area, or `NULL`.
|
|
|
|
* client area.
|
|
|
|
* @param[in] ypos The desired y-coordinate, relative to the top edge of the
|
|
|
|
* @param[in] ypos The desired y-coordinate, relative to the top edge of the
|
|
|
|
* client area, or `NULL`.
|
|
|
|
* client area.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @sa glfwGetCursorPos
|
|
|
|
* @sa glfwGetCursorPos
|
|
|
|
*
|
|
|
|
*
|
|
|
@ -1942,7 +1966,8 @@ GLFWAPI GLFWmousebuttonfun glfwSetMouseButtonCallback(GLFWwindow* window, GLFWmo
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* This function sets the cursor position callback of the specified window,
|
|
|
|
* This function sets the cursor position callback of the specified window,
|
|
|
|
* which is called when the cursor is moved. The callback is provided with the
|
|
|
|
* which is called when the cursor is moved. The callback is provided with the
|
|
|
|
* position relative to the upper-left corner of the client area of the window.
|
|
|
|
* position, in screen coordinates, relative to the upper-left corner of the
|
|
|
|
|
|
|
|
* client area of the window.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param[in] window The window whose callback to set.
|
|
|
|
* @param[in] window The window whose callback to set.
|
|
|
|
* @param[in] cbfun The new callback, or `NULL` to remove the currently set
|
|
|
|
* @param[in] cbfun The new callback, or `NULL` to remove the currently set
|
|
|
@ -2202,6 +2227,11 @@ GLFWAPI void glfwSwapBuffers(GLFWwindow* window);
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @remarks This function may be called from secondary threads.
|
|
|
|
* @remarks This function may be called from secondary threads.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
|
|
|
|
* @note This function is not called during window creation, leaving the swap
|
|
|
|
|
|
|
|
* interval set to whatever is the default on that platform. This is done
|
|
|
|
|
|
|
|
* because some swap interval extensions used by GLFW do not allow the swap
|
|
|
|
|
|
|
|
* interval to be reset to zero once it has been set to a non-zero value.
|
|
|
|
|
|
|
|
*
|
|
|
|
* @note Some GPU drivers do not honor the requested swap interval, either
|
|
|
|
* @note Some GPU drivers do not honor the requested swap interval, either
|
|
|
|
* because of user settings that override the request or due to bugs in the
|
|
|
|
* because of user settings that override the request or due to bugs in the
|
|
|
|
* driver.
|
|
|
|
* driver.
|