mirror of
https://github.com/glfw/glfw.git
synced 2026-09-18 22:55:46 +00:00
Made callbacks library global.
This commit is contained in:
+30
-25
@@ -55,8 +55,8 @@ static void closeFlaggedWindows(void)
|
||||
|
||||
for (window = _glfwLibrary.windowListHead; window; )
|
||||
{
|
||||
if (window->closeRequested && window->windowCloseCallback)
|
||||
window->closeRequested = window->windowCloseCallback(window);
|
||||
if (window->closeRequested && _glfwLibrary.windowCloseCallback)
|
||||
window->closeRequested = _glfwLibrary.windowCloseCallback(window);
|
||||
|
||||
if (window->closeRequested)
|
||||
{
|
||||
@@ -144,8 +144,8 @@ void _glfwInputKey(_GLFWwindow* window, int key, int action)
|
||||
}
|
||||
|
||||
// Call user callback function
|
||||
if (window->keyCallback && (window->keyRepeat || !keyrepeat))
|
||||
window->keyCallback(window, key, action);
|
||||
if (_glfwLibrary.keyCallback && (window->keyRepeat || !keyrepeat))
|
||||
_glfwLibrary.keyCallback(window, key, action);
|
||||
}
|
||||
|
||||
|
||||
@@ -159,8 +159,8 @@ void _glfwInputChar(_GLFWwindow* window, int character)
|
||||
if (!((character >= 32 && character <= 126) || character >= 160))
|
||||
return;
|
||||
|
||||
if (window->charCallback)
|
||||
window->charCallback(window, character);
|
||||
if (_glfwLibrary.charCallback)
|
||||
_glfwLibrary.charCallback(window, character);
|
||||
}
|
||||
|
||||
|
||||
@@ -173,8 +173,8 @@ void _glfwInputScroll(_GLFWwindow* window, int x, int y)
|
||||
window->scrollX += x;
|
||||
window->scrollY += y;
|
||||
|
||||
if (window->scrollCallback)
|
||||
window->scrollCallback(window, x, y);
|
||||
if (_glfwLibrary.scrollCallback)
|
||||
_glfwLibrary.scrollCallback(window, x, y);
|
||||
}
|
||||
|
||||
|
||||
@@ -193,8 +193,8 @@ void _glfwInputMouseClick(_GLFWwindow* window, int button, int action)
|
||||
else
|
||||
window->mouseButton[button] = (char) action;
|
||||
|
||||
if (window->mouseButtonCallback)
|
||||
window->mouseButtonCallback(window, button, action);
|
||||
if (_glfwLibrary.mouseButtonCallback)
|
||||
_glfwLibrary.mouseButtonCallback(window, button, action);
|
||||
}
|
||||
|
||||
|
||||
@@ -210,8 +210,8 @@ void _glfwInputWindowFocus(_GLFWwindow* window, GLboolean activated)
|
||||
{
|
||||
_glfwLibrary.activeWindow = window;
|
||||
|
||||
if (window->windowFocusCallback)
|
||||
window->windowFocusCallback(window, activated);
|
||||
if (_glfwLibrary.windowFocusCallback)
|
||||
_glfwLibrary.windowFocusCallback(window, activated);
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -236,8 +236,8 @@ void _glfwInputWindowFocus(_GLFWwindow* window, GLboolean activated)
|
||||
|
||||
_glfwLibrary.activeWindow = NULL;
|
||||
|
||||
if (window->windowFocusCallback)
|
||||
window->windowFocusCallback(window, activated);
|
||||
if (_glfwLibrary.windowFocusCallback)
|
||||
_glfwLibrary.windowFocusCallback(window, activated);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1076,7 +1076,7 @@ GLFWAPI void* glfwGetWindowUserPointer(GLFWwindow window)
|
||||
// Set callback function for window size changes
|
||||
//========================================================================
|
||||
|
||||
GLFWAPI void glfwSetWindowSizeCallback(GLFWwindow window, GLFWwindowsizefun cbfun)
|
||||
GLFWAPI void glfwSetWindowSizeCallback(GLFWwindowsizefun cbfun)
|
||||
{
|
||||
if (!_glfwInitialized)
|
||||
{
|
||||
@@ -1084,19 +1084,24 @@ GLFWAPI void glfwSetWindowSizeCallback(GLFWwindow window, GLFWwindowsizefun cbfu
|
||||
return;
|
||||
}
|
||||
|
||||
window->windowSizeCallback = cbfun;
|
||||
_glfwLibrary.windowSizeCallback = cbfun;
|
||||
|
||||
// Call the callback function to let the application know the current
|
||||
// window size
|
||||
if (cbfun)
|
||||
cbfun(window, window->width, window->height);
|
||||
{
|
||||
_GLFWwindow* window;
|
||||
|
||||
for (window = _glfwLibrary.windowListHead; window; window = window->next)
|
||||
cbfun(window, window->width, window->height);
|
||||
}
|
||||
}
|
||||
|
||||
//========================================================================
|
||||
// Set callback function for window close events
|
||||
//========================================================================
|
||||
|
||||
GLFWAPI void glfwSetWindowCloseCallback(GLFWwindow window, GLFWwindowclosefun cbfun)
|
||||
GLFWAPI void glfwSetWindowCloseCallback(GLFWwindowclosefun cbfun)
|
||||
{
|
||||
if (!_glfwInitialized)
|
||||
{
|
||||
@@ -1104,7 +1109,7 @@ GLFWAPI void glfwSetWindowCloseCallback(GLFWwindow window, GLFWwindowclosefun cb
|
||||
return;
|
||||
}
|
||||
|
||||
window->windowCloseCallback = cbfun;
|
||||
_glfwLibrary.windowCloseCallback = cbfun;
|
||||
}
|
||||
|
||||
|
||||
@@ -1112,7 +1117,7 @@ GLFWAPI void glfwSetWindowCloseCallback(GLFWwindow window, GLFWwindowclosefun cb
|
||||
// Set callback function for window refresh events
|
||||
//========================================================================
|
||||
|
||||
GLFWAPI void glfwSetWindowRefreshCallback(GLFWwindow window, GLFWwindowrefreshfun cbfun)
|
||||
GLFWAPI void glfwSetWindowRefreshCallback(GLFWwindowrefreshfun cbfun)
|
||||
{
|
||||
if (!_glfwInitialized)
|
||||
{
|
||||
@@ -1120,7 +1125,7 @@ GLFWAPI void glfwSetWindowRefreshCallback(GLFWwindow window, GLFWwindowrefreshfu
|
||||
return;
|
||||
}
|
||||
|
||||
window->windowRefreshCallback = cbfun;
|
||||
_glfwLibrary.windowRefreshCallback = cbfun;
|
||||
}
|
||||
|
||||
|
||||
@@ -1128,7 +1133,7 @@ GLFWAPI void glfwSetWindowRefreshCallback(GLFWwindow window, GLFWwindowrefreshfu
|
||||
// Set callback function for window focus events
|
||||
//========================================================================
|
||||
|
||||
GLFWAPI void glfwSetWindowFocusCallback(GLFWwindow window, GLFWwindowfocusfun cbfun)
|
||||
GLFWAPI void glfwSetWindowFocusCallback(GLFWwindowfocusfun cbfun)
|
||||
{
|
||||
if (!_glfwInitialized)
|
||||
{
|
||||
@@ -1136,7 +1141,7 @@ GLFWAPI void glfwSetWindowFocusCallback(GLFWwindow window, GLFWwindowfocusfun cb
|
||||
return;
|
||||
}
|
||||
|
||||
window->windowFocusCallback = cbfun;
|
||||
_glfwLibrary.windowFocusCallback = cbfun;
|
||||
}
|
||||
|
||||
|
||||
@@ -1144,7 +1149,7 @@ GLFWAPI void glfwSetWindowFocusCallback(GLFWwindow window, GLFWwindowfocusfun cb
|
||||
// Set callback function for window iconification events
|
||||
//========================================================================
|
||||
|
||||
GLFWAPI void glfwSetWindowIconifyCallback(GLFWwindow window, GLFWwindowiconifyfun cbfun)
|
||||
GLFWAPI void glfwSetWindowIconifyCallback(GLFWwindowiconifyfun cbfun)
|
||||
{
|
||||
if (!_glfwInitialized)
|
||||
{
|
||||
@@ -1152,7 +1157,7 @@ GLFWAPI void glfwSetWindowIconifyCallback(GLFWwindow window, GLFWwindowiconifyfu
|
||||
return;
|
||||
}
|
||||
|
||||
window->windowIconifyCallback = cbfun;
|
||||
_glfwLibrary.windowIconifyCallback = cbfun;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user