- OSStatus err;
- EventRef event;
- UInt32 options = kHIToolbarItemAllowDuplicates;
- HIToolbarItemRef result = NULL;
-
- err = CreateEvent( NULL, kEventClassHIObject, kEventHIObjectInitialize, GetCurrentEventTime(), 0, &event );
- require_noerr( err, CantCreateEvent );
-
- SetEventParameter( event, kEventParamAttributes, typeUInt32, sizeof( UInt32 ), &options );
- SetEventParameter( event, kEventParamToolbarItemIdentifier, typeCFStringRef, sizeof( CFStringRef ), &inIdentifier );
-
- if ( inConfigData )
- SetEventParameter( event, kEventParamToolbarItemConfigData, typeCFTypeRef, sizeof( CFTypeRef ), &inConfigData );
-
- err = HIObjectCreate( kControlToolbarItemClassID, event, (HIObjectRef*)&result );
- check_noerr( err );
-
- ReleaseEvent( event );
-CantCreateEvent :
- return result ;
+ if ( inConfigData )
+ SetEventParameter( event, kEventParamToolbarItemConfigData, typeCFTypeRef, sizeof( CFTypeRef ), &inConfigData );
+
+ err = HIObjectCreate( kControlToolbarItemClassID, event, (HIObjectRef*)&result );
+ check_noerr( err );
+
+ ReleaseEvent( event );
+CantCreateEvent :
+ return result ;