From 463930761bbb2fa0fc112d06bbb6a3bda0961c4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Camilla=20L=C3=B6wy?= Date: Mon, 20 Feb 2017 13:45:11 +0100 Subject: [PATCH] Documentation work [ci skip] --- docs/input.dox | 17 +++++++++++------ docs/window.dox | 3 +++ include/GLFW/glfw3.h | 15 +++++++++------ 3 files changed, 23 insertions(+), 12 deletions(-) diff --git a/docs/input.dox b/docs/input.dox index d26a4f3a..8d6c46ad 100644 --- a/docs/input.dox +++ b/docs/input.dox @@ -155,6 +155,7 @@ The returned state is one of `GLFW_PRESS` or `GLFW_RELEASE`. This function only returns cached key event state. It does not poll the system for the current physical state of the key. +@anchor GLFW_STICKY_KEYS Whenever you poll state, you risk missing the state change you are looking for. If a pressed key is released again before you poll its state, you will have missed the key press. The recommended solution for this is to use a @@ -273,8 +274,9 @@ glfwGetCursorPos(window, &xpos, &ypos); @endcode -@subsection cursor_mode Cursor modes +@subsection cursor_mode Cursor mode +@anchor GLFW_CURSOR The `GLFW_CURSOR` input mode provides several cursor modes for special forms of mouse motion input. By default, the cursor mode is `GLFW_CURSOR_NORMAL`, meaning the regular arrow cursor (or another cursor set with @ref glfwSetCursor) @@ -369,8 +371,10 @@ When a cursor is no longer needed, destroy it with @ref glfwDestroyCursor. glfwDestroyCursor(cursor); @endcode -Cursor destruction always succeeds. All cursors remaining when @ref -glfwTerminate is called are destroyed as well. +Cursor destruction always succeeds. If the cursor is current for any window, +that window will revert to the default cursor. This does not affect the cursor +mode. All remaining cursors remaining are destroyed when @ref glfwTerminate is +called. @subsubsection cursor_set Cursor setting @@ -387,14 +391,14 @@ to `GLFW_CURSOR_NORMAL`. A single cursor may be set for any number of windows. -To remove a cursor from a window, set the cursor of that window to `NULL`. +To revert to the default cursor, set the cursor of that window to `NULL`. @code glfwSetCursor(window, NULL); @endcode -When a cursor is destroyed, it is removed from any window where it is set. This -does not affect the cursor modes of those windows. +When a cursor is destroyed, any window that has it set will revert to the +default cursor. This does not affect the cursor mode. @subsection cursor_enter Cursor enter/leave events @@ -461,6 +465,7 @@ The returned state is one of `GLFW_PRESS` or `GLFW_RELEASE`. This function only returns cached mouse button event state. It does not poll the system for the current state of the mouse button. +@anchor GLFW_STICKY_MOUSE_BUTTONS Whenever you poll state, you risk missing the state change you are looking for. If a pressed mouse button is released again before you poll its state, you will have missed the button press. The recommended solution for this is to use a diff --git a/docs/window.dox b/docs/window.dox index 09e76989..bad2df33 100644 --- a/docs/window.dox +++ b/docs/window.dox @@ -89,6 +89,9 @@ the desktop. This behavior can be disabled with the [GLFW_AUTO_ICONIFY](@ref GLFW_AUTO_ICONIFY_hint) window hint, for example if you wish to simultaneously cover multiple windows with full screen windows. +If a monitor is disconnected, any window that is full screen on that monitor +will be forced into windowed mode. See @ref monitor_event for more information. + @subsubsection window_windowed_full_screen "Windowed full screen" windows diff --git a/include/GLFW/glfw3.h b/include/GLFW/glfw3.h index 9bff088d..a856c3c5 100644 --- a/include/GLFW/glfw3.h +++ b/include/GLFW/glfw3.h @@ -3264,8 +3264,8 @@ GLFWAPI void glfwPostEmptyEvent(void); /*! @brief Returns the value of an input option for the specified window. * * This function returns the value of an input option for the specified window. - * The mode must be one of `GLFW_CURSOR`, `GLFW_STICKY_KEYS` or - * `GLFW_STICKY_MOUSE_BUTTONS`. + * The mode must be one of @ref GLFW_CURSOR, @ref GLFW_STICKY_KEYS or + * @ref GLFW_STICKY_MOUSE_BUTTONS. * * @param[in] window The window to query. * @param[in] mode One of `GLFW_CURSOR`, `GLFW_STICKY_KEYS` or @@ -3287,8 +3287,8 @@ GLFWAPI int glfwGetInputMode(GLFWwindow* window, int mode); /*! @brief Sets an input option for the specified window. * * This function sets an input mode option for the specified window. The mode - * must be one of `GLFW_CURSOR`, `GLFW_STICKY_KEYS` or - * `GLFW_STICKY_MOUSE_BUTTONS`. + * must be one of @ref GLFW_CURSOR, @ref GLFW_STICKY_KEYS or + * @ref GLFW_STICKY_MOUSE_BUTTONS. * * If the mode is `GLFW_CURSOR`, the value must be one of the following cursor * modes: @@ -3421,7 +3421,7 @@ GLFWAPI int glfwGetKeyScancode(int key); * `GLFW_RELEASE`. The higher-level action `GLFW_REPEAT` is only reported to * the key callback. * - * If the `GLFW_STICKY_KEYS` input mode is enabled, this function returns + * If the @ref GLFW_STICKY_KEYS input mode is enabled, this function returns * `GLFW_PRESS` the first time you call it for a key that was pressed, even if * that key has already been released. * @@ -3460,7 +3460,7 @@ GLFWAPI int glfwGetKey(GLFWwindow* window, int key); * to the specified window. The returned state is one of `GLFW_PRESS` or * `GLFW_RELEASE`. * - * If the `GLFW_STICKY_MOUSE_BUTTONS` input mode is enabled, this function + * If the @ref GLFW_STICKY_MOUSE_BUTTONS input mode is enabled, this function * `GLFW_PRESS` the first time you call it for a mouse button that was pressed, * even if that mouse button has already been released. * @@ -3631,6 +3631,9 @@ GLFWAPI GLFWcursor* glfwCreateStandardCursor(int shape); * glfwCreateCursor. Any remaining cursors will be destroyed by @ref * glfwTerminate. * + * If the specified cursor is current for any window, that window will be + * reverted to the default cursor. This does not affect the cursor mode. + * * @param[in] cursor The cursor object to destroy. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref