Functions and types related to windows. More...
Classes | |
struct | GLFWimage |
Image data. More... | |
Macros | |
#define | GLFW_ACCUM_ALPHA_BITS 0x0002100A |
Framebuffer bit depth hint. More... | |
#define | GLFW_ACCUM_BLUE_BITS 0x00021009 |
Framebuffer bit depth hint. More... | |
#define | GLFW_ACCUM_GREEN_BITS 0x00021008 |
Framebuffer bit depth hint. More... | |
#define | GLFW_ACCUM_RED_BITS 0x00021007 |
Framebuffer bit depth hint. More... | |
#define | GLFW_ALPHA_BITS 0x00021004 |
Framebuffer bit depth hint. More... | |
#define | GLFW_AUTO_ICONIFY 0x00020006 |
Window auto-iconification window hint and attribute. More... | |
#define | GLFW_AUX_BUFFERS 0x0002100B |
Framebuffer auxiliary buffer hint. More... | |
#define | GLFW_BLUE_BITS 0x00021003 |
Framebuffer bit depth hint. More... | |
#define | GLFW_CENTER_CURSOR 0x00020009 |
Cursor centering window hint. More... | |
#define | GLFW_CLIENT_API 0x00022001 |
Context client API hint and attribute. More... | |
#define | GLFW_COCOA_FRAME_NAME 0x00023002 |
#define | GLFW_COCOA_GRAPHICS_SWITCHING 0x00023003 |
#define | GLFW_COCOA_RETINA_FRAMEBUFFER 0x00023001 |
#define | GLFW_CONTEXT_CREATION_API 0x0002200B |
Context creation API hint and attribute. More... | |
#define | GLFW_CONTEXT_NO_ERROR 0x0002200A |
Context error suppression hint and attribute. More... | |
#define | GLFW_CONTEXT_RELEASE_BEHAVIOR 0x00022009 |
Context flush-on-release hint and attribute. More... | |
#define | GLFW_CONTEXT_REVISION 0x00022004 |
Context client API revision number hint and attribute. More... | |
#define | GLFW_CONTEXT_ROBUSTNESS 0x00022005 |
Context robustness hint and attribute. More... | |
#define | GLFW_CONTEXT_VERSION_MAJOR 0x00022002 |
Context client API major version hint and attribute. More... | |
#define | GLFW_CONTEXT_VERSION_MINOR 0x00022003 |
Context client API minor version hint and attribute. More... | |
#define | GLFW_DECORATED 0x00020005 |
Window decoration window hint and attribute. More... | |
#define | GLFW_DEPTH_BITS 0x00021005 |
Framebuffer bit depth hint. More... | |
#define | GLFW_DOUBLEBUFFER 0x00021010 |
Framebuffer double buffering hint. More... | |
#define | GLFW_FLOATING 0x00020007 |
Window decoration window hint and attribute. More... | |
#define | GLFW_FOCUS_ON_SHOW 0x0002000C |
Input focus on calling show window hint and attribute. More... | |
#define | GLFW_FOCUSED 0x00020001 |
Input focus window hint and attribute. More... | |
#define | GLFW_GREEN_BITS 0x00021002 |
Framebuffer bit depth hint. More... | |
#define | GLFW_HOVERED 0x0002000B |
Mouse cursor hover window attribute. More... | |
#define | GLFW_ICONIFIED 0x00020002 |
Window iconification window attribute. More... | |
#define | GLFW_MAXIMIZED 0x00020008 |
Window maximization window hint and attribute. More... | |
#define | GLFW_OPENGL_DEBUG_CONTEXT 0x00022007 |
OpenGL debug context hint and attribute. More... | |
#define | GLFW_OPENGL_FORWARD_COMPAT 0x00022006 |
OpenGL forward-compatibility hint and attribute. More... | |
#define | GLFW_OPENGL_PROFILE 0x00022008 |
OpenGL profile hint and attribute. More... | |
#define | GLFW_RED_BITS 0x00021001 |
Framebuffer bit depth hint. More... | |
#define | GLFW_REFRESH_RATE 0x0002100F |
Monitor refresh rate hint. More... | |
#define | GLFW_RESIZABLE 0x00020003 |
Window resize-ability window hint and attribute. More... | |
#define | GLFW_SAMPLES 0x0002100D |
Framebuffer MSAA samples hint. More... | |
#define | GLFW_SCALE_TO_MONITOR 0x0002200C |
Window content area scaling window window hint. More... | |
#define | GLFW_SRGB_CAPABLE 0x0002100E |
Framebuffer sRGB hint. More... | |
#define | GLFW_STENCIL_BITS 0x00021006 |
Framebuffer bit depth hint. More... | |
#define | GLFW_STEREO 0x0002100C |
OpenGL stereoscopic rendering hint. More... | |
#define | GLFW_TRANSPARENT_FRAMEBUFFER 0x0002000A |
Window framebuffer transparency hint and attribute. More... | |
#define | GLFW_VISIBLE 0x00020004 |
Window visibility window hint and attribute. More... | |
#define | GLFW_X11_CLASS_NAME 0x00024001 |
#define | GLFW_X11_INSTANCE_NAME 0x00024002 |
Typedefs | |
typedef void(* | GLFWframebuffersizefun) (GLFWwindow *, int, int) |
The function signature for framebuffer resize callbacks. More... | |
typedef struct GLFWimage | GLFWimage |
Image data. More... | |
typedef struct GLFWwindow | GLFWwindow |
Opaque window object. More... | |
typedef void(* | GLFWwindowclosefun) (GLFWwindow *) |
The function signature for window close callbacks. More... | |
typedef void(* | GLFWwindowcontentscalefun) (GLFWwindow *, float, float) |
The function signature for window content scale callbacks. More... | |
typedef void(* | GLFWwindowfocusfun) (GLFWwindow *, int) |
The function signature for window focus/defocus callbacks. More... | |
typedef void(* | GLFWwindowiconifyfun) (GLFWwindow *, int) |
The function signature for window iconify/restore callbacks. More... | |
typedef void(* | GLFWwindowmaximizefun) (GLFWwindow *, int) |
The function signature for window maximize/restore callbacks. More... | |
typedef void(* | GLFWwindowposfun) (GLFWwindow *, int, int) |
The function signature for window position callbacks. More... | |
typedef void(* | GLFWwindowrefreshfun) (GLFWwindow *) |
The function signature for window content refresh callbacks. More... | |
typedef void(* | GLFWwindowsizefun) (GLFWwindow *, int, int) |
The function signature for window resize callbacks. More... | |
Functions | |
GLFWAPI GLFWwindow * | glfwCreateWindow (int width, int height, const char *title, GLFWmonitor *monitor, GLFWwindow *share) |
Creates a window and its associated context. More... | |
GLFWAPI void | glfwDefaultWindowHints (void) |
Resets all window hints to their default values. More... | |
GLFWAPI void | glfwDestroyWindow (GLFWwindow *window) |
Destroys the specified window and its context. More... | |
GLFWAPI void | glfwFocusWindow (GLFWwindow *window) |
Brings the specified window to front and sets input focus. More... | |
GLFWAPI void | glfwGetFramebufferSize (GLFWwindow *window, int *width, int *height) |
Retrieves the size of the framebuffer of the specified window. More... | |
GLFWAPI int | glfwGetWindowAttrib (GLFWwindow *window, int attrib) |
Returns an attribute of the specified window. More... | |
GLFWAPI void | glfwGetWindowContentScale (GLFWwindow *window, float *xscale, float *yscale) |
Retrieves the content scale for the specified window. More... | |
GLFWAPI void | glfwGetWindowFrameSize (GLFWwindow *window, int *left, int *top, int *right, int *bottom) |
Retrieves the size of the frame of the window. More... | |
GLFWAPI GLFWmonitor * | glfwGetWindowMonitor (GLFWwindow *window) |
Returns the monitor that the window uses for full screen mode. More... | |
GLFWAPI float | glfwGetWindowOpacity (GLFWwindow *window) |
Returns the opacity of the whole window. More... | |
GLFWAPI void | glfwGetWindowPos (GLFWwindow *window, int *xpos, int *ypos) |
Retrieves the position of the client area of the specified window. More... | |
GLFWAPI void | glfwGetWindowSize (GLFWwindow *window, int *width, int *height) |
Retrieves the size of the client area of the specified window. More... | |
GLFWAPI void * | glfwGetWindowUserPointer (GLFWwindow *window) |
Returns the user pointer of the specified window. More... | |
GLFWAPI void | glfwHideWindow (GLFWwindow *window) |
Hides the specified window. More... | |
GLFWAPI void | glfwIconifyWindow (GLFWwindow *window) |
Iconifies the specified window. More... | |
GLFWAPI void | glfwMaximizeWindow (GLFWwindow *window) |
Maximizes the specified window. More... | |
GLFWAPI void | glfwPollEvents (void) |
Processes all pending events. More... | |
GLFWAPI void | glfwPostEmptyEvent (void) |
Posts an empty event to the event queue. More... | |
GLFWAPI void | glfwRequestWindowAttention (GLFWwindow *window) |
Requests user attention to the specified window. More... | |
GLFWAPI void | glfwRestoreWindow (GLFWwindow *window) |
Restores the specified window. More... | |
GLFWAPI GLFWframebuffersizefun | glfwSetFramebufferSizeCallback (GLFWwindow *window, GLFWframebuffersizefun cbfun) |
Sets the framebuffer resize callback for the specified window. More... | |
GLFWAPI void | glfwSetWindowAspectRatio (GLFWwindow *window, int numer, int denom) |
Sets the aspect ratio of the specified window. More... | |
GLFWAPI void | glfwSetWindowAttrib (GLFWwindow *window, int attrib, int value) |
Sets an attribute of the specified window. More... | |
GLFWAPI GLFWwindowclosefun | glfwSetWindowCloseCallback (GLFWwindow *window, GLFWwindowclosefun cbfun) |
Sets the close callback for the specified window. More... | |
GLFWAPI GLFWwindowcontentscalefun | glfwSetWindowContentScaleCallback (GLFWwindow *window, GLFWwindowcontentscalefun cbfun) |
Sets the window content scale callback for the specified window. More... | |
GLFWAPI GLFWwindowfocusfun | glfwSetWindowFocusCallback (GLFWwindow *window, GLFWwindowfocusfun cbfun) |
Sets the focus callback for the specified window. More... | |
GLFWAPI void | glfwSetWindowIcon (GLFWwindow *window, int count, const GLFWimage *images) |
Sets the icon for the specified window. More... | |
GLFWAPI GLFWwindowiconifyfun | glfwSetWindowIconifyCallback (GLFWwindow *window, GLFWwindowiconifyfun cbfun) |
Sets the iconify callback for the specified window. More... | |
GLFWAPI GLFWwindowmaximizefun | glfwSetWindowMaximizeCallback (GLFWwindow *window, GLFWwindowmaximizefun cbfun) |
Sets the maximize callback for the specified window. More... | |
GLFWAPI void | glfwSetWindowMonitor (GLFWwindow *window, GLFWmonitor *monitor, int xpos, int ypos, int width, int height, int refreshRate) |
Sets the mode, monitor, video mode and placement of a window. More... | |
GLFWAPI void | glfwSetWindowOpacity (GLFWwindow *window, float opacity) |
Sets the opacity of the whole window. More... | |
GLFWAPI void | glfwSetWindowPos (GLFWwindow *window, int xpos, int ypos) |
Sets the position of the client area of the specified window. More... | |
GLFWAPI GLFWwindowposfun | glfwSetWindowPosCallback (GLFWwindow *window, GLFWwindowposfun cbfun) |
Sets the position callback for the specified window. More... | |
GLFWAPI GLFWwindowrefreshfun | glfwSetWindowRefreshCallback (GLFWwindow *window, GLFWwindowrefreshfun cbfun) |
Sets the refresh callback for the specified window. More... | |
GLFWAPI void | glfwSetWindowShouldClose (GLFWwindow *window, int value) |
Sets the close flag of the specified window. More... | |
GLFWAPI void | glfwSetWindowSize (GLFWwindow *window, int width, int height) |
Sets the size of the client area of the specified window. More... | |
GLFWAPI GLFWwindowsizefun | glfwSetWindowSizeCallback (GLFWwindow *window, GLFWwindowsizefun cbfun) |
Sets the size callback for the specified window. More... | |
GLFWAPI void | glfwSetWindowSizeLimits (GLFWwindow *window, int minwidth, int minheight, int maxwidth, int maxheight) |
Sets the size limits of the specified window. More... | |
GLFWAPI void | glfwSetWindowTitle (GLFWwindow *window, const char *title) |
Sets the title of the specified window. More... | |
GLFWAPI void | glfwSetWindowUserPointer (GLFWwindow *window, void *pointer) |
Sets the user pointer of the specified window. More... | |
GLFWAPI void | glfwShowWindow (GLFWwindow *window) |
Makes the specified window visible. More... | |
GLFWAPI void | glfwSwapBuffers (GLFWwindow *window) |
Swaps the front and back buffers of the specified window. More... | |
GLFWAPI void | glfwWaitEvents (void) |
Waits until events are queued and processes them. More... | |
GLFWAPI void | glfwWaitEventsTimeout (double timeout) |
Waits with timeout until events are queued and processes them. More... | |
GLFWAPI void | glfwWindowHint (int hint, int value) |
Sets the specified window hint to the desired value. More... | |
GLFWAPI void | glfwWindowHintString (int hint, const char *value) |
Sets the specified window hint to the desired value. More... | |
GLFWAPI int | glfwWindowShouldClose (GLFWwindow *window) |
Checks the close flag of the specified window. More... | |
Functions and types related to windows.
This is the reference documentation for window related functions and types, including creation, deletion and event polling. For more task-oriented information, see the Window guide.
#define GLFW_ACCUM_ALPHA_BITS 0x0002100A |
#define GLFW_ACCUM_BLUE_BITS 0x00021009 |
#define GLFW_ACCUM_GREEN_BITS 0x00021008 |
#define GLFW_ACCUM_RED_BITS 0x00021007 |
#define GLFW_ALPHA_BITS 0x00021004 |
#define GLFW_AUTO_ICONIFY 0x00020006 |
Window auto-iconification window hint and attribute.
Window auto-iconification window hint and window attribute.
#define GLFW_AUX_BUFFERS 0x0002100B |
#define GLFW_BLUE_BITS 0x00021003 |
#define GLFW_CENTER_CURSOR 0x00020009 |
#define GLFW_CLIENT_API 0x00022001 |
#define GLFW_CONTEXT_CREATION_API 0x0002200B |
#define GLFW_CONTEXT_NO_ERROR 0x0002200A |
#define GLFW_CONTEXT_RELEASE_BEHAVIOR 0x00022009 |
#define GLFW_CONTEXT_REVISION 0x00022004 |
#define GLFW_CONTEXT_ROBUSTNESS 0x00022005 |
#define GLFW_CONTEXT_VERSION_MAJOR 0x00022002 |
#define GLFW_CONTEXT_VERSION_MINOR 0x00022003 |
#define GLFW_DECORATED 0x00020005 |
Window decoration window hint and attribute.
Window decoration window hint and window attribute.
#define GLFW_DEPTH_BITS 0x00021005 |
#define GLFW_DOUBLEBUFFER 0x00021010 |
#define GLFW_FLOATING 0x00020007 |
Window decoration window hint and attribute.
Window decoration window hint and window attribute.
#define GLFW_FOCUS_ON_SHOW 0x0002000C |
Input focus on calling show window hint and attribute.
Input focus window hint or window attribute.
#define GLFW_FOCUSED 0x00020001 |
Input focus window hint and attribute.
Input focus window hint or window attribute.
#define GLFW_GREEN_BITS 0x00021002 |
#define GLFW_HOVERED 0x0002000B |
Mouse cursor hover window attribute.
Mouse cursor hover window attribute.
#define GLFW_ICONIFIED 0x00020002 |
Window iconification window attribute.
Window iconification window attribute.
#define GLFW_MAXIMIZED 0x00020008 |
Window maximization window hint and attribute.
Window maximization window hint and window attribute.
#define GLFW_OPENGL_DEBUG_CONTEXT 0x00022007 |
#define GLFW_OPENGL_FORWARD_COMPAT 0x00022006 |
#define GLFW_OPENGL_PROFILE 0x00022008 |
#define GLFW_RED_BITS 0x00021001 |
#define GLFW_REFRESH_RATE 0x0002100F |
#define GLFW_RESIZABLE 0x00020003 |
Window resize-ability window hint and attribute.
Window resize-ability window hint and window attribute.
#define GLFW_SAMPLES 0x0002100D |
#define GLFW_SCALE_TO_MONITOR 0x0002200C |
Window content area scaling window window hint.
#define GLFW_SRGB_CAPABLE 0x0002100E |
#define GLFW_STENCIL_BITS 0x00021006 |
#define GLFW_STEREO 0x0002100C |
#define GLFW_TRANSPARENT_FRAMEBUFFER 0x0002000A |
Window framebuffer transparency hint and attribute.
Window framebuffer transparency window hint and window attribute.
#define GLFW_VISIBLE 0x00020004 |
Window visibility window hint and attribute.
Window visibility window hint and window attribute.
typedef void(* GLFWframebuffersizefun) (GLFWwindow *, int, int) |
The function signature for framebuffer resize callbacks.
This is the function signature for framebuffer resize callback functions.
[in] | window | The window whose framebuffer was resized. |
[in] | width | The new width, in pixels, of the framebuffer. |
[in] | height | The new height, in pixels, of the framebuffer. |
Image data.
This describes a single 2D image. See the documentation for each related function what the expected pixel format is.
typedef struct GLFWwindow GLFWwindow |
typedef void(* GLFWwindowclosefun) (GLFWwindow *) |
The function signature for window close callbacks.
This is the function signature for window close callback functions.
[in] | window | The window that the user attempted to close. |
typedef void(* GLFWwindowcontentscalefun) (GLFWwindow *, float, float) |
The function signature for window content scale callbacks.
This is the function signature for window content scale callback functions.
[in] | window | The window whose content scale changed. |
[in] | xscale | The new x-axis content scale of the window. |
[in] | yscale | The new y-axis content scale of the window. |
typedef void(* GLFWwindowfocusfun) (GLFWwindow *, int) |
The function signature for window focus/defocus callbacks.
This is the function signature for window focus callback functions.
[in] | window | The window that gained or lost input focus. |
[in] | focused | GLFW_TRUE if the window was given input focus, or GLFW_FALSE if it lost it. |
typedef void(* GLFWwindowiconifyfun) (GLFWwindow *, int) |
The function signature for window iconify/restore callbacks.
This is the function signature for window iconify/restore callback functions.
[in] | window | The window that was iconified or restored. |
[in] | iconified | GLFW_TRUE if the window was iconified, or GLFW_FALSE if it was restored. |
typedef void(* GLFWwindowmaximizefun) (GLFWwindow *, int) |
The function signature for window maximize/restore callbacks.
This is the function signature for window maximize/restore callback functions.
[in] | window | The window that was maximized or restored. |
[in] | iconified | GLFW_TRUE if the window was maximized, or GLFW_FALSE if it was restored. |
typedef void(* GLFWwindowposfun) (GLFWwindow *, int, int) |
The function signature for window position callbacks.
This is the function signature for window position callback functions.
[in] | window | The window that was moved. |
[in] | xpos | The new x-coordinate, in screen coordinates, of the upper-left corner of the client area of the window. |
[in] | ypos | The new y-coordinate, in screen coordinates, of the upper-left corner of the client area of the window. |
typedef void(* GLFWwindowrefreshfun) (GLFWwindow *) |
The function signature for window content refresh callbacks.
This is the function signature for window refresh callback functions.
[in] | window | The window whose content needs to be refreshed. |
typedef void(* GLFWwindowsizefun) (GLFWwindow *, int, int) |
The function signature for window resize callbacks.
This is the function signature for window size callback functions.
[in] | window | The window that was resized. |
[in] | width | The new width, in screen coordinates, of the window. |
[in] | height | The new height, in screen coordinates, of the window. |
GLFWAPI GLFWwindow* glfwCreateWindow | ( | int | width, |
int | height, | ||
const char * | title, | ||
GLFWmonitor * | monitor, | ||
GLFWwindow * | share | ||
) |
Creates a window and its associated context.
This function creates a window and its associated OpenGL or OpenGL ES context. Most of the options controlling how the window and its context should be created are specified with window hints.
Successful creation does not change which context is current. Before you can use the newly created context, you need to make it current. For information about the share
parameter, see Context object sharing.
The created window, framebuffer and context may differ from what you requested, as not all parameters and hints are hard constraints. This includes the size of the window, especially for full screen windows. To query the actual attributes of the created window, framebuffer and context, see glfwGetWindowAttrib, glfwGetWindowSize and glfwGetFramebufferSize.
To create a full screen window, you need to specify the monitor the window will cover. If no monitor is specified, the window will be windowed mode. Unless you have a way for the user to choose a specific monitor, it is recommended that you pick the primary monitor. For more information on how to query connected monitors, see Retrieving monitors.
For full screen windows, the specified size becomes the resolution of the window's desired video mode. As long as a full screen window is not iconified, the supported video mode most closely matching the desired video mode is set for the specified monitor. For more information about full screen windows, including the creation of so called windowed full screen or borderless full screen windows, see "Windowed full screen" windows.
Once you have created the window, you can switch it between windowed and full screen mode with glfwSetWindowMonitor. This will not affect its OpenGL or OpenGL ES context.
By default, newly created windows use the placement recommended by the window system. To create the window at a specific position, make it initially invisible using the GLFW_VISIBLE window hint, set its position and then show it.
As long as at least one full screen window is not iconified, the screensaver is prohibited from starting.
Window systems put limits on window sizes. Very large or very small window dimensions may be overridden by the window system on creation. Check the actual size after creation.
The swap interval is not set during window creation and the initial value may vary depending on driver settings and defaults.
[in] | width | The desired width, in screen coordinates, of the window. This must be greater than zero. |
[in] | height | The desired height, in screen coordinates, of the window. This must be greater than zero. |
[in] | title | The initial, UTF-8 encoded window title. |
[in] | monitor | The monitor to use for full screen mode, or NULL for windowed mode. |
[in] | share | The window whose context to share resources with, or NULL to not share resources. |
NULL
if an error occurred.Possible errors include GLFW_NOT_INITIALIZED, GLFW_INVALID_ENUM, GLFW_INVALID_VALUE, GLFW_API_UNAVAILABLE, GLFW_VERSION_UNAVAILABLE, GLFW_FORMAT_UNAVAILABLE and GLFW_PLATFORM_ERROR.
GLFW_ICON,
it will be set as the initial icon for the window. If no such icon is present, the IDI_APPLICATION
icon will be used instead. To set a different icon, see glfwSetWindowIcon.MainMenu.nib
it is loaded and assumed to contain a menu bar. Otherwise a minimal menu bar is created manually with common commands like Hide, Quit and About. The About entry opens a minimal about dialog with information from the application's bundle. Menu bar creation can be disabled entirely with the GLFW_COCOA_MENUBAR init hint.GLFW_TRUE
and the NSHighResolutionCapable
key is enabled in the application bundle's Info.plist
. For more information, see High Resolution Guidelines for OS X in the Mac Developer Library. The GLFW test and example programs use a custom Info.plist
template for this, which can be found as CMake/MacOSXBundleInfo.plist.in
in the source tree.WM_CLASS
window property will by default be set to the window title passed to this function. The instance part will use the contents of the RESOURCE_NAME
environment variable, if present and not empty, or fall back to the window title. Set the GLFW_X11_CLASS_NAME and GLFW_X11_INSTANCE_NAME window hints to override this.This function must only be called from the main thread.
glfwOpenWindow
. Resets all window hints to their default values.
This function resets all window hints to their default values.
Possible errors include GLFW_NOT_INITIALIZED.
This function must only be called from the main thread.
GLFWAPI void glfwDestroyWindow | ( | GLFWwindow * | window | ) |
Destroys the specified window and its context.
This function destroys the specified window and its context. On calling this function, no further callbacks will be called for that window.
If the context of the specified window is current on the main thread, it is detached before being destroyed.
[in] | window | The window to destroy. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must not be called from a callback.
This function must only be called from the main thread.
glfwCloseWindow
. GLFWAPI void glfwFocusWindow | ( | GLFWwindow * | window | ) |
Brings the specified window to front and sets input focus.
This function brings the specified window to front and sets input focus. The window should already be visible and not iconified.
By default, both windowed and full screen mode windows are focused when initially created. Set the GLFW_FOCUSED to disable this behavior.
Also by default, windowed mode windows are focused when shown with glfwShowWindow. Set the GLFW_FOCUS_ON_SHOW to disable this behavior.
Do not use this function to steal focus from other applications unless you are certain that is what the user wants. Focus stealing can be extremely disruptive.
For a less disruptive way of getting the user's attention, see attention requests.
[in] | window | The window to give input focus. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwGetFramebufferSize | ( | GLFWwindow * | window, |
int * | width, | ||
int * | height | ||
) |
Retrieves the size of the framebuffer of the specified window.
This function retrieves the size, in pixels, of the framebuffer of the specified window. If you wish to retrieve the size of the window in screen coordinates, see glfwGetWindowSize.
Any or all of the size arguments may be NULL
. If an error occurs, all non-NULL
size arguments will be set to zero.
[in] | window | The window whose framebuffer to query. |
[out] | width | Where to store the width, in pixels, of the framebuffer, or NULL . |
[out] | height | Where to store the height, in pixels, of the framebuffer, or NULL . |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI int glfwGetWindowAttrib | ( | GLFWwindow * | window, |
int | attrib | ||
) |
Returns an attribute of the specified window.
This function returns the value of an attribute of the specified window or its OpenGL or OpenGL ES context.
[in] | window | The window to query. |
[in] | attrib | The window attribute whose value to return. |
Possible errors include GLFW_NOT_INITIALIZED, GLFW_INVALID_ENUM and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
glfwGetWindowParam
and glfwGetGLVersion
. GLFWAPI void glfwGetWindowContentScale | ( | GLFWwindow * | window, |
float * | xscale, | ||
float * | yscale | ||
) |
Retrieves the content scale for the specified window.
This function retrieves the content scale for the specified window. The content scale is the ratio between the current DPI and the platform's default DPI. If you scale all pixel dimensions by this scale then your content should appear at an appropriate size. This is especially important for text and any UI elements.
On systems where each monitors can have its own content scale, the window content scale will depend on which monitor the system considers the window to be on.
[in] | window | The window to query. |
[out] | xscale | Where to store the x-axis content scale, or NULL . |
[out] | yscale | Where to store the y-axis content scale, or NULL . |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwGetWindowFrameSize | ( | GLFWwindow * | window, |
int * | left, | ||
int * | top, | ||
int * | right, | ||
int * | bottom | ||
) |
Retrieves the size of the frame of the window.
This function retrieves the size, in screen coordinates, of each edge of the frame of the specified window. This size includes the title bar, if the window has one. The size of the frame may vary depending on the window-related hints used to create it.
Because this function retrieves the size of each window frame edge and not the offset along a particular coordinate axis, the retrieved values will always be zero or positive.
Any or all of the size arguments may be NULL
. If an error occurs, all non-NULL
size arguments will be set to zero.
[in] | window | The window whose frame size to query. |
[out] | left | Where to store the size, in screen coordinates, of the left edge of the window frame, or NULL . |
[out] | top | Where to store the size, in screen coordinates, of the top edge of the window frame, or NULL . |
[out] | right | Where to store the size, in screen coordinates, of the right edge of the window frame, or NULL . |
[out] | bottom | Where to store the size, in screen coordinates, of the bottom edge of the window frame, or NULL . |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI GLFWmonitor* glfwGetWindowMonitor | ( | GLFWwindow * | window | ) |
Returns the monitor that the window uses for full screen mode.
This function returns the handle of the monitor that the specified window is in full screen on.
[in] | window | The window to query. |
NULL
if the window is in windowed mode or an error occurred.Possible errors include GLFW_NOT_INITIALIZED.
This function must only be called from the main thread.
GLFWAPI float glfwGetWindowOpacity | ( | GLFWwindow * | window | ) |
Returns the opacity of the whole window.
This function returns the opacity of the window, including any decorations.
The opacity (or alpha) value is a positive finite number between zero and one, where zero is fully transparent and one is fully opaque. If the system does not support whole window transparency, this function always returns one.
The initial opacity value for newly created windows is one.
[in] | window | The window to query. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwGetWindowPos | ( | GLFWwindow * | window, |
int * | xpos, | ||
int * | ypos | ||
) |
Retrieves the position of the client area of the specified window.
This function retrieves the position, in screen coordinates, of the upper-left corner of the client area of the specified window.
Any or all of the position arguments may be NULL
. If an error occurs, all non-NULL
position arguments will be set to zero.
[in] | window | The window to query. |
[out] | xpos | Where to store the x-coordinate of the upper-left corner of the client area, or NULL . |
[out] | ypos | Where to store the y-coordinate of the upper-left corner of the client area, or NULL . |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwGetWindowSize | ( | GLFWwindow * | window, |
int * | width, | ||
int * | height | ||
) |
Retrieves the size of the client area of the specified window.
This function retrieves the size, in screen coordinates, of the client area of the specified window. If you wish to retrieve the size of the framebuffer of the window in pixels, see glfwGetFramebufferSize.
Any or all of the size arguments may be NULL
. If an error occurs, all non-NULL
size arguments will be set to zero.
[in] | window | The window whose size to retrieve. |
[out] | width | Where to store the width, in screen coordinates, of the client area, or NULL . |
[out] | height | Where to store the height, in screen coordinates, of the client area, or NULL . |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void* glfwGetWindowUserPointer | ( | GLFWwindow * | window | ) |
Returns the user pointer of the specified window.
This function returns the current value of the user-defined pointer of the specified window. The initial value is NULL
.
[in] | window | The window whose pointer to return. |
Possible errors include GLFW_NOT_INITIALIZED.
This function may be called from any thread. Access is not synchronized.
GLFWAPI void glfwHideWindow | ( | GLFWwindow * | window | ) |
Hides the specified window.
This function hides the specified window if it was previously visible. If the window is already hidden or is in full screen mode, this function does nothing.
[in] | window | The window to hide. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwIconifyWindow | ( | GLFWwindow * | window | ) |
Iconifies the specified window.
This function iconifies (minimizes) the specified window if it was previously restored. If the window is already iconified, this function does nothing.
If the specified window is a full screen window, the original monitor resolution is restored until the window is restored.
[in] | window | The window to iconify. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwMaximizeWindow | ( | GLFWwindow * | window | ) |
Maximizes the specified window.
This function maximizes the specified window if it was previously not maximized. If the window is already maximized, this function does nothing.
If the specified window is a full screen window, this function does nothing.
[in] | window | The window to maximize. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
Processes all pending events.
This function processes only those events that are already in the event queue and then returns immediately. Processing events will cause the window and input callbacks associated with those events to be called.
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 to redraw the contents of your window when necessary during such operations.
Do not assume that callbacks you set will only be called in response to event processing functions like this one. While it is necessary to poll for events, window systems that require GLFW to register callbacks of its own can pass events to GLFW in response to many window system function calls. GLFW will pass those events on to the application callbacks before returning.
Event processing is not required for joystick input to work.
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must not be called from a callback.
This function must only be called from the main thread.
Posts an empty event to the event queue.
This function posts an empty event from the current thread to the event queue, causing glfwWaitEvents or glfwWaitEventsTimeout to return.
If no windows exist, this function returns immediately. For synchronization of threads in applications that do not create windows, use your threading library of choice.
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function may be called from any thread.
GLFWAPI void glfwRequestWindowAttention | ( | GLFWwindow * | window | ) |
Requests user attention to the specified window.
This function requests user attention to the specified window. On platforms where this is not supported, attention is requested to the application as a whole.
Once the user has given attention, usually by focusing the window or application, the system will end the request automatically.
[in] | window | The window to request attention to. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwRestoreWindow | ( | GLFWwindow * | window | ) |
Restores the specified window.
This function restores the specified window if it was previously iconified (minimized) or maximized. If the window is already restored, this function does nothing.
If the specified window is a full screen window, the resolution chosen for the window is restored on the selected monitor.
[in] | window | The window to restore. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI GLFWframebuffersizefun glfwSetFramebufferSizeCallback | ( | GLFWwindow * | window, |
GLFWframebuffersizefun | cbfun | ||
) |
Sets the framebuffer resize callback for the specified window.
This function sets the framebuffer resize callback of the specified window, which is called when the framebuffer of the specified window is resized.
[in] | window | The window whose callback to set. |
[in] | cbfun | The new callback, or NULL to remove the currently set callback. |
NULL
if no callback was set or the library had not been initialized.Possible errors include GLFW_NOT_INITIALIZED.
This function must only be called from the main thread.
GLFWAPI void glfwSetWindowAspectRatio | ( | GLFWwindow * | window, |
int | numer, | ||
int | denom | ||
) |
Sets the aspect ratio of the specified window.
This function sets the required aspect ratio of the client area of the specified window. If the window is full screen, the aspect ratio only takes effect once it is made windowed. If the window is not resizable, this function does nothing.
The aspect ratio is specified as a numerator and a denominator and both values must be greater than zero. For example, the common 16:9 aspect ratio is specified as 16 and 9, respectively.
If the numerator and denominator is set to GLFW_DONT_CARE
then the aspect ratio limit is disabled.
The aspect ratio is applied immediately to a windowed mode window and may cause it to be resized.
[in] | window | The window to set limits for. |
[in] | numer | The numerator of the desired aspect ratio, or GLFW_DONT_CARE . |
[in] | denom | The denominator of the desired aspect ratio, or GLFW_DONT_CARE . |
Possible errors include GLFW_NOT_INITIALIZED, GLFW_INVALID_VALUE and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwSetWindowAttrib | ( | GLFWwindow * | window, |
int | attrib, | ||
int | value | ||
) |
Sets an attribute of the specified window.
This function sets the value of an attribute of the specified window.
The supported attributes are GLFW_DECORATED, GLFW_RESIZABLE, GLFW_FLOATING, GLFW_AUTO_ICONIFY and GLFW_FOCUS_ON_SHOW.
Some of these attributes are ignored for full screen windows. The new value will take effect if the window is later made windowed.
Some of these attributes are ignored for windowed mode windows. The new value will take effect if the window is later made full screen.
[in] | window | The window to set the attribute for. |
[in] | attrib | A supported window attribute. |
[in] | value | GLFW_TRUE or GLFW_FALSE . |
Possible errors include GLFW_NOT_INITIALIZED, GLFW_INVALID_ENUM, GLFW_INVALID_VALUE and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI GLFWwindowclosefun glfwSetWindowCloseCallback | ( | GLFWwindow * | window, |
GLFWwindowclosefun | cbfun | ||
) |
Sets the close callback for the specified window.
This function sets the close callback of the specified window, which is called when the user attempts to close the window, for example by clicking the close widget in the title bar.
The close flag is set before this callback is called, but you can modify it at any time with glfwSetWindowShouldClose.
The close callback is not triggered by glfwDestroyWindow.
[in] | window | The window whose callback to set. |
[in] | cbfun | The new callback, or NULL to remove the currently set callback. |
NULL
if no callback was set or the library had not been initialized.Possible errors include GLFW_NOT_INITIALIZED.
This function must only be called from the main thread.
GLFWAPI GLFWwindowcontentscalefun glfwSetWindowContentScaleCallback | ( | GLFWwindow * | window, |
GLFWwindowcontentscalefun | cbfun | ||
) |
Sets the window content scale callback for the specified window.
This function sets the window content scale callback of the specified window, which is called when the content scale of the specified window changes.
[in] | window | The window whose callback to set. |
[in] | cbfun | The new callback, or NULL to remove the currently set callback. |
NULL
if no callback was set or the library had not been initialized.Possible errors include GLFW_NOT_INITIALIZED.
This function must only be called from the main thread.
GLFWAPI GLFWwindowfocusfun glfwSetWindowFocusCallback | ( | GLFWwindow * | window, |
GLFWwindowfocusfun | cbfun | ||
) |
Sets the focus callback for the specified window.
This function sets the focus callback of the specified window, which is called when the window gains or loses input focus.
After the focus callback is called for a window that lost input focus, synthetic key and mouse button release events will be generated for all such that had been pressed. For more information, see glfwSetKeyCallback and glfwSetMouseButtonCallback.
[in] | window | The window whose callback to set. |
[in] | cbfun | The new callback, or NULL to remove the currently set callback. |
NULL
if no callback was set or the library had not been initialized.Possible errors include GLFW_NOT_INITIALIZED.
This function must only be called from the main thread.
GLFWAPI void glfwSetWindowIcon | ( | GLFWwindow * | window, |
int | count, | ||
const GLFWimage * | images | ||
) |
Sets the icon for the specified window.
This function sets the icon of the specified window. If passed an array of candidate images, those of or closest to the sizes desired by the system are selected. If no images are specified, the window reverts to its default icon.
The pixels are 32-bit, little-endian, non-premultiplied RGBA, i.e. eight bits per channel with the red channel first. They are arranged canonically as packed sequential rows, starting from the top-left corner.
The desired image sizes varies depending on platform and system settings. The selected images will be rescaled as needed. Good sizes include 16x16, 32x32 and 48x48.
[in] | window | The window whose icon to set. |
[in] | count | The number of images in the specified array, or zero to revert to the default window icon. |
[in] | images | The images to create the icon from. This is ignored if count is zero. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
The specified image data is copied before this function returns.
This function must only be called from the main thread.
GLFWAPI GLFWwindowiconifyfun glfwSetWindowIconifyCallback | ( | GLFWwindow * | window, |
GLFWwindowiconifyfun | cbfun | ||
) |
Sets the iconify callback for the specified window.
This function sets the iconification callback of the specified window, which is called when the window is iconified or restored.
[in] | window | The window whose callback to set. |
[in] | cbfun | The new callback, or NULL to remove the currently set callback. |
NULL
if no callback was set or the library had not been initialized.Possible errors include GLFW_NOT_INITIALIZED.
This function must only be called from the main thread.
GLFWAPI GLFWwindowmaximizefun glfwSetWindowMaximizeCallback | ( | GLFWwindow * | window, |
GLFWwindowmaximizefun | cbfun | ||
) |
Sets the maximize callback for the specified window.
This function sets the maximization callback of the specified window, which is called when the window is maximized or restored.
[in] | window | The window whose callback to set. |
[in] | cbfun | The new callback, or NULL to remove the currently set callback. |
NULL
if no callback was set or the library had not been initialized.Possible errors include GLFW_NOT_INITIALIZED.
This function must only be called from the main thread.
GLFWAPI void glfwSetWindowMonitor | ( | GLFWwindow * | window, |
GLFWmonitor * | monitor, | ||
int | xpos, | ||
int | ypos, | ||
int | width, | ||
int | height, | ||
int | refreshRate | ||
) |
Sets the mode, monitor, video mode and placement of a window.
This function sets the monitor that the window uses for full screen mode or, if the monitor is NULL
, makes it windowed mode.
When setting a monitor, this function updates the width, height and refresh rate of the desired video mode and switches to the video mode closest to it. The window position is ignored when setting a monitor.
When the monitor is NULL
, the position, width and height are used to place the window client area. The refresh rate is ignored when no monitor is specified.
If you only wish to update the resolution of a full screen window or the size of a windowed mode window, see glfwSetWindowSize.
When a window transitions from full screen to windowed mode, this function restores any previous window settings such as whether it is decorated, floating, resizable, has size or aspect ratio limits, etc.
[in] | window | The window whose monitor, size or video mode to set. |
[in] | monitor | The desired monitor, or NULL to set windowed mode. |
[in] | xpos | The desired x-coordinate of the upper-left corner of the client area. |
[in] | ypos | The desired y-coordinate of the upper-left corner of the client area. |
[in] | width | The desired with, in screen coordinates, of the client area or video mode. |
[in] | height | The desired height, in screen coordinates, of the client area or video mode. |
[in] | refreshRate | The desired refresh rate, in Hz, of the video mode, or GLFW_DONT_CARE . |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwSetWindowOpacity | ( | GLFWwindow * | window, |
float | opacity | ||
) |
Sets the opacity of the whole window.
This function sets the opacity of the window, including any decorations.
The opacity (or alpha) value is a positive finite number between zero and one, where zero is fully transparent and one is fully opaque.
The initial opacity value for newly created windows is one.
A window created with framebuffer transparency may not use whole window transparency. The results of doing this are undefined.
[in] | window | The window to set the opacity for. |
[in] | opacity | The desired opacity of the specified window. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwSetWindowPos | ( | GLFWwindow * | window, |
int | xpos, | ||
int | ypos | ||
) |
Sets the position of the client area of the specified window.
This function sets the position, in screen coordinates, of the upper-left corner of the client area of the specified windowed mode window. If the window is a full screen window, this function does nothing.
Do not use this function to move an already visible window unless you have very good reasons for doing so, as it will confuse and annoy the user.
The window manager may put limits on what positions are allowed. GLFW cannot and should not override these limits.
[in] | window | The window to query. |
[in] | xpos | The x-coordinate of the upper-left corner of the client area. |
[in] | ypos | The y-coordinate of the upper-left corner of the client area. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI GLFWwindowposfun glfwSetWindowPosCallback | ( | GLFWwindow * | window, |
GLFWwindowposfun | cbfun | ||
) |
Sets the position callback for the specified window.
This function sets the position callback of the specified window, which is called when the window is moved. The callback is provided with the position, in screen coordinates, of the upper-left corner of the client area of the window.
[in] | window | The window whose callback to set. |
[in] | cbfun | The new callback, or NULL to remove the currently set callback. |
NULL
if no callback was set or the library had not been initialized.Possible errors include GLFW_NOT_INITIALIZED.
This function must only be called from the main thread.
GLFWAPI GLFWwindowrefreshfun glfwSetWindowRefreshCallback | ( | GLFWwindow * | window, |
GLFWwindowrefreshfun | cbfun | ||
) |
Sets the refresh callback for the specified window.
This function sets the refresh callback of the specified window, which is called when the client area of the window needs to be redrawn, for example if the window has been exposed after having been covered by another window.
On compositing window systems such as Aero, Compiz, Aqua or Wayland, where the window contents are saved off-screen, this callback may be called only very infrequently or never at all.
[in] | window | The window whose callback to set. |
[in] | cbfun | The new callback, or NULL to remove the currently set callback. |
NULL
if no callback was set or the library had not been initialized.Possible errors include GLFW_NOT_INITIALIZED.
This function must only be called from the main thread.
GLFWAPI void glfwSetWindowShouldClose | ( | GLFWwindow * | window, |
int | value | ||
) |
Sets the close flag of the specified window.
This function sets the value of the close flag of the specified window. This can be used to override the user's attempt to close the window, or to signal that it should be closed.
[in] | window | The window whose flag to change. |
[in] | value | The new value. |
Possible errors include GLFW_NOT_INITIALIZED.
This function may be called from any thread. Access is not synchronized.
GLFWAPI void glfwSetWindowSize | ( | GLFWwindow * | window, |
int | width, | ||
int | height | ||
) |
Sets the size of the client area of the specified window.
This function sets the size, in screen coordinates, of the client area of the specified window.
For full screen windows, this function updates the resolution of its desired video mode and switches to the video mode closest to it, without affecting the window's context. As the context is unaffected, the bit depths of the framebuffer remain unchanged.
If you wish to update the refresh rate of the desired video mode in addition to its resolution, see glfwSetWindowMonitor.
The window manager may put limits on what sizes are allowed. GLFW cannot and should not override these limits.
[in] | window | The window to resize. |
[in] | width | The desired width, in screen coordinates, of the window client area. |
[in] | height | The desired height, in screen coordinates, of the window client area. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI GLFWwindowsizefun glfwSetWindowSizeCallback | ( | GLFWwindow * | window, |
GLFWwindowsizefun | cbfun | ||
) |
Sets the size callback for the specified window.
This function sets the size callback of the specified window, which is called when the window is resized. The callback is provided with the size, in screen coordinates, of the client area of the window.
[in] | window | The window whose callback to set. |
[in] | cbfun | The new callback, or NULL to remove the currently set callback. |
NULL
if no callback was set or the library had not been initialized.Possible errors include GLFW_NOT_INITIALIZED.
This function must only be called from the main thread.
GLFWAPI void glfwSetWindowSizeLimits | ( | GLFWwindow * | window, |
int | minwidth, | ||
int | minheight, | ||
int | maxwidth, | ||
int | maxheight | ||
) |
Sets the size limits of the specified window.
This function sets the size limits of the client area of the specified window. If the window is full screen, the size limits only take effect once it is made windowed. If the window is not resizable, this function does nothing.
The size limits are applied immediately to a windowed mode window and may cause it to be resized.
The maximum dimensions must be greater than or equal to the minimum dimensions and all must be greater than or equal to zero.
[in] | window | The window to set limits for. |
[in] | minwidth | The minimum width, in screen coordinates, of the client area, or GLFW_DONT_CARE . |
[in] | minheight | The minimum height, in screen coordinates, of the client area, or GLFW_DONT_CARE . |
[in] | maxwidth | The maximum width, in screen coordinates, of the client area, or GLFW_DONT_CARE . |
[in] | maxheight | The maximum height, in screen coordinates, of the client area, or GLFW_DONT_CARE . |
Possible errors include GLFW_NOT_INITIALIZED, GLFW_INVALID_VALUE and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwSetWindowTitle | ( | GLFWwindow * | window, |
const char * | title | ||
) |
Sets the title of the specified window.
This function sets the window title, encoded as UTF-8, of the specified window.
[in] | window | The window whose title to change. |
[in] | title | The UTF-8 encoded window title. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwSetWindowUserPointer | ( | GLFWwindow * | window, |
void * | pointer | ||
) |
Sets the user pointer of the specified window.
This function sets the user-defined pointer of the specified window. The current value is retained until the window is destroyed. The initial value is NULL
.
[in] | window | The window whose pointer to set. |
[in] | pointer | The new value. |
Possible errors include GLFW_NOT_INITIALIZED.
This function may be called from any thread. Access is not synchronized.
GLFWAPI void glfwShowWindow | ( | GLFWwindow * | window | ) |
Makes the specified window visible.
This function makes the specified window visible if it was previously hidden. If the window is already visible or is in full screen mode, this function does nothing.
By default, windowed mode windows are focused when shown Set the GLFW_FOCUS_ON_SHOW window hint to change this behavior for all newly created windows, or change the behavior for an existing window with glfwSetWindowAttrib.
[in] | window | The window to make visible. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must only be called from the main thread.
GLFWAPI void glfwSwapBuffers | ( | GLFWwindow * | window | ) |
Swaps the front and back buffers of the specified window.
This function swaps the front and back buffers of the specified window when rendering with OpenGL or OpenGL ES. If the swap interval is greater than zero, the GPU driver waits the specified number of screen updates before swapping the buffers.
The specified window must have an OpenGL or OpenGL ES context. Specifying a window without a context will generate a GLFW_NO_WINDOW_CONTEXT error.
This function does not apply to Vulkan. If you are rendering with Vulkan, see vkQueuePresentKHR
instead.
[in] | window | The window whose buffers to swap. |
Possible errors include GLFW_NOT_INITIALIZED, GLFW_NO_WINDOW_CONTEXT and GLFW_PLATFORM_ERROR.
This function may be called from any thread.
Waits until events are queued and processes them.
This function puts the calling thread to sleep until at least one event is available in the event queue. Once one or more events are available, it behaves exactly like glfwPollEvents, i.e. the events in the queue are processed and the function then returns immediately. Processing events will cause the window and input callbacks associated with those events to be called.
Since not all events are associated with callbacks, this function may return without a callback having been called even if you are monitoring all callbacks.
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 to redraw the contents of your window when necessary during such operations.
Do not assume that callbacks you set will only be called in response to event processing functions like this one. While it is necessary to poll for events, window systems that require GLFW to register callbacks of its own can pass events to GLFW in response to many window system function calls. GLFW will pass those events on to the application callbacks before returning.
If no windows exist, this function returns immediately. For synchronization of threads in applications that do not create windows, use your threading library of choice.
Event processing is not required for joystick input to work.
Possible errors include GLFW_NOT_INITIALIZED and GLFW_PLATFORM_ERROR.
This function must not be called from a callback.
This function must only be called from the main thread.
Waits with timeout until events are queued and processes them.
This function puts the calling thread to sleep until at least one event is available in the event queue, or until the specified timeout is reached. If one or more events are available, it behaves exactly like glfwPollEvents, i.e. the events in the queue are processed and the function then returns immediately. Processing events will cause the window and input callbacks associated with those events to be called.
The timeout value must be a positive finite number.
Since not all events are associated with callbacks, this function may return without a callback having been called even if you are monitoring all callbacks.
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 to redraw the contents of your window when necessary during such operations.
Do not assume that callbacks you set will only be called in response to event processing functions like this one. While it is necessary to poll for events, window systems that require GLFW to register callbacks of its own can pass events to GLFW in response to many window system function calls. GLFW will pass those events on to the application callbacks before returning.
If no windows exist, this function returns immediately. For synchronization of threads in applications that do not create windows, use your threading library of choice.
Event processing is not required for joystick input to work.
[in] | timeout | The maximum amount of time, in seconds, to wait. |
This function must not be called from a callback.
This function must only be called from the main thread.
Sets the specified window hint to the desired value.
This function sets hints for the next call to glfwCreateWindow. The hints, once set, retain their values until changed by a call to this function or glfwDefaultWindowHints, or until the library is terminated.
Only integer value hints can be set with this function. String value hints are set with glfwWindowHintString.
This function does not check whether the specified hint values are valid. If you set hints to invalid values this will instead be reported by the next call to glfwCreateWindow.
Some hints are platform specific. These may be set on any platform but they will only affect their specific platform. Other platforms will ignore them. Setting these hints requires no platform specific headers or functions.
[in] | hint | The window hint to set. |
[in] | value | The new value of the window hint. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_INVALID_ENUM.
This function must only be called from the main thread.
glfwOpenWindowHint
. Sets the specified window hint to the desired value.
This function sets hints for the next call to glfwCreateWindow. The hints, once set, retain their values until changed by a call to this function or glfwDefaultWindowHints, or until the library is terminated.
Only string type hints can be set with this function. Integer value hints are set with glfwWindowHint.
This function does not check whether the specified hint values are valid. If you set hints to invalid values this will instead be reported by the next call to glfwCreateWindow.
Some hints are platform specific. These may be set on any platform but they will only affect their specific platform. Other platforms will ignore them. Setting these hints requires no platform specific headers or functions.
[in] | hint | The window hint to set. |
[in] | value | The new value of the window hint. |
Possible errors include GLFW_NOT_INITIALIZED and GLFW_INVALID_ENUM.
The specified string is copied before this function returns.
This function must only be called from the main thread.
GLFWAPI int glfwWindowShouldClose | ( | GLFWwindow * | window | ) |
Checks the close flag of the specified window.
This function returns the value of the close flag of the specified window.
[in] | window | The window to query. |
Possible errors include GLFW_NOT_INITIALIZED.
This function may be called from any thread. Access is not synchronized.