Updated Cocoa port to new internal API.

This commit is contained in:
Camilla Berglund 2010-09-28 02:30:05 +02:00
parent c4bd93ecdf
commit 35b8ee6a71
2 changed files with 11 additions and 10 deletions

View File

@ -109,15 +109,12 @@
- (void)windowDidBecomeKey:(NSNotification *)notification - (void)windowDidBecomeKey:(NSNotification *)notification
{ {
_glfwLibrary.activeWindow = window; _glfwInputWindowFocus(window, GL_TRUE);
} }
- (void)windowDidResignKey:(NSNotification *)notification - (void)windowDidResignKey:(NSNotification *)notification
{ {
if (window == _glfwLibrary.activeWindow) _glfwInputWindowFocus(window, GL_FALSE);
_glfwLibrary.activeWindow = NULL;
_glfwInputDeactivation(window);
} }
@end @end
@ -449,11 +446,14 @@ static int convertMacKeyCode(unsigned int macKeyCode)
- (void)scrollWheel:(NSEvent *)event - (void)scrollWheel:(NSEvent *)event
{ {
window->NS.wheelPosFloating += [event deltaY]; double deltaX = window->NS.fracScrollX + [event deltaX];
window->wheelPos = lrint(window->NS.wheelPosFloating); double deltaY = window->NS.fracScrollY + [event deltaY];
if (window->mouseWheelCallback) if ((int) deltaX || (int) deltaY)
window->mouseWheelCallback(window, window->wheelPos); _glfwInputScroll(window, (int) deltaX, (int) deltaY);
window->NS.fracScrollX = (int) (deltaX - floor(deltaX));
window->NS.fracScrollY = (int) (deltaY - floor(deltaY));
} }
@end @end

View File

@ -85,7 +85,8 @@ typedef struct _GLFWwindowNS
id window; id window;
id delegate; id delegate;
unsigned int modifierFlags; unsigned int modifierFlags;
double wheelPosFloating; double fracScrollX;
double fracScrollY;
} _GLFWwindowNS; } _GLFWwindowNS;