mirror of
https://github.com/glfw/glfw.git
synced 2024-11-23 02:25:10 +00:00
Added glfwGetWindowPos.
This commit is contained in:
parent
f0033aa47f
commit
318f731e3e
@ -418,6 +418,7 @@ GLFWAPI void glfwCloseWindow(GLFWwindow window);
|
|||||||
GLFWAPI void glfwSetWindowTitle(GLFWwindow, const char* title);
|
GLFWAPI void glfwSetWindowTitle(GLFWwindow, const char* title);
|
||||||
GLFWAPI void glfwGetWindowSize(GLFWwindow, int* width, int* height);
|
GLFWAPI void glfwGetWindowSize(GLFWwindow, int* width, int* height);
|
||||||
GLFWAPI void glfwSetWindowSize(GLFWwindow, int width, int height);
|
GLFWAPI void glfwSetWindowSize(GLFWwindow, int width, int height);
|
||||||
|
GLFWAPI void glfwGetWindowPos(GLFWwindow, int* x, int* y);
|
||||||
GLFWAPI void glfwSetWindowPos(GLFWwindow, int x, int y);
|
GLFWAPI void glfwSetWindowPos(GLFWwindow, int x, int y);
|
||||||
GLFWAPI void glfwIconifyWindow(GLFWwindow window);
|
GLFWAPI void glfwIconifyWindow(GLFWwindow window);
|
||||||
GLFWAPI void glfwRestoreWindow(GLFWwindow window);
|
GLFWAPI void glfwRestoreWindow(GLFWwindow window);
|
||||||
|
@ -267,6 +267,7 @@ version of GLFW.</p>
|
|||||||
<li>Added <code>glfwGetError</code> and <code>glfwErrorString</code> error reporting functions and a number of error tokens</li>
|
<li>Added <code>glfwGetError</code> and <code>glfwErrorString</code> error reporting functions and a number of error tokens</li>
|
||||||
<li>Added <code>glfwSetWindowUserPointer</code> and <code>glfwGetWindowUserPointer</code> functions for per-window user pointers</li>
|
<li>Added <code>glfwSetWindowUserPointer</code> and <code>glfwGetWindowUserPointer</code> functions for per-window user pointers</li>
|
||||||
<li>Added <code>glfwGetVersionString</code> function for determining which code paths were enabled at compile time</li>
|
<li>Added <code>glfwGetVersionString</code> function for determining which code paths were enabled at compile time</li>
|
||||||
|
<li>Added <code>glfwGetWindowPos</code> function for querying the position of the specified window</li>
|
||||||
<li>Added <code>windows</code> simple multi-window test program</li>
|
<li>Added <code>windows</code> simple multi-window test program</li>
|
||||||
<li>Added initial window title parameter to <code>glfwOpenWindow</code></li>
|
<li>Added initial window title parameter to <code>glfwOpenWindow</code></li>
|
||||||
<li>Changed buffer bit depth parameters of <code>glfwOpenWindow</code> to window hints</li>
|
<li>Changed buffer bit depth parameters of <code>glfwOpenWindow</code> to window hints</li>
|
||||||
|
@ -157,6 +157,7 @@ typedef struct _GLFWwindow
|
|||||||
GLboolean iconified; // GL_TRUE if this window is iconified
|
GLboolean iconified; // GL_TRUE if this window is iconified
|
||||||
GLboolean closed; // GL_TRUE if this window should be closed
|
GLboolean closed; // GL_TRUE if this window should be closed
|
||||||
int width, height;
|
int width, height;
|
||||||
|
int positionX, positionY;
|
||||||
int mode; // GLFW_WINDOW or GLFW_FULLSCREEN
|
int mode; // GLFW_WINDOW or GLFW_FULLSCREEN
|
||||||
GLboolean sysKeysDisabled; // system keys disabled flag
|
GLboolean sysKeysDisabled; // system keys disabled flag
|
||||||
GLboolean windowNoResize; // resize- and maximize gadgets disabled flag
|
GLboolean windowNoResize; // resize- and maximize gadgets disabled flag
|
||||||
|
@ -906,6 +906,9 @@ static LRESULT CALLBACK windowProc(HWND hWnd, UINT uMsg,
|
|||||||
|
|
||||||
case WM_MOVE:
|
case WM_MOVE:
|
||||||
{
|
{
|
||||||
|
window->positionX = LOWORD(lParam);
|
||||||
|
window->positionY = HIWORD(lParam);
|
||||||
|
|
||||||
// If the mouse is locked, update the clipping rect
|
// If the mouse is locked, update the clipping rect
|
||||||
if (window == _glfwLibrary.cursorLockWindow)
|
if (window == _glfwLibrary.cursorLockWindow)
|
||||||
{
|
{
|
||||||
|
20
src/window.c
20
src/window.c
@ -807,6 +807,26 @@ GLFWAPI void glfwSetWindowSize(GLFWwindow window, int width, int height)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//========================================================================
|
||||||
|
// Get the window position
|
||||||
|
//========================================================================
|
||||||
|
|
||||||
|
GLFWAPI void glfwGetWindowPos(GLFWwindow window, int* x, int* y)
|
||||||
|
{
|
||||||
|
if (!_glfwInitialized)
|
||||||
|
{
|
||||||
|
_glfwSetError(GLFW_NOT_INITIALIZED);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (x != NULL)
|
||||||
|
*x = window->positionX;
|
||||||
|
|
||||||
|
if (y != NULL)
|
||||||
|
*y = window->positionY;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//========================================================================
|
//========================================================================
|
||||||
// Set the window position
|
// Set the window position
|
||||||
//========================================================================
|
//========================================================================
|
||||||
|
@ -1215,6 +1215,14 @@ static void processSingleEvent(void)
|
|||||||
window->height);
|
window->height);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (event.xconfigure.x != window->positionX ||
|
||||||
|
event.xconfigure.y != window->positionY)
|
||||||
|
{
|
||||||
|
window->positionX = event.xconfigure.x;
|
||||||
|
window->positionY = event.xconfigure.y;
|
||||||
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user