From c69eab4874fdc10bd20cc3858cff24fe7ec9735d Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Sat, 31 Jul 2010 20:38:37 -0700 Subject: [PATCH] Fixed various type and print format issues --- include/SDL_gesture.h | 13 +++++------- include/SDL_touch.h | 4 ++-- src/events/SDL_touch.c | 2 +- src/video/cocoa/SDL_cocoawindow.m | 2 +- touchTest/gestureSDLTest.c | 34 +++++++++++++++++++++++++------ 5 files changed, 37 insertions(+), 18 deletions(-) diff --git a/include/SDL_gesture.h b/include/SDL_gesture.h index 1c366eaae..78d3d4cff 100644 --- a/include/SDL_gesture.h +++ b/include/SDL_gesture.h @@ -44,7 +44,7 @@ extern "C" { /* *INDENT-ON* */ #endif - typedef Uint64 SDL_GestureID; +typedef Sint64 SDL_GestureID; /* Function prototypes */ @@ -53,7 +53,7 @@ extern "C" { * * */ - extern DECLSPEC int SDLCALL SDL_RecordGesture(SDL_TouchID touchId); +extern DECLSPEC int SDLCALL SDL_RecordGesture(SDL_TouchID touchId); /** @@ -61,15 +61,14 @@ extern "C" { * * */ - extern DECLSPEC int SDLCALL SDL_SaveAllDollarTemplates(SDL_RWops *src); +extern DECLSPEC int SDLCALL SDL_SaveAllDollarTemplates(SDL_RWops *src); /** * \brief Save a currently loaded Dollar Gesture template * * */ - extern DECLSPEC int - SDLCALL SDL_SaveDollarTemplate(SDL_GestureID gestureId,SDL_RWops *src); +extern DECLSPEC int SDLCALL SDL_SaveDollarTemplate(SDL_GestureID gestureId,SDL_RWops *src); /** @@ -77,9 +76,7 @@ extern "C" { * * */ - extern DECLSPEC - int SDLCALL SDL_LoadDollarTemplates(SDL_TouchID touchId, SDL_RWops *src); - +extern DECLSPEC int SDLCALL SDL_LoadDollarTemplates(SDL_TouchID touchId, SDL_RWops *src); /* Ends C function definitions when using C++ */ diff --git a/include/SDL_touch.h b/include/SDL_touch.h index 2c7ce4056..6c86a2d17 100644 --- a/include/SDL_touch.h +++ b/include/SDL_touch.h @@ -42,8 +42,8 @@ extern "C" { #endif -typedef Uint64 SDL_TouchID; -typedef Uint64 SDL_FingerID; +typedef Sint64 SDL_TouchID; +typedef Sint64 SDL_FingerID; struct SDL_Finger { diff --git a/src/events/SDL_touch.c b/src/events/SDL_touch.c index 5fb336d73..26c2ba5ff 100644 --- a/src/events/SDL_touch.c +++ b/src/events/SDL_touch.c @@ -393,7 +393,7 @@ SDL_SendTouchMotion(SDL_TouchID id, SDL_FingerID fingerid, int relative, Uint16 x = (xin+touch->x_min)*(touch->xres)/(touch->native_xres); Uint16 y = (yin+touch->y_min)*(touch->yres)/(touch->native_yres); Uint16 pressure = (yin+touch->pressure_min)*(touch->pressureres)/(touch->native_pressureres); - printf("(%f,%f) --> (%i,%i)",xin,yin,x,y); + printf("(%f,%f) --> (%i,%i)\n",xin,yin,x,y); if(touch->flush_motion) { return 0; } diff --git a/src/video/cocoa/SDL_cocoawindow.m b/src/video/cocoa/SDL_cocoawindow.m index aa93e712e..b952feae9 100644 --- a/src/video/cocoa/SDL_cocoawindow.m +++ b/src/video/cocoa/SDL_cocoawindow.m @@ -315,7 +315,7 @@ - (void)handleTouches:(cocoaTouchType)type withEvent:(NSEvent *)event if (SDL_AddTouch(&touch, "") < 0) { continue; } - printf("Success, added touch: %lin",touchId); + printf("Success, added touch: %li\n",touchId); } float x = [touch normalizedPosition].x; float y = [touch normalizedPosition].y; diff --git a/touchTest/gestureSDLTest.c b/touchTest/gestureSDLTest.c index bb38305ae..9bf5ffb6b 100644 --- a/touchTest/gestureSDLTest.c +++ b/touchTest/gestureSDLTest.c @@ -4,6 +4,28 @@ #include #include +/* Make sure we have good macros for printing 32 and 64 bit values */ +#ifndef PRIs32 +#define PRIs32 "d" +#endif +#ifndef PRIu32 +#define PRIu32 "u" +#endif +#ifndef PRIs64 +#ifdef __WIN32__ +#define PRIs64 "I64" +#else +#define PRIs64 "lld" +#endif +#endif +#ifndef PRIu64 +#ifdef __WIN32__ +#define PRIu64 "I64u" +#else +#define PRIu64 "llu" +#endif +#endif + #define PI 3.1415926535897 #define PHI ((sqrt(5)-1)/2) #define WIDTH 640 @@ -28,7 +50,7 @@ int bstatus; int colors[7] = {0xFF,0xFF00,0xFF0000,0xFFFF00,0x00FFFF,0xFF00FF,0xFFFFFF}; -long index2fingerid[MAXFINGERS]; +SDL_FingerID index2fingerid[MAXFINGERS]; int fingersDown; typedef struct { @@ -38,7 +60,7 @@ typedef struct { typedef struct { Point p; float pressure; - long id; + SDL_FingerID id; } Finger; typedef struct { @@ -378,7 +400,7 @@ int main(int argc, char* argv[]) break; case SDL_FINGERDOWN: - printf("Finger: %li down - x: %f, y: %f\n",event.tfinger.fingerId, + printf("Finger: %"PRIs64" down - x: %i, y: %i\n",event.tfinger.fingerId, event.tfinger.x,event.tfinger.y); for(i = 0;i