Mercurial > sdl-ios-xcode
comparison src/video/windx5/SDL_dx5events.c @ 1456:84de7511f79f
Fixed a bunch of 64-bit compatibility problems
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Wed, 01 Mar 2006 09:43:47 +0000 |
parents | d910939febfa |
children | 4aac8563c296 |
comparison
equal
deleted
inserted
replaced
1455:f487bb150acc | 1456:84de7511f79f |
---|---|
474 posted = SDL_PrivateMouseMotion( 0, 1, xrel, yrel); | 474 posted = SDL_PrivateMouseMotion( 0, 1, xrel, yrel); |
475 } | 475 } |
476 } | 476 } |
477 | 477 |
478 /* The main Win32 event handler */ | 478 /* The main Win32 event handler */ |
479 LONG | 479 LRESULT DX5_HandleMessage(_THIS, HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) |
480 DX5_HandleMessage(_THIS, HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) | |
481 { | 480 { |
482 switch (msg) { | 481 switch (msg) { |
483 #ifdef WM_ACTIVATEAPP | 482 #ifdef WM_ACTIVATEAPP |
484 case WM_ACTIVATEAPP: { | 483 case WM_ACTIVATEAPP: { |
485 int i, active; | 484 int i, active; |
501 break; | 500 break; |
502 #endif /* WM_ACTIVATEAPP */ | 501 #endif /* WM_ACTIVATEAPP */ |
503 | 502 |
504 #ifdef WM_DISPLAYCHANGE | 503 #ifdef WM_DISPLAYCHANGE |
505 case WM_DISPLAYCHANGE: { | 504 case WM_DISPLAYCHANGE: { |
506 WORD BitsPerPixel; | 505 WPARAM BitsPerPixel; |
507 WORD SizeX, SizeY; | 506 WORD SizeX, SizeY; |
508 | 507 |
509 /* Ack! The display changed size and/or depth! */ | 508 /* Ack! The display changed size and/or depth! */ |
510 SizeX = LOWORD(lParam); | 509 SizeX = LOWORD(lParam); |
511 SizeY = HIWORD(lParam); | 510 SizeY = HIWORD(lParam); |
864 | 863 |
865 SDL_RegisterApp(NULL, 0, 0); | 864 SDL_RegisterApp(NULL, 0, 0); |
866 | 865 |
867 SDL_windowid = (windowid != NULL); | 866 SDL_windowid = (windowid != NULL); |
868 if ( SDL_windowid ) { | 867 if ( SDL_windowid ) { |
869 SDL_Window = (HWND)SDL_strtol(windowid, NULL, 0); | 868 SDL_Window = (HWND)SDL_strtoull(windowid, NULL, 0); |
870 if ( SDL_Window == NULL ) { | 869 if ( SDL_Window == NULL ) { |
871 SDL_SetError("Couldn't get user specified window"); | 870 SDL_SetError("Couldn't get user specified window"); |
872 return(-1); | 871 return(-1); |
873 } | 872 } |
874 | 873 |
875 /* DJM: we want all event's for the user specified | 874 /* DJM: we want all event's for the user specified |
876 window to be handled by SDL. | 875 window to be handled by SDL. |
877 */ | 876 */ |
878 userWindowProc = (WNDPROCTYPE)GetWindowLong(SDL_Window, GWL_WNDPROC); | 877 userWindowProc = (WNDPROCTYPE)GetWindowLongPtr(SDL_Window, GWL_WNDPROC); |
879 SetWindowLong(SDL_Window, GWL_WNDPROC, (LONG)WinMessage); | 878 SetWindowLongPtr(SDL_Window, GWL_WNDPROC, (LONG_PTR)WinMessage); |
880 } else { | 879 } else { |
881 SDL_Window = CreateWindow(SDL_Appname, SDL_Appname, | 880 SDL_Window = CreateWindow(SDL_Appname, SDL_Appname, |
882 (WS_OVERLAPPED|WS_CAPTION|WS_SYSMENU|WS_MINIMIZEBOX), | 881 (WS_OVERLAPPED|WS_CAPTION|WS_SYSMENU|WS_MINIMIZEBOX), |
883 CW_USEDEFAULT, CW_USEDEFAULT, 0, 0, NULL, NULL, SDL_Instance, NULL); | 882 CW_USEDEFAULT, CW_USEDEFAULT, 0, 0, NULL, NULL, SDL_Instance, NULL); |
884 if ( SDL_Window == NULL ) { | 883 if ( SDL_Window == NULL ) { |
902 /* Close down DirectInput */ | 901 /* Close down DirectInput */ |
903 DX5_DInputQuit(this); | 902 DX5_DInputQuit(this); |
904 | 903 |
905 /* Destroy our window */ | 904 /* Destroy our window */ |
906 if ( SDL_windowid ) { | 905 if ( SDL_windowid ) { |
907 SetWindowLong(SDL_Window, GWL_WNDPROC, (LONG)userWindowProc); | 906 SetWindowLongPtr(SDL_Window, GWL_WNDPROC, (LONG_PTR)userWindowProc); |
908 } else { | 907 } else { |
909 DestroyWindow(SDL_Window); | 908 DestroyWindow(SDL_Window); |
910 } | 909 } |
911 SDL_UnregisterApp(); | 910 SDL_UnregisterApp(); |
912 } | 911 } |