Mercurial > sdl-ios-xcode
comparison src/video/x11/SDL_x11mouse.c @ 3766:24db5d326f57 gsoc2008_manymouse
Pressure levels. Documentation http://wilku.ravenlord.ws/doku.php?id=documentation
author | Szymon Wilczek <kazeuser@gmail.com> |
---|---|
date | Sun, 06 Jul 2008 09:24:56 +0000 |
parents | e0c95ad1ba87 |
children | 9087a84cba51 |
comparison
equal
deleted
inserted
replaced
3765:ed9b7fe8f902 | 3766:24db5d326f57 |
---|---|
45 deviceClass=DevList[i].inputclassinfo; | 45 deviceClass=DevList[i].inputclassinfo; |
46 for(j=0;j<DevList[i].num_classes;++j) | 46 for(j=0;j<DevList[i].num_classes;++j) |
47 { | 47 { |
48 if(deviceClass->class==ValuatorClass) | 48 if(deviceClass->class==ValuatorClass) |
49 { | 49 { |
50 XValuatorInfo* valInfo; | |
50 newDevices= (XDevice**) SDL_realloc(SDL_XDevices, (index+1)*sizeof(*newDevices)); | 51 newDevices= (XDevice**) SDL_realloc(SDL_XDevices, (index+1)*sizeof(*newDevices)); |
51 if(!newDevices) | 52 if(!newDevices) |
52 { | 53 { |
53 SDL_OutOfMemory(); | 54 SDL_OutOfMemory(); |
54 return -1; | 55 return -1; |
56 SDL_XDevices=newDevices; | 57 SDL_XDevices=newDevices; |
57 SDL_XDevices[index]=XOpenDevice(data->display,DevList[i].id); | 58 SDL_XDevices[index]=XOpenDevice(data->display,DevList[i].id); |
58 SDL_Mouse mouse; | 59 SDL_Mouse mouse; |
59 SDL_zero(mouse); | 60 SDL_zero(mouse); |
60 SDL_SetIndexId(DevList[i].id,index); | 61 SDL_SetIndexId(DevList[i].id,index); |
61 data->mouse = SDL_AddMouse(&mouse, index++,DevList[i].name); | 62 valInfo=(XValuatorInfo*)deviceClass; |
63 if(valInfo->num_axes>2) | |
64 { | |
65 data->mouse = SDL_AddMouse(&mouse, index++,DevList[i].name,valInfo->axes[2].max_value,valInfo->axes[2].min_value); | |
66 } | |
67 else | |
68 { | |
69 data->mouse = SDL_AddMouse(&mouse, index++,DevList[i].name,0,0); | |
70 } | |
62 break; | 71 break; |
63 } | 72 } |
64 deviceClass=(XAnyClassPtr)((char*)deviceClass + deviceClass->length); | 73 deviceClass=(XAnyClassPtr)((char*)deviceClass + deviceClass->length); |
65 } | 74 } |
66 } | 75 } |