X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Ffreeglut_joystick.c;h=7548a88efffa90d6fa118c71ca4ffee5b5c155da;hb=2586d5c2ebd7cc9c788c8f68d2f2e8871f5438f5;hp=046e62fd49a0765c0df0114894173e9e1763aca2;hpb=e168af86e8c8ab1ac30817bb570b374964da72a2;p=freeglut diff --git a/src/freeglut_joystick.c b/src/freeglut_joystick.c index 046e62f..7548a88 100644 --- a/src/freeglut_joystick.c +++ b/src/freeglut_joystick.c @@ -436,7 +436,6 @@ static CFDictionaryRef fghJoystickGetCFProperties ( SFG_Joystick* joy, io_object static void fghJoystickEnumerateElements ( SFG_Joystick* joy, CFTypeRef element ); /* callback for CFArrayApply */ static void fghJoystickElementEnumerator ( SFG_Joystick* joy, void *element, void* vjs ); -static void fghJoystickParseElement ( SFG_Joystick* joy, CFDictionaryRef element ); static void fghJoystickAddAxisElement ( SFG_Joystick* joy, CFDictionaryRef axis ); static void fghJoystickAddButtonElement ( SFG_Joystick* joy, CFDictionaryRef button ); @@ -932,66 +931,6 @@ static void fghJoystickEnumerateElements ( SFG_Joystick *joy, CFTypeRef element &fghJoystickElementEnumerator, joy ); } -static void fghJoystickParseElement ( SFG_Joystick *joy, CFDictionaryRef element ) -{ - CFTypeRef refPage = CFDictionaryGetValue ((CFDictionaryRef) element, CFSTR(kIOHIDElementUsagePageKey)); - CFTypeRef refUsage = CFDictionaryGetValue ((CFDictionaryRef) element, CFSTR(kIOHIDElementUsageKey)); - - long type, page, usage; - - CFNumberGetValue((CFNumberRef) - CFDictionaryGetValue ((CFDictionaryRef) element, CFSTR(kIOHIDElementTypeKey)), - kCFNumberLongType, &type); - - switch ( type ) { - case kIOHIDElementTypeInput_Misc: - case kIOHIDElementTypeInput_Axis: - case kIOHIDElementTypeInput_Button: - printf("got input element..."); - CFNumberGetValue( (CFNumberRef) refUsage, kCFNumberLongType, &usage ); - CFNumberGetValue( (CFNumberRef) refPage, kCFNumberLongType, &page ); - - if (page == kHIDPage_GenericDesktop) { - switch ( usage ) /* look at usage to determine function */ - { - case kHIDUsage_GD_X: - case kHIDUsage_GD_Y: - case kHIDUsage_GD_Z: - case kHIDUsage_GD_Rx: - case kHIDUsage_GD_Ry: - case kHIDUsage_GD_Rz: - case kHIDUsage_GD_Slider: /* for throttle / trim controls */ - printf(" axis\n"); - fghJoystickAddAxisElement((CFDictionaryRef) element); - break; - - case kHIDUsage_GD_Hatswitch: - printf(" hat\n"); - fghJoystickAddHatElement((CFDictionaryRef) element); - break; - - default: - fgWarning ( "input type element has weird usage (%x)", usage); - break; - } - } else if (page == kHIDPage_Button) { - printf(" button\n"); - fghJoystickAddButtonElement((CFDictionaryRef) element); - } else - fgWarning ( "input type element has weird page (%x)", page); - break; - - case kIOHIDElementTypeCollection: - fghJoystickEnumerateElements ( - CFDictionaryGetValue ( element, CFSTR(kIOHIDElementKey) ) - ); - break; - - default: - break; - } -} - static void fghJoystickAddAxisElement ( SFG_Joystick *joy, CFDictionaryRef axis ) { long cookie, lmin, lmax;