[PyObjC-svn] r2270 - in trunk/pyobjc/pyobjc-framework-Cocoa: . Doc Lib/AppKit Lib/CoreFoundation Lib/Foundation Modules PyObjCTest

[email protected] Tue, 01 Sep 2009 10:48:21 -0500
Newsgroups gmane.comp.python.pyobjc.cvs
Message-ID <[email protected]>
Author: ronaldoussoren
Date: Tue Sep  1 10:48:21 2009
New Revision: 2270

Log:
Port to SnowLeopard.

- Updated BridgeSupport files
- Updated tests

Most tests now pass on SL, with the exception
of a couple of know failures, a testcase for
a method that needs a manual wrapper and two
testcases that work when run separately but
not when using 'python setup.py test'.

 


Added:
   trunk/pyobjc/pyobjc-framework-Cocoa/Doc/NEWS.txt
   trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_Foundation_NSInvocation.m
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsopengllayer.py   (contents, props changed)
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspasteboarditem.py   (contents, props changed)
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsrunningapplication.py   (contents, props changed)
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstextinputcontext.py   (contents, props changed)
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstouch.py   (contents, props changed)
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsuserinterfaceitemsearching.py   (contents, props changed)
Removed:
   trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_Foundation_functioncallbacks.m
   trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_Foundation_nsinvocation.m
Modified:
   trunk/pyobjc/pyobjc-framework-Cocoa/Doc/api-notes-CoreFoundation.txt
   trunk/pyobjc/pyobjc-framework-Cocoa/Doc/api-notes-Foudation.txt
   trunk/pyobjc/pyobjc-framework-Cocoa/Doc/api-notes-Foundation.txt
   trunk/pyobjc/pyobjc-framework-Cocoa/Lib/AppKit/PyObjC.bridgesupport
   trunk/pyobjc/pyobjc-framework-Cocoa/Lib/AppKit/__init__.py
   trunk/pyobjc/pyobjc-framework-Cocoa/Lib/CoreFoundation/PyObjC.bridgesupport
   trunk/pyobjc/pyobjc-framework-Cocoa/Lib/Foundation/PyObjC.bridgesupport
   trunk/pyobjc/pyobjc-framework-Cocoa/Lib/Foundation/__init__.py
   trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_AppKit_nsbitmap.m
   trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_AppKit_nsquickdrawview.m
   trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_CoreFoundation_CFBinaryHeap.m
   trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_CoreFoundation_CFSet.m
   trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_CoreFoundation_CFTree.m
   trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_Foundation_NSDecimal.m
   trunk/pyobjc/pyobjc-framework-Cocoa/Modules/pyobjc-api.h
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbase.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbinaryheap.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbitvector.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbundle.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfcalendar.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfdata.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfdateformatter.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cferror.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cflocale.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfmessageport.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfpropertylist.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfrunloop.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfsocket.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfstring.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cftimezone.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfurl.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_foundationerrors.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_keyvalue.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsaccessibility.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsapplication.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsarray.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsattributedstring.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsattributedstring_appkit.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsautoreleasepool.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsbrowser.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nscalendar.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nscell.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nscollectionview.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdata.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdate.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdateformatter.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdictionary.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdocktile.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdocument.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nserror.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsevent.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsexception.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsexpression.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsfilehandle.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsfilemanager.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsfilewrapper.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsgraphics.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nshttpcookie.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsimage.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsimagerep.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsindexset.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsjavasetup.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nslayoutmanager.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nslocale.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsmenu.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsnotification.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsobjcruntime.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsobject.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsopengl.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsoperation.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsoutlineview.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspasteboard.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspathutilties.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspredicate.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsprintinfo.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsprintpanel.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsprocessinfo.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspropertylist.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nssavepanel.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsscreen.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsset.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nssortdescriptor.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsspellchecker.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsspellserver.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nssplitview.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsstream.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsstring.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstablecolumn.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstableheadercell.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstableview.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstask.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstext.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstextinputclient.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstextview.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstimer.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstimezone.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurl.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurlconnection.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurldownload.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurlerror.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurlprotectionspace.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsview.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsviewcontroller.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nswindow.py
   trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsworkspace.py
   trunk/pyobjc/pyobjc-framework-Cocoa/setup.py

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Doc/api-notes-CoreFoundation.txt
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Doc/api-notes-CoreFoundation.txt	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Doc/api-notes-CoreFoundation.txt	Tue Sep  1 10:48:21 2009
@@ -84,8 +84,8 @@
 
 * ``CFBinaryHeapGetMinimumIfPresent``
 
-  This function is useless in Python, the bridge assumes that the ``value``
-  is always a valid pointer.
+  This function crashes the interpreter, the reason for that is unclear.
+
 
 CFBundle
 --------
@@ -147,6 +147,12 @@
   NOTE: This means it is unsafe to call ``CFMachPortContext`` on
   objects that weren't created in Python code.
 
+CFMessagePort
+-------------
+
+* ``CFMessagePortSetDispatchQueue``: not supported yet because there
+  are no wrappers for dispatch_queue_t yet.
+
 CFNumber
 --------
 

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Doc/api-notes-Foudation.txt
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Doc/api-notes-Foudation.txt	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Doc/api-notes-Foudation.txt	Tue Sep  1 10:48:21 2009
@@ -98,6 +98,20 @@
 
   This method is not supported.
 
+``NSProcessInfo``
+-----------------
+
+PyObjC defines a context named ``NSDisabledSuddenTermination``. This can be used to 
+disable sudden termination for a block of code. The context works on all versions of
+OSX, but only has a real side effect on OSX 10.6 or later.
+
+Usage::
+
+	with NSDisabledSuddenTermination:
+	    # sudden termination is disabled here
+	    pass
+	
+
 ``NSSet``
 ---------
 

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Doc/api-notes-Foundation.txt
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Doc/api-notes-Foundation.txt	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Doc/api-notes-Foundation.txt	Tue Sep  1 10:48:21 2009
@@ -62,6 +62,16 @@
 * ``NSIsFreedObject``, ``NSFrameAddress``, ``NSReturnAddress``, ``NSCountFrames``:
    These functions are not available from Python.
 
+NSException
+-----------
+
+* ``NSSetUncaughtExceptionHandler`` is not supported 
+
+* ``NSAssert5``, ``NSAssert4``, ``NSAssert3``, ``NSAssert2``, ``NSAssert1``, ``NSAssert``,
+  ``NSParameterAssert``, ``NSCAssert5``, ``NSCAssert4``, ``NSCAssert3``, ``NSCAssert2``,
+  ``NSCAssert1``, ``NSCAssert`` and ``NSCParameterAssert`` are not supported.
+
+
 NSGarbageCollector
 ------------------
 

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Lib/AppKit/PyObjC.bridgesupport
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Lib/AppKit/PyObjC.bridgesupport	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Lib/AppKit/PyObjC.bridgesupport	Tue Sep  1 10:48:21 2009
@@ -4,6 +4,119 @@
   <depends_on path='/System/Library/Frameworks/Foundation.framework/Foundation' />
   <depends_on path='/System/Library/Frameworks/ApplicationServices.framework/ApplicationServices' />
   <opaque name='NSModalSession' type='^{_NSModalSession=}' type64='^{_NSModalSession=}' />
+  <constant name='NSTextInputContextKeyboardSelectionDidChangeNotification' type='@' />
+  <constant name='NSWorkspaceDesktopImageScalingKey' type='@' />
+  <constant name='NSWorkspaceDesktopImageAllowClippingKey' type='@' />
+  <constant name='NSWorkspaceDesktopImageFillColorKey' type='@' />
+  <constant name='NSWorkspaceDidHideApplicationNotification' type='@' />
+  <constant name='NSWorkspaceDidUnhideApplicationNotification' type='@' />
+  <constant name='NSWorkspaceDidActivateApplicationNotification' type='@' />
+  <constant name='NSWorkspaceDidDeactivateApplicationNotification' type='@' />
+  <constant name='NSWorkspaceApplicationKey' type='@' />
+  <constant name='NSWorkspaceVolumeLocalizedNameKey' type='@' />
+  <constant name='NSWorkspaceVolumeURLKey' type='@' />
+  <constant name='NSWorkspaceVolumeOldLocalizedNameKey' type='@' />
+  <constant name='NSWorkspaceVolumeOldURLKey' type='@' />
+  <constant name='NSWorkspaceDidRenameVolumeNotification' type='@' />
+  <constant name='NSWorkspaceScreensDidSleepNotification' type='@' />
+  <constant name='NSWorkspaceScreensDidWakeNotification' type='@' />
+  <constant name='NSWorkspaceDidChangeFileLabelsNotification' type='@' />
+  <constant name='NSWorkspaceActiveSpaceDidChangeNotification' type='@' />
+  <constant name='NSWorkspaceLaunchConfigurationAppleEvent' type='@' />
+  <constant name='NSWorkspaceLaunchConfigurationArguments' type='@' />
+  <constant name='NSWorkspaceLaunchConfigurationEnvironment' type='@' />
+  <constant name='NSWorkspaceLaunchConfigurationArchitecture' type='@' />
+  <constant name='NSWindowWillStartLiveResizeNotification' type='@' />
+  <constant name='NSWindowDidEndLiveResizeNotification' type='@' />
+  <constant name='NSDefinitionPresentationTypeKey' type='@' />
+  <constant name='NSDefinitionPresentationTypeOverlay' type='@' />
+  <constant name='NSDefinitionPresentationTypeDictionaryApplication' type='@' />
+  <constant name='NSTextCheckingOrthographyKey' type='@' />
+  <constant name='NSTextCheckingQuotesKey' type='@' />
+  <constant name='NSTextCheckingReplacementsKey' type='@' />
+  <constant name='NSTextCheckingReferenceDateKey' type='@' />
+  <constant name='NSTextCheckingReferenceTimeZoneKey' type='@' />
+  <constant name='NSTextCheckingDocumentURLKey' type='@' />
+  <constant name='NSTextCheckingDocumentTitleKey' type='@' />
+  <constant name='NSTextCheckingDocumentAuthorKey' type='@' />
+  <constant name='NSScreenColorSpaceDidChangeNotification' type='@' />
+  <constant name='NSPrintSelectionOnly' type='@' />
+  <constant name='NSPrintJobSavingURL' type='@' />
+  <constant name='NSPrintJobSavingFileNameExtensionHidden' type='@' />
+  <constant name='NSPasteboardURLReadingFileURLsOnlyKey' type='@' />
+  <constant name='NSPasteboardURLReadingContentsConformToTypesKey' type='@' />
+  <constant name='NSPasteboardTypeString' type='@' />
+  <constant name='NSPasteboardTypePDF' type='@' />
+  <constant name='NSPasteboardTypeTIFF' type='@' />
+  <constant name='NSPasteboardTypePNG' type='@' />
+  <constant name='NSPasteboardTypeRTF' type='@' />
+  <constant name='NSPasteboardTypeRTFD' type='@' />
+  <constant name='NSPasteboardTypeHTML' type='@' />
+  <constant name='NSPasteboardTypeTabularText' type='@' />
+  <constant name='NSPasteboardTypeFont' type='@' />
+  <constant name='NSPasteboardTypeRuler' type='@' />
+  <constant name='NSPasteboardTypeColor' type='@' />
+  <constant name='NSPasteboardTypeSound' type='@' />
+  <constant name='NSPasteboardTypeMultipleTextSelection' type='@' />
+  <constant name='NSPasteboardTypeFindPanelSearchOptions' type='@' />
+  <constant name='NSImageHintCTM' type='@' />
+  <constant name='NSImageHintInterpolation' type='@' />
+  <constant name='NSImageNameFolder' type='@' />
+  <constant name='NSImageNameMobileMe' type='@' />
+  <constant name='NSImageNameUserGuest' type='@' />
+  <constant name='NSImageNameMenuOnStateTemplate' type='@' />
+  <constant name='NSImageNameMenuMixedStateTemplate' type='@' />
+  <constant name='NSImageNameApplicationIcon' type='@' />
+  <constant name='NSImageNameTrashEmpty' type='@' />
+  <constant name='NSImageNameTrashFull' type='@' />
+  <constant name='NSImageNameHomeTemplate' type='@' />
+  <constant name='NSImageNameBookmarksTemplate' type='@' />
+  <constant name='NSImageNameCaution' type='@' />
+  <constant name='NSImageNameStatusAvailable' type='@' />
+  <constant name='NSImageNameStatusPartiallyAvailable' type='@' />
+  <constant name='NSImageNameStatusUnavailable' type='@' />
+  <constant name='NSImageNameStatusNone' type='@' />
+  <constant name='NSManagerDocumentAttribute' type='@' />
+  <constant name='NSWritingDirectionAttributeName' type='@' />
+  <constant name='NSFileTypeDocumentAttribute' type='@' />
+  <constant name='NSCategoryDocumentAttribute' type='@' />
+  <constant name='NSFileTypeDocumentOption' type='@' />
+  <constant name='NSAccessibilityRelevanceIndicatorRole' type='@' />
+  <constant name='NSAccessibilityWarningValueAttribute' type='@' />
+  <constant name='NSAccessibilityCriticalValueAttribute' type='@' />
+  <constant name='NSAccessibilityPlaceholderValueAttribute' type='@' />
+  <constant name='NSAccessibilityUnknownOrientationValue' type='@' />
+  <constant name='NSAccessibilitySelectedCellsAttribute' type='@' />
+  <constant name='NSAccessibilityVisibleCellsAttribute' type='@' />
+  <constant name='NSAccessibilityRowHeaderUIElementsAttribute' type='@' />
+  <constant name='NSAccessibilityColumnHeaderUIElementsAttribute' type='@' />
+  <constant name='NSAccessibilityCellForColumnAndRowParameterizedAttribute' type='@' />
+  <constant name='NSAccessibilityRowIndexRangeAttribute' type='@' />
+  <constant name='NSAccessibilityColumnIndexRangeAttribute' type='@' />
+  <constant name='NSAccessibilityHorizontalUnitsAttribute' type='@' />
+  <constant name='NSAccessibilityVerticalUnitsAttribute' type='@' />
+  <constant name='NSAccessibilityHorizontalUnitDescriptionAttribute' type='@' />
+  <constant name='NSAccessibilityVerticalUnitDescriptionAttribute' type='@' />
+  <constant name='NSAccessibilityLayoutPointForScreenPointParameterizedAttribute' type='@' />
+  <constant name='NSAccessibilityLayoutSizeForScreenSizeParameterizedAttribute' type='@' />
+  <constant name='NSAccessibilityScreenPointForLayoutPointParameterizedAttribute' type='@' />
+  <constant name='NSAccessibilityScreenSizeForLayoutSizeParameterizedAttribute' type='@' />
+  <constant name='NSAccessibilityHandlesAttribute' type='@' />
+  <constant name='NSAccessibilityRowExpandedNotification' type='@' />
+  <constant name='NSAccessibilityRowCollapsedNotification' type='@' />
+  <constant name='NSAccessibilitySelectedCellsChangedNotification' type='@' />
+  <constant name='NSAccessibilityUnitsChangedNotification' type='@' />
+  <constant name='NSAccessibilitySelectedChildrenMovedNotification' type='@' />
+  <constant name='NSAccessibilitySortButtonRole' type='@' />
+  <constant name='NSAccessibilityLevelIndicatorRole' type='@' />
+  <constant name='NSAccessibilityCellRole' type='@' />
+  <constant name='NSAccessibilityLayoutAreaRole' type='@' />
+  <constant name='NSAccessibilityLayoutItemRole' type='@' />
+  <constant name='NSAccessibilityHandleRole' type='@' />
+  <constant name='NSAccessibilitySortButtonSubrole' type='@' />
+  <constant name='NSAccessibilityRatingIndicatorSubrole' type='@' />
+  <constant name='NSAccessibilityContentListSubrole' type='@' />
+  <constant name='NSAccessibilityDefinitionListSubrole' type='@' />
   <constant name='NSAFMAscender' type='@' />
   <constant name='NSAFMCapHeight' type='@' />
   <constant name='NSAFMCharacterSet' type='@' />
@@ -884,6 +997,107 @@
   <constant name='NSWorkspaceWillPowerOffNotification' type='@' />
   <constant name='NSWorkspaceWillSleepNotification' type='@' />
   <constant name='NSWorkspaceWillUnmountNotification' type='@' />
+  <constant name='NSPrintNoPresetsJobStyleHint' type='@' />
+  <constant name='NSPrintAllPresetsJobStyleHint' type='@' />
+  <enum name='NSTouchPhaseBegan' value='1' />
+  <enum name='NSTouchPhaseMoved' value='2' />
+  <enum name='NSTouchPhaseStationary' value='4' />
+  <enum name='NSTouchPhaseEnded' value='8' />
+  <enum name='NSTouchPhaseCancelled' value='16' />
+  <enum name='NSTouchPhaseTouching' value='7' />
+  <enum name='NSTouchPhaseAny' value='-1' />
+  <enum name='NSApplicationActivateAllWindows' value='1' />
+  <enum name='NSApplicationActivateIgnoringOtherApps' value='2' />
+  <enum name='NSApplicationActivationPolicyRegular' value='0' />
+  <enum name='NSApplicationActivationPolicyAccessory' value='1' />
+  <enum name='NSApplicationActivationPolicyProhibited' value='2' />
+  <enum name='NSAppKitVersionNumberWithDeferredWindowDisplaySupport' value='1019.0' />
+  <enum name='NSWindowCollectionBehaviorManaged' value='4' />
+  <enum name='NSWindowCollectionBehaviorTransient' value='8' />
+  <enum name='NSWindowCollectionBehaviorStationary' value='16' />
+  <enum name='NSWindowCollectionBehaviorParticipatesInCycle' value='32' />
+  <enum name='NSWindowCollectionBehaviorIgnoresCycle' value='64' />
+  <enum name='NSWindowNumberListAllApplications' value='1' />
+  <enum name='NSWindowNumberListAllSpaces' value='16' />
+  <enum name='NSViewLayerContentsRedrawNever' value='0' />
+  <enum name='NSViewLayerContentsRedrawOnSetNeedsDisplay' value='1' />
+  <enum name='NSViewLayerContentsRedrawDuringViewResize' value='2' />
+  <enum name='NSViewLayerContentsRedrawBeforeViewResize' value='3' />
+  <enum name='NSViewLayerContentsPlacementScaleAxesIndependently' value='0' />
+  <enum name='NSViewLayerContentsPlacementScaleProportionallyToFit' value='1' />
+  <enum name='NSViewLayerContentsPlacementScaleProportionallyToFill' value='2' />
+  <enum name='NSViewLayerContentsPlacementCenter' value='3' />
+  <enum name='NSViewLayerContentsPlacementTop' value='4' />
+  <enum name='NSViewLayerContentsPlacementTopRight' value='5' />
+  <enum name='NSViewLayerContentsPlacementRight' value='6' />
+  <enum name='NSViewLayerContentsPlacementBottomRight' value='7' />
+  <enum name='NSViewLayerContentsPlacementBottom' value='8' />
+  <enum name='NSViewLayerContentsPlacementBottomLeft' value='9' />
+  <enum name='NSViewLayerContentsPlacementLeft' value='10' />
+  <enum name='NSViewLayerContentsPlacementTopLeft' value='11' />
+  <enum name='NSTextWritingDirectionEmbedding' value='0' />
+  <enum name='NSTextWritingDirectionOverride' value='2' />
+  <enum name='NSSplitViewDividerStylePaneSplitter' value='3' />
+  <enum name='NSPrintPanelShowsPrintSelection' value='32' />
+  <enum name='NSPasteboardReadingAsData' value='0' />
+  <enum name='NSPasteboardReadingAsString' value='1' />
+  <enum name='NSPasteboardReadingAsPropertyList' value='2' />
+  <enum name='NSPasteboardReadingAsKeyedArchive' value='4' />
+  <enum name='NSPasteboardWritingPromised' value='512' />
+  <enum name='NSOpenGLPFARemotePixelBuffer' value='91' />
+  <enum name='NSOpenGLPFAAcceleratedCompute' value='97' />
+  <enum name='NSMenuPropertyItemTitle' value='1' />
+  <enum name='NSMenuPropertyItemAttributedTitle' value='2' />
+  <enum name='NSMenuPropertyItemKeyEquivalent' value='4' />
+  <enum name='NSMenuPropertyItemImage' value='8' />
+  <enum name='NSMenuPropertyItemEnabled' value='16' />
+  <enum name='NSMenuPropertyItemAccessibilityDescription' value='32' />
+  <enum name='NSColorRenderingIntentDefault' value='0' />
+  <enum name='NSColorRenderingIntentAbsoluteColorimetric' value='1' />
+  <enum name='NSColorRenderingIntentRelativeColorimetric' value='2' />
+  <enum name='NSColorRenderingIntentPerceptual' value='3' />
+  <enum name='NSColorRenderingIntentSaturation' value='4' />
+  <enum name='NSWindowDepthTwentyfourBitRGB' value='520' />
+  <enum name='NSWindowDepthSixtyfourBitRGB' value='528' />
+  <enum name='NSWindowDepthOnehundredtwentyeightBitRGB' value='544' />
+  <enum name='NSFileWrapperReadingImmediate' value='1'/>
+  <enum name='NSFileWrapperReadingWithoutMapping' value='2'/>
+  <enum name='NSFileWrapperWritingAtomic' value='1'/>
+  <enum name='NSFileWrapperWritingWithNameUpdating' value='2'/>
+  <enum name='NSEventTypeGesture' value='29' />
+  <enum name='NSEventTypeMagnify' value='30' />
+  <enum name='NSEventTypeSwipe' value='31' />
+  <enum name='NSEventTypeRotate' value='18' />
+  <enum name='NSEventTypeBeginGesture' value='19' />
+  <enum name='NSEventTypeEndGesture' value='20' />
+  <enum name='NSEventMaskGesture' value='536870912' />
+  <enum name='NSEventMaskMagnify' value='1073741824' />
+  <enum name='NSEventMaskSwipe' value='2147483648' />
+  <enum name='NSEventMaskRotate' value='262144' />
+  <enum name='NSEventMaskBeginGesture' value='524288' />
+  <enum name='NSEventMaskEndGesture' value='1048576' />
+  <enum name='NSAppKitVersionNumberWithDockTilePlugInSupport' value='1001.0' />
+  <enum name='NSCollectionViewDropOn' value='0' />
+  <enum name='NSCollectionViewDropBefore' value='1' />
+  <enum name='NSAppKitVersionNumber10_4_1' value='824.1' />
+  <enum name='NSAppKitVersionNumber10_4_3' value='824.23' />
+  <enum name='NSAppKitVersionNumber10_4_4' value='824.33' />
+  <enum name='NSAppKitVersionNumber10_4_7' value='824.41' />
+  <enum name='NSAppKitVersionNumber10_5' value='949' />
+  <enum name='NSAppKitVersionNumber10_5_2' value='949.27' />
+  <enum name='NSAppKitVersionNumber10_5_3' value='949.33' />
+  <enum name='NSApplicationPresentationDefault' value='0' />
+  <enum name='NSApplicationPresentationAutoHideDock' value='1' />
+  <enum name='NSApplicationPresentationHideDock' value='2' />
+  <enum name='NSApplicationPresentationAutoHideMenuBar' value='4' />
+  <enum name='NSApplicationPresentationHideMenuBar' value='8' />
+  <enum name='NSApplicationPresentationDisableAppleMenu' value='16' />
+  <enum name='NSApplicationPresentationDisableProcessSwitching' value='32' />
+  <enum name='NSApplicationPresentationDisableForceQuit' value='64' />
+  <enum name='NSApplicationPresentationDisableSessionTermination' value='128' />
+  <enum name='NSApplicationPresentationDisableHideApplication' value='256' />
+  <enum name='NSUserInterfaceLayoutDirectionLeftToRight' value='0' />
+  <enum name='NSUserInterfaceLayoutDirectionRightToLeft' value='1' />
   <enum name='NSLayoutNotDone' value='0' />
   <enum name='NSLayoutDone' value='1' />
   <enum name='NSLayoutCantFit' value='2' />
@@ -1249,6 +1463,7 @@
   <enum name='NSImageInterpolationHigh' value='3' />
   <enum name='NSImageInterpolationLow' value='2' />
   <enum name='NSImageInterpolationNone' value='1' />
+  <enum name='NSImageInterpolationMedium' value='4' />
   <enum name='NSImageLeft' value='2' />
   <enum name='NSImageLoadStatusCancelled' value='1' />
   <enum name='NSImageLoadStatusCompleted' value='0' />
@@ -1614,6 +1829,10 @@
   <enum name='NSTableViewLastColumnOnlyAutoresizingStyle' value='4' />
   <enum name='NSTableViewNoColumnAutoresizing' value='0' />
   <enum name='NSTableViewReverseSequentialColumnAutoresizingStyle' value='3' />
+  <enum name='NSTableViewDraggingDestinationFeedbackStyleNone' value='-1' />
+  <enum name='NSTableViewDraggingDestinationFeedbackStyleRegular' value='0' />
+  <enum name='NSTableViewDraggingDestinationFeedbackStyleSourceList' value='1' />
+  <enum name='NSTableViewSelectionHighlightStyleNone' value='-1' />
   <enum name='NSTableViewSelectionHighlightStyleRegular' value='0' />
   <enum name='NSTableViewSelectionHighlightStyleSourceList' value='1' />
   <enum name='NSTableViewSequentialColumnAutoresizingStyle' value='2' />
@@ -2647,6 +2866,7 @@
     <method selector='speechSynthesizer:willSpeakWord:ofString:' type='v@:@{_NSRange=II}@' type64='v@:@{_NSRange=QQ}@' />
   </informal_protocol>
   <informal_protocol name='NSSplitViewDelegate'>
+    <method selector='splitView:shouldAdjustSizeOfSubview:' type='B@:@@' type64='B@:@@' />
     <method selector='splitView:additionalEffectiveRectOfDividerAtIndex:' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}@:@i' type64='{CGRect={CGPoint=dd}{CGSize=dd}}@:@q' />
     <method selector='splitView:canCollapseSubview:' type='B@:@@' />
     <method selector='splitView:effectiveRect:forDrawnRect:ofDividerAtIndex:' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}@:@{_NSRect={_NSPoint=ff}{_NSSize=ff}}{_NSRect={_NSPoint=ff}{_NSSize=ff}}i' type64='{CGRect={CGPoint=dd}{CGSize=dd}}@:@{CGRect={CGPoint=dd}{CGSize=dd}}{CGRect={CGPoint=dd}{CGSize=dd}}q' />
@@ -3354,6 +3574,17 @@
     </method>
   </class>
   <class name='NSApplication'>
+    <method selector='searchString:inUserInterfaceItemString:searchRange:foundRange:'>
+      <retval type='B' />
+      <arg index='2' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      <arg index='3' type_modifier='o' type='^{_NSRange=II}' type64='^{_NSRange=QQ}' />
+    </method>
+    <method selector='setActivationPolicy:' >
+      <retval type='B' />
+    </method>
+    <method selector='isFullKeyboardAccessEnabled'>
+      <retval type='B' />
+    </method>
     <method selector='abortModal'>
       <retval type='v' />
     </method>
@@ -4624,6 +4855,24 @@
     </method>
   </class>
   <class name='NSBrowser'>
+  <method selector='setAutohidesScroller:' >
+	  <arg index='0' type='B' />
+  </method>
+  <method selector='autohidesScroller' >
+	  <retval type='B' />
+  </method>
+  <method selector='isLeafItem:' >
+	  <retval type='B' />
+  </method>
+  <method selector='getRow:column:forPoint:' >
+	  <retval type='B' />
+	  <arg index='0' type_modifier='o' />
+	  <arg index='1' type_modifier='o' />
+	  <arg index='2' type='{_NSPoint=ff}' type64='{CGPoint=dd}' />
+  </method>
+  <method selector='editItemAtIndexPath:withEvent:select:' >
+	  <arg index='2' type='B' />
+  </method>
     <method selector='acceptsArrowKeys'>
       <retval type='B' />
     </method>
@@ -5445,6 +5694,12 @@
     </method>
   </class>
   <class name='NSCell'>
+    <method selector='usesSingleLineMode' >
+      <retval type='B' />
+    </method>
+    <method selector='setUsesSingleLineMode:' >
+      <arg index='0' type='B' />
+    </method>
     <method selector='truncatesLastVisibleLine'>
       <retval type='B' />
     </method>
@@ -6062,6 +6317,15 @@
     </method>
   </class>
   <class name='NSCollectionView'>
+	  <method selector='setDraggingSourceOperationMask:forLocal:'>
+		  <arg index='1' type='B' />
+	  </method>
+	  <method selector='draggingImageForItemsAtIndexes:withEvent:offset:'>
+		  <arg index='2' type_modifier='N' />
+	  </method>
+    <method selector='frameForItemAtIndex:' >
+      <retval type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
+    </method>
     <method selector='allowsMultipleSelection'>
       <retval type='B' />
     </method>
@@ -7718,6 +7982,9 @@
     </method>
   </class>
   <class name='NSDocument'>
+	  <method selector='canConcurrentlyReadDocumentsOfType:'>
+		  <retval type='B' />
+	  </method>
     <method selector='addWindowController:'>
       <retval type='v' />
       <arg index='0' type='@' />
@@ -8528,6 +8795,18 @@
     </method>
   </class>
   <class name='NSEvent'>
+	  <method selector='addGlobalMonitorForEventsMatchingMask:handler:'>
+		  <arg index='1' block='true'>
+			  <retval type='v' />
+			  <arg type='@' />
+		  </arg>
+	  </method>
+	  <method selector='addLocalMonitorForEventsMatchingMask:handler:'>
+		  <arg index='1' block='true'>
+			  <retval type='v' />
+			  <arg type='@' />
+		  </arg>
+	  </method>
     <method selector='absoluteX'>
       <retval type='i' type64='q' />
     </method>
@@ -8731,6 +9010,20 @@
     </method>
   </class>
   <class name='NSFileWrapper'>
+	  <method selector='initWithURL:options:error:'>
+		  <arg index='2' type_modifier='o' />
+	  </method>
+	  <method selector='matchesContentsOfURL:'>
+		  <retval type='B' />
+	  </method>
+	  <method selector='readFromURL:options:error:'>
+		  <retval type='B' />
+		  <arg index='2' type_modifier='o' />
+	  </method>
+	  <method selector='writeToURL:options:originalContentsURL:error:'>
+		  <retval type='B' />
+		  <arg index='3' type_modifier='o' />
+	  </method>
     <method selector='addFileWithPath:'>
       <retval type='@' />
       <arg index='0' type='@' />
@@ -9825,6 +10118,35 @@
     </method>
   </class>
   <class name='NSImage'>
+    <method selector='hitTestRect:withImageDestinationRect:context:hints:flipped:'>
+      <retval type='B' />
+      <arg index='0' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
+      <arg index='1' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
+      <arg index='4' type='B' />
+    </method>
+    <method selector='drawInRect:fromRect:operation:fraction:respectFlipped:hints:'>
+      <retval type='B' />
+      <arg index='0' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
+      <arg index='1' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
+      <arg index='4' type='B' />
+    </method>
+      <method selector='lockFocusFlipped:'>
+	      <arg index='0' type='B' />
+      </method>
+      <method selector='initWithCGImage:size:'>
+	      <arg index='1' type='{_NSSize=ff}' type64='{CGSize=dd}' />
+      </method>
+      <method selector='CGImageForProposedRect:context:hints:'>
+	      <arg index='0' type_modifier='o' type='^{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='^{CGRect={CGPoint=dd}{CGSize=dd}}' />
+      </method>
+      <method selector='bestRepresentationForRect:context:hints:'>
+	      <arg index='0' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
+      </method>
+      <method selector='hitTestRect:withImageDestinationRect:context_hints:flipped:'>
+	      <retval type='B' />
+	      <arg index='0' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
+	      <arg index='1' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
+      </method>
     <method selector='TIFFRepresentation'>
       <retval type='@' />
     </method>
@@ -10138,6 +10460,15 @@
       <retval type='B' />
       <arg index='0' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
     </method>
+    <method selector='drawInRect:fromRect:operation:fraction:respectFlipped:hints:'>
+      <retval type='B' />
+      <arg index='0' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
+      <arg index='1' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
+      <arg index='4' type='B' />
+    </method>
+    <method selector='CGImageForProposedRect:context:hints:' >
+      <arg index='0' type_modifier='N' type='^{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='^{CGRect={CGPoint=dd}{CGSize=dd}}' />
+    </method>
     <method selector='hasAlpha'>
       <retval type='B' />
     </method>
@@ -10362,6 +10693,14 @@
     </method>
   </class>
   <class name='NSLayoutManager'>
+	  <method selector='fillBackgroundRectArray:count:forCharacterRange:color:'>
+		  <arg index='0' type_modifier='N' c_array_length_in_arg='1' type='^{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='^{CGRect={CGPoint=dd}{CGSize=dd}}' />
+	          <arg index='2' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+	  </method>
+	  <method selector='characterIndexForPoint:inTextContainer:fractionOfDistanceBetweenInsertionPoints:'>
+             <arg index='0' type='{_NSPoint=ff}' type64='{CGPoint=dd}' />
+	     <arg index='2' type_modifier='o' />
+	  </method>
     <method selector='addTemporaryAttribute:value:forCharacterRange:'>
       <retval type='v' />
       <arg index='0' type='@' />
@@ -11529,6 +11868,22 @@
     </method>
   </class>
   <class name='NSMenu'>
+	  <method selector='allowsContextMenuPlugIns' >
+		  <retval type='B' />
+	  </method>
+	  <method selector='showsStateColumn' >
+		  <retval type='B' />
+	  </method>
+	  <method selector='setAllowsContextMenuPlugIns:' >
+		  <arg index='0' type='B' />
+	  </method>
+	  <method selector='setShowsStateColumn:' >
+		  <arg index='0' type='B' />
+	  </method>
+	  <method selector='popUpMenuPositioningItem:atLocation:inView:'>
+		  <retval type='B' />
+		  <arg index='1' type='{_NSPoint=ff}' type64='{CGPoint=dd}' />
+	  </method>
     <method selector='addItem:'>
       <retval type='v' />
       <arg index='0' type='@' />
@@ -12573,6 +12928,56 @@
     </method>
   </class>
   <class name='NSObject'>
+	  <method selector='searchForItemsWithSearchString:resultLimit:matchedItemHandler:'>
+		  <arg index='1' type='i' type64='q' />
+		  <arg index='2' type='@?' block='true' >
+			  <retval type='v' />
+			  <arg type='@' />
+		  </arg>
+	  </method>
+	  <method selector='confinementRectForMenu:onScreen:'>
+             <retval type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
+	  </method>
+	  <method selector='collectionView:canDragItemsAtIndexes:withEvent:'>
+		  <retval type='B' />
+	  </method>
+	  <method selector='collectionView:writeItemsAtIndexes:toPasteboard:'>
+		  <retval type='B' />
+	  </method>
+	  <method selector='collectionView:draggingImageForItemsAtIndexes:withEvent:offset:'>
+      		<arg index='3' type='^{_NSPoint=ff}' type64='^{CGPoint=dd}' type_modifier='N' />
+	  </method>
+	  <method selector='collectionView:validateDrop:proposedIndex:dropOperation:'>
+		  <retval type='i' type64='q' />
+		  <arg index='2' type_modifier='N' type='^i' type64='^q' />
+		  <arg index='3' type_modifier='N' type='^i' type64='^q' />
+	  </method>
+	  <method selector='collectionView:acceptDrop:index:dropOperation:'>
+		  <retval type='B' />
+		  <arg index='2' type='i' type64='q' />
+		  <arg index='3' type='i' type64='q' />
+	  </method>
+    <method selector='browser:isLeafItem:' >
+	    <retval type='B' />
+    </method>
+    <method selector='browser:heightOfRow:inColumn:' >'
+	    <retval type='f' type64='d' />
+	    <arg index='1' type='i' type64='q' />
+	    <arg index='2' type='i' type64='q' />
+    </method>
+    <method selector='browser:shouldEditItem:' >
+	    <retval type='B' />
+    </method>
+    <method selector='browser:numberOfRowsInColumn:' >
+	    <arg index='1' type='i' type64='q' />
+	    <retval type='i' type64='q' />
+    </method>
+    <method selector='browser:createRowsForColumn:inMatrix:' >
+	    <retval type='i' type64='q' />
+    </method>
+    <method selector='isContentDiscarded'>
+      <retval type='B' />
+    </method>
     <method selector='accessibilityActionDescription:'>
       <retval type='@' />
       <arg index='0' type='@' />
@@ -12829,6 +13234,10 @@
     <method selector='awakeFromNib'>
       <retval type='v' />
     </method>
+    <method selector='drawsVerticallyForCharacterAtIndex:'>
+      <retval type='B' />
+      <arg index='0' type='i' type64='q' />
+    </method>
     <method selector='baselineDeltaForCharacterAtIndex:'>
       <retval type='f' type64='d' />
       <arg index='0' type='I' type64='Q' />
@@ -13544,6 +13953,18 @@
       <retval type='@' />
       <arg index='0' type='@' />
     </method>
+    <method selector='outlineView:sizeToFitWidthOfColumn:'>
+	    <retval type='f' type64='d' />
+	    <arg index='1' type='i' type64='q' />
+    </method>
+    <method selector='outlineView:shouldReorderColumn:toColumn:'>
+	    <retval type='B' />
+	    <arg index='1' type='i' type64='q' />
+	    <arg index='2' type='i' type64='q' />
+    </method>
+    <method selector='outlineView:shouldShowOutlineCellForItem:'>
+	    <retval type='B' />
+    </method>
     <method selector='outlineView:acceptDrop:item:childIndex:'>
       <retval type='B' />
       <arg index='0' type='@' />
@@ -13763,6 +14184,13 @@
       <retval type='v' />
       <arg index='0' type='@' />
     </method>
+    <method selector='panel:shouldEnableURL:'>
+	    <retval type='B' />
+    </method>
+    <method selector='panel:validateURL:error:'>
+	    <retval type='B' />
+	    <arg index='2' type_modifier='o' type='^@' />
+    </method>
     <method selector='panel:compareFilename:with:caseSensitive:'>
       <retval type='i' type64='q' />
       <arg index='0' type='@' />
@@ -14001,6 +14429,9 @@
       <arg index='1' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
       <arg index='2' type='@' />
     </method>
+    <method selector='splitView:shouldAdjustSizeOfSubview:'>
+	    <retval type='B' />
+    </method>
     <method selector='splitView:additionalEffectiveRectOfDividerAtIndex:'>
       <retval type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
       <arg index='0' type='@' />
@@ -14083,6 +14514,15 @@
       <retval type='v' />
       <arg index='0' type='@' />
     </method>
+    <method selector='tableView:sizeToFitWidthOfColumn:' >
+      <retval type='f' type64='d' />
+      <arg index='1' type='i' type64='q' />
+    </method>
+    <method selector='tableView:shouldReorderColumn:toColumn:' >
+      <retval type='B' />
+      <arg index='1' type='i' type64='q' />
+      <arg index='2' type='i' type64='q' />
+    </method>
     <method selector='tableView:acceptDrop:row:dropOperation:'>
       <retval type='B' />
       <arg index='0' type='@' />
@@ -14284,12 +14724,21 @@
       <retval type='v' />
       <arg index='0' type='@' />
     </method>
+    <method selector='textView:willCheckTextInRange:options:types:'>
+      <arg index='1' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      <arg index='3' type_modifier='N' type='^i' type64='^q' />
+    </method>
     <method selector='textView:clickedOnCell:inRect:'>
       <retval type='v' />
       <arg index='0' type='@' />
       <arg index='1' type='@' />
       <arg index='2' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
     </method>
+    <method selector='textView:didCheckTextInRange:types:options:results:orthography:wordCount:' >
+      <arg index='1' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      <arg index='2' type='i' type64='q' />
+      <arg index='6' type='i' type64='q' />
+    </method>
     <method selector='textView:clickedOnCell:inRect:atIndex:'>
       <retval type='v' />
       <arg index='0' type='@' />
@@ -14880,6 +15329,11 @@
       <arg index='0' type='@' />
     </method>
   </class>
+  <class name='NSOpenGLLayer'>
+	  <method selector='canDrawInOpenGLContext:pixelFormat:forLayerTime:displayTime:'>
+		  <retval type='B' />
+	  </method>
+  </class>
   <class name='NSOpenGLContext'>
     <method class_method='true' selector='clearCurrentContext'>
       <retval type='v' />
@@ -15412,7 +15866,30 @@
       <retval type='f' />
     </method>
   </class>
+  <class name='NSPasteboardItem'>
+	  <method selector='setDataProvider:forTypes:'>
+		  <retval type='B' />
+	  </method>
+	  <method selector='setData:forType:'>
+		  <retval type='B' />
+	  </method>
+	  <method selector='setString:forType:'>
+		  <retval type='B' />
+	  </method>
+	  <method selector='setPropertyList:forType:'>
+		  <retval type='B' />
+	  </method>
+  </class>
   <class name='NSPasteboard'>
+	  <method selector='writeObjects:'>
+		  <retval type='B' />
+	  </method>
+	  <method selector='canReadItemWithDataConformingToTypes:'>
+		  <retval type='B' />
+	  </method>
+	  <method selector='canReadObjectForClasses:options:'>
+		  <retval type='B' />
+	  </method>
     <method selector='addTypes:owner:'>
       <retval type='i' type64='q' />
       <arg index='0' type='@' />
@@ -16121,6 +16598,12 @@
     </method>
   </class>
   <class name='NSPrintInfo'>
+	  <method selector='setSelectionOnly:'>
+		  <arg index='0' type='B' />
+	  </method>
+	  <method selector='isSelectionOnly' >
+		  <retval type='B' />
+	  </method>
     <method selector='bottomMargin'>
       <retval type='f' type64='d' />
     </method>
@@ -17505,7 +17988,48 @@
       <arg index='1' type='@' />
     </method>
   </class>
+  <class name='NSRunningApplication' >
+	  <method selector='forceTerminate' >
+		  <retval type='B' />
+	  </method>
+	  <method selector='terminate' >
+		  <retval type='B' />
+	  </method>
+	  <method selector='isTerminated' >
+		  <retval type='B' />
+	  </method>
+	  <method selector='isFinishedLaunching' >
+		  <retval type='B' />
+	  </method>
+	  <method selector='isHidden' >
+		  <retval type='B' />
+	  </method>
+	  <method selector='isActive' >
+		  <retval type='B' />
+	  </method>
+	  <method selector='hide' >
+		  <retval type='B' />
+	  </method>
+	  <method selector='unhide' >
+		  <retval type='B' />
+	  </method>
+	  <method selector='activateWithOptions:' >
+		  <retval type='B' />
+	  </method>
+  </class>
   <class name='NSSavePanel'>
+	  <method selector='beginSheetModalForWindow:completionHandler:'>
+		  <arg index='1' block='true' >
+			  <retval type='v' />
+			  <arg type='i' type64='q' />
+		  </arg>
+	  </method>
+	  <method selector='beginWithCompletionHandler:'>
+		  <arg index='0' block='true' >
+			  <retval type='v' />
+			  <arg type='i' type64='q' />
+		  </arg>
+	  </method>
     <method selector='URL'>
       <retval type='@' />
     </method>
@@ -17518,6 +18042,9 @@
     <method selector='allowsOtherFileTypes'>
       <retval type='B' />
     </method>
+    <method selector='showsHiddenFiles'>
+      <retval type='B' />
+    </method>
     <method selector='beginSheetForDirectory:file:types:modalForWindow:modalDelegate:didEndSelector:contextInfo:'>
       <retval type='v' />
       <arg index='0' type='@' />
@@ -17614,6 +18141,10 @@
       <retval type='v' />
       <arg index='0' type='B' />
     </method>
+    <method selector='setShowsHiddenFiles:'>
+      <retval type='v' />
+      <arg index='0' type='B' />
+    </method>
     <method selector='setCanCreateDirectories:'>
       <retval type='v' />
       <arg index='0' type='B' />
@@ -18929,6 +19460,27 @@
     <method selector='availableLanguages'>
       <retval type='@' />
     </method>
+    <method selector='automaticallyIdentifiesLanguages'>
+      <retval type='B' />
+    </method>
+    <method selector='setAutomaticallyIdentifiesLanguages:'>
+      <arg index='0' type='B' />
+    </method>
+    <method selector='requestCheckingOfString:range:types:options:inSpellDocumentWithTag:completionHandler:'>
+	    <arg index='1' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+	    <arg index='5' block='true'>
+		    <retval type='v' />
+	   	    <arg type='i' type64='q' />
+		    <arg type='@' />
+		    <arg type='@' />
+	   	    <arg type='i' type64='q' />
+	    </arg>
+    </method>
+    <method selector='checkString:range:types:options:inSpellDocumentWithTag:orthography:wordCount:'>
+	    <arg index='1' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+	    <arg index='5' type_modifier='o' />
+	    <arg index='6' type_modifier='o' />
+    </method>
     <method selector='checkGrammarOfString:startingAt:language:wrap:inSpellDocumentWithTag:details:'>
       <retval type='{_NSRange=II}' type64='{_NSRange=QQ}' />
       <arg index='0' type='@' />
@@ -19663,9 +20215,8 @@
     </method>
   </class>
   <class name='NSTableView'>
-    <method selector='addTableColumn:'>
-      <retval type='v' />
-      <arg index='0' type='@' />
+    <method selector='shouldFocusCell:atColumn:row:' >
+      <retval type='B' />
     </method>
     <method selector='allowsColumnReordering'>
       <retval type='B' />
@@ -19688,28 +20239,14 @@
     <method selector='autoresizesAllColumnsToFit'>
       <retval type='B' />
     </method>
-    <method selector='autosaveName'>
-      <retval type='@' />
-    </method>
     <method selector='autosaveTableColumns'>
       <retval type='B' />
     </method>
-    <method selector='backgroundColor'>
-      <retval type='@' />
-    </method>
     <method selector='canDragRowsWithIndexes:atPoint:'>
       <retval type='B' />
-      <arg index='0' type='@' />
       <arg index='1' type='{_NSPoint=ff}' type64='{CGPoint=dd}' />
     </method>
-    <method selector='clickedColumn'>
-      <retval type='i' type64='q' />
-    </method>
-    <method selector='clickedRow'>
-      <retval type='i' type64='q' />
-    </method>
     <method selector='columnAtPoint:'>
-      <retval type='i' type64='q' />
       <arg index='0' type='{_NSPoint=ff}' type64='{CGPoint=dd}' />
     </method>
     <method selector='columnAutoresizingStyle'>
@@ -19719,10 +20256,6 @@
       <retval type='@' />
       <arg index='0' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
     </method>
-    <method selector='columnWithIdentifier:'>
-      <retval type='i' type64='q' />
-      <arg index='0' type='@' />
-    </method>
     <method selector='columnsInRect:'>
       <retval type='{_NSRange=II}' type64='{_NSRange=QQ}' />
       <arg index='0' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
@@ -20725,6 +21258,18 @@
       <retval type='@' />
     </method>
   </class>
+  <class name='NSTextInputContext'>
+	  <method selector='acceptsGlyphInfo' >
+		  <retval type='B' />
+	  </method>
+	  <method selector='setAcceptsGlyphInfo:' >
+		  <arg index='0' type='B' />
+	  </method>
+	  <method selector='handleEvent:' >
+		  <retval type='B' />
+	  </method>
+
+  </class>
   <class name='NSTextList'>
     <method selector='initWithMarkerFormat:options:'>
       <retval type='@' />
@@ -20941,6 +21486,33 @@
     <method selector='acceptableDragTypes'>
       <retval type='@' />
     </method>
+    <method selector='isCoalescingUndo'>
+      <retval type='B' />
+    </method>
+    <method selector='isAutomaticDataDetectionEnabled'>
+      <retval type='B' />
+    </method>
+    <method selector='isAutomaticDashSubstitutionEnabled'>
+      <retval type='B' />
+    </method>
+    <method selector='isAutomaticTextReplacementEnabled'>
+      <retval type='B' />
+    </method>
+    <method selector='isAutomaticSpellingCorrectionEnabled'>
+      <retval type='B' />
+    </method>
+    <method selector='setAutomaticDataDetectionEnabled:'>
+      <arg index='0' type='B' />
+    </method>
+    <method selector='setAutomaticDashSubstitutionEnabled:'>
+      <arg index='0' type='B' />
+    </method>
+    <method selector='setAutomaticTextReplacementEnabled:'>
+      <arg index='0' type='B' />
+    </method>
+    <method selector='setAutomaticSpellingCorrectionEnabled:'>
+      <arg index='0' type='B' />
+    </method>
     <method selector='acceptsGlyphInfo'>
       <retval type='B' />
     </method>
@@ -21877,6 +22449,15 @@
       <retval type='@' />
     </method>
   </class>
+  <class name='NSTouch'>
+	  <method selector='isResting'>
+		  <retval type='B' />
+	  </method>
+	  <method selector='deviceSize'>
+		  <retval type='{_NSSize=ff}' type64='{CGSize=dd}' />
+	  </method>
+  </class>
+
   <class name='NSTrackingArea'>
     <method selector='initWithRect:options:owner:userInfo:'>
       <retval type='@' />
@@ -22438,6 +23019,35 @@
     </method>
   </class>
   <class name='NSView'>
+    <method selector='showDefinitionForAttributedString:atPoint:' >
+      <arg index='1' type='{_NSPoint=ff}' type64='{CGPoint=dd}' />
+    </method>
+    <method selector='showDefinitionForAttributedString:range:options:baselineOriginProvider:' >
+      <arg index='1' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      <arg index='3' block='true' >
+         <retval type='{_NSPoint=ff}' type64='{CGPoint=dd}' />
+         <arg type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      </arg>
+    </method>
+    <method selector='canDrawConcurrently' >
+      <retval type='B' />
+    </method>
+    <method selector='setCanDrawConcurrently:' >
+      <arg index='0' type='B' />
+    </method>
+    <method selector='acceptsTouchEvents' >
+      <retval type='B' />
+    </method>
+    <method selector='setAcceptsTouchEvents:' >
+      <arg index='0' type='B' />
+    </method>
+    <method selector='wantsRestingTouches' >
+      <retval type='B' />
+    </method>
+    <method selector='setWantsRestingTouches:' >
+      <arg index='0' type='B' />
+    </method>
+	  
     <method selector='sortSubviewsUsingFunction:context:'>
 	    <arg index='0' type='^?' function_pointer='true' function_pointer_retained='false'>
 		    <retval type='i'/>
@@ -23313,6 +23923,33 @@
     </method>
   </class>
   <class name='NSWindow'>
+	  <method classmethod='true' selector='windowNumberAtPoint:belowWindowWithNumber:'>
+		  <arg index='0' type='{_NSPoint=ff}' type64='{CGPoint=dd}' />
+	  </method>
+    <method selector='inLiveResize'>
+      <retval type='B' />
+    </method>
+    <method selector='isOnActiveSpace'>
+      <retval type='B' />
+    </method>
+    <method selector='isMovable'>
+      <retval type='B' />
+    </method>
+    <method selector='setMovable:'>
+      <arg index='0' type='B' />
+    </method>
+    <method selector='allowsConcurrentViewDrawing'>
+      <retval type='B' />
+    </method>
+    <method selector='setAllowsConcurrentViewDrawing:'>
+      <arg index='0' type='B' />
+    </method>
+    <method selector='preventsApplicationTerminationWhenModal'>
+      <retval type='B' />
+    </method>
+    <method selector='setPreventsApplicationTerminationWhenModal:'>
+      <arg index='0' type='B' />
+    </method>
     <method selector='canBeVisibleOnAllSpaces'>
       <retval type='B' />
     </method>
@@ -24308,42 +24945,47 @@
       <arg index='0' type='@' />
     </method>
     <method selector='windowWillLoad'>
-      <retval type='v' />
+<retval type='v' />
     </method>
   </class>
   <class name='NSWorkspace'>
-    <method selector='absolutePathForAppBundleWithIdentifier:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='activeApplication'>
-      <retval type='@' />
+    <method selector='showSearchResultsForQueryString:' >
+      <retval type='B' />
     </method>
-    <method selector='checkForRemovableMedia'>
-      <retval type='v' />
+    <method selector='recycleURLs:completionHandler:'>
+	    <arg index='1' block='true' >
+		    <retval type='v'/>
+		    <arg type='@' />
+		    <arg type='@' />
+	    </arg>
     </method>
-    <method selector='extendPowerOffBy:'>
-      <retval type='i' type64='q' />
-      <arg index='0' type='i' type64='q' />
+    <method selector='unmountAndEjectDeviceAtURL:error:' >
+	    <retval type='B' />
+	    <arg index='1' type_modifier='o' />
+    </method>
+
+    <method selector='duplicateURLs:completionHandler:'>
+	    <arg index='1' block='true' >
+		    <retval type='v'/>
+		    <arg type='@' />
+		    <arg type='@' />
+	    </arg>
     </method>
+	  <method selector='launchApplicationAtURL:options:configuration:error:'>
+		  <arg index='3' type_modifier='o' />
+	  </method>
+	  <method selector='setDesktopImageURL:forScreen:options:error:' >
+		  <retval type='B'/>
+		  <arg index='3' type_modifier='o' />
+	  </method>
     <method selector='fileSystemChanged'>
       <retval type='B' />
     </method>
     <method selector='filenameExtension:isValidForType:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-    </method>
-    <method selector='findApplications'>
-      <retval type='v' />
-    </method>
-    <method selector='fullPathForApplication:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
     </method>
     <method selector='getFileSystemInfoForPath:isRemovable:isWritable:isUnmountable:description:type:'>
       <retval type='B' />
-      <arg index='0' type='@' />
       <arg index='1' type='^B' type_modifier='o' />
       <arg index='2' type='^B' type_modifier='o' />
       <arg index='3' type='^B' type_modifier='o' />
@@ -24352,138 +24994,57 @@
     </method>
     <method selector='getInfoForFile:application:type:'>
       <retval type='B' />
-      <arg index='0' type='@' />
       <arg index='1' type_modifier='o' />
       <arg index='2' type_modifier='o' />
     </method>
-    <method selector='hideOtherApplications'>
-      <retval type='v' />
-    </method>
-    <method selector='iconForFile:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='iconForFileType:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='iconForFiles:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
     <method selector='isFilePackageAtPath:'>
       <retval type='B' />
-      <arg index='0' type='@' />
     </method>
     <method selector='launchAppWithBundleIdentifier:options:additionalEventParamDescriptor:launchIdentifier:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='I' />
-      <arg index='2' type='@' />
       <arg index='3' type_modifier='o' />
     </method>
     <method selector='launchApplication:'>
       <retval type='B' />
-      <arg index='0' type='@' />
     </method>
     <method selector='launchApplication:showIcon:autolaunch:'>
       <retval type='B' />
-      <arg index='0' type='@' />
       <arg index='1' type='B' />
       <arg index='2' type='B' />
     </method>
-    <method selector='launchedApplications'>
-      <retval type='@' />
-    </method>
-    <method selector='localizedDescriptionForType:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='mountNewRemovableMedia'>
-      <retval type='@' />
-    </method>
-    <method selector='mountedLocalVolumePaths'>
-      <retval type='@' />
-    </method>
-    <method selector='mountedRemovableMedia'>
-      <retval type='@' />
-    </method>
-    <method selector='noteFileSystemChanged'>
-      <retval type='v' />
-    </method>
-    <method selector='noteFileSystemChanged:'>
-      <retval type='v' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='noteUserDefaultsChanged'>
-      <retval type='v' />
-    </method>
-    <method selector='notificationCenter'>
-      <retval type='@' />
-    </method>
     <method selector='openFile:'>
       <retval type='B' />
-      <arg index='0' type='@' />
     </method>
     <method selector='openFile:fromImage:at:inView:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
       <arg index='2' type='{_NSPoint=ff}' type64='{CGPoint=dd}' />
-      <arg index='3' type='@' />
     </method>
     <method selector='openFile:withApplication:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
     </method>
     <method selector='openFile:withApplication:andDeactivate:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
       <arg index='2' type='B' />
     </method>
     <method selector='openTempFile:'>
       <retval type='B' />
-      <arg index='0' type='@' />
     </method>
     <method selector='openURL:'>
       <retval type='B' />
-      <arg index='0' type='@' />
     </method>
     <method selector='openURLs:withAppBundleIdentifier:options:additionalEventParamDescriptor:launchIdentifiers:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-      <arg index='2' type='I' />
-      <arg index='3' type='@' />
       <arg index='4' type_modifier='o' />
     </method>
     <method selector='performFileOperation:source:destination:files:tag:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-      <arg index='2' type='@' />
-      <arg index='3' type='@' />
       <arg index='4' type_modifier='o' />
     </method>
-    <method selector='preferredFilenameExtensionForType:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
     <method selector='selectFile:inFileViewerRootedAtPath:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
     </method>
     <method selector='setIcon:forFile:options:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-      <arg index='2' type='I' />
-    </method>
-    <method class_method='true' selector='sharedWorkspace'>
-      <retval type='@' />
     </method>
     <method selector='slideImage:from:to:'>
       <retval type='v' />

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Lib/AppKit/__init__.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Lib/AppKit/__init__.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Lib/AppKit/__init__.py	Tue Sep  1 10:48:21 2009
@@ -44,3 +44,7 @@
 NSLineSeparatorCharacter = unichr(NSLineSeparatorCharacter)
 NSParagraphSeparatorCharacter = unichr(NSParagraphSeparatorCharacter)
 
+try:
+    NSImageNameApplicationIcon
+except NameError:
+    NSImageNameApplicationIcon = u"NSApplicationIcon"

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Lib/CoreFoundation/PyObjC.bridgesupport
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Lib/CoreFoundation/PyObjC.bridgesupport	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Lib/CoreFoundation/PyObjC.bridgesupport	Tue Sep  1 10:48:21 2009
@@ -1,10 +1,6 @@
 <?xml version='1.0'?>
 <!DOCTYPE signatures SYSTEM "file://localhost/System/Library/DTDs/BridgeSupport.dtd">
 <signatures version='1.0'>
-  <struct name='CFArrayCallBacks' type='{_CFArrayCallBacks="version"i"retain"^?"release"^?"copyDescription"^?"equal"^?}' type64='{_CFArrayCallBacks="version"q"retain"^?"release"^?"copyDescription"^?"equal"^?}' />
-  <struct name='CFBagCallBacks' type='{_CFBagCallBacks="version"i"retain"^?"release"^?"copyDescription"^?"equal"^?"hash"^?}' type64='{_CFBagCallBacks="version"q"retain"^?"release"^?"copyDescription"^?"equal"^?"hash"^?}' />
-  <struct name='CFDictionaryKeyCallBacks' type='{_CFDictionaryKeyCallBacks="version"i"retain"^?"release"^?"copyDescription"^?"equal"^?"hash"^?}' type64='{_CFDictionaryKeyCallBacks="version"q"retain"^?"release"^?"copyDescription"^?"equal"^?"hash"^?}' />
-  <struct name='CFDictionaryValueCallBacks' type='{_CFDictionaryValueCallBacks="version"i"retain"^?"release"^?"copyDescription"^?"equal"^?}' type64='{_CFDictionaryValueCallBacks="version"q"retain"^?"release"^?"copyDescription"^?"equal"^?}' />
   <struct name='CFGregorianDate' type='{_CFGregorianDate="year"i"month"c"day"c"hour"c"minute"c"second"d}' type64='{_CFGregorianDate="year"i"month"c"day"c"hour"c"minute"c"second"d}' />
   <struct name='CFGregorianUnits' type='{_CFGregorianUnits="years"i"months"i"days"i"hours"i"minutes"i"seconds"d}' type64='{_CFGregorianUnits="years"i"months"i"days"i"hours"i"minutes"i"seconds"d}' />
   <struct name='CFRange' type='{_CFRange="location"i"length"i}' type64='{_CFRange="location"q"length"q}' />
@@ -26,6 +22,7 @@
   <struct name='CFXMLExternalID' type='{_CFXMLExternalID="systemID"^{__CFURL=}"publicID"^{__CFString=}}' type64='{_CFXMLExternalID="systemID"^{__CFURL=}"publicID"^{__CFString=}}' />
   <struct name='CFXMLNotationInfo' type='{_CFXMLNotationInfo="externalID"{_CFXMLExternalID=^{__CFURL=}^{__CFString=}}}' type64='{_CFXMLNotationInfo="externalID"{_CFXMLExternalID=^{__CFString=}}}' />
   <struct name='CFXMLProcessingInstructionInfo' type='{_CFXMLProcessingInstructionInfo="dataString"^{__CFString=}}' type64='{_CFXMLProcessingInstructionInfo="dataString"^{__CFString=}}' />
+  <cftype gettypeid_func='CFURLEnumeratorGetTypeID' name='CFURLEnumeratorRef' type='^{__CFURLEnumerator=}' type64='^{__CFURLEnumerator=}' />
   <cftype gettypeid_func='CFAllocatorGetTypeID' name='CFAllocatorRef' type='^{__CFAllocator=}' type64='^{__CFAllocator=}' />
   <cftype gettypeid_func='CFArrayGetTypeID' name='CFArrayRef' tollfree='NSCFArray' type='^{__CFArray=}' type64='^{__CFArray=}' />
   <cftype gettypeid_func='CFAttributedStringGetTypeID' name='CFAttributedStringRef' tollfree='NSCFAttributedString' type='^{__CFAttributedString=}' type64='^{__CFAttributedString=}' />
@@ -34,7 +31,7 @@
   <cftype gettypeid_func='CFBitVectorGetTypeID' name='CFBitVectorRef' type='^{__CFBitVector=}' type64='^{__CFBitVector=}' />
   <cftype gettypeid_func='CFBooleanGetTypeID' name='CFBooleanRef' tollfree='NSCFBoolean' type='^{__CFBoolean=}' type64='^{__CFBoolean=}' />
   <cftype gettypeid_func='CFBundleGetTypeID' name='CFBundleRef' type='^{__CFBundle=}' type64='^{__CFBundle=}' />
-  <cftype gettypeid_func='CFCalendarGetTypeID' name='CFCalendarRef' tollfree='NSCFCalendar' type='^{__CFCalendar=}' type64='^{__CFCalendar=}' />
+  <cftype gettypeid_func='CFCalendarGetTypeID' name='CFCalendarRef' tollfree='__NSCFCalendar' type='^{__CFCalendar=}' type64='^{__CFCalendar=}' />
   <cftype gettypeid_func='CFCharacterSetGetTypeID' name='CFCharacterSetRef' tollfree='NSCFCharacterSet' type='^{__CFCharacterSet=}' type64='^{__CFCharacterSet=}' />
   <cftype gettypeid_func='CFDataGetTypeID' name='CFDataRef' tollfree='NSCFData' type='^{__CFData=}' type64='^{__CFData=}' />
   <cftype gettypeid_func='CFDateFormatterGetTypeID' name='CFDateFormatterRef' type='^{__CFDateFormatter=}' type64='^{__CFDateFormatter=}' />
@@ -68,7 +65,7 @@
   <cftype gettypeid_func='CFSocketGetTypeID' name='CFSocketRef' type='^{__CFSocket=}' type64='^{__CFSocket=}' />
   <cftype gettypeid_func='CFStringGetTypeID' name='CFStringRef' tollfree='NSCFString' type='^{__CFString=}' type64='^{__CFString=}' />
   <cftype gettypeid_func='CFStringTokenizerGetTypeID' name='CFStringTokenizerRef' type='^{__CFStringTokenizer=}' type64='^{__CFStringTokenizer=}' />
-  <cftype gettypeid_func='CFTimeZoneGetTypeID' name='CFTimeZoneRef' tollfree='NSCFTimeZone' type='^{__CFTimeZone=}' type64='^{__CFTimeZone=}' />
+  <cftype gettypeid_func='CFTimeZoneGetTypeID' name='CFTimeZoneRef' tollfree='__NSCFTimeZone' type='^{__CFTimeZone=}' type64='^{__CFTimeZone=}' />
   <cftype gettypeid_func='CFTreeGetTypeID' name='CFTreeRef' type='^{__CFTree=}' type64='^{__CFTree=}' />
   <cftype gettypeid_func='CFURLGetTypeID' name='CFURLRef' tollfree='NSURL' type='^{__CFURL=}' type64='^{__CFURL=}' />
   <cftype gettypeid_func='CFUUIDGetTypeID' name='CFUUIDRef' type='^{__CFUUID=}' type64='^{__CFUUID=}' />
@@ -76,6 +73,59 @@
   <cftype gettypeid_func='CFWriteStreamGetTypeID' name='CFWriteStreamRef' tollfree='NSCFOutputStream' type='^{__CFWriteStream=}' type64='^{__CFWriteStream=}' />
   <cftype gettypeid_func='CFXMLNodeGetTypeID' name='CFXMLNodeRef' type='^{__CFXMLNode=}' type64='^{__CFXMLNode=}' />
   <cftype gettypeid_func='CFXMLParserGetTypeID' name='CFXMLParserRef' type='^{__CFXMLParser=}' type64='^{__CFXMLParser=}' />
+  <constant name='kCFURLNameKey' type='^{__CFString}' />
+  <constant name='kCFURLLocalizedNameKey' type='^{__CFString}' />
+  <constant name='kCFURLIsRegularFileKey' type='^{__CFString}' />
+  <constant name='kCFURLIsDirectoryKey' type='^{__CFString}' />
+  <constant name='kCFURLIsSymbolicLinkKey' type='^{__CFString}' />
+  <constant name='kCFURLIsVolumeKey' type='^{__CFString}' />
+  <constant name='kCFURLIsPackageKey' type='^{__CFString}' />
+  <constant name='kCFURLIsSystemImmutableKey' type='^{__CFString}' />
+  <constant name='kCFURLIsUserImmutableKey' type='^{__CFString}' />
+  <constant name='kCFURLIsHiddenKey' type='^{__CFString}' />
+  <constant name='kCFURLHasHiddenExtensionKey' type='^{__CFString}' />
+  <constant name='kCFURLCreationDateKey' type='^{__CFString}' />
+  <constant name='kCFURLContentAccessDateKey' type='^{__CFString}' />
+  <constant name='kCFURLContentModificationDateKey' type='^{__CFString}' />
+  <constant name='kCFURLAttributeModificationDateKey' type='^{__CFString}' />
+  <constant name='kCFURLLinkCountKey' type='^{__CFString}' />
+  <constant name='kCFURLParentDirectoryURLKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeURLKey' type='^{__CFString}' />
+  <constant name='kCFURLTypeIdentifierKey' type='^{__CFString}' />
+  <constant name='kCFURLLocalizedTypeDescriptionKey' type='^{__CFString}' />
+  <constant name='kCFURLLabelNumberKey' type='^{__CFString}' />
+  <constant name='kCFURLLabelColorKey' type='^{__CFString}' />
+  <constant name='kCFURLLocalizedLabelKey' type='^{__CFString}' />
+  <constant name='kCFURLEffectiveIconKey' type='^{__CFString}' />
+  <constant name='kCFURLCustomIconKey' type='^{__CFString}' />
+  <constant name='kCFURLFileSizeKey' type='^{__CFString}' />
+  <constant name='kCFURLFileAllocatedSizeKey' type='^{__CFString}' />
+  <constant name='kCFURLIsAliasFileKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeLocalizedFormatDescriptionKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeTotalCapacityKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeAvailableCapacityKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeResourceCountKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeSupportsPersistentIDsKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeSupportsSymbolicLinksKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeSupportsHardLinksKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeSupportsJournalingKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeIsJournalingKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeSupportsSparseFilesKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeSupportsZeroRunsKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeSupportsCaseSensitiveNamesKey' type='^{__CFString}' />
+  <constant name='kCFURLVolumeSupportsCasePreservedNamesKey' type='^{__CFString}' />
+  <constant name='kCFLocaleCollatorIdentifier' type='^{__CFString}' />
+  <constant name='kCFLocaleQuotationBeginDelimiterKey' type='^{__CFString}' />
+  <constant name='kCFLocaleQuotationEndDelimiterKey' type='^{__CFString}' />
+  <constant name='kCFLocaleAlternateQuotationBeginDelimiterKey' type='^{__CFString}' />
+  <constant name='kCFLocaleAlternateQuotationEndDelimiterKey' type='^{__CFString}' />
+  <constant name='kCFRepublicOfChinaCalendar' type='^{__CFString}' />
+  <constant name='kCFPersianCalendar' type='^{__CFString}' />
+  <constant name='kCFIndianCalendar' type='^{__CFString}' />
+  <constant name='kCFISO8601Calendar' type='^{__CFString}' />
+  <constant name='kCFDateFormatterDoesRelativeDateFormattingKey' type='^{__CFString}' />
+  <constant name='kCFLocaleLanguageCodeKey' type='^{__CFString}' />
+  <constant name='kCFLocaleCountryCodeKey' type='^{__CFString}' />
   <constant name='kCFAbsoluteTimeIntervalSince1904' type='d' />
   <constant name='kCFAbsoluteTimeIntervalSince1970' type='d' />
   <constant name='kCFAllocatorDefault' type='^{__CFAllocator=}' />
@@ -269,6 +319,39 @@
   <constant name='kCFXMLTreeErrorLineNumber' type='^{__CFString=}' />
   <constant name='kCFXMLTreeErrorLocation' type='^{__CFString=}' />
   <constant name='kCFXMLTreeErrorStatusCode' type='^{__CFString=}' />
+  <enum name='kCFURLBookmarkCreationPreferFileIDResolutionMask' value='256' />
+  <enum name='kCFURLBookmarkCreationMinimalBookmarkMask' value='512' />
+  <enum name='kCFURLBookmarkCreationSuitableForBookmarkFile' value='1024' />
+  <enum name='kCFBookmarkResolutionWithoutUIMask' value='256' />
+  <enum name='kCFBookmarkResolutionWithoutMountingMask' value='512' />
+  <enum name='kCFSocketLeaveErrors' value='64' />
+  <enum name='kCFPropertyListReadCorruptError' value='3840' />
+  <enum name='kCFPropertyListReadUnknownVersionError' value='3841' />
+  <enum name='kCFPropertyListReadStreamError' value='3842' />
+  <enum name='kCFPropertyListWriteStreamError' value='3851' />
+  <enum name='kCFMessagePortBecameInvalidError' value='-5' />
+  <enum name='kCFLocaleLanguageDirectionUnknown' value='0' />
+  <enum name='kCFLocaleLanguageDirectionLeftToRight' value='1' />
+  <enum name='kCFLocaleLanguageDirectionRightToLeft' value='2' />
+  <enum name='kCFLocaleLanguageDirectionTopToBottom' value='3' />
+  <enum name='kCFLocaleLanguageDirectionBottomToTop' value='4' />
+  <enum name='kCFCoreFoundationVersionNumber10_5' value='476.00' />
+  <enum name='kCFCoreFoundationVersionNumber10_5_1' value='476.00' />
+  <enum name='kCFCoreFoundationVersionNumber10_5_2' value='476.10' />
+  <enum name='kCFCoreFoundationVersionNumber10_5_3' value='476.13' />
+  <enum name='kCFCoreFoundationVersionNumber10_5_4' value='476.14' />
+  <enum name='kCFCoreFoundationVersionNumber10_5_5' value='476.15' />
+  <enum name='kCFCoreFoundationVersionNumber10_5_6' value='476.17' />
+  <enum name='kCFDataSearchBackwards' value='1' />
+  <enum name='kCFDataSearchAnchored' value='2' />
+  <enum name='kCFCalendarUnitQuarter' value='2048' />
+  <enum name='kCFURLEnumeratorSuccess' value='1' />
+  <enum name='kCFURLEnumeratorEnd' value='2' />
+  <enum name='kCFURLEnumeratorError' value='3' />
+  <enum name='kCFURLEnumeratorDescendRecursively' value='1' />
+  <enum name='kCFURLEnumeratorSkipInvisibles' value='2' />
+  <enum name='kCFURLEnumeratorGenerateFileReferenceURLs' value='4' />
+  <enum name='kCFURLEnumeratorSkipPackageContents' value='8' />
   <enum name='CFByteOrderBigEndian' value='2' />
   <enum name='CFByteOrderLittleEndian' value='1' />
   <enum name='CFByteOrderUnknown' value='0' />
@@ -592,6 +675,10 @@
   <enum name='kCFStringEncodingShiftJIS_X0213' value='1576' />
   <enum name='kCFStringEncodingShiftJIS_X0213_00' value='1576' />
   <enum name='kCFStringEncodingShiftJIS_X0213_MenKuTen' value='1577' />
+  <enum name='kCFStringEncodingUTF7' value='67109120' />
+  <enum name='kCFStringEncodingUTF7_IMAP' value='2576' />
+  <enum name='kCFTimeZoneNameStyleGeneric' value='4' />
+  <enum name='kCFTimeZoneNameStyleShortGeneric' value='5' />
   <enum name='kCFStringEncodingUTF16' value='256' />
   <enum name='kCFStringEncodingUTF16BE' value='268435712' />
   <enum name='kCFStringEncodingUTF16LE' value='335544576' />
@@ -714,6 +801,115 @@
   <enum name='kCFXMLStatusParseInProgress' value='-1' />
   <enum name='kCFXMLStatusParseNotBegun' value='-2' />
   <enum name='kCFXMLStatusParseSuccessful' value='0' />
+  <function name='CFStringIsSurrogateHighCharacter' >
+    <retval type='B' />
+    <arg type='T' />
+  </function>
+  <function name='CFStringIsSurrogateLowCharacter' >
+    <retval type='B' />
+    <arg type='T' />
+  </function>
+  <function name='CFStringGetLongCharacterForSurrogatePair' >
+    <retval type='I' />
+    <arg type='T' />
+    <arg type='T' />
+  </function>
+  <function name='CFStringGetSurrogatePairForLongCharacter' >
+    <retval type='B' />
+    <arg type='I' />
+    <arg type='^T' type_modifier='o' c_array_of_fixed_length='2' />
+  </function>
+  <function name='CFPropertyListCreateWithData' >
+    <retval already_cfretained='true' type='@' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='^{__CFData=}' />
+    <arg type='i' type64='q' />
+    <arg type='^i' type64='^q' type_modifier='o' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFPropertyListCreateWithStream' >
+    <retval already_cfretained='true' type='@' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='^{__CFReadStream=}' />
+    <arg type='i' type64='q' />
+    <arg type='i' type64='q' />
+    <arg type='^i' type64='^q' type_modifier='o' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFPropertyListWrite' >
+    <retval type='i' type64='q' />
+    <arg type='@' />
+    <arg type='^{__CFWriteStream=}' />
+    <arg type='i' type64='q' />
+    <arg type='i' type64='q' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFPropertyListCreateData' >
+    <retval type='^{__CFData=}' already_cfretained='true' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='@' />
+    <arg type='i' type64='q' />
+    <arg type='i' type64='q' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFLocaleCreateLocaleIdentifierFromWindowsLocaleCode'>
+    <retval type='^{__CFString=}' already_cfretained='true' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='I' />
+  </function>
+  <function name='CFLocaleGetWindowsLocaleCodeFromLocaleIdentifier'>
+    <retval type='I' />
+    <arg type='^{__CFString=}' />
+  </function>
+  <function name='CFLocaleGetLanguageCharacterDirection' >
+    <retval type='i' type64='q' />
+    <arg type='^{__CFString=}' />
+  </function>
+  <function name='CFLocaleGetLanguageLineDirection' >
+    <retval type='i' type64='q' />
+    <arg type='^{__CFString=}' />
+  </function>
+  <function name='CFDateFormatterCreateDateFormatFromTemplate'>
+    <retval type='^{__CFString=}' already_cfretained='true' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='^{__CFString=}' />
+    <arg type='i' type64='q' />
+    <arg type='^{__CFLocale=}' />
+  </function>
+  <function name='CFURLEnumeratorGetNextURL'>
+    <retval type='i' type64='q' />
+    <arg type='^{__CFURLEnumerator=}' />
+    <arg type='^^{__CFURL=}' type_modifier='o' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFURLEnumeratorSkipDescendents'>
+    <retval type='v' />
+    <arg type='^{__CFURLEnumerator=}' />
+  </function>
+  <function name='CFURLEnumeratorGetDescendentLevel'>
+    <retval type='i' type64='q' />
+    <arg type='^{__CFURLEnumerator=}' />
+  </function>
+  <function name='CFURLEnumeratorGetTypeID'>
+     <retval type='i' type64='q' />
+  </function>
+  <function name='CFURLEnumeratorGetSourceDidChange'>
+    <retval type='B' />
+    <arg type='^{__CFURLEnumerator=}' />
+  </function>
+  <function name='CFURLEnumeratorCreateForDirectoryURL'>
+     <retval type='^{__CFURLEnumerator=}' already_cfretained='true' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='^{__CFURL=}' />
+    <arg type='i' type64='q' />
+    <arg type='^{__CFArray=}' />
+  </function>
+  <function name='CFURLEnumeratorCreateForMountedVolumes'>
+     <retval type='^{__CFURLEnumerator=}' already_cfretained='true' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='i' type64='q' />
+    <arg type='^{__CFArray=}' />
+  </function>
   <function name='CFAbsoluteTimeAddGregorianUnits'>
     <retval type='d' />
     <arg type='d' />
@@ -1603,6 +1799,13 @@
     <retval already_cfretained='true' type='^{__CFString=}' />
     <arg type='L' type64='L' />
   </function>
+  <function name='CFDataFind'>
+    <retval type='{_CFRange=ii}' type64='{_CFRange=ii}' />
+    <arg type='^{__CFData=}' />
+    <arg type='^{__CFData=}' />
+    <arg type='{_CFRange=ii}' type64='{_CFRange=ii}' />
+    <arg type='i' type64='q' />
+  </function>
   <function name='CFDataAppendBytes'>
     <arg type='^{__CFData=}' />
     <arg c_array_length_in_arg='2' type='^v' type64='^v' type_modifier='n' />
@@ -2465,6 +2668,14 @@
     <retval type='@' />
     <arg type='@' />
   </function>
+  <function name='CFRunLoopPerformBlock'>
+    <retval type='v' />
+    <arg type='^{__CFRunLoop=}' />
+    <arg type='@' />
+    <arg type='@?' block='true'>
+      <retval type='v' />
+    </arg>
+  </function>
   <function name='CFRunLoopAddCommonMode'>
     <arg type='^{__CFRunLoop=}' />
     <arg type='^{__CFString=}' />
@@ -3453,6 +3664,113 @@
     <retval already_cfretained='true' type='^{__CFString=}' />
     <arg type='^{__CFURL=}' />
   </function>
+  <function name='CFURLCopyResourcePropertyForKey'>
+    <retval type='B' />
+    <arg type='^{__CFURL=}' />
+    <arg type='^{__CFString=}' />
+    <arg type='^@' type_modifier='o' already_cfretained='true' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFURLCopyResourcePropertiesForKeys'>
+    <retval type='@' already_cfretained='true' />
+    <arg type='^{__CFURL=}' />
+    <arg type='^{__CFArray=}' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFURLSetResourcePropertyForKey'>
+    <retval type='B' />
+    <arg type='^{__CFURL=}' />
+    <arg type='^{__CFString=}' />
+    <arg type='@' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFURLSetResourcePropertiesForKeys'>
+    <retval type='B' />
+    <arg type='^{__CFURL=}' />
+    <arg type='@' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFURLClearResourcePropertyCacheForKey'>
+    <retval type='v' />
+    <arg type='^{__CFURL=}' />
+    <arg type='^{__CFString=}' />
+  </function>
+  <function name='CFURLClearResourcePropertyCache'>
+    <retval type='v' />
+    <arg type='^{__CFURL=}' />
+  </function>
+  <function name='CFURLSetTemporaryResourcePropertyForKey'>
+    <retval type='v' />
+    <arg type='^{__CFURL=}' />
+    <arg type='^{__CFString=}' />
+    <arg type='@' />
+  </function>
+  <function name='CFURLResourceIsReachable'>
+    <retval type='B' />
+    <arg type='^{__CFURL=}' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFURLCreateBookmarkData'>
+    <retval already_cfretained='true' type='^{__CFData=}' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='^{__CFURL=}' />
+    <arg type='I' type64='L' />
+    <arg type='^{__CFArray=}' />
+    <arg type='^{__CFURL=}' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFURLCreateByResolvingBookmarkData'>
+    <retval already_cfretained='true' type='^{__CFURL=}' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='^{__CFData=}' />
+    <arg type='I' type64='L' />
+    <arg type='^{__CFURL=}' />
+    <arg type='^{__CFArray=}' />
+    <arg type='^B' type_modifier='o'/>
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFURLCreateResourcePropertiesForKeysFromBookmarkData'>
+    <retval type='^{__CFDictionary=}' already_cfretained='true' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='^{__CFArray=}' />
+    <arg type='^{__CFData=}' />
+  </function>
+  <function name='CFURLCreateResourcePropertyForKeyFromBookmarkData'>
+    <retval type='@' already_cfretained='true' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='^{__CFString=}' />
+    <arg type='^{__CFData=}' />
+  </function>
+  <function name='CFURLCreateBookmarkDataFromFile'>
+    <retval already_cfretained='true' type='^{__CFData=}' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='^{__CFURL=}' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFURLWriteBookmarkDataToFile'>
+    <retval type='B' />
+    <arg type='^{__CFData=}' />
+    <arg type='^{__CFURL=}' />
+    <arg type='I' type64='L' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFURLCreateFileReferenceURL'>
+    <retval already_cfretained='true' type='^{__CFURL=}' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='^{__CFURL=}' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFURLCreateFilePathURL'>
+    <retval already_cfretained='true' type='^{__CFURL=}' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='^{__CFURL=}' />
+    <arg type='^^{__CFError}' type_modifier='o' />
+  </function>
+  <function name='CFURLCreateBookmarkDataFromAliasRecord'>
+    <retval already_cfretained='true' type='^{__CFData=}' />
+    <arg type='^{__CFAllocator=}' />
+    <arg type='^{__CFData=}' />
+  </function>
   <function name='CFURLCreateAbsoluteURLWithBytes'>
     <retval already_cfretained='true' type='^{__CFURL=}' />
     <arg type='^{__CFAllocator=}' />

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Lib/Foundation/PyObjC.bridgesupport
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Lib/Foundation/PyObjC.bridgesupport	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Lib/Foundation/PyObjC.bridgesupport	Tue Sep  1 10:48:21 2009
@@ -13,7 +13,55 @@
   <struct name='NSSwappedFloat' type='{_NSSwappedFloat="v"I}' type64='{_NSSwappedFloat="v"I}' />
   <opaque name='NSAppleEventManagerSuspensionID' type='^{__NSAppleEventManagerSuspension=}' type64='^{__NSAppleEventManagerSuspension=}' />
   <opaque name='NSZone*' type='^{_NSZone=}' type64='^{_NSZone=}' />
+  <constant name='NSURLAuthenticationMethodClientCertificate' type='@'/>
+  <constant name='NSURLAuthenticationMethodServerTrust' type='@'/>
+  <constant name='NSURLErrorFailingURLErrorKey' type='@'/>
+  <constant name='NSURLErrorFailingURLStringErrorKey' type='@'/>
+  <constant name='NSURLErrorFailingURLPeerTrustErrorKey' type='@'/>
+  <constant name='NSURLNameKey' type='@'/>
+  <constant name='NSURLLocalizedNameKey' type='@'/>
+  <constant name='NSURLIsRegularFileKey' type='@'/>
+  <constant name='NSURLIsDirectoryKey' type='@'/>
+  <constant name='NSURLIsSymbolicLinkKey' type='@'/>
+  <constant name='NSURLIsVolumeKey' type='@'/>
+  <constant name='NSURLIsPackageKey' type='@'/>
+  <constant name='NSURLIsSystemImmutableKey' type='@'/>
+  <constant name='NSURLIsUserImmutableKey' type='@'/>
+  <constant name='NSURLIsHiddenKey' type='@'/>
+  <constant name='NSURLHasHiddenExtensionKey' type='@'/>
+  <constant name='NSURLCreationDateKey' type='@'/>
+  <constant name='NSURLContentAccessDateKey' type='@'/>
+  <constant name='NSAssertionHandlerKey' type='@'/>
+  <constant name='NSURLContentModificationDateKey' type='@'/>
+  <constant name='NSURLAttributeModificationDateKey' type='@'/>
+  <constant name='NSURLLinkCountKey' type='@'/>
+  <constant name='NSURLParentDirectoryURLKey' type='@'/>
+  <constant name='NSURLVolumeURLKey' type='@'/>
+  <constant name='NSURLTypeIdentifierKey' type='@'/>
+  <constant name='NSURLLocalizedTypeDescriptionKey' type='@'/>
+  <constant name='NSURLLabelNumberKey' type='@'/>
+  <constant name='NSURLLabelColorKey' type='@'/>
+  <constant name='NSURLLocalizedLabelKey' type='@'/>
+  <constant name='NSURLEffectiveIconKey' type='@'/>
+  <constant name='NSURLCustomIconKey' type='@'/>
+  <constant name='NSURLFileSizeKey' type='@'/>
+  <constant name='NSURLFileAllocatedSizeKey' type='@'/>
+  <constant name='NSURLIsAliasFileKey' type='@'/>
+  <constant name='NSURLVolumeLocalizedFormatDescriptionKey' type='@'/>
+  <constant name='NSURLVolumeTotalCapacityKey' type='@'/>
+  <constant name='NSURLVolumeAvailableCapacityKey' type='@'/>
+  <constant name='NSURLVolumeResourceCountKey' type='@'/>
+  <constant name='NSURLVolumeSupportsPersistentIDsKey' type='@'/>
+  <constant name='NSURLVolumeSupportsSymbolicLinksKey' type='@'/>
+  <constant name='NSURLVolumeSupportsHardLinksKey' type='@'/>
+  <constant name='NSURLVolumeSupportsJournalingKey' type='@'/>
+  <constant name='NSURLVolumeIsJournalingKey' type='@'/>
+  <constant name='NSURLVolumeSupportsSparseFilesKey' type='@'/>
+  <constant name='NSURLVolumeSupportsZeroRunsKey' type='@'/>
+  <constant name='NSURLVolumeSupportsCaseSensitiveNamesKey' type='@'/>
+  <constant name='NSURLVolumeSupportsCasePreservedNamesKey' type='@'/>
   <constant name='NSAMPMDesignation' type='@' />
+  <constant name='NSSystemClockDidChangeNotification' type='@' />
   <constant name='NSAppleEventManagerWillProcessFirstEventNotification' type='@' />
   <constant name='NSAppleEventTimeOutDefault' type='d' />
   <constant name='NSAppleEventTimeOutNone' type='d' />
@@ -276,6 +324,7 @@
   <constant name='NSURLErrorDomain' type='@' />
   <constant name='NSURLErrorKey' type='@' />
   <constant name='NSURLFileScheme' type='@' />
+  <constant name='NSURLAuthenticationMethodServerTrust' type='@' />
   <constant name='NSURLProtectionSpaceFTPProxy' type='@' />
   <constant name='NSURLProtectionSpaceHTTPProxy' type='@' />
   <constant name='NSURLProtectionSpaceHTTPSProxy' type='@' />
@@ -297,14 +346,64 @@
   <constant name='NSWeekDayNameArray' type='@' />
   <constant name='NSWillBecomeMultiThreadedNotification' type='@' />
   <constant name='NSXMLParserErrorDomain' type='@' />
+  <constant name='NSHelpAnchorErrorKey' type='@' />
   <constant name='NSYearMonthWeekDesignations' type='@' />
   <constant name='NSZeroPoint' type='{_NSPoint=ff}' type64='{CGPoint=dd}' />
   <constant name='NSZeroRect' type='{_NSRect={_NSPoint=ff}{_NSSize=ff}}' type64='{CGRect={CGPoint=dd}{CGSize=dd}}' />
   <constant name='NSZeroSize' type='{_NSSize=ff}' type64='{CGSize=dd}' />
+  <constant name='NSLocaleCollatorIdentifier' type='@' />
+  <constant name='NSLocaleQuotationBeginDelimiterKey' type='@' />
+  <constant name='NSLocaleQuotationEndDelimiterKey' type='@' />
+  <constant name='NSLocaleAlternateQuotationBeginDelimiterKey' type='@' />
+  <constant name='NSLocaleAlternateQuotationEndDelimiterKey' type='@' />
+  <constant name='NSRepublicOfChinaCalendar' type='@' />
+  <constant name='NSPersianCalendar' type='@' />
+  <constant name='NSIndianCalendar' type='@' />
+  <constant name='NSISO8601Calendar' type='@' />
+  <constant name='NSTextCheckingNameKey' type='@' />
+  <constant name='NSTextCheckingJobTitleKey' type='@' />
+  <constant name='NSTextCheckingOrganizationKey' type='@' />
+  <constant name='NSTextCheckingStreetKey' type='@' />
+  <constant name='NSTextCheckingCityKey' type='@' />
+  <constant name='NSTextCheckingStateKey' type='@' />
+  <constant name='NSTextCheckingZIPKey' type='@' />
+  <constant name='NSTextCheckingCountryKey' type='@' />
+  <constant name='NSTextCheckingPhoneKey' type='@' />
+  <enum name='NSFileWriteVolumeReadOnlyError' value='642' />
+  <enum name='NSTextCheckingTypeOrthography' value='1' />
+  <enum name='NSTextCheckingTypeSpelling' value='2' />
+  <enum name='NSTextCheckingTypeGrammar' value='4' />
+  <enum name='NSTextCheckingTypeDate' value='8' />
+  <enum name='NSTextCheckingTypeAddress' value='16' />
+  <enum name='NSTextCheckingTypeLink' value='32' />
+  <enum name='NSTextCheckingTypeQuote' value='64' />
+  <enum name='NSTextCheckingTypeDash' value='128' />
+  <enum name='NSTextCheckingTypeReplacement' value='256' />
+  <enum name='NSTextCheckingTypeCorrection' value='512' />
+  <enum name='NSTextCheckingAllSystemTypes' value='4294967295' />
+  <enum name='NSTextCheckingAllCustomTypes' value='18446744069414584320' />
+  <enum name='NSTextCheckingAllTypes' value='18446744073709551615' />
+  <enum name='NSTaskTerminationReasonExit' value='1' />
+  <enum name='NSTaskTerminationReasonUncaughtSignal' value='2' />
+  <enum name='NSStringEnumerationByLines' value='0' />
+  <enum name='NSStringEnumerationByParagraphs' value='1' />
+  <enum name='NSStringEnumerationByComposedCharacterSequences' value='2' />
+  <enum name='NSStringEnumerationByWords' value='3' />
+  <enum name='NSStringEnumerationBySentences' value='4' />
+  <enum name='NSStringEnumerationReverse' value='256' />
+  <enum name='NSStringEnumerationSubstringNotRequired' value='512' />
+  <enum name='NSStringEnumerationLocalized' value='1024' />
+  <enum name='NSPropertyListReadCorruptError' value='3840' />
+  <enum name='NSPropertyListReadUnknownVersionError' value='3841' />
+  <enum name='NSPropertyListReadStreamError' value='3842' />
+  <enum name='NSPropertyListWriteStreamError' value='3851' />
+  <enum name='NSPropertyListErrorMinimum' value='3840' />
+  <enum name='NSPropertyListErrorMaximum' value='4095' />
   <enum name='NSProprietaryStringEncoding' value='65536' />
   <enum name='NSASCIIStringEncoding' value='1' />
   <enum name='NSAdminApplicationDirectory' value='4' />
   <enum name='NSAggregateExpressionType' value='14' />
+  <enum name='NSBlockExpressionType' value='19' />
   <enum name='NSAllApplicationsDirectory' value='100' />
   <enum name='NSAllDomainsMask' value='65535' />
   <enum name='NSAllLibrariesDirectory' value='101' />
@@ -317,6 +416,8 @@
   <enum name='NSArgumentEvaluationScriptError' value='3' />
   <enum name='NSArgumentsWrongScriptError' value='6' />
   <enum name='NSAtomicWrite' value='1' />
+  <enum name='NSDataSearchBackwards' value='1' />
+  <enum name='NSDataSearchAnchored' value='2' />
   <enum name='NSBackwardsSearch' value='4' />
   <enum name='NSBeginsWithComparison' value='5' />
   <enum name='NSBeginsWithPredicateOperatorType' value='8' />
@@ -340,6 +441,7 @@
   <enum name='NSContainsComparison' value='7' />
   <enum name='NSContainsPredicateOperatorType' value='99' />
   <enum name='NSCoreServiceDirectory' value='10' />
+  <enum name='NSAutosavedInformationDirectory' value='11' />
   <enum name='NSCustomSelectorPredicateOperatorType' value='11' />
   <enum name='NSDateFormatterBehavior10_0' value='1000' />
   <enum name='NSDateFormatterBehavior10_4' value='1040' />
@@ -361,6 +463,14 @@
   <enum name='NSDocumentDirectory' value='9' />
   <enum name='NSDocumentationDirectory' value='8' />
   <enum name='NSDownloadsDirectory' value='15' />
+  <enum name='NSInputMethodsDirectory' value='16' />
+  <enum name='NSMoviesDirectory' value='17' />
+  <enum name='NSMusicDirectory' value='18' />
+  <enum name='NSPicturesDirectory' value='19' />
+  <enum name='NSPrinterDescriptionDirectory' value='20' />
+  <enum name='NSSharedPublicDirectory' value='21' />
+  <enum name='NSPreferencePanesDirectory' value='22' />
+  <enum name='NSItemReplacementDirectory' value='99' />
   <enum name='NSEndsWithComparison' value='6' />
   <enum name='NSEndsWithPredicateOperatorType' value='9' />
   <enum name='NSEqualToComparison' value='0' />
@@ -436,8 +546,19 @@
   <enum name='NSFoundationVersionNumber10_4_7' value='567.26999999999998' />
   <enum name='NSFoundationVersionNumber10_4_8' value='567.27999999999997' />
   <enum name='NSFoundationVersionNumber10_4_9' value='567.28999999999996' />
+  <enum name='NSFoundationVersionNumber10_5' value='677.00' />
+  <enum name='NSFoundationVersionNumber10_5_1' value='677.10' />
+  <enum name='NSFoundationVersionNumber10_5_2' value='677.15' />
+  <enum name='NSFoundationVersionNumber10_5_3' value='677.19' />
+  <enum name='NSFoundationVersionNumber10_5_4' value='677.19' />
+  <enum name='NSFoundationVersionNumber10_5_5' value='677.21' />
+  <enum name='NSFoundationVersionNumber10_5_6' value='677.22' />
   <enum name='NSFoundationVersionWithFileManagerResourceForkSupport' value='412' />
   <enum name='NSFunctionExpressionType' value='4' />
+  <enum name='NSEnumerationConcurrent' value='1' />
+  <enum name='NSEnumerationReverse' value='2' />
+  <enum name='NSSortConcurrent' value='1' />
+  <enum name='NSSortStable' value='16' />
   <enum name='NSGEOMETRY_TYPES_SAME_AS_CGGEOMETRY_TYPES' value64='1' />
   <enum name='NSGreaterThanComparison' value='4' />
   <enum name='NSGreaterThanOrEqualToComparison' value='3' />
@@ -644,6 +765,14 @@
   <enum name='NSSymbolStringEncoding' value='6' />
   <enum name='NSSystemDomainMask' value='8' />
   <enum name='NSTimeIntervalSince1970' value='978307200.0' />
+  <enum name='NSTimeIntervalSince1970' value='978307200.0' />
+  <enum name='NSTimeZoneNameStyleGeneric' value='4' />
+  <enum name='NSTimeZoneNameStyleShortGeneric' value='5' />
+  <enum name='NSURLBookmarkCreationPreferFileIDResolution' value='256' />
+  <enum name='NSURLBookmarkCreationMinimalBookmark' value='512' />
+  <enum name='NSURLBookmarkCreationSuitableForBookmarkFile' value='1024' />
+  <enum name='NSURLBookmarkResolutionWithoutUI' value='256' />
+  <enum name='NSURLBookmarkResolutionWithoutMounting' value='512' />
   <enum name='NSTimeZoneNameStyleDaylightSaving' value='2' />
   <enum name='NSTimeZoneNameStyleShortDaylightSaving' value='3' />
   <enum name='NSTimeZoneNameStyleShortStandard' value='1' />
@@ -671,6 +800,7 @@
   <enum name='NSURLErrorCannotRemoveFile' value='-3004' />
   <enum name='NSURLErrorCannotWriteToFile' value='-3003' />
   <enum name='NSURLErrorClientCertificateRejected' value='-1205' />
+  <enum name='NSURLErrorClientCertificateRequired' value='-1206' />
   <enum name='NSURLErrorDNSLookupFailed' value='-1006' />
   <enum name='NSURLErrorDataLengthExceedsMaximum' value='-1103' />
   <enum name='NSURLErrorDownloadDecodingFailedMidStream' value='-3006' />
@@ -714,6 +844,9 @@
   <enum name='NSUTF32StringEncoding' value='-1946156800' />
   <enum name='NSUTF8StringEncoding' value='4' />
   <enum name='NSUncachedRead' value='2' />
+  <enum name='NSDataReadingMapped' value='1' />
+  <enum name='NSDataReadingUncached' value='2' />
+  <enum name='NSDataWritingAtomic' value='1' />
   <enum name='NSUndefinedDateComponent' value='2147483647' value64='-1' />
   <enum name='NSUndoCloseGroupingRunLoopOrdering' value='350000' />
   <enum name='NSUnicodeStringEncoding' value='10' />
@@ -729,6 +862,7 @@
   <enum name='NSWeekCalendarUnit' value='256' />
   <enum name='NSWeekdayCalendarUnit' value='512' />
   <enum name='NSWeekdayOrdinalCalendarUnit' value='1024' />
+  <enum name='NSQuarterCalendarUnit' value='2048' />
   <enum name='NSWidthInsensitiveSearch' value='256' />
   <enum name='NSWindows95OperatingSystem' value='2' />
   <enum name='NSWindowsCP1250StringEncoding' value='15' />
@@ -896,6 +1030,23 @@
   <enum name='NS_LittleEndian' value='1' />
   <enum name='NS_UNICHAR_IS_EIGHT_BIT' value='0' />
   <enum name='NS_UnknownByteOrder' value='0' />
+  <enum name='NSBinarySearchingFirstEqual' value='256' />
+  <enum name='NSBinarySearchingLastEqual' value='512' />
+  <enum name='NSBinarySearchingInsertionIndex' value='1024' />
+  <enum name='NSAttributedStringEnumerationReverse' value='2' />
+  <enum name='NSAttributedStringEnumerationLongestEffectiveRangeNotRequired' value='1048576' />
+  <enum name='NSVolumeEnumerationSkipHiddenVolumes' value='2' />
+  <enum name='NSVolumeEnumerationProduceFileReferenceURLs' value='4' />
+  <enum name='NSDirectoryEnumerationSkipsSubdirectoryDescendants' value='1' />
+  <enum name='NSDirectoryEnumerationSkipsPackageDescendants' value='2' />
+  <enum name='NSDirectoryEnumerationSkipsHiddenFiles' value='4' />
+  <enum name='NSFileManagerItemReplacementUsingNewMetadataOnly' value='1' />
+  <enum name='NSFileManagerItemReplacementWithoutDeletingBackupItem' value='2' />
+  <enum name='NSLocaleLanguageDirectionUnknown' value='0' />
+  <enum name='NSLocaleLanguageDirectionLeftToRight' value='1' />
+  <enum name='NSLocaleLanguageDirectionRightToLeft' value='2' />
+  <enum name='NSLocaleLanguageDirectionTopToBottom' value='3' />
+  <enum name='NSLocaleLanguageDirectionBottomToTop' value='4' />
   <function name='NSDecimalAdd' >
     <retval type='I' type64='Q' />
     <arg type='^{_NSDecimal=}' />
@@ -1684,6 +1835,9 @@
     <method selector='connection:shouldMakeNewConnection:' type='B@:@@' />
     <method selector='createConversationForConnection:' type='@@:@' />
     <method selector='makeNewConnection:sender:' type='B@:@@' />
+    <method selector='connection:canAuthenticateAgainstProtectionSpace:' type='B@:@@' />
+    <method selector='connectionShouldUseCredentialStorage:' type='B@:@' />
+    <method selector='connection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite:' type='B@:@iii' type64='B@:@qqq' />
   </informal_protocol>
   <informal_protocol name='NSCopyLinkMoveHandler'>
     <method selector='fileManager:shouldProceedAfterError:' type='B@:@@' />
@@ -1860,6 +2014,7 @@
     <method selector='scriptingIsLessThanOrEqualTo:' type='B@:@' />
   </informal_protocol>
   <informal_protocol name='NSSpellServerDelegate'>
+    <method selector='spellServer:checkString:offset:types:options:orthography:workdCount:' type='@@:@@Ll@@o^L' type64='@@:@@Ql@@o^Q'/>
     <method selector='spellServer:checkGrammarInString:language:details:' type='{_NSRange=II}@:@@@^@' type64='{_NSRange=QQ}@:@@@^@' />
     <method selector='spellServer:didForgetWord:inLanguage:' type='v@:@@@' />
     <method selector='spellServer:didLearnWord:inLanguage:' type='v@:@@@' />
@@ -1906,6 +2061,8 @@
     <method selector='download:willSendRequest:redirectResponse:' type='@@:@@@' />
     <method selector='downloadDidBegin:' type='v@:@' />
     <method selector='downloadDidFinish:' type='v@:@' />
+    <method selector='download:canAuthenticateAgainstProtectionSpace:' type='B@:@@' />
+    <method selector='downloadShouldUseCredentialStorage:' type='B@:@' />
   </informal_protocol>
   <informal_protocol name='NSXMLParserDelegateEventAdditions'>
     <method selector='parser:didEndElement:namespaceURI:qualifiedName:' type='v@:@@@@' />
@@ -1929,6 +2086,49 @@
     <method selector='parserDidEndDocument:' type='v@:@' />
     <method selector='parserDidStartDocument:' type='v@:@' />
   </informal_protocol>
+  <class name='NSTextCheckingResult'>
+      <method class_method='true' selector='orthographyCheckingResultWithRange:orthography:'>
+        <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      </method>
+      <method class_method='true' selector='spellCheckingResultWithRange:'>
+        <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      </method>
+      <method class_method='true' selector='grammarCheckingResultWithRange:details:'>
+        <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      </method>
+      <method class_method='true' selector='dateCheckingResultWithRange:date:'>
+        <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      </method>
+      <method class_method='true' selector='dateCheckingResultWithRange:date:timeZone:duration:'>
+        <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      </method>
+      <method class_method='true' selector='addressCheckingResultWithRange:components:'>
+        <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      </method>
+      <method class_method='true' selector='linkCheckingResultWithRange:URL:'>
+        <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      </method>
+      <method class_method='true' selector='quoteCheckingResultWithRange:replacementString:'>
+        <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      </method>
+      <method class_method='true' selector='dashCheckingResultWithRange:replacementString:'>
+        <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      </method>
+      <method class_method='true' selector='replacementCheckingResultWithRange:replacementString:'>
+        <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      </method>
+      <method class_method='true' selector='correctionCheckingResultWithRange:replacementString:'>
+        <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+      </method>
+  </class>
+  <class name='NSCache'>
+	  <method selector='evictsObjectsWithDiscardedContent'>
+		  <retval type='B' />
+	  </method>
+	  <method selector='setEvictsObjectsWithDiscardedContent:'>
+		  <arg index='0' type='B' />
+	  </method>
+  </class>
   <class name='NSAffineTransform'>
     <method selector='appendTransform:'>
       <retval type='v' />
@@ -2273,6 +2473,99 @@
     </method>
   </class>
   <class name='NSArray'>
+	  <method selector='enumerateObjectsUsingBlock:'>
+		  <arg index='0' block='true'>
+			  <retval type='v'/>
+			  <arg type='@' />
+			  <arg type='I' type64='Q' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='enumerateObjectsWithOptions:usingBlock:'>
+		  <arg index='1' block='true'>
+			  <retval type='v'/>
+			  <arg type='@' />
+			  <arg type='I' type64='Q' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='enumerateObjectsAtIndexes:options:usingBlock:'>
+		  <arg index='2' block='true'>
+			  <retval type='v'/>
+			  <arg type='@' />
+			  <arg type='I' type64='Q' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='indexOfObjectPassingTest:'>
+		  <arg index='0' block='true'>
+			  <retval type='B' />
+			  <arg type='@' />
+			  <arg type='I' type64='Q' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='indexOfObjectWithOptions:passingTest:'>
+		  <arg index='1' block='true'>
+			  <retval type='B' />
+			  <arg type='@' />
+			  <arg type='I' type64='Q' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='indexOfObjectAtIndexes:options:passingTest:'>
+		  <arg index='2' block='true'>
+			  <retval type='B' />
+			  <arg type='@' />
+			  <arg type='I' type64='Q' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='indexesOfObjectsPassingTest:'>
+		  <arg index='0' block='true'>
+			  <retval type='B' />
+			  <arg type='@' />
+			  <arg type='I' type64='Q' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='indexesOfObjectsWithOptions:passingTest:'>
+		  <arg index='1' block='true'>
+			  <retval type='B' />
+			  <arg type='@' />
+			  <arg type='I' type64='Q' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='indexesOfObjectsAtIndexes:options:passingTest:'>
+		  <arg index='2' block='true'>
+			  <retval type='B' />
+			  <arg type='@' />
+			  <arg type='I' type64='Q' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='sortedArrayUsingComparator:'>
+		  <arg index='0' block='true' >
+			  <retval type='i'/>
+			  <arg type='@' />
+			  <arg type='@' />
+		  </arg>
+	  </method>
+	  <method selector='sortedArrayWithOptions:usingComparator:'>
+		  <arg index='1' block='true' >
+			  <retval type='i'/>
+			  <arg type='@' />
+			  <arg type='@' />
+		  </arg>
+	  </method>
+	  <method selector='indexOfObject:inSortedRange:options:usingComparator:'>
+		  <arg index='3' block='true' >
+			  <retval type='i'/>
+			  <arg type='@' />
+			  <arg type='@' />
+		  </arg>
+	  </method>
 	  <method selector='sortedArrayUsingFunction:context:' >
 		  <arg index='0' function_pointer='true' function_pointer_retained='false'>
 			  <retval type='i'/>
@@ -2533,6 +2826,23 @@
     </method>
   </class>
   <class name='NSAttributedString'>
+	  <method selector='enumerateAttributesInRange:options:usingBlock:'>
+		  <arg index='2' block='true'>
+			  <retval type='v' />
+			  <arg type='@' />
+			  <arg type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='enumerateAttribute:inRange:options:usingBlock:'>
+		  <arg index='3' block='true'>
+			  <retval type='v' />
+			  <arg type='@' />
+			  <arg type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+
     <method selector='attribute:atIndex:effectiveRange:'>
       <retval type='@' />
       <arg index='0' type='@' />
@@ -3717,6 +4027,9 @@
     </method>
   </class>
   <class name='NSData'>
+    <method selector='rangeOfData:options:range:' >
+      <retval type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+    </method>
     <method class_method='true' selector='data'>
       <retval type='@' />
     </method>
@@ -4039,89 +4352,22 @@
     </method>
   </class>
   <class name='NSDateFormatter'>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector='AMSymbol'>
-      <retval type='@' />
+    <method selector='doesRelativeDateFormatting'>
+	    <retval type='B' />
     </method>
-    <method selector='PMSymbol'>
-      <retval type='@' />
+    <method selector='setDoesRelativeDateFormatting:'>
+	    <arg index='0' type='B' />
     </method>
     <method selector='allowsNaturalLanguage'>
       <retval type='B' />
     </method>
-    <method selector='calendar'>
-      <retval type='@' />
-    </method>
-    <method selector='dateFormat'>
-      <retval type='@' />
-    </method>
-    <method selector='dateFromString:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='dateStyle'>
-      <retval type='I' type64='Q' />
-    </method>
-    <method selector='defaultDate'>
-      <retval type='@' />
-    </method>
-    <method class_method='true' selector='defaultFormatterBehavior'>
-      <retval type='I' type64='Q' />
-    </method>
-    <method selector='eraSymbols'>
-      <retval type='@' />
-    </method>
-    <method selector='formatterBehavior'>
-      <retval type='I' type64='Q' />
-    </method>
     <method selector='generatesCalendarDates'>
       <retval type='B' />
     </method>
     <method selector='getObjectValue:forString:range:error:'>
       <retval type='B' />
       <arg index='0' type_modifier='o' />
-      <arg index='1' type='@' />
+      <arg index='2' type='^{_NSRange=II}' type64='^{_NSRange=QQ}' type_modifier='N' />
       <arg index='3' type_modifier='o' />
     </method>
     <method selector='init'>
@@ -4463,6 +4709,52 @@
     </method>
   </class>
   <class name='NSDictionary'>
+	  <method selector='enumerateKeysAndObjectsUsingBlock:'>
+		  <arg index='0' block='true'>
+			  <retval type='v' />
+			  <arg type='@' />
+			  <arg type='@' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='enumerateKeysAndObjectsWithOptions:usingBlock:'>
+		  <arg index='1' block='true'>
+			  <retval type='v' />
+			  <arg type='@' />
+			  <arg type='@' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='keysSortedByValueUsingComparator:'>
+		  <arg index='0' block='true' >
+			  <retval type='i'/>
+			  <arg type='@' />
+			  <arg type='@' />
+		  </arg>
+	  </method>
+	  <method selector='keysSortedByValueWithOptions:usingComparator:'>
+		  <arg index='1' block='true' >
+			  <retval type='i'/>
+			  <arg type='@' />
+			  <arg type='@' />
+		  </arg>
+	  </method>
+	  <method selector='keysOfEntriesPassingTest:'>
+		  <arg index='0' block='true' >
+			  <retval type='B'/>
+			  <arg type='@' />
+			  <arg type='@' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='keysOfEntriesWithOptions:passingTest:'>
+		  <arg index='1' block='true' >
+			  <retval type='B'/>
+			  <arg type='@' />
+			  <arg type='@' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
     <method selector='allKeys'>
       <retval type='@' />
     </method>
@@ -4866,101 +5158,34 @@
     </method>
   </class>
   <class name='NSExpression'>
-    <method selector=''>
-      <retval type='@' />
-    </method>
-    <method selector='arguments'>
-      <retval type='@' />
-    </method>
-    <method selector='collection'>
-      <retval type='@' />
-    </method>
-    <method class_method='true' selector='expressionForAggregate:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method class_method='true' selector='expressionForConstantValue:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method class_method='true' selector='expressionForEvaluatedObject'>
-      <retval type='@' />
-    </method>
-    <method class_method='true' selector='expressionForFunction:arguments:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-    </method>
-    <method class_method='true' selector='expressionForFunction:selectorName:arguments:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-      <arg index='2' type='@' />
-    </method>
-    <method class_method='true' selector='expressionForIntersectSet:with:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-    </method>
-    <method class_method='true' selector='expressionForKeyPath:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method class_method='true' selector='expressionForMinusSet:with:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-    </method>
-    <method class_method='true' selector='expressionForSubquery:usingIteratorVariable:predicate:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-      <arg index='2' type='@' />
-    </method>
-    <method class_method='true' selector='expressionForUnionSet:with:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-    </method>
-    <method class_method='true' selector='expressionForVariable:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='expressionType'>
-      <retval type='I' />
-    </method>
-    <method selector='expressionValueWithObject:context:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-    </method>
-    <method selector='function'>
-      <retval type='@' />
-    </method>
-    <method selector='initWithExpressionType:'>
-      <retval type='@' />
-      <arg index='0' type='I' />
-    </method>
-    <method selector='keyPath'>
-      <retval type='@' />
-    </method>
-    <method selector='leftExpression'>
-      <retval type='@' />
-    </method>
-    <method selector='operand'>
-      <retval type='@' />
-    </method>
-    <method selector='predicate'>
-      <retval type='@' />
-    </method>
-    <method selector='rightExpression'>
-      <retval type='@' />
-    </method>
-    <method selector='variable'>
-      <retval type='@' />
+    <method selector='expressionForBlock:arguments:'>
+	    <arg index='0' block='true' >
+		    <retval type='@' />
+		    <arg type='@' />
+		    <arg type='@' />
+		    <arg type='@' />
+	    </arg>
+    </method>
+    <method selector='expressionBlock' >
+	    <retval block='true' >
+		    <retval type='@' />
+		    <arg type='@' />
+		    <arg type='@' />
+		    <arg type='@' />
+	    </retval>
     </method>
   </class>
   <class name='NSFileHandle'>
+	  <method selector='fileHandleForReadingFromURL:error:' >
+		  <arg index='1' type_modifier='o' />
+	  </method>
+	  <method selector='fileHandleForWritingToURL:error:' >
+		  <arg index='1' type_modifier='o' />
+	  </method>
+	  <method selector='fileHandleForUpdatingURL:error:' >
+		  <arg index='1' type_modifier='o' />
+	  </method>
+
     <method selector='acceptConnectionInBackgroundAndNotify'>
       <retval type='v' />
     </method>
@@ -5062,209 +5287,149 @@
   </class>
   <class name='NSFileManager'>
     <method selector='attributesOfFileSystemForPath:error:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
       <arg index='1' type_modifier='o' />
     </method>
     <method selector='attributesOfItemAtPath:error:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
       <arg index='1' type_modifier='o' />
     </method>
     <method selector='changeCurrentDirectoryPath:'>
       <retval type='B' />
-      <arg index='0' type='@' />
     </method>
     <method selector='changeFileAttributes:atPath:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-    </method>
-    <method selector='componentsToDisplayForPath:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='contentsAtPath:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
     </method>
     <method selector='contentsEqualAtPath:andPath:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
+    </method>
+    <method selector='contentsOfDirectoryAtURL:includingPropertiesForKeys:options:error:'>
+	    <arg index='3' type_modifier='o' />
     </method>
     <method selector='contentsOfDirectoryAtPath:error:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
       <arg index='1' type_modifier='o' />
     </method>
     <method selector='copyItemAtPath:toPath:error:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
       <arg index='2' type_modifier='o' />
     </method>
     <method selector='copyPath:toPath:handler:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-      <arg index='2' type='@' />
     </method>
     <method selector='createDirectoryAtPath:attributes:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
     </method>
     <method selector='createDirectoryAtPath:withIntermediateDirectories:attributes:error:'>
       <retval type='B' />
-      <arg index='0' type='@' />
       <arg index='1' type='B' />
-      <arg index='2' type='@' />
       <arg index='3' type_modifier='o' />
     </method>
     <method selector='createFileAtPath:contents:attributes:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-      <arg index='2' type='@' />
     </method>
     <method selector='createSymbolicLinkAtPath:pathContent:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
     </method>
     <method selector='createSymbolicLinkAtPath:withDestinationPath:error:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
       <arg index='2' type_modifier='o' />
     </method>
-    <method selector='currentDirectoryPath'>
-      <retval type='@' />
-    </method>
-    <method class_method='true' selector='defaultManager'>
-      <retval type='@' />
-    </method>
-    <method selector='delegate'>
-      <retval type='@' />
-    </method>
     <method selector='destinationOfSymbolicLinkAtPath:error:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
       <arg index='1' type_modifier='o' />
     </method>
-    <method selector='directoryContentsAtPath:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='displayNameAtPath:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='enumeratorAtPath:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
     <method selector='fileAttributesAtPath:traverseLink:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
       <arg index='1' type='B' />
     </method>
     <method selector='fileExistsAtPath:'>
       <retval type='B' />
-      <arg index='0' type='@' />
     </method>
     <method selector='fileExistsAtPath:isDirectory:'>
       <retval type='B' />
-      <arg index='0' type='@' />
       <arg index='1' type='^B' type_modifier='o' />
     </method>
-    <method selector='fileSystemAttributesAtPath:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
     <method selector='fileSystemRepresentationWithPath:'>
       <retval c_array_delimited_by_null='true' type='^t' />
-      <arg index='0' type='@' />
     </method>
     <method selector='isDeletableFileAtPath:'>
       <retval type='B' />
-      <arg index='0' type='@' />
     </method>
     <method selector='isExecutableFileAtPath:'>
       <retval type='B' />
-      <arg index='0' type='@' />
     </method>
     <method selector='isReadableFileAtPath:'>
       <retval type='B' />
-      <arg index='0' type='@' />
     </method>
     <method selector='isWritableFileAtPath:'>
       <retval type='B' />
-      <arg index='0' type='@' />
     </method>
     <method selector='linkItemAtPath:toPath:error:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
       <arg index='2' type_modifier='o' />
     </method>
     <method selector='linkPath:toPath:handler:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-      <arg index='2' type='@' />
     </method>
     <method selector='moveItemAtPath:toPath:error:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
       <arg index='2' type_modifier='o' />
     </method>
     <method selector='movePath:toPath:handler:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-      <arg index='2' type='@' />
     </method>
     <method selector='pathContentOfSymbolicLinkAtPath:'>
       <retval type='@' />
-      <arg index='0' type='@' />
     </method>
     <method selector='removeFileAtPath:handler:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
     </method>
     <method selector='removeItemAtPath:error:'>
       <retval type='B' />
-      <arg index='0' type='@' />
       <arg index='1' type_modifier='o' />
     </method>
     <method selector='setAttributes:ofItemAtPath:error:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
       <arg index='2' type_modifier='o' />
     </method>
     <method selector='setDelegate:'>
       <retval type='v' />
-      <arg index='0' type='@' />
     </method>
     <method selector='stringWithFileSystemRepresentation:length:'>
-      <retval type='@' />
-      <arg c_array_length_in_arg='1' index='0' type='^t' type_modifier='n' />
-      <arg index='1' type='I' type64='Q' />
-    </method>
-    <method selector='subpathsAtPath:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
+      <arg c_array_length_in_arg='1' index='0' type='^t' type_modifier='n' />
     </method>
     <method selector='subpathsOfDirectoryAtPath:error:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
       <arg index='1' type_modifier='o' />
     </method>
+    <method selector='URLForDirectory:inDomain:appropriateForURL:create:error:'>
+      <arg index='3' type='B' />
+      <arg index='4' type_modifier='o' />
+    </method>
+    <method selector='copyItemAtURL:toURL:error:'>
+	    <retval type='B'/>
+	    <arg index='2' type_modifier='o' />
+    </method>
+    <method selector='moveItemAtURL:toURL:error:'>
+	    <retval type='B'/>
+	    <arg index='2' type_modifier='o' />
+    </method>
+    <method selector='linkItemAtURL:toURL:error:'>
+	    <retval type='B'/>
+	    <arg index='2' type_modifier='o' />
+    </method>
+    <method selector='removeItemAtURL:error:'>
+	    <retval type='B'/>
+	    <arg index='1' type_modifier='o' />
+    </method>
+    <method selector='enumeratorAtURL:includingPropertiesForKeys:options:errorHandler:'>
+	    <arg index='3' block='true' >
+		    <retval type='B' />
+		    <arg type='@' />
+		    <arg type='@' />
+	    </arg>
+    </method>
+    <method selector='replaceItemAtURL:withItemAtURL:backupItemName:options:resultingItemURL:error:'>
+	    <retval type='B'/>
+	    <arg index='4' type_modifier='o' />
+	    <arg index='5' type_modifier='o' />
+    </method>
+
   </class>
   <class name='NSFormatter'>
     <method selector='attributedStringForObjectValue:withDefaultAttributes:'>
@@ -5333,30 +5498,8 @@
     </method>
   </class>
   <class name='NSHTTPCookie'>
-    <method selector='comment'>
-      <retval type='@' />
-    </method>
-    <method selector='commentURL'>
-      <retval type='@' />
-    </method>
-    <method class_method='true' selector='cookieWithProperties:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method class_method='true' selector='cookiesWithResponseHeaderFields:forURL:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-    </method>
-    <method selector='domain'>
-      <retval type='@' />
-    </method>
-    <method selector='expiresDate'>
-      <retval type='@' />
-    </method>
-    <method selector='initWithProperties:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
+    <method selector='isHTTPOnly'>
+      <retval type='B' />
     </method>
     <method selector='isSecure'>
       <retval type='B' />
@@ -5364,61 +5507,6 @@
     <method selector='isSessionOnly'>
       <retval type='B' />
     </method>
-    <method selector='name'>
-      <retval type='@' />
-    </method>
-    <method selector='path'>
-      <retval type='@' />
-    </method>
-    <method selector='portList'>
-      <retval type='@' />
-    </method>
-    <method selector='properties'>
-      <retval type='@' />
-    </method>
-    <method class_method='true' selector='requestHeaderFieldsWithCookies:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='value'>
-      <retval type='@' />
-    </method>
-    <method selector='version'>
-      <retval type='I' type64='Q' />
-    </method>
-  </class>
-  <class name='NSHTTPCookieStorage'>
-    <method selector='cookieAcceptPolicy'>
-      <retval type='I' />
-    </method>
-    <method selector='cookies'>
-      <retval type='@' />
-    </method>
-    <method selector='cookiesForURL:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='deleteCookie:'>
-      <retval type='v' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='setCookie:'>
-      <retval type='v' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='setCookieAcceptPolicy:'>
-      <retval type='v' />
-      <arg index='0' type='I' />
-    </method>
-    <method selector='setCookies:forURL:mainDocumentURL:'>
-      <retval type='v' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-      <arg index='2' type='@' />
-    </method>
-    <method class_method='true' selector='sharedHTTPCookieStorage'>
-      <retval type='@' />
-    </method>
   </class>
   <class name='NSHTTPURLResponse'>
     <method selector='allHeaderFields'>
@@ -5595,72 +5683,25 @@
   <class name='NSIndexSet'>
     <method selector='containsIndex:'>
       <retval type='B' />
-      <arg index='0' type='I' type64='Q' />
     </method>
     <method selector='containsIndexes:'>
       <retval type='B' />
-      <arg index='0' type='@' />
     </method>
     <method selector='containsIndexesInRange:'>
       <retval type='B' />
       <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
     </method>
-    <method selector='count'>
-      <retval type='I' type64='Q' />
-    </method>
     <method selector='countOfIndexesInRange:'>
-      <retval type='I' type64='Q' />
       <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
     </method>
-    <method selector='firstIndex'>
-      <retval type='I' type64='Q' />
-    </method>
     <method selector='getIndexes:maxCount:inIndexRange:'>
-      <retval type='I' type64='Q' />
       <arg c_array_length_in_arg='1' index='0' null_accepted='false' type_modifier='o' c_array_length_in_result='true' />
-      <arg index='1' type='I' type64='Q' />
       <arg index='2' null_accepted='false' type_modifier='N' />
     </method>
-    <method selector='indexGreaterThanIndex:'>
-      <retval type='I' type64='Q' />
-      <arg index='0' type='I' type64='Q' />
-    </method>
-    <method selector='indexGreaterThanOrEqualToIndex:'>
-      <retval type='I' type64='Q' />
-      <arg index='0' type='I' type64='Q' />
-    </method>
-    <method selector='indexLessThanIndex:'>
-      <retval type='I' type64='Q' />
-      <arg index='0' type='I' type64='Q' />
-    </method>
-    <method selector='indexLessThanOrEqualToIndex:'>
-      <retval type='I' type64='Q' />
-      <arg index='0' type='I' type64='Q' />
-    </method>
-    <method class_method='true' selector='indexSet'>
-      <retval type='@' />
-    </method>
-    <method class_method='true' selector='indexSetWithIndex:'>
-      <retval type='@' />
-      <arg index='0' type='I' type64='Q' />
-    </method>
     <method class_method='true' selector='indexSetWithIndexesInRange:'>
-      <retval type='@' />
       <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
     </method>
-    <method selector='init'>
-      <retval type='@' />
-    </method>
-    <method selector='initWithIndex:'>
-      <retval type='@' />
-      <arg index='0' type='I' type64='Q' />
-    </method>
-    <method selector='initWithIndexSet:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-    </method>
     <method selector='initWithIndexesInRange:'>
-      <retval type='@' />
       <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
     </method>
     <method selector='intersectsIndexesInRange:'>
@@ -5669,11 +5710,73 @@
     </method>
     <method selector='isEqualToIndexSet:'>
       <retval type='B' />
-      <arg index='0' type='@' />
-    </method>
-    <method selector='lastIndex'>
-      <retval type='I' type64='Q' />
     </method>
+    <method selector='enumerateIndexesUsingBlock:'>
+	    <arg index='0' block='true' >
+		    <retval type='v' />
+		    <arg type='I' type64='Q' />
+		    <arg type='^B' type_modifier='o' />
+	    </arg>
+    </method>
+    <method selector='enumerateIndexesWithOptions:usingBlock:'>
+	    <arg index='1' block='true' >
+		    <retval type='v' />
+		    <arg type='I' type64='Q' />
+		    <arg type='^B' type_modifier='o' />
+	    </arg>
+    </method>
+    <method selector='enumerateIndexesInRange:options:usingBlock:'>
+	    <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+	    <arg index='2' block='true' >
+		    <retval type='v' />
+		    <arg type='I' type64='Q' />
+		    <arg type='^B' type_modifier='o' />
+	    </arg>
+    </method>
+    <method selector='indexPassingTest:'>
+	    <arg index='0' block='true'>
+		    <retval type='B' />
+		    <arg type='I' type64='Q' />
+		    <arg type='^B' type_modifier='o' />
+	    </arg>
+    </method>
+    <method selector='indexWithOptions:passingTest:'>
+	    <arg index='1' block='true'>
+		    <retval type='B' />
+		    <arg type='I' type64='Q' />
+		    <arg type='^B' type_modifier='o' />
+	    </arg>
+    </method>
+    <method selector='indexInRange:options:passingTest:'>
+	    <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+	    <arg index='2' block='true'>
+		    <retval type='B' />
+		    <arg type='I' type64='Q' />
+		    <arg type='^B' type_modifier='o' />
+	    </arg>
+    </method>
+	  <method selector='indexesPassingTest:'>
+		  <arg index='0' block='true'>
+			  <retval type='B' />
+			  <arg type='I' type64='Q' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='indexesWithOptions:passingTest:'>
+		  <arg index='1' block='true'>
+			  <retval type='B' />
+			  <arg type='I' type64='Q' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='indexesInRange:options:passingTest:'>
+	    <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+		  <arg index='2' block='true'>
+			  <retval type='B' />
+			  <arg type='I' type64='Q' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
   </class>
   <class name='NSIndexSpecifier'>
     <method selector='index'>
@@ -6367,6 +6470,20 @@
     </method>
   </class>
   <class name='NSMutableArray'>
+	  <method selector='sortUsingComparator:'>
+		  <arg index='0' block='true' >
+			  <retval type='i'/>
+			  <arg type='@' />
+			  <arg type='@' />
+		  </arg>
+	  </method>
+	  <method selector='sortWithOptions:usingComparator:'>
+		  <arg index='1' block='true' >
+			  <retval type='i'/>
+			  <arg type='@' />
+			  <arg type='@' />
+		  </arg>
+	  </method>
 	  <method selector='sortUsingFunction:context:' >
 		  <arg index='0' function_pointer='true' function_pointer_retained='false' >
 			  <retval type='i' />
@@ -6376,6 +6493,16 @@
 		  </arg>
 		  <arg index='1' type='@' />
 	  </method>
+	  <method selector='sortUsingFunction:context:range:' >
+		  <arg index='0' function_pointer='true' function_pointer_retained='false' >
+			  <retval type='i' />
+			  <arg type='@' />
+			  <arg type='@' />
+			  <arg type='@' />
+		  </arg>
+		  <arg index='1' type='@' />
+      		  <arg index='2' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+	  </method>
 
     <method selector='addObject:'>
       <retval type='v' />
@@ -7005,29 +7132,19 @@
       <retval type='v' />
     </method>
   </class>
-  <class name='NSNotification'>
-    <method selector='name'>
-      <retval type='@' />
-    </method>
-    <method class_method='true' selector='notificationWithName:object:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-    </method>
-    <method class_method='true' selector='notificationWithName:object:userInfo:'>
-      <retval type='@' />
-      <arg index='0' type='@' />
-      <arg index='1' type='@' />
-      <arg index='2' type='@' />
-    </method>
-    <method selector='object'>
-      <retval type='@' />
-    </method>
-    <method selector='userInfo'>
-      <retval type='@' />
-    </method>
-  </class>
   <class name='NSNotificationCenter'>
+	  <method selector='addObserverForName:object:usingBlock:'>
+		  <arg index='2' block='true' >
+			  <retval type='v'/>
+			  <arg type='@'/>
+		  </arg>
+	  </method>
+	  <method selector='addObserverForName:object:queue:usingBlock:'>
+		  <arg index='3' block='true' >
+			  <retval type='v' />
+			  <arg index='@' />
+		  </arg>
+	  </method>
     <method selector='addObserver:selector:name:object:'>
       <retval type='v' />
       <arg index='0' type='@' />
@@ -7778,6 +7895,12 @@
     </method>
   </class>
   <class name='NSObject'>
+	  <method selector='beginContentAccess'>
+		  <retval type='B'/>
+	  </method>
+	  <method selector='isContentDiscarded'>
+		  <retval type='B'/>
+	  </method>
     <method selector='mutableCopyWithZone:'>
       <retval type='@' />
       <arg index='0' type='^{_NSZone=}' />
@@ -8190,6 +8313,31 @@
       <arg index='2' type='@' />
       <arg index='3' type='@' />
     </method>
+    <method selector='fileManager:shouldCopyItemAtURL:toURL:'>
+	    <retval type='B' />
+    </method>
+    <method selector='fileManager:shouldProceedAfterError:copyingItemAtURL:toURL:'>
+	    <retval type='B' />
+    </method>
+    <method selector='fileManager:shouldMoveItemAtURL:toURL:'>
+	    <retval type='B' />
+    </method>
+    <method selector='fileManager:shouldProceedAfterError:movingItemAtURL:toURL:'>
+	    <retval type='B' />
+    </method>
+    <method selector='fileManager:shouldLinkItemAtURL:toURL:'>
+	    <retval type='B' />
+    </method>
+    <method selector='fileManager:shouldProceedAfterError:linkingItemAtURL:toURL:'>
+	    <retval type='B' />
+    </method>
+    <method selector='fileManager:shouldRemoveItemAtURL:'>
+	    <retval type='B' />
+    </method>
+    <method selector='fileManager:shouldProceedAfterError:removingItemAtURL:'>
+	    <retval type='B' />
+    </method>
+
     <method selector='fileManager:shouldCopyItemAtPath:toPath:'>
       <retval type='B' />
       <arg index='0' type='@' />
@@ -8835,6 +8983,12 @@
       <retval type='v' />
       <arg index='0' type='i' type64='q' />
     </method>
+    <method selector='spellServer:checkString:offset:types:options:orthography:wordCount:'>
+	    <arg index='2' type='I' type64='Q' />
+	    <arg index='3' type='i' type64='q' />
+	    <arg index='6' type='^i' type64='^q' type_modifier='o'/>
+    </method>
+
     <method selector='spellServer:checkGrammarInString:language:details:'>
       <retval type='{_NSRange=II}' type64='{_NSRange=QQ}' />
       <arg index='0' type='@' />
@@ -9018,7 +9172,31 @@
       <arg index='2' type='@' />
     </method>
   </class>
+  <class name='NSBlockOperation'>
+	  <method class_method='true' selector='blockOperationWithBlock:'>
+		  <arg index='0' block='true'>
+			  <retval type='v' />
+		  </arg>
+	  </method>
+	  <method selector='addExecutionBlock:'>
+		  <arg index='0' block='true'>
+			  <retval type='v' />
+		  </arg>
+	  </method>
+
+  </class>
   <class name='NSOperation'>
+	  <method selector='completionBlock' >
+		  <retval block='true'>
+			  <retval type='v' />
+		  </retval>
+	  </method>
+	  <method selector='setCompletionBlock:' >
+		  <arg index='0' block='true'>
+			  <retval type='v' />
+		  </arg>
+	  </method>
+
     <method selector='addDependency:'>
       <retval type='v' />
       <arg index='0' type='@' />
@@ -9066,6 +9244,14 @@
     </method>
   </class>
   <class name='NSOperationQueue'>
+	  <method selector='addOperations:waitUntilFinished:'>
+		  <arg index='1' type='B' />
+	  </method>
+	  <method selector='addOperationWithBlock:'>
+		  <arg index='0' block='true'>
+			  <retval type='v'/>
+		  </arg>
+	  </method>
     <method selector='addOperation:'>
       <retval type='v' />
       <arg index='0' type='@' />
@@ -9095,6 +9281,12 @@
     </method>
   </class>
   <class name='NSOutputStream'>
+	  <method selector='initWithURL:append:'>
+		  <arg index='1' type='B'/>
+	  </method>
+	  <method class_method='true' selector='outputStreamWithURL:append:'>
+		  <arg index='1' type='B'/>
+	  </method>
     <method selector='hasSpaceAvailable'>
       <retval type='B' />
     </method>
@@ -9655,6 +9847,13 @@
     </method>
   </class>
   <class name='NSPredicate'>
+	  <method selector='predicateWithBlock:'>
+		  <arg index='0' block='true'>
+			  <retval type='B' />
+			  <arg type='@'/>
+			  <arg type='@'/>
+		  </arg>
+	  </method>
     <method selector='evaluateWithObject:'>
       <retval type='B' />
       <arg index='0' type='@' />
@@ -9732,6 +9931,19 @@
     </method>
   </class>
   <class name='NSPropertyListSerialization'>
+	  <method class_method='true' selector='dataWithPropertyList:format:options:error:' >
+		  <arg index='3' type_modifier='o' />
+	  </method>
+	  <method class_method='true' selector='writePropertyList:toStream:format:options:error:' >
+		  <arg index='4' type_modifier='o' />
+	  </method>
+	  <method class_method='true' selector='propertyListWithData:options:format:error:' >
+		  <arg index='3' type_modifier='o' />
+	  </method>
+	  <method class_method='true' selector='propertyListWithStream:options:format:error:' >
+		  <arg index='3' type_modifier='o' />
+	  </method>
+
     <method class_method='true' selector='dataFromPropertyList:format:errorDescription:'>
       <retval type='@' />
       <arg index='0' type='@' />
@@ -10462,6 +10674,34 @@
     </method>
   </class>
   <class name='NSSet'>
+	  <method selector='enumerateObjectsUsingBlock:'>
+		  <arg index='0' block='true'>
+			  <retval type='v' />
+			  <arg type='@' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='enumerateObjectsWithOptions:usingBlock:'>
+		  <arg index='1' block='true'>
+			  <retval type='v' />
+			  <arg type='@' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='objectsPassingTest:'>
+		  <arg index='0' block='true'>
+			  <retval type='B' />
+			  <arg type='@' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
+	  <method selector='objectsWithOptions:passingTest:'>
+		  <arg index='1' block='true'>
+			  <retval type='B' />
+			  <arg type='@' />
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
     <method selector='addObserver:forKeyPath:options:context:'>
       <retval type='v' />
       <arg index='0' type='@' />
@@ -10696,6 +10936,35 @@
     </method>
   </class>
   <class name='NSSortDescriptor'>
+	  <method class_method='true' selector='sortDescriptorWithKey:ascending:' >
+		  <arg index='1' type='B' />
+	  </method>
+	  <method class_method='true' selector='sortDescriptorWithKey:ascending:selector:' >
+		  <arg index='1' type='B' />
+	  </method>
+	  <method class_method='true' selector='sortDescriptorWithKey:ascending:comparator:' >
+		  <arg index='1' type='B' />
+		  <arg index='2' block='true' >
+			  <retval type='i'/>
+			  <arg type='@' />
+			  <arg type='@' />
+		  </arg>
+	  </method>
+	  <method selector='initWithKey:ascending:comparator:' >
+		  <arg index='1' type='B' />
+		  <arg index='2' block='true' >
+			  <retval type='i'/>
+			  <arg type='@' />
+			  <arg type='@' />
+		  </arg>
+	  </method>
+	  <method selector='comparator' >
+		  <retval block='true' >
+			  <retval type='i'/>
+			  <arg type='@' />
+			  <arg type='@' />
+		  </retval>
+	  </method>
     <method selector='ascending'>
       <retval type='B' />
     </method>
@@ -10803,15 +11072,23 @@
     </method>
   </class>
   <class name='NSString'>
-    <method selector=''>
-      <retval type='*' />
-    </method>
-    <method selector=''>
-      <retval type='*' />
-    </method>
-    <method selector=''>
-      <retval type='*' type64='Q' />
-    </method>
+	  <method selector='enumerateSubstringsInRange:options:usingBlock:'>
+	      <arg index='0' type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+	      <arg index='2' block='true' >
+		      <retval type='v'/>
+		      <arg type='@' />
+	      	      <arg type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+	      	      <arg type='{_NSRange=II}' type64='{_NSRange=QQ}' />
+		      <arg type='^B' type_modifier='o' />
+	      </arg>
+          </method>
+	  <method selector='enumerateLinesUsingBlock:'>
+		  <arg index='0' block='true'>
+			  <retval type='v'/>
+			  <arg type='@'/>
+			  <arg type='^B' type_modifier='o' />
+		  </arg>
+	  </method>
     <method selector='UTF8String'>
       <retval c_array_delimited_by_null='true' type='^t' type64='^t' />
     </method>
@@ -11736,6 +12013,47 @@
     </method>
   </class>
   <class name='NSURL'>
+    <method selector='getResourceValue:forKey:error:'>
+	    <retval type='B' />
+	    <arg index='0' type_modifier='o' />
+	    <arg index='2' type_modifier='o' />
+    </method>
+    <method selector='resourceValuesForKeys:error:'>
+	    <arg index='1' type_modifier='o' />
+    </method>
+    <method selector='setResourceValue:forKey:error:'>
+	    <retval type='B' />
+	    <arg index='2' type_modifier='o' />
+    </method>
+    <method selector='setResourceValues:error:'>
+	    <retval type='B' />
+	    <arg index='1' type_modifier='o' />
+    </method>
+    <method selector='checkResourceIsReachableAndReturnError:'>
+	    <retval type='B' />
+	    <arg index='0' type_modifier='o' />
+    </method>
+    <method selector='isFileReferenceURL'>
+	    <retval type='B' />
+    </method>
+    <method selector='bookmarkDataWithOptions:includingResourceValuesForKeys:relativeToURL:error:'>
+	    <arg index='3' type_modifier='o' />
+    </method>
+    <method selector='initByResolvingBookmarkData:options:relativeToURL:bookmarkDataIsStale:error:'>
+	    <arg index='3' type='^B' type_modifier='o' />
+	    <arg index='4' type_modifier='o' />
+    </method>
+    <method class_method='true' selector='URLByResolvingBookmarkData:options:relativeToURL:bookmarkDataIsStale:error:'>
+	    <arg index='3' type='^B' type_modifier='o' />
+	    <arg index='4' type_modifier='o' />
+    </method>
+    <method class_method='true' selector='writeBookmarkData:toURL:options:error:'>
+	    <retval type='B' />
+	    <arg index='3' type_modifier='o' />
+    </method>
+    <method class_method='true' selector='bookmarkDataWithContentsOfURL:error:'>
+	    <arg index='1' type_modifier='o' />
+    </method>
     <method selector='URLHandleUsingCache:'>
       <retval type='@' />
       <arg index='0' type='B' />
@@ -11889,6 +12207,8 @@
     <method selector='sender'>
       <retval type='@' />
     </method>
+    
+
   </class>
   <class name='NSURLCache'>
     <method selector='cachedResponseForRequest:'>

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Lib/Foundation/__init__.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Lib/Foundation/__init__.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Lib/Foundation/__init__.py	Tue Sep  1 10:48:21 2009
@@ -22,7 +22,6 @@
 from Foundation._functiondefines import *
 from Foundation._NSDecimal import *
 from Foundation._nsinvocation import *
-from Foundation._functioncallbacks import *
 from Foundation._typecode import *
 from Foundation._nscoder import *
 from Foundation._data import *
@@ -52,3 +51,33 @@
 import sys
 NSMaximumStringLength = sys.maxint - 1
 del sys
+
+class _OC_DisabledSuddenTermination (object):
+    """
+    Helper class to implement NSDisabledSuddenTermination
+
+    Usage::
+
+        with NSDisabledSuddenTermination:
+            pass
+
+    Inside the with block sudden termination is disabled.
+
+    This only has an effect on OSX 10.6 or later.
+    """
+    if hasattr(NSProcessInfo, 'disableSuddenTermination'):
+        def __enter__(self):
+            NSProcessInfo.processInfo().disableSuddenTermination()
+
+        def __exit__(self, type, value, tb):
+            NSProcessInfo.processInfo().enableSuddenTermination()
+
+    else:
+        def __enter__(self):
+            pass
+
+        def __exit__(self, type, value, tb):
+            pass
+
+
+NSDisabledSuddenTermination = _OC_DisabledSuddenTermination()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_AppKit_nsbitmap.m
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_AppKit_nsbitmap.m	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_AppKit_nsbitmap.m	Tue Sep  1 10:48:21 2009
@@ -211,7 +211,7 @@
 		}
 	}
 
-	colorSpaceNameString = [NSString stringWithCString: colorSpaceName];
+	colorSpaceNameString = [NSString stringWithUTF8String: colorSpaceName];
 
 	PyObjC_DURING
 		PyObjC_InitSuper(&super,

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_AppKit_nsquickdrawview.m
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_AppKit_nsquickdrawview.m	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_AppKit_nsquickdrawview.m	Tue Sep  1 10:48:21 2009
@@ -110,6 +110,9 @@
 {
 	PyObject* m = Py_InitModule4("_nsquickdrawview", mod_methods, "", NULL,
 			PYTHON_API_VERSION);
+	if (!m) {
+		return;
+	}
 
 #ifndef __LP64__
 	PyObjC_ImportAPI(m);

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_CoreFoundation_CFBinaryHeap.m
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_CoreFoundation_CFBinaryHeap.m	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_CoreFoundation_CFBinaryHeap.m	Tue Sep  1 10:48:21 2009
@@ -29,7 +29,8 @@
 
 static CFStringRef mod_copydescription(const void* ptr)
 {
-	return CFCopyDescription(ptr);	
+	CFStringRef r =  CFCopyDescription(ptr);	
+	return r;
 }
 
 CFComparisonResult mod_compare(const void *ptr1, const void *ptr2, void *info __attribute__((__unused__)))
@@ -37,6 +38,7 @@
 	NSObject* o1 = (NSObject*)ptr1;
 	NSObject* o2 = (NSObject*)ptr2;
 
+
 	NSComparisonResult result = [o1 compare:o2];
 	return (CFComparisonResult)result;
 }
@@ -56,7 +58,7 @@
 	PyObject* args)
 {
 	PyObject* py_allocator;
-	Py_ssize_t count;
+	Py_ssize_t count = -1;
 	CFAllocatorRef allocator;
 	CFBinaryHeapRef heap;
 
@@ -110,7 +112,6 @@
 	return result;
 }
 
-
 static PyMethodDef mod_methods[] = {
         {
 		"CFBinaryHeapCreate",

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_CoreFoundation_CFSet.m
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_CoreFoundation_CFSet.m	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_CoreFoundation_CFSet.m	Tue Sep  1 10:48:21 2009
@@ -25,6 +25,7 @@
 
 	if (pyValues == PyObjC_NULL) {
 		values = NULL;
+		count = 0;
 	} else if (pyValues == Py_None){
 		count = CFSetGetCount(set);
 		values = malloc(sizeof(void*) * count);

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_CoreFoundation_CFTree.m
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_CoreFoundation_CFTree.m	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_CoreFoundation_CFTree.m	Tue Sep  1 10:48:21 2009
@@ -210,6 +210,7 @@
 		}
 
 	PyObjC_HANDLER
+		count = -1; children = NULL;
 		PyObjCErr_FromObjC(localException);
 
 	PyObjC_ENDHANDLER

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_Foundation_NSDecimal.m
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_Foundation_NSDecimal.m	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Modules/_Foundation_NSDecimal.m	Tue Sep  1 10:48:21 2009
@@ -1036,7 +1036,7 @@
 	id self = *(id*)args[0];
 	//SEL _meth = *(SEL*)args[1];
 	NSDecimal* pretval = (NSDecimal*)resp;
-	NSDecimal* res;
+	NSDecimal* res = NULL;
 
 	PyObject* result = NULL;
 	PyObject* arglist = NULL;

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/Modules/pyobjc-api.h
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/Modules/pyobjc-api.h	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/Modules/pyobjc-api.h	Tue Sep  1 10:48:21 2009
@@ -19,7 +19,7 @@
 #include "Python.h"
 #include <objc/objc.h>
 
-#import <Foundation/NSObjCRuntime.h>
+#import <Foundation/Foundation.h>
 
 #ifndef CGFLOAT_DEFINED
 
@@ -92,7 +92,7 @@
 		Py_BEGIN_ALLOW_THREADS \
 		@try {
 
-#define PyObjC_HANDLER } @catch(NSObject* _localException) { \
+#define PyObjC_HANDLER } @catch(volatile NSObject* _localException) { \
 		NSException* localException __attribute__((__unused__))= (NSException*)_localException;
 
 #define PyObjC_ENDHANDLER \

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbase.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbase.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbase.py	Tue Sep  1 10:48:21 2009
@@ -143,6 +143,16 @@
         v = CFGetAllocator(kCFAllocatorMalloc)
         self.failUnless((v is None) or (isinstance(v, CFAllocatorRef)))
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(kCFCoreFoundationVersionNumber10_5, 476.00)
+        self.failUnlessEqual(kCFCoreFoundationVersionNumber10_5_1, 476.00)
+        self.failUnlessEqual(kCFCoreFoundationVersionNumber10_5_2, 476.10)
+        self.failUnlessEqual(kCFCoreFoundationVersionNumber10_5_3, 476.13)
+        self.failUnlessEqual(kCFCoreFoundationVersionNumber10_5_4, 476.14)
+        self.failUnlessEqual(kCFCoreFoundationVersionNumber10_5_5, 476.15)
+        self.failUnlessEqual(kCFCoreFoundationVersionNumber10_5_6, 476.17)
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbinaryheap.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbinaryheap.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbinaryheap.py	Tue Sep  1 10:48:21 2009
@@ -65,42 +65,53 @@
         self.assert_(isinstance(heap2, CFBinaryHeapRef))
 
     def testInspect(self):
+        from Foundation import NSString, NSLog
         heap = CFBinaryHeapCreate(
                 None, 0)
         self.assert_(isinstance(heap, CFBinaryHeapRef))
 
+
         CFBinaryHeapAddValue(heap, "hello")
         CFBinaryHeapAddValue(heap, "world")
         CFBinaryHeapAddValue(heap, "aapjes")
 
+        #ok, min = CFBinaryHeapGetMinimumIfPresent(heap, None)
+        #self.failUnless(ok)
+        #self.failUnlessEqual(min, "aapjes")
+        #self.fail()
+
         count = CFBinaryHeapGetCount(heap)
-        self.failUnless(count == 3)
+        self.failUnlessEqual(count, 3)
 
         count = CFBinaryHeapGetCountOfValue(heap, "hello")
-        self.failUnless(count == 1)
+        self.failUnlessEqual(count, 1)
         count = CFBinaryHeapGetCountOfValue(heap, "fobar")
-        self.failUnless(count == 0)
+        self.failUnlessEqual(count, 0)
 
         self.failUnless(CFBinaryHeapContainsValue(heap, "hello"))
         self.failIf(CFBinaryHeapContainsValue(heap, "foobar"))
 
         min = CFBinaryHeapGetMinimum(heap)
-        self.failUnless(min == "aapjes")
+        self.failUnlessEqual(min, "aapjes")
+
+        count = CFBinaryHeapGetCount(heap)
+        self.failUnlessEqual(count, 3)
 
-        ok, min = CFBinaryHeapGetMinimumIfPresent(heap, None)
-        self.failUnless(ok)
-        self.failUnless(min == "aapjes")
+        #ok, min = CFBinaryHeapGetMinimumIfPresent(heap, None)
+        #self.failUnless(ok)
+        #self.failUnlessEqual(min, "aapjes")
+        #self.fail()
 
         values = CFBinaryHeapGetValues(heap)
-        self.failUnless(values == ("aapjes", "hello", "world"))
+        self.failUnlessEqual(values, ("aapjes", "hello", "world"))
 
         CFBinaryHeapRemoveMinimumValue(heap)
         values = CFBinaryHeapGetValues(heap)
-        self.failUnless(values == ("hello", "world"))
+        self.failUnlessEqual(values, ("hello", "world"))
 
         CFBinaryHeapRemoveAllValues(heap)
         values = CFBinaryHeapGetValues(heap)
-        self.failUnless(values == ())
+        self.failUnlessEqual(values, ())
 
     def testFunctions(self):
         self.failUnlessArgHasType(CFBinaryHeapGetCountOfValue, 1, '@')

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbitvector.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbitvector.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbitvector.py	Tue Sep  1 10:48:21 2009
@@ -43,9 +43,9 @@
         self.failIf(set3 is set)
 
     def testInspection(self):
-        bitset = CFBitVectorCreate(None, [0x11, 0x22, 0x33, 0x44], 30)
+        bitset = CFBitVectorCreate(None, [0x11, 0x22, 0x33, 0x44], 32)
 
-        self.failUnlessEqual( CFBitVectorGetCount(bitset), 30 )
+        self.failUnlessEqual( CFBitVectorGetCount(bitset), 32 )
         self.failUnlessEqual( CFBitVectorGetCountOfBit(bitset, (0, 30), 1), 10 )
         self.failUnlessEqual( CFBitVectorGetCountOfBit(bitset, (0, 30), 0), 20 )
 

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbundle.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbundle.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfbundle.py	Tue Sep  1 10:48:21 2009
@@ -144,7 +144,9 @@
         self.failUnless(isinstance(arr2, CFArrayRef))
 
         url = CFBundleCopyResourceURLForLocalization(bundle, "Formatter", "strings", None, "Dutch");
-        self.failUnless( isinstance(url, CFURLRef) )
+        if url is None:
+            url = CFBundleCopyResourceURLForLocalization(bundle, "Formatter", "strings", None, "nl");
+        self.failUnlessIsInstance(url, CFURLRef)
 
         array = CFBundleCopyResourceURLsOfTypeForLocalization(bundle, "strings", None, "Dutch")
         self.failIf(array is None)

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfcalendar.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfcalendar.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfcalendar.py	Tue Sep  1 10:48:21 2009
@@ -1,5 +1,6 @@
 from PyObjCTools.TestSupport import *
 from CoreFoundation import *
+import datetime
 
 class TestCFCalendarVariadic (TestCase):
     def testTypes(self):
@@ -95,11 +96,11 @@
 
 
     def testInspection(self):
-        cal = CFCalendarCreateWithIdentifier(None, kCFBuddhistCalendar)
+        cal = CFCalendarCreateWithIdentifier(None, kCFGregorianCalendar)
         self.failUnless( isinstance(cal, CFCalendarRef) )
 
         name = CFCalendarGetIdentifier(cal)
-        self.failUnless(name == kCFBuddhistCalendar)
+        self.failUnless(name == kCFGregorianCalendar)
 
         locale = CFCalendarCopyLocale(cal)
         self.failUnless( isinstance(locale, CFLocaleRef) )
@@ -120,10 +121,22 @@
         rng = CFCalendarGetMaximumRangeOfUnit(cal, kCFCalendarUnitEra)
         self.failUnless(isinstance(rng, CFRange))
 
-        rng = CFCalendarGetRangeOfUnit(cal, kCFCalendarUnitDay, kCFCalendarUnitYear, CFAbsoluteTimeGetCurrent())
+        m = datetime.date.today()
+        if m.month in (1,3,5,7,8,10,12):
+            monthLength=31
+        elif m.month in (4, 6, 9, 11):
+            monthLength=30
+        else:
+            if m.year % 4 == 0:
+                # Yes this is wrong, but the next time this fails in
+                # in 2100. 
+                monthLength = 29
+            else:
+                monthLength = 28
+        rng = CFCalendarGetRangeOfUnit(cal, kCFCalendarUnitDay, kCFCalendarUnitMonth, CFAbsoluteTimeGetCurrent())
         self.failUnless(isinstance(rng, CFRange))
         self.failUnlessEqual(rng.location, 1)
-        self.failUnlessEqual(rng.length, 365)
+        self.failUnlessEqual(rng.length, monthLength)
 
 
         v = CFCalendarGetOrdinalityOfUnit(cal, kCFCalendarUnitDay, kCFCalendarUnitYear, CFAbsoluteTimeGetCurrent())
@@ -197,6 +210,10 @@
 
         self.failUnless( kCFCalendarComponentsWrap == (1 << 0) )
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(kCFCalendarUnitQuarter, 1<<11)
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfdata.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfdata.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfdata.py	Tue Sep  1 10:48:21 2009
@@ -80,6 +80,25 @@
         CFDataDeleteBytes(mutableData, (0, 6))
         self.assertEquals(CFDataGetBytes(mutableData, (0, 5), None), 'world')
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(kCFDataSearchBackwards, 1<<0)
+        self.failUnlessEqual(kCFDataSearchAnchored, 1<<1)
+
+    @min_os_level('10.6')
+    def testFunctions10_6(self):
+        data = CFDataCreate(None, "hello world", 11)
+        self.failUnless(isinstance(data, CFDataRef))
+
+        src = CFDataCreate(None, "wor", 3)
+        self.failUnless(isinstance(src, CFDataRef))
+
+        self.failUnlessResultHasType(CFDataFind, CFRange.__typestr__)
+        self.failUnlessArgHasType(CFDataFind, 2, CFRange.__typestr__)
+        v = CFDataFind(data, src, (0, 11), 0)
+        self.failUnlessIsInstance(v, CFRange)
+        self.failUnlessEqual(v, (6, 3))
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfdateformatter.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfdateformatter.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfdateformatter.py	Tue Sep  1 10:48:21 2009
@@ -13,34 +13,46 @@
         self.failUnless(kCFDateFormatterLongStyle == 3)
         self.failUnless(kCFDateFormatterFullStyle == 4)
 
-        self.failUnless( isinstance( kCFDateFormatterIsLenient, unicode))
-        self.failUnless( isinstance( kCFDateFormatterTimeZone, unicode))
-        self.failUnless( isinstance( kCFDateFormatterCalendarName, unicode))
-        self.failUnless( isinstance( kCFDateFormatterDefaultFormat, unicode))
-        self.failUnless( isinstance( kCFDateFormatterTwoDigitStartDate, unicode))
-        self.failUnless( isinstance( kCFDateFormatterDefaultDate, unicode))
-        self.failUnless( isinstance( kCFDateFormatterCalendar, unicode))
-        self.failUnless( isinstance( kCFDateFormatterEraSymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterMonthSymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterShortMonthSymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterWeekdaySymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterShortWeekdaySymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterAMSymbol, unicode))
-        self.failUnless( isinstance( kCFDateFormatterPMSymbol, unicode))
-        self.failUnless( isinstance( kCFDateFormatterLongEraSymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterVeryShortMonthSymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterStandaloneMonthSymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterShortStandaloneMonthSymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterVeryShortStandaloneMonthSymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterVeryShortWeekdaySymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterStandaloneWeekdaySymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterShortStandaloneWeekdaySymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterVeryShortStandaloneWeekdaySymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterQuarterSymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterShortQuarterSymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterStandaloneQuarterSymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterShortStandaloneQuarterSymbols, unicode))
-        self.failUnless( isinstance( kCFDateFormatterGregorianStartDate, unicode))
+        self.failUnlessIsInstance(kCFDateFormatterIsLenient, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterTimeZone, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterCalendarName, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterDefaultFormat, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterTwoDigitStartDate, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterDefaultDate, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterCalendar, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterEraSymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterMonthSymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterShortMonthSymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterWeekdaySymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterShortWeekdaySymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterAMSymbol, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterPMSymbol, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterLongEraSymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterVeryShortMonthSymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterStandaloneMonthSymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterShortStandaloneMonthSymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterVeryShortStandaloneMonthSymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterVeryShortWeekdaySymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterStandaloneWeekdaySymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterShortStandaloneWeekdaySymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterVeryShortStandaloneWeekdaySymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterQuarterSymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterShortQuarterSymbols, unicode)
+        self.failUnlessIsInstance(kCFDateFormatterStandaloneQuarterSymbols, unicode)
+        self.failUnlessIsInstance( kCFDateFormatterShortStandaloneQuarterSymbols, unicode)
+        self.failUnlessIsInstance( kCFDateFormatterGregorianStartDate, unicode)
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(kCFDateFormatterDoesRelativeDateFormattingKey, unicode)
+
+    @min_os_level('10.6')
+    def testFunction10_6(self):
+        self.failUnlessResultIsCFRetained(CFDateFormatterCreateDateFormatFromTemplate)
+        r = CFDateFormatterCreateDateFormatFromTemplate(None, "%Y-%m-%d", 0, None)
+        self.failUnlessIsInstance(r, unicode)
+                            
+
 
     def testTypes(self):
         self.failUnlessIsCFType(CFDateFormatterRef)
@@ -91,10 +103,10 @@
         v = CFDateFormatterCopyProperty(fmt, kCFDateFormatterCalendarName)
         self.failUnless(isinstance(v, unicode))
 
-        CFDateFormatterSetProperty(fmt, kCFDateFormatterCalendarName, u"samba")
+        CFDateFormatterSetProperty(fmt, kCFDateFormatterCalendarName, u"gregorian")
         v = CFDateFormatterCopyProperty(fmt, kCFDateFormatterCalendarName)
-        self.failUnless(isinstance(v, unicode))
-        self.failUnless(v == u"samba")
+        self.failUnlessIsInstance(v, unicode)
+        self.failUnless(v == u"gregorian")
 
         v = CFDateFormatterCopyProperty(fmt, kCFDateFormatterIsLenient)
         self.failUnless(v is True or v is False)

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cferror.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cferror.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cferror.py	Tue Sep  1 10:48:21 2009
@@ -59,7 +59,9 @@
 
         self.failUnlessResultIsCFRetained(CFErrorCopyDescription)
         v = CFErrorCopyDescription(err)
-        self.assertEquals(v, u'Operation could not be completed. failure reason')
+        self.failUnlessIsIn(v, (
+            u'Operation could not be completed. failure reason',
+            u'The operation couldn\u2019t be completed. failure reason'))
 
         self.failUnlessResultIsCFRetained(CFErrorCopyFailureReason)
         v = CFErrorCopyFailureReason(err)

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cflocale.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cflocale.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cflocale.py	Tue Sep  1 10:48:21 2009
@@ -43,8 +43,15 @@
         self.failUnless(isinstance(val, unicode))
 
         dct = CFLocaleCreateComponentsFromLocaleIdentifier(None, "nl_NL")
-        self.failUnless(dct["locale:country code"] == 'NL')
-        self.failUnless(dct["locale:language code"] == 'nl')
+        try:
+            # 10.6
+            self.failUnless(dct[kCFLocaleCountryCodeKey] == 'NL')
+            self.failUnless(dct[kCFLocaleLanguageCodeKey] == 'nl')
+
+        except NameError:
+            # 10.5 and earlier
+            self.failUnless(dct["locale:country code"] == 'NL')
+            self.failUnless(dct["locale:language code"] == 'nl')
 
         val = CFLocaleCreateLocaleIdentifierFromComponents(None, dct)
         self.failUnless(isinstance(val, unicode))
@@ -104,5 +111,40 @@
     def testConstants10_5(self):
         self.failUnless(isinstance( kCFLocaleCurrentLocaleDidChangeNotification, unicode))
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(kCFLocaleLanguageDirectionUnknown, 0)
+        self.failUnlessEqual(kCFLocaleLanguageDirectionLeftToRight, 1)
+        self.failUnlessEqual(kCFLocaleLanguageDirectionRightToLeft, 2)
+        self.failUnlessEqual(kCFLocaleLanguageDirectionTopToBottom, 3)
+        self.failUnlessEqual(kCFLocaleLanguageDirectionBottomToTop, 4)
+
+        self.failUnlessIsInstance(kCFLocaleCollatorIdentifier, unicode)
+        self.failUnlessIsInstance(kCFLocaleQuotationBeginDelimiterKey, unicode)
+        self.failUnlessIsInstance(kCFLocaleQuotationEndDelimiterKey, unicode)
+        self.failUnlessIsInstance(kCFLocaleAlternateQuotationBeginDelimiterKey, unicode)
+        self.failUnlessIsInstance(kCFLocaleAlternateQuotationEndDelimiterKey, unicode)
+        self.failUnlessIsInstance(kCFRepublicOfChinaCalendar, unicode)
+        self.failUnlessIsInstance(kCFPersianCalendar, unicode)
+        self.failUnlessIsInstance(kCFIndianCalendar, unicode)
+        self.failUnlessIsInstance(kCFISO8601Calendar, unicode)
+
+
+    @min_os_level('10.6')
+    def testFunctions10_6(self):
+        v = CFLocaleGetWindowsLocaleCodeFromLocaleIdentifier('nl_NL')
+        self.failUnlessIsInstance(v, (int, long))
+
+        self.failUnlessResultIsCFRetained(CFLocaleCreateLocaleIdentifierFromWindowsLocaleCode)
+        v = CFLocaleCreateLocaleIdentifierFromWindowsLocaleCode(None, 1043)
+        self.failUnlessIsInstance(v, unicode)
+
+        v = CFLocaleGetLanguageCharacterDirection('NL')
+        self.failUnlessEqual(v, kCFLocaleLanguageDirectionLeftToRight)
+
+        v = CFLocaleGetLanguageLineDirection('NL')
+        self.failUnlessEqual(v, kCFLocaleLanguageDirectionTopToBottom)
+
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfmessageport.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfmessageport.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfmessageport.py	Tue Sep  1 10:48:21 2009
@@ -7,11 +7,20 @@
         self.failUnlessIsCFType(CFMessagePortRef)
 
     def testConstants(self):
-        self.failUnless(kCFMessagePortSuccess == 0)
-        self.failUnless(kCFMessagePortSendTimeout == -1)
-        self.failUnless(kCFMessagePortReceiveTimeout == -2)
-        self.failUnless(kCFMessagePortIsInvalid == -3)
-        self.failUnless(kCFMessagePortTransportError == -4)
+        self.failUnlessEqual(kCFMessagePortSuccess, 0)
+        self.failUnlessEqual(kCFMessagePortSendTimeout, -1)
+        self.failUnlessEqual(kCFMessagePortReceiveTimeout, -2)
+        self.failUnlessEqual(kCFMessagePortIsInvalid, -3)
+        self.failUnlessEqual(kCFMessagePortTransportError, -4)
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(kCFMessagePortBecameInvalidError, -5)
+
+    @min_os_level('10.6')
+    @expectedFailure
+    def testFunctions10_6(self):
+        self.fail('CFMessagePortSetDispatchQueue: dispatch_queue_t not wrapped yet')
 
     def testTypeID(self):
         self.failUnless(isinstance(CFMessagePortGetTypeID(), (int, long)))

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfpropertylist.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfpropertylist.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfpropertylist.py	Tue Sep  1 10:48:21 2009
@@ -73,6 +73,56 @@
         self.failUnless(kCFPropertyListXMLFormat_v1_0 == 100)
         self.failUnless(kCFPropertyListBinaryFormat_v1_0 == 200)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(kCFPropertyListReadCorruptError, 3840)
+        self.failUnlessEqual(kCFPropertyListReadUnknownVersionError, 3841)
+        self.failUnlessEqual(kCFPropertyListReadStreamError, 3842)
+        self.failUnlessEqual(kCFPropertyListWriteStreamError, 3851)
+
+    @min_os_level('10.6')
+    def testFunctions10_6(self):
+        dta = CFPropertyListCreateXMLData(None, {u"key": 42, u"key2": 1})
+        self.failUnless(isinstance(dta, CFDataRef))
+
+        bytes = CFDataGetBytes(dta, (0, CFDataGetLength(dta)), None)
+        self.failIf(bytes is None)
+
+        self.failUnlessResultIsCFRetained(CFPropertyListCreateWithData)
+        self.failUnlessArgIsOut(CFPropertyListCreateWithData, 3)
+        self.failUnlessArgIsOut(CFPropertyListCreateWithData, 4)
+        v, fmt, err = CFPropertyListCreateWithData(None, dta, 0, None, None)
+        self.failIf(v is None)
+        self.failUnlessIsInstance(fmt, (int, long))
+        self.failUnless(err is None)
+
+        stream = CFReadStreamCreateWithBytesNoCopy(None, bytes, len(bytes), kCFAllocatorNull)
+        CFReadStreamOpen(stream)
+
+        self.failUnlessResultIsCFRetained(CFPropertyListCreateWithStream)
+        self.failUnlessArgIsOut(CFPropertyListCreateWithStream, 4)
+        self.failUnlessArgIsOut(CFPropertyListCreateWithStream, 5)
+        v, fmt, err = CFPropertyListCreateWithStream(None, stream, len(bytes), 0, None, None)
+        self.failIf(v is None)
+        self.failUnlessIsInstance(fmt, (int, long))
+        self.failUnless(err is None)
+
+        import array
+        buf = array.array('b', ' '*1024)
+
+        stream = CFWriteStreamCreateWithBuffer(None, buf, 1024)
+        CFWriteStreamOpen(stream)
+
+        self.failUnlessArgIsOut(CFPropertyListWrite, 4)
+        cnt, err = CFPropertyListWrite({'key':42}, stream, kCFPropertyListBinaryFormat_v1_0, 0, None)
+        self.failIfEqual(cnt, 0)
+        self.failUnlessEqual(err, None)
+
+        self.failUnlessResultIsCFRetained(CFPropertyListCreateData)
+        self.failUnlessArgIsOut(CFPropertyListCreateData, 4)
+        dta, err = CFPropertyListCreateData(None, {'key':'value'}, kCFPropertyListBinaryFormat_v1_0, 0, None)
+        self.failUnlessIsInstance(dta, CFDataRef)
+        self.failUnlessEqual(err, None)
 
 
 

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfrunloop.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfrunloop.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfrunloop.py	Tue Sep  1 10:48:21 2009
@@ -238,5 +238,9 @@
         self.failUnless(state[0][2] is rl)
         self.failUnless(state[0][3] == kCFRunLoopDefaultMode)
 
+    @min_os_level('10.6')
+    def testFunctions10_6(self):
+        self.failUnlessArgIsBlock(CFRunLoopPerformBlock, 2, 'v')
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfsocket.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfsocket.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfsocket.py	Tue Sep  1 10:48:21 2009
@@ -37,6 +37,8 @@
         self.failUnless(isinstance(kCFSocketRegisterCommand, unicode))
         self.failUnless(isinstance(kCFSocketRetrieveCommand, unicode))
 
+        self.failUnlessEqual(kCFSocketLeaveErrors, 64)
+
 
     def testStructs(self):
         o = CFSocketSignature()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfstring.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfstring.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfstring.py	Tue Sep  1 10:48:21 2009
@@ -379,7 +379,7 @@
 
         v = CFStringConvertEncodingToIANACharSetName(kCFStringEncodingUTF8)
         self.failUnless(isinstance(v, unicode))
-        self.assertEquals(v, 'UTF-8')
+        self.failUnlessIsIn(v, ('UTF-8', 'utf-8'))
 
         t = CFStringConvertIANACharSetNameToEncoding(v)
         self.assertEquals(t, kCFStringEncodingUTF8)
@@ -465,6 +465,11 @@
 
 
 class TestStringEncodingExt (TestCase):
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(kCFStringEncodingUTF7, 0x04000100)
+        self.failUnlessEqual(kCFStringEncodingUTF7_IMAP, 0x0A10)
+
     def testConstants(self):
         self.failUnless( kCFStringEncodingMacJapanese == 1 )
         self.failUnless( kCFStringEncodingMacChineseTrad == 2 )
@@ -594,5 +599,24 @@
         self.failUnless( kCFStringEncodingEBCDIC_CP037 == 0x0C02 )
         self.failUnless( kCFStringEncodingShiftJIS_X0213_00 == 0x0628 )
 
+    @min_os_level('10.6')
+    def testFunctions10_6(self):
+        self.failUnlessResultIsBOOL(CFStringIsSurrogateHighCharacter)
+        self.failUnless(CFStringIsSurrogateHighCharacter(u'\uD800'))
+        self.failIf(CFStringIsSurrogateHighCharacter(u'\u0600'))
+        self.failUnless(CFStringIsSurrogateLowCharacter(u'\uDC00'))
+        self.failIf(CFStringIsSurrogateLowCharacter(u'\u0600'))
+        v = CFStringGetLongCharacterForSurrogatePair(u'\uD801', u'\uDC01')
+        self.failUnlessEqual(v, ((1 << 10) | 1) + 0x0010000)
+
+        self.failUnlessResultIsBOOL(CFStringGetSurrogatePairForLongCharacter)
+        ok, chars = CFStringGetSurrogatePairForLongCharacter(v, None)
+        self.failUnless(ok)
+        self.failUnlessEqual(len(chars), 2)
+        self.failUnlessEqual(chars[0], u'\uD801')
+        self.failUnlessEqual(chars[1], u'\uDC01')
+
+
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cftimezone.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cftimezone.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cftimezone.py	Tue Sep  1 10:48:21 2009
@@ -133,6 +133,12 @@
 
         self.failUnless( isinstance(kCFTimeZoneSystemTimeZoneDidChangeNotification, unicode) )
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(kCFTimeZoneNameStyleGeneric, 4)
+        self.failUnlessEqual(kCFTimeZoneNameStyleShortGeneric, 5)
+
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfurl.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfurl.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_cfurl.py	Tue Sep  1 10:48:21 2009
@@ -11,23 +11,23 @@
 
     def testTypeID(self):
         val = CFURLGetTypeID()
-        self.failUnless( isinstance(val, (int, long)) )
+        self.failUnlessIsInstance(val, (int, long))
 
     def testCreateWithBytes(self):
         url = "http://www.omroep.nl/"
 
         ref = CFURLCreateWithBytes(None, url, len(url), kCFStringEncodingUTF8, None)
-        self.failUnless( isinstance(ref, CFURLRef) )
+        self.failUnlessIsInstance(ref, CFURLRef)
 
         strval =  CFURLGetString(ref)
         self.failUnlessEqual(strval, unicode(url, "utf-8"))
 
         ref2 = CFURLCreateWithBytes(None, url, len(url), kCFStringEncodingUTF8, ref)
-        self.failUnless( isinstance(ref2, CFURLRef) )
+        self.failUnlessIsInstance(ref2, CFURLRef)
 
         a = array.array('c', 'http://www.nu.nl/')
         ref3 = CFURLCreateWithBytes(None, a, len(a), kCFStringEncodingUTF8, None)
-        self.failUnless( isinstance(ref3, CFURLRef) )
+        self.failUnlessIsInstance(ref3, CFURLRef)
 
         # Explictely test for unicode's buffer madness.
         self.failUnlessRaises((ValueError, TypeError), CFURLCreateWithBytes, None, unicode(url), len(url), kCFStringEncodingUTF8, None)
@@ -36,15 +36,15 @@
         url = "http://www.omroep.nl/ blank"
 
         ref = CFURLCreateWithBytes(None, url, len(url), kCFStringEncodingUTF8, None)
-        self.failUnless( isinstance(ref, CFURLRef) )
+        self.failUnlessIsInstance(ref, CFURLRef)
 
         data = CFURLCreateData(None, ref, kCFStringEncodingUTF8, False)
-        self.failUnless( isinstance(data, CFDataRef) )
+        self.failUnlessIsInstance(data, CFDataRef)
         val = CFDataGetBytes(data, (0, CFDataGetLength(data)), None)
         self.assertEquals(val, url.replace(' ', '%20'))
 
         data = CFURLCreateData(None, ref, kCFStringEncodingUTF8, True)
-        self.failUnless( isinstance(data, CFDataRef) )
+        self.failUnlessIsInstance(data, CFDataRef)
         val = CFDataGetBytes(data, (0, CFDataGetLength(data)), None)
         self.assertEquals(val, url.replace(' ', '%20'))
 
@@ -52,13 +52,13 @@
         url = u"http://www.omroep.nl/"
 
         ref = CFURLCreateWithString(None, url, None)
-        self.failUnless( isinstance(ref, CFURLRef) )
+        self.failUnlessIsInstance(ref, CFURLRef)
 
         strval =  CFURLGetString(ref)
         self.failUnlessEqual(strval, url)
 
         ref2 = CFURLCreateWithString(None, url, ref)
-        self.failUnless( isinstance(ref2, CFURLRef) )
+        self.failUnlessIsInstance(ref2, CFURLRef)
 
     def testCreateAbsolute(self):
         url = u"http://www.omroep.nl/sport/"
@@ -67,20 +67,20 @@
         self.failUnlessArgHasType(CFURLCreateAbsoluteURLWithBytes, 1, 'n^v')
         self.failUnlessArgSizeInArg(CFURLCreateAbsoluteURLWithBytes, 1, 2)
         ref = CFURLCreateAbsoluteURLWithBytes(None, "socker", len("socker"), kCFStringEncodingUTF8, baseref, True)
-        self.failUnless( isinstance(ref, CFURLRef) )
+        self.failUnlessIsInstance(ref, CFURLRef)
 
         strval =  CFURLGetString(ref)
         self.failUnlessEqual(strval, u"http://www.omroep.nl/sport/socker")
 
         relpath = "../../../dummy"
         ref = CFURLCreateAbsoluteURLWithBytes(None, relpath, len(relpath), kCFStringEncodingUTF8, baseref, True)
-        self.failUnless( isinstance(ref, CFURLRef) )
+        self.failUnlessIsInstance(ref, CFURLRef)
         strval =  CFURLGetString(ref)
         self.failUnlessEqual(strval, u"http://www.omroep.nl/dummy")
 
         relpath = "../../../dummy"
         ref = CFURLCreateAbsoluteURLWithBytes(None, relpath, len(relpath), kCFStringEncodingUTF8, baseref, False)
-        self.failUnless( isinstance(ref, CFURLRef) )
+        self.failUnlessIsInstance(ref, CFURLRef)
         strval =  CFURLGetString(ref)
         self.failUnlessEqual(strval, u"http://www.omroep.nl/../../dummy")
 
@@ -88,26 +88,26 @@
     def testCopyAbs(self):
         # CFURLCopyAbsoluteURL
         base = CFURLCreateWithString(None, u"http://www.omroep.nl/", None)
-        self.failUnless( isinstance(base, CFURLRef) )
+        self.failUnlessIsInstance(base, CFURLRef)
 
         ref = CFURLCreateWithString(None, u"/sport", base)
-        self.failUnless( isinstance(ref, CFURLRef) )
+        self.failUnlessIsInstance(ref, CFURLRef)
 
         self.failUnless( CFURLGetString(ref) == u"/sport" )
 
         abs = CFURLCopyAbsoluteURL(ref)
-        self.failUnless( isinstance(abs, CFURLRef) )
+        self.failUnlessIsInstance(abs, CFURLRef)
         self.failUnless( CFURLGetString(abs) == u"http://www.omroep.nl/sport" )
 
     def testPaths(self):
         url = CFURLCreateWithFileSystemPath(None,
                 u"/tmp/", kCFURLPOSIXPathStyle, True)
-        self.failUnless( isinstance(url, CFURLRef) )
+        self.failUnlessIsInstance(url, CFURLRef)
         self.failUnless(CFURLHasDirectoryPath(url))
 
         url = CFURLCreateWithFileSystemPath(None,
                 u"/etc/hosts", kCFURLPOSIXPathStyle, False)
-        self.failUnless( isinstance(url, CFURLRef) )
+        self.failUnlessIsInstance(url, CFURLRef)
         self.failIf(CFURLHasDirectoryPath(url))
 
         p = os.path.expanduser('~')
@@ -115,19 +115,19 @@
         self.failUnlessArgIsNullTerminated(CFURLCreateFromFileSystemRepresentation, 1)
         url = CFURLCreateFromFileSystemRepresentation(None,
                 p, len(p), True)
-        self.failUnless( isinstance(url, CFURLRef))
+        self.failUnlessIsInstance(url, CFURLRef)
         self.assertRaises((ValueError, TypeError),
             CFURLCreateFromFileSystemRepresentation, None,
                 u"/tmp/", 4, True)
 
         base = CFURLCreateWithFileSystemPath(None,
                 u"/tmp", kCFURLPOSIXPathStyle, True)
-        self.failUnless( isinstance(base, CFURLRef) )
+        self.failUnlessIsInstance(base, CFURLRef)
 
         self.failUnlessArgIsBOOL(CFURLCreateWithFileSystemPathRelativeToBase, 3)
         url = CFURLCreateWithFileSystemPathRelativeToBase(None,
                 u"filename", kCFURLPOSIXPathStyle, True, base)
-        self.failUnless( isinstance(url, CFURLRef) )
+        self.failUnlessIsInstance(url, CFURLRef)
 
         strval =  CFURLGetString(url)
         self.assertEquals(strval, u"filename/")
@@ -136,7 +136,7 @@
         self.failUnlessArgIsBOOL(CFURLCreateFromFileSystemRepresentationRelativeToBase, 3)
         url = CFURLCreateFromFileSystemRepresentationRelativeToBase(None,
                 "filename2", 9, False, base)
-        self.failUnless( isinstance(url, CFURLRef) )
+        self.failUnlessIsInstance(url, CFURLRef)
         strval =  CFURLGetString(url)
         self.assertEquals(strval, u"filename2")
 
@@ -150,10 +150,10 @@
 
     def testParts(self):
         base = CFURLCreateWithString(None, u"http://www.omroep.nl/", None)
-        self.failUnless( isinstance(base, CFURLRef) )
+        self.failUnlessIsInstance(base, CFURLRef)
 
         ref = CFURLCreateWithString(None, u"/sport", base)
-        self.failUnless( isinstance(ref, CFURLRef) )
+        self.failUnlessIsInstance(ref, CFURLRef)
 
         self.assertEquals(CFURLGetBaseURL(base), None)
         self.assertEquals(CFURLGetBaseURL(ref), base)
@@ -221,32 +221,32 @@
         self.assertEquals(bytes, objc.NULL)
 
         rng1, rng2 = CFURLGetByteRangeForComponent(ref, kCFURLComponentHost, None)
-        self.assert_(isinstance(rng1, CFRange))
-        self.assert_(isinstance(rng2, CFRange))
+        self.failUnlessIsInstance(rng1, CFRange)
+        self.failUnlessIsInstance(rng2, CFRange)
         
 
     def testUpdating(self):
         base = CFURLCreateWithString(None, u"http://www.omroep.nl/sport", None)
-        self.failUnless( isinstance(base, CFURLRef) )
+        self.failUnlessIsInstance(base, CFURLRef)
 
         url = CFURLCreateCopyAppendingPathComponent(None, base, "soccer", True)
-        self.failUnless( isinstance(url, CFURLRef) )
+        self.failUnlessIsInstance(url, CFURLRef)
 
         strval =  CFURLGetString(url)
         self.assertEquals(strval, "http://www.omroep.nl/sport/soccer/")
 
         url = CFURLCreateCopyDeletingLastPathComponent(None, base)
-        self.failUnless( isinstance(url, CFURLRef) )
+        self.failUnlessIsInstance(url, CFURLRef)
         strval =  CFURLGetString(url)
         self.assertEquals(strval, "http://www.omroep.nl/")
 
         url = CFURLCreateCopyAppendingPathExtension(None, base, "cgi")
-        self.failUnless( isinstance(url, CFURLRef) )
+        self.failUnlessIsInstance(url, CFURLRef)
         strval =  CFURLGetString(url)
         self.assertEquals(strval, "http://www.omroep.nl/sport.cgi")
 
         url2 = CFURLCreateCopyDeletingPathExtension(None, base)
-        self.failUnless( isinstance(url2, CFURLRef) )
+        self.failUnlessIsInstance(url2, CFURLRef)
         strval =  CFURLGetString(url2)
         self.assertEquals(strval, "http://www.omroep.nl/sport")
 
@@ -276,33 +276,197 @@
 
     def testFSRef(self):
         ref = CFURLCreateWithFileSystemPath(None, os.getcwd(), kCFURLPOSIXPathStyle, True)
-        self.failUnless( isinstance(ref, CFURLRef) )
+        self.failUnlessIsInstance(ref, CFURLRef)
 
         ok, fsref = CFURLGetFSRef(ref, None)
         self.failUnless(ok)
-        self.failUnless(isinstance(fsref, objc.FSRef))
-        self.failUnless( fsref.as_pathname() ==  os.getcwd())
+        self.failUnlessIsInstance(fsref, objc.FSRef)
+        self.failUnlessEqual(fsref.as_pathname(), os.getcwd())
 
         ref2 = CFURLCreateFromFSRef(None, fsref)
         self.failUnlessEqual(ref, ref2) 
 
     def testConstants(self):
-        self.failUnless( kCFURLPOSIXPathStyle == 0 )
-        self.failUnless( kCFURLHFSPathStyle == 1 )
-        self.failUnless( kCFURLWindowsPathStyle == 2 )
-
-        self.failUnless( kCFURLComponentScheme == 1 )
-        self.failUnless( kCFURLComponentNetLocation == 2 )
-        self.failUnless( kCFURLComponentPath == 3 )
-        self.failUnless( kCFURLComponentResourceSpecifier == 4 )
-        self.failUnless( kCFURLComponentUser == 5 )
-        self.failUnless( kCFURLComponentPassword == 6 )
-        self.failUnless( kCFURLComponentUserInfo == 7 )
-        self.failUnless( kCFURLComponentHost == 8 )
-        self.failUnless( kCFURLComponentPort == 9 )
-        self.failUnless( kCFURLComponentParameterString == 10 )
-        self.failUnless( kCFURLComponentQuery == 11 )
-        self.failUnless( kCFURLComponentFragment == 12 )
+        self.failUnlessEqual(kCFURLPOSIXPathStyle, 0)
+        self.failUnlessEqual(kCFURLHFSPathStyle, 1)
+        self.failUnlessEqual(kCFURLWindowsPathStyle, 2)
+
+        self.failUnlessEqual(kCFURLComponentScheme, 1)
+        self.failUnlessEqual(kCFURLComponentNetLocation, 2)
+        self.failUnlessEqual(kCFURLComponentPath, 3)
+        self.failUnlessEqual(kCFURLComponentResourceSpecifier, 4)
+        self.failUnlessEqual(kCFURLComponentUser, 5)
+        self.failUnlessEqual(kCFURLComponentPassword, 6)
+        self.failUnlessEqual(kCFURLComponentUserInfo, 7)
+        self.failUnlessEqual(kCFURLComponentHost, 8)
+        self.failUnlessEqual(kCFURLComponentPort, 9)
+        self.failUnlessEqual(kCFURLComponentParameterString, 10)
+        self.failUnlessEqual(kCFURLComponentQuery, 11)
+        self.failUnlessEqual(kCFURLComponentFragment, 12)
+
+    @min_os_level('10.6')
+    def testFunctions10_6(self):
+        fp = open("/tmp/pyobjc.test", "w")
+        fp.close()
+        try:
+            baseURL = CFURLCreateWithFileSystemPath(None,
+                u"/tmp/pyobjc.test", kCFURLPOSIXPathStyle, False)
+            self.failUnlessIsInstance(baseURL, CFURLRef)
+
+            self.failUnlessResultIsCFRetained(CFURLCreateFileReferenceURL)
+            url, err = CFURLCreateFileReferenceURL(None, baseURL, None)
+            self.failUnlessIsInstance(url, CFURLRef)
+            self.failUnlessEqual(err, None)
+
+            self.failUnlessResultIsCFRetained(CFURLCreateFilePathURL)
+            url, err = CFURLCreateFilePathURL(None, baseURL, None)
+            self.failUnlessIsInstance(url, CFURLRef)
+            self.failUnlessEqual(err, None)
+
+            self.failUnlessResultIsBOOL(CFURLCopyResourcePropertyForKey)
+            self.failUnlessArgIsCFRetained(CFURLCopyResourcePropertyForKey, 2)
+            self.failUnlessArgIsOut(CFURLCopyResourcePropertyForKey, 2)
+            self.failUnlessArgIsOut(CFURLCopyResourcePropertyForKey, 3)
+            ok, value, error = CFURLCopyResourcePropertyForKey(url, kCFURLNameKey, None, None)
+            self.failUnless(ok)
+            self.failUnlessIsInstance(value, unicode)
+            self.failUnlessEqual(error, None)
+
+            ok, value, error = CFURLCopyResourcePropertyForKey(url, kCFURLIsRegularFileKey, None, None)
+            self.failUnless(ok)
+            self.failUnlessIsInstance(value, bool)
+            self.failUnlessEqual(error, None)
+
+
+            self.failUnlessResultIsCFRetained(CFURLCreateFilePathURL)
+            self.failUnlessArgIsOut(CFURLCopyResourcePropertyForKey, 2)
+            values, error = CFURLCopyResourcePropertiesForKeys(url, [kCFURLNameKey, kCFURLIsRegularFileKey], None)
+            self.failUnlessIsInstance(values, CFDictionaryRef)
+            self.failUnlessEqual(error, None)
+
+            CFURLClearResourcePropertyCacheForKey(url, kCFURLIsRegularFileKey)
+            CFURLClearResourcePropertyCache(url)
+            self.failUnlessResultIsBOOL(CFURLResourceIsReachable)
+            v, err= CFURLResourceIsReachable(url, None)
+            self.failUnlessIsInstance(v, bool)
+            self.failUnlessEqual(err, None)
+
+            CFURLSetTemporaryResourcePropertyForKey(url, "pyobjc.test", u"hello")
+            ok, v, err = CFURLCopyResourcePropertyForKey(url, "pyobjc.test", None, None)
+            self.failUnless(ok)
+            self.failUnlessEqual(v, u"hello")
+
+            ok, cur, err = CFURLCopyResourcePropertyForKey(url, kCFURLIsHiddenKey, None, None)
+            self.failUnless(ok)
+
+            ok, err = CFURLSetResourcePropertyForKey(url, kCFURLIsHiddenKey, not cur, None)
+            self.failUnless(ok)
+
+            ok, new, err = CFURLCopyResourcePropertyForKey(url, kCFURLIsHiddenKey, None, None)
+            self.failUnless(ok)
+            self.failUnlessEqual(new, not cur)
+            self.failUnlessEqual(err, None)
+
+            ok, err = CFURLSetResourcePropertiesForKeys(url, {kCFURLIsHiddenKey:cur}, None)
+            self.failUnless(ok)
+            self.failUnlessEqual(err, None)
+
+            ok, new, err = CFURLCopyResourcePropertyForKey(url, kCFURLIsHiddenKey, None, None)
+            self.failUnless(ok)
+            self.failUnlessEqual(new, cur)
+            self.failUnlessEqual(err, None)
+
+            self.failUnlessResultIsCFRetained(CFURLCreateBookmarkData)
+            data, err = CFURLCreateBookmarkData(None, url, kCFURLBookmarkCreationSuitableForBookmarkFile, [kCFURLNameKey, kCFURLIsHiddenKey], None, None)
+            self.failUnless(err is None)
+            self.failUnlessIsInstance(data, CFDataRef)
+
+            self.failUnlessResultIsCFRetained(CFURLCreateByResolvingBookmarkData)
+            u, stale, err = CFURLCreateByResolvingBookmarkData(None, data, 0, None, None, None, None)
+            self.failUnlessEqual(u, url)
+            self.failUnlessIsInstance(stale, bool)
+            self.failIf(stale)
+            self.failUnless(err is None)
+
+            self.failUnlessResultIsCFRetained(CFURLCreateResourcePropertiesForKeysFromBookmarkData)
+            v = CFURLCreateResourcePropertiesForKeysFromBookmarkData(None, [kCFURLNameKey], data)
+            self.failUnlessIsInstance(v, CFDictionaryRef)
+
+            self.failUnlessResultIsCFRetained(CFURLCreateResourcePropertyForKeyFromBookmarkData)
+            v = CFURLCreateResourcePropertyForKeyFromBookmarkData(None, kCFURLNameKey, data)
+            self.failUnlessIsInstance(v, unicode)
+
+            refURL = CFURLCreateWithFileSystemPath(None,
+                u"/tmp/pyobjc.test.2", kCFURLPOSIXPathStyle, False)
+            ok, err = CFURLWriteBookmarkDataToFile(data, refURL, 0, None)
+            self.failUnless(ok)
+            self.failUnless(err is None)
+            self.failUnless(os.path.exists('/tmp/pyobjc.test.2'))
+
+            self.failUnlessResultIsCFRetained(CFURLCreateBookmarkDataFromFile)
+            n, err = CFURLCreateBookmarkDataFromFile(None, refURL, None)
+            self.failUnlessIsInstance(n, CFDataRef)
+            self.failUnless(err is None)
+
+            self.failUnlessResultIsCFRetained(CFURLCreateBookmarkDataFromAliasRecord)
+            self.failUnlessArgHasType(CFURLCreateBookmarkDataFromAliasRecord, 0, '^{__CFAllocator=}')
+            self.failUnlessArgHasType(CFURLCreateBookmarkDataFromAliasRecord, 1, '^{__CFData=}')
+
+        finally:
+            os.unlink('/tmp/pyobjc.test')
+            if os.path.exists('/tmp/pyobjc.test.2'):
+                os.unlink('/tmp/pyobjc.test.2')
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(kCFURLNameKey, unicode)
+        self.failUnlessIsInstance(kCFURLLocalizedNameKey, unicode)
+        self.failUnlessIsInstance(kCFURLIsRegularFileKey, unicode)
+        self.failUnlessIsInstance(kCFURLIsDirectoryKey, unicode)
+        self.failUnlessIsInstance(kCFURLIsSymbolicLinkKey, unicode)
+        self.failUnlessIsInstance(kCFURLIsVolumeKey, unicode)
+        self.failUnlessIsInstance(kCFURLIsPackageKey, unicode)
+        self.failUnlessIsInstance(kCFURLIsSystemImmutableKey, unicode)
+        self.failUnlessIsInstance(kCFURLIsUserImmutableKey, unicode)
+        self.failUnlessIsInstance(kCFURLIsHiddenKey, unicode)
+        self.failUnlessIsInstance(kCFURLHasHiddenExtensionKey, unicode)
+        self.failUnlessIsInstance(kCFURLCreationDateKey, unicode)
+        self.failUnlessIsInstance(kCFURLContentAccessDateKey, unicode)
+        self.failUnlessIsInstance(kCFURLContentModificationDateKey, unicode)
+        self.failUnlessIsInstance(kCFURLAttributeModificationDateKey, unicode)
+        self.failUnlessIsInstance(kCFURLLinkCountKey, unicode)
+        self.failUnlessIsInstance(kCFURLParentDirectoryURLKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeURLKey, unicode)
+        self.failUnlessIsInstance(kCFURLTypeIdentifierKey, unicode)
+        self.failUnlessIsInstance(kCFURLLocalizedTypeDescriptionKey, unicode)
+        self.failUnlessIsInstance(kCFURLLabelNumberKey, unicode)
+        self.failUnlessIsInstance(kCFURLLabelColorKey, unicode)
+        self.failUnlessIsInstance(kCFURLLocalizedLabelKey, unicode)
+        self.failUnlessIsInstance(kCFURLEffectiveIconKey, unicode)
+        self.failUnlessIsInstance(kCFURLCustomIconKey, unicode)
+        self.failUnlessIsInstance(kCFURLFileSizeKey, unicode)
+        self.failUnlessIsInstance(kCFURLFileAllocatedSizeKey, unicode)
+        self.failUnlessIsInstance(kCFURLIsAliasFileKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeLocalizedFormatDescriptionKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeTotalCapacityKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeAvailableCapacityKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeResourceCountKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeSupportsPersistentIDsKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeSupportsSymbolicLinksKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeSupportsHardLinksKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeSupportsJournalingKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeIsJournalingKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeSupportsSparseFilesKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeSupportsZeroRunsKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeSupportsCaseSensitiveNamesKey, unicode)
+        self.failUnlessIsInstance(kCFURLVolumeSupportsCasePreservedNamesKey, unicode)
+
+        self.failUnlessEqual(kCFURLBookmarkCreationPreferFileIDResolutionMask, 1<<8)
+        self.failUnlessEqual(kCFURLBookmarkCreationMinimalBookmarkMask, 1<<9)
+        self.failUnlessEqual(kCFURLBookmarkCreationSuitableForBookmarkFile, 1<<10)
+        self.failUnlessEqual(kCFBookmarkResolutionWithoutUIMask, 1<<8)
+        self.failUnlessEqual(kCFBookmarkResolutionWithoutMountingMask, 1<<9)
+
 
 
 if __name__ == "__main__":

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_foundationerrors.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_foundationerrors.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_foundationerrors.py	Tue Sep  1 10:48:21 2009
@@ -34,6 +34,17 @@
         self.assertEquals(NSFormattingErrorMinimum, 2048)
         self.assertEquals(NSFormattingErrorMaximum, 2559)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSFileWriteVolumeReadOnlyError, 642)
+
+        self.failUnlessEqual(NSPropertyListReadCorruptError, 3840)
+        self.failUnlessEqual(NSPropertyListReadUnknownVersionError, 3841)
+        self.failUnlessEqual(NSPropertyListReadStreamError, 3842)
+        self.failUnlessEqual(NSPropertyListWriteStreamError, 3851)
+        self.failUnlessEqual(NSPropertyListErrorMinimum, 3840)
+        self.failUnlessEqual(NSPropertyListErrorMaximum, 4095)
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_keyvalue.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_keyvalue.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_keyvalue.py	Tue Sep  1 10:48:21 2009
@@ -206,6 +206,7 @@
 
         self.assertRaises(KeyError, STUB.keyValue_forObject_key_, 1, o, u"multiple.level2.nokey")
 
+    @max_os_level('10.5')
     def testValuesForKeys(self):
         o = KeyValueClass1.alloc().init()
 
@@ -213,6 +214,7 @@
 
         self.assertRaises(KeyError, STUB.keyValue_forObject_key_, 3, o, [u"key1", u"key3", u"nosuchkey"])
 
+    @max_os_level('10.5')
     def testTakeValueForKey(self):
         o = KeyValueClass1.alloc().init()
 
@@ -234,6 +236,7 @@
         self.assert_(hasattr(o, u'key9'))
         self.assertEquals(o.key9, u'IX')
 
+    @max_os_level('10.5')
     def testTakeValueForKey2(self):
         o = KeyValueClass4.alloc().init()
 
@@ -274,6 +277,7 @@
         self.assertRaises(KeyError, STUB.setKeyValue_forObject_key_value_, 2, o, u'key9', u'IX')
         self.assertRaises(KeyError, STUB.setKeyValue_forObject_key_value_, 2, o, u'roprop', u'IX')
 
+    @max_os_level('10.5')
     def testTakeValuesFromDictionary(self):
         o = KeyValueClass1.alloc().init()
 
@@ -296,6 +300,7 @@
         self.assert_(hasattr(o, u'key9'))
         self.assertEquals(o.key9, u'IX')
 
+    @max_os_level('10.5')
     def testTakeValuesFromDictionary2(self):
         o = KeyValueClass4.alloc().init()
 
@@ -306,6 +311,7 @@
         self.assertRaises(KeyError, STUB.setKeyValue_forObject_key_value_, 3, o, None, { u'key9':  u'IX' })
         self.assertRaises(KeyError, STUB.setKeyValue_forObject_key_value_, 3, o, None, { u'roprop':  u'IX' })
 
+    @max_os_level('10.5')
     def testTakeValueForKeyPath(self):
         o = KeyValueClass1.alloc().init()
         o.addMultiple()
@@ -422,6 +428,7 @@
 
         self.assertRaises(KeyError, STUB.keyValue_forObject_key_, 1, o, u"multiple.level2.nokey")
 
+    @max_os_level('10.5')
     def testValuesForKeys(self):
         o = KeyValueClass1Explicit.alloc().init()
 
@@ -472,6 +479,7 @@
         self.assert_('key9' in o._values)
         self.assertEquals(o._values['key9'], u'IX')
 
+    @max_os_level('10.5')
     def testTakeValuesFromDictionary(self):
         o = KeyValueClass1Explicit.alloc().init()
 
@@ -493,6 +501,7 @@
         self.assertEquals(o._values['key5'], u"VVVVV")
         self.assertEquals(o._values['key9'], u'IX')
 
+    @max_os_level('10.5')
     def testTakeValueForKeyPath(self):
         o = KeyValueClass1Explicit.alloc().init()
         o.addMultiple()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsaccessibility.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsaccessibility.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsaccessibility.py	Tue Sep  1 10:48:21 2009
@@ -299,6 +299,45 @@
         self.failUnlessIsInstance(NSAccessibilityTextAttachmentSubrole, unicode)
         self.failUnlessIsInstance(NSAccessibilityTextLinkSubrole, unicode)
         self.failUnlessIsInstance(NSAccessibilityTimelineSubrole, unicode)
+        self.failUnlessIsInstance(NSAccessibilityRelevanceIndicatorRole, unicode)
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSAccessibilityWarningValueAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityCriticalValueAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityPlaceholderValueAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityUnknownOrientationValue, unicode)
+        self.failUnlessIsInstance(NSAccessibilitySelectedCellsAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityVisibleCellsAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityRowHeaderUIElementsAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityColumnHeaderUIElementsAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityCellForColumnAndRowParameterizedAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityRowIndexRangeAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityColumnIndexRangeAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityHorizontalUnitsAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityVerticalUnitsAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityHorizontalUnitDescriptionAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityVerticalUnitDescriptionAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityLayoutPointForScreenPointParameterizedAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityLayoutSizeForScreenSizeParameterizedAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityScreenPointForLayoutPointParameterizedAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityScreenSizeForLayoutSizeParameterizedAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityHandlesAttribute, unicode)
+        self.failUnlessIsInstance(NSAccessibilityRowExpandedNotification, unicode)
+        self.failUnlessIsInstance(NSAccessibilityRowCollapsedNotification, unicode)
+        self.failUnlessIsInstance(NSAccessibilitySelectedCellsChangedNotification, unicode)
+        self.failUnlessIsInstance(NSAccessibilityUnitsChangedNotification, unicode)
+        self.failUnlessIsInstance(NSAccessibilitySelectedChildrenMovedNotification, unicode)
+        self.failUnlessIsInstance(NSAccessibilitySortButtonRole, unicode)
+        self.failUnlessIsInstance(NSAccessibilityLevelIndicatorRole, unicode)
+        self.failUnlessIsInstance(NSAccessibilityCellRole, unicode)
+        self.failUnlessIsInstance(NSAccessibilityLayoutAreaRole, unicode)
+        self.failUnlessIsInstance(NSAccessibilityLayoutItemRole, unicode)
+        self.failUnlessIsInstance(NSAccessibilityHandleRole, unicode)
+        self.failUnlessIsInstance(NSAccessibilitySortButtonSubrole, unicode)
+        self.failUnlessIsInstance(NSAccessibilityRatingIndicatorSubrole, unicode)
+        self.failUnlessIsInstance(NSAccessibilityContentListSubrole, unicode)
+        self.failUnlessIsInstance(NSAccessibilityDefinitionListSubrole, unicode)
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsapplication.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsapplication.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsapplication.py	Tue Sep  1 10:48:21 2009
@@ -157,5 +157,36 @@
         self.failUnlessResultIsBOOL(TestNSApplicationHelper.readSelectionFromPasteboard_)
 
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSAppKitVersionNumber10_4_1, 824.1)
+        self.failUnlessEqual(NSAppKitVersionNumber10_4_3, 824.23)
+        self.failUnlessEqual(NSAppKitVersionNumber10_4_4, 824.33)
+        self.failUnlessEqual(NSAppKitVersionNumber10_4_7, 824.41)
+        self.failUnlessEqual(NSAppKitVersionNumber10_5, 949)
+        self.failUnlessEqual(NSAppKitVersionNumber10_5_2, 949.27)
+        self.failUnlessEqual(NSAppKitVersionNumber10_5_3, 949.33)
+
+        self.failUnlessEqual(NSApplicationPresentationDefault, 0)
+        self.failUnlessEqual(NSApplicationPresentationAutoHideDock, (1 <<  0))
+        self.failUnlessEqual(NSApplicationPresentationHideDock, (1 <<  1))
+        self.failUnlessEqual(NSApplicationPresentationAutoHideMenuBar, (1 <<  2))
+        self.failUnlessEqual(NSApplicationPresentationHideMenuBar, (1 <<  3))
+        self.failUnlessEqual(NSApplicationPresentationDisableAppleMenu, (1 <<  4))
+        self.failUnlessEqual(NSApplicationPresentationDisableProcessSwitching, (1 <<  5))
+        self.failUnlessEqual(NSApplicationPresentationDisableForceQuit, (1 <<  6))
+        self.failUnlessEqual(NSApplicationPresentationDisableSessionTermination, (1 <<  7))
+        self.failUnlessEqual(NSApplicationPresentationDisableHideApplication, (1 <<  8))
+
+        self.failUnlessEqual(NSUserInterfaceLayoutDirectionLeftToRight, 0)
+        self.failUnlessEqual(NSUserInterfaceLayoutDirectionRightToLeft, 1)
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSApplication.setActivationPolicy_)
+        self.failUnlessResultIsBOOL(NSApplication.isFullKeyboardAccessEnabled)
+
+
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsarray.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsarray.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsarray.py	Tue Sep  1 10:48:21 2009
@@ -180,9 +180,7 @@
         self.assert_(z[3] == 4)
 
 class TestNSArraySpecialMethods(TestCase):
-    """
-    Test calling 'difficult' methods from Python
-    """
+    #Test calling 'difficult' methods from Python
 
     def test_initWithObjects_count_(self):
         a = NSArray.alloc().initWithObjects_count_((u'a',u'b',u'c',u'd'), 3)
@@ -266,9 +264,7 @@
             self.assertEquals(a, (0, u"a", u"b", u"c", 3))
 
     def testSortInvalid(self):
-        """
-        Invalid calls to sortUsingFunction:context:
-        """
+        # Invalid calls to sortUsingFunction:context:
 
         a = NSMutableArray.arrayWithArray_(range(4))
         self.assertEquals(a, (0, 1, 2, 3))
@@ -282,7 +278,8 @@
         finally:
             objc.setVerbose(t)
 
-    def testSort2(self):
+    def dont_testSort2(self):
+        # sortUsingFunction:context:range: isn't documented an hence shouldn't be tested
         a = NSMutableArray.arrayWithArray_(range(10))
         self.assertEquals(a, (0, 1, 2, 3, 4, 5, 6, 7, 8, 9))
 
@@ -295,7 +292,7 @@
             self.assertEquals(a, (0, 1, 2, 3, 7, 6, 5, 4, 8, 9))
 
     def testSort3(self):
-        """ check the sort method, list interface compatibility """
+        # check the sort method, list interface compatibility
 
         a = NSMutableArray.arrayWithArray_(range(4))
         self.assertEquals(a, (0, 1, 2, 3))
@@ -321,7 +318,7 @@
 
         self.assertEquals(a, (3, 2, 1, 0))
 
-    def testSort2(self):
+    def dont_testSort2(self):
         a = NSMutableArray.arrayWithArray_(range(10))
         self.assertEquals(a, (0, 1, 2, 3, 4, 5, 6, 7, 8, 9))
 
@@ -334,7 +331,7 @@
             self.assertEquals(a, (0, 1, 2, 3, 7, 6, 5, 4, 8, 9))
 
     def testSort3(self):
-        """ check the sort method, list interface compatibility """
+        # check the sort method, list interface compatibility
 
         a = NSMutableArray.arrayWithArray_(range(4))
         self.assertEquals(a, (0, 1, 2, 3))
@@ -382,8 +379,10 @@
         # NOTE: Some of these don't even exist on GNUstep
         o = NSArray.arrayWithArray_(range(4))
         self.assertRaises(TypeError, o.getObjects_)
-        if objc.platform == 'MACOSX' or hasattr(o, 'apply_context_'):
-            self.assertRaises(TypeError, o.apply_context_, lambda x, y:None, 0)
+
+        #
+        #if objc.platform == 'MACOSX' or hasattr(o, 'apply_context_'):
+        #    self.assertRaises(TypeError, o.apply_context_, lambda x, y:None, 0)
 
 
     def testInsert(self):
@@ -446,5 +445,51 @@
         self.failUnlessIsNullTerminated(NSArray.arrayWithObjects_)
         self.failUnlessIsNullTerminated(NSArray.initWithObjects_)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsBlock(NSArray.enumerateObjectsUsingBlock_, 0,
+                'v@'+objc._C_NSUInteger+'o^'+objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSArray.enumerateObjectsWithOptions_usingBlock_, 1,
+                'v@'+objc._C_NSUInteger+'o^'+objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSArray.enumerateObjectsAtIndexes_options_usingBlock_, 2,
+                'v@'+objc._C_NSUInteger+'o^'+objc._C_NSBOOL)
+
+        self.failUnlessArgIsBlock(NSArray.indexOfObjectPassingTest_, 0,
+                objc._C_NSBOOL + '@'+objc._C_NSUInteger+'o^'+objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSArray.indexOfObjectWithOptions_passingTest_, 1,
+                objc._C_NSBOOL + '@'+objc._C_NSUInteger+'o^'+objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSArray.indexOfObjectAtIndexes_options_passingTest_, 2,
+                objc._C_NSBOOL + '@'+objc._C_NSUInteger+'o^'+objc._C_NSBOOL)
+
+        self.failUnlessArgIsBlock(NSArray.indexesOfObjectsPassingTest_, 0,
+                objc._C_NSBOOL + '@'+objc._C_NSUInteger+'o^'+objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSArray.indexesOfObjectsWithOptions_passingTest_, 1,
+                objc._C_NSBOOL + '@'+objc._C_NSUInteger+'o^'+objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSArray.indexesOfObjectsAtIndexes_options_passingTest_, 2,
+                objc._C_NSBOOL + '@'+objc._C_NSUInteger+'o^'+objc._C_NSBOOL)
+
+        self.failUnlessArgIsBlock(NSArray.sortedArrayUsingComparator_,
+                0, 'i@@')
+        self.failUnlessArgIsBlock(NSArray.sortedArrayWithOptions_usingComparator_,
+                1, 'i@@')
+        self.failUnlessArgIsBlock(NSArray.indexOfObject_inSortedRange_options_usingComparator_,
+                3, 'i@@')
+        self.failUnlessArgHasType(NSArray.indexOfObject_inSortedRange_options_usingComparator_, 1, NSRange.__typestr__)
+
+
+
+        self.failUnlessArgIsBlock(NSMutableArray.sortUsingComparator_,
+                0, 'i@@')
+        self.failUnlessArgIsBlock(NSMutableArray.sortWithOptions_usingComparator_,
+                1, 'i@@')
+
+
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSBinarySearchingFirstEqual, 1 << 8)
+        self.failUnlessEqual(NSBinarySearchingLastEqual, 1 << 9)
+        self.failUnlessEqual(NSBinarySearchingInsertionIndex, 1 << 10)
+
 if __name__ == '__main__':
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsattributedstring.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsattributedstring.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsattributedstring.py	Tue Sep  1 10:48:21 2009
@@ -140,5 +140,18 @@
         self.failUnlessResultIsBOOL(NSMutableAttributedString.readFromData_options_documentAttributes_)
         self.failUnlessArgIsOut(NSMutableAttributedString.readFromData_options_documentAttributes_, 2)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSAttributedStringEnumerationReverse, 1<<1)
+        self.failUnlessEqual(NSAttributedStringEnumerationLongestEffectiveRangeNotRequired, 1<<20)
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgHasType(NSAttributedString.enumerateAttributesInRange_options_usingBlock_, 0, NSRange.__typestr__)
+        self.failUnlessArgIsBlock(NSAttributedString.enumerateAttributesInRange_options_usingBlock_, 2, 'v@'+NSRange.__typestr__+'o^'+objc._C_NSBOOL)
+
+        self.failUnlessArgHasType(NSAttributedString.enumerateAttribute_inRange_options_usingBlock_, 1, NSRange.__typestr__)
+        self.failUnlessArgIsBlock(NSAttributedString.enumerateAttribute_inRange_options_usingBlock_, 3, 'v@'+NSRange.__typestr__+'o^'+objc._C_NSBOOL)
+
 if __name__ == '__main__':
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsattributedstring_appkit.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsattributedstring_appkit.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsattributedstring_appkit.py	Tue Sep  1 10:48:21 2009
@@ -128,6 +128,17 @@
 
         self.failUnlessArgHasType(NSAttributedString.URLAtIndex_effectiveRange_, 1, 'o^' + NSRange.__typestr__)
 
+    @min_os_level('10.5')
+    def testConstants10_5(self):
+        self.failUnlessIsInstance(NSManagerDocumentAttribute, unicode)
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSWritingDirectionAttributeName, unicode)
+        self.failUnlessIsInstance(NSFileTypeDocumentAttribute, unicode)
+        self.failUnlessIsInstance(NSCategoryDocumentAttribute, unicode)
+        self.failUnlessIsInstance(NSFileTypeDocumentOption, unicode)
+
 
 
 if __name__ == "__main__":

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsautoreleasepool.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsautoreleasepool.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsautoreleasepool.py	Tue Sep  1 10:48:21 2009
@@ -8,7 +8,7 @@
     def testNSAutoreleasePoolPlain(self):
         pool = NSAutoreleasePool.alloc().init()
         bar = NSMutableArray.array()
-        pool.release()
+        del pool # Always use 'del pool' instead of 'pool.release()'!
         bar.addObject_( u"a" ) # should still exist because of python GC
 
 if __name__ == '__main__':

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsbrowser.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsbrowser.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsbrowser.py	Tue Sep  1 10:48:21 2009
@@ -12,6 +12,11 @@
     def browser_canDragRowsWithIndexes_inColumn_withEvent_(self, b, i, c, e): return 1
     def browser_acceptDrop_atRow_column_dropOperation_(self, b, a, r, c, o): return 1
     def browser_shouldTypeSelectForEvent_withCurrentSearchString_(self, b, e, s): return 1
+    def browser_isLeafItem_(self, b, s): return 1
+    def browser_heightOfRow_inColumn_(self, b, r, c): return 1
+    def browser_shouldEditItem_(self, b, i): return 1
+    def browser_numberOfRowsInColumn_(self, b, c): return 1
+    def browser_createRowsForColumn_inMatrix_(self, b, c, m): return 1
 
 class TestNSBrowser (TestCase):
     def testConstants(self):
@@ -69,6 +74,27 @@
 
         self.failUnlessResultIsBOOL(TestNSBrowserHelper.browser_shouldTypeSelectForEvent_withCurrentSearchString_)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsBOOL(NSBrowser.setAutohidesScroller_, 0)
+        self.failUnlessResultIsBOOL(NSBrowser.autohidesScroller)
+        self.failUnlessResultIsBOOL(NSBrowser.isLeafItem_)
+        self.failUnlessResultIsBOOL(NSBrowser.getRow_column_forPoint_)
+        self.failUnlessArgIsOut(NSBrowser.getRow_column_forPoint_, 0)
+        self.failUnlessArgIsOut(NSBrowser.getRow_column_forPoint_, 1)
+        self.failUnlessArgIsBOOL(NSBrowser.editItemAtIndexPath_withEvent_select_, 2)
+
+    @min_os_level('10.6')
+    def testDelegate10_6(self):
+        self.failUnlessResultIsBOOL(TestNSBrowserHelper.browser_isLeafItem_)
+        self.failUnlessResultHasType(TestNSBrowserHelper.browser_heightOfRow_inColumn_, objc._C_CGFloat)
+        self.failUnlessArgHasType(TestNSBrowserHelper.browser_heightOfRow_inColumn_, 1, objc._C_NSInteger)
+        self.failUnlessArgHasType(TestNSBrowserHelper.browser_heightOfRow_inColumn_, 2, objc._C_NSInteger)
+        self.failUnlessResultIsBOOL(TestNSBrowserHelper.browser_shouldEditItem_)
+        self.failUnlessResultHasType(TestNSBrowserHelper.browser_numberOfRowsInColumn_, objc._C_NSInteger)
+        self.failUnlessArgHasType(TestNSBrowserHelper.browser_numberOfRowsInColumn_, 1, objc._C_NSInteger)
+        self.failUnlessArgHasType(TestNSBrowserHelper.browser_createRowsForColumn_inMatrix_, 1, objc._C_NSInteger)
+
 
 
 if __name__ == "__main__":

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nscalendar.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nscalendar.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nscalendar.py	Tue Sep  1 10:48:21 2009
@@ -21,6 +21,10 @@
 
         self.assertEquals( NSUndefinedDateComponent, NSIntegerMax)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.assertEquals( NSQuarterCalendarUnit, kCFCalendarUnitQuarter)
+
     @min_os_level('10.5')
     def testMethods10_5(self):
         obj = NSCalendar.currentCalendar()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nscell.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nscell.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nscell.py	Tue Sep  1 10:48:21 2009
@@ -145,6 +145,11 @@
         self.failUnlessEqual(NSBackgroundStyleDark, 1)
         self.failUnlessEqual(NSBackgroundStyleRaised, 2)
         self.failUnlessEqual(NSBackgroundStyleLowered, 3)
+    
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSCell.usesSingleLineMode)
+        self.failUnlessArgIsBOOL(NSCell.setUsesSingleLineMode_, 0)
 
 
 if __name__ == '__main__':

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nscollectionview.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nscollectionview.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nscollectionview.py	Tue Sep  1 10:48:21 2009
@@ -1,6 +1,14 @@
 from AppKit import *
 from PyObjCTools.TestSupport import *
 
+class TestNSCollectionViewHelper (NSObject):
+    def collectionView_canDragItemsAtIndexes_withEvent_(self, v, i, e): return 1
+    def collectionView_writeItemsAtIndexes_toPasteboard_(self, v, i, p): return 1
+    def collectionView_draggingImageForItemsAtIndexes_withEvent_offset_(self, v, i, e, o): return 1
+    def collectionView_validateDrop_proposedIndex_dropOperation_(self, v, d, i, o): return 1
+    def collectionView_acceptDrop_index_dropOperation_(self, v, d, i, o): return 1
+
+
 class TestNSCollectionView (TestCase):
     def testMethods(self):
         self.failUnlessResultIsBOOL(NSCollectionViewItem.isSelected)
@@ -13,5 +21,36 @@
         self.failUnlessResultIsBOOL(NSCollectionView.allowsMultipleSelection)
         self.failUnlessArgIsBOOL(NSCollectionView.setAllowsMultipleSelection_, 0)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultHasType(NSCollectionView.frameForItemAtIndex_, NSRect.__typestr__)
+        self.failUnlessArgIsBOOL(NSCollectionView.setDraggingSourceOperationMask_forLocal_, 1)
+        self.failUnlessArgHasType(NSCollectionView.draggingImageForItemsAtIndexes_withEvent_offset_, 2,
+                'N^' + NSPoint.__typestr__)
+
+        self.failUnlessResultIsBOOL(TestNSCollectionViewHelper.collectionView_canDragItemsAtIndexes_withEvent_)
+        self.failUnlessResultIsBOOL(TestNSCollectionViewHelper.collectionView_writeItemsAtIndexes_toPasteboard_)
+        self.failUnlessArgHasType(TestNSCollectionViewHelper.collectionView_draggingImageForItemsAtIndexes_withEvent_offset_,
+                3, 'N^' + NSPoint.__typestr__)
+
+        self.failUnlessResultHasType(TestNSCollectionViewHelper.collectionView_validateDrop_proposedIndex_dropOperation_,
+                objc._C_NSInteger)
+        self.failUnlessArgHasType(TestNSCollectionViewHelper.collectionView_validateDrop_proposedIndex_dropOperation_,
+                2, 'N^' + objc._C_NSInteger) 
+        self.failUnlessArgHasType(TestNSCollectionViewHelper.collectionView_validateDrop_proposedIndex_dropOperation_,
+                3, 'N^' + objc._C_NSInteger)
+
+        self.failUnlessResultIsBOOL(TestNSCollectionViewHelper.collectionView_acceptDrop_index_dropOperation_)
+        self.failUnlessArgHasType(TestNSCollectionViewHelper.collectionView_acceptDrop_index_dropOperation_,
+            2, objc._C_NSInteger)
+        self.failUnlessArgHasType(TestNSCollectionViewHelper.collectionView_acceptDrop_index_dropOperation_,
+            3, objc._C_NSInteger)
+
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSCollectionViewDropOn, 0)
+        self.failUnlessEqual(NSCollectionViewDropBefore, 1)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdata.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdata.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdata.py	Tue Sep  1 10:48:21 2009
@@ -30,6 +30,19 @@
 
         self.assertEquals(NSAtomicWrite, 1)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSDataReadingMapped, 1<<0)
+        self.failUnlessEqual(NSDataReadingUncached, 1<<1)
+        self.failUnlessEqual(NSDataWritingAtomic, 1<<0)
+        self.failUnlessEqual(NSDataSearchBackwards, 1<<0)
+        self.failUnlessEqual(NSDataSearchAnchored, 1<<1)
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultHasType(NSData.rangeOfData_options_range_, NSRange.__typestr__)
+        self.failUnlessArgHasType(NSData.rangeOfData_options_range_, 2, NSRange.__typestr__)
+
     def assertDataContents(self, d1, d2, rawData):
         self.assertEquals(len(d1), d1.length(), "d1: len() and -length didn't match.")
         self.assertEquals(len(d1), len(rawData), "d1: len(<data>) and len(<input>) didn't match. %d vs %d"%(len(d1), len(rawData)))
@@ -37,7 +50,7 @@
         self.assertEquals(len(d2), len(rawData), "d2: len(<data>) and len(<input>) didn't match. %d vs %d"%(len(d2), len(rawData)))
 
     def testDataWithBytes_length_(self):
-        """Test +dataWithBytes:length:"""
+        # Test +dataWithBytes:length
         data = NSData.dataWithBytes_length_(rawBytes, len(rawBytes))
         mutableData = NSMutableData.dataWithBytes_length_(rawBytes, len(rawBytes))
         self.assertDataContents(data, mutableData, rawBytes)
@@ -60,19 +73,19 @@
         self.assertDataContents(data, mutableData, rawBytes)
 
     def testInitWithBytes_length_(self):
-        """Test -initWithBytes:length:"""
+        # Test -initWithBytes:length:
         data = NSData.alloc().initWithBytes_length_(rawBytes, len(rawBytes))
         mutableData = NSMutableData.alloc().initWithBytes_length_(rawBytes, len(rawBytes))
         self.assertDataContents(data, mutableData, rawBytes)
 
     def testInitWithBytesNoCopy_length_freeWhenDone_(self):
-        """Test -initWithBytesNoCopy:length:"""
+        # Test -initWithBytesNoCopy:length:
         data = NSData.alloc().initWithBytesNoCopy_length_freeWhenDone_(rawBytes, len(rawBytes), False)
         mutableData = NSMutableData.alloc().initWithBytesNoCopy_length_freeWhenDone_(rawBytes, len(rawBytes), False)
         self.assertDataContents(data, mutableData, rawBytes)
 
     def testBytes(self):
-        """Test -bytes"""
+        # Test -bytes
         data = NSData.alloc().initWithBytes_length_(rawBytes, len(rawBytes))
         bytes = data.bytes()
         self.assertEquals(len(bytes), len(rawBytes), "bytes() and rawBytes not equal length.")
@@ -86,7 +99,7 @@
                 raise
 
     def testMutableBytes(self):
-        """Test -mutableBytes"""
+        # Test -mutableBytes
         mutableData = NSMutableData.dataWithBytes_length_(rawBytes, len(rawBytes))
         mutableBytes = mutableData.mutableBytes()
         for i in range(0, len(mutableBytes)):
@@ -100,10 +113,9 @@
                 raise
 
     def testVariousDataLengths(self):
-        """Test data of different lengths.
-
-        Data of different lengths may be stored in different subclasses within the class cluster.
-        """
+        # Test data of different lengths.
+        #
+        # Data of different lengths may be stored in different subclasses within the class cluster.
         testFactor = range(1, 64) + [ 1000, 10000, 1000000]
         for aFactor in testFactor:
             bigRawBytes = "1234567890" * aFactor

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdate.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdate.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdate.py	Tue Sep  1 10:48:21 2009
@@ -5,6 +5,10 @@
     def testMethods(self):
         self.failUnlessResultIsBOOL(NSDate.isEqualToDate_)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSSystemClockDidChangeNotification, unicode)
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdateformatter.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdateformatter.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdateformatter.py	Tue Sep  1 10:48:21 2009
@@ -7,6 +7,9 @@
         formatter = NSDateFormatter.alloc().init()
         formatter.setDateFormat_("yyyy/mm/dd")
 
+        self.failUnlessArgIsOut(NSDateFormatter.getObjectValue_forString_range_error_, 0)
+        self.failUnlessArgIsInOut(NSDateFormatter.getObjectValue_forString_range_error_, 2)
+        self.failUnlessArgIsOut(NSDateFormatter.getObjectValue_forString_range_error_, 3)
         ok, val, range, err = formatter.getObjectValue_forString_range_error_(
                 None, "2008/10/12", NSRange(0, 10), None)
         self.failUnless(ok)
@@ -38,6 +41,12 @@
         self.failUnlessArgIsBOOL(NSDateFormatter.initWithDateFormat_allowNaturalLanguage_, 1)
         self.failUnlessResultIsBOOL(NSDateFormatter.allowsNaturalLanguage)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSDateFormatter.doesRelativeDateFormatting)
+        self.failUnlessArgIsBOOL(NSDateFormatter.setDoesRelativeDateFormatting_, 0)
+
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdictionary.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdictionary.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdictionary.py	Tue Sep  1 10:48:21 2009
@@ -277,5 +277,15 @@
         self.failUnlessIsNullTerminated(NSDictionary.initWithObjectsAndKeys_)
         self.failUnlessIsNullTerminated(NSDictionary.dictionaryWithObjectsAndKeys_)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsBlock(NSDictionary.enumerateKeysAndObjectsUsingBlock_, 0, 'v@@o^'+objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSDictionary.enumerateKeysAndObjectsWithOptions_usingBlock_, 1, 'v@@o^'+objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSDictionary.keysSortedByValueUsingComparator_, 0, 'i@@')
+        self.failUnlessArgIsBlock(NSDictionary.keysSortedByValueWithOptions_usingComparator_, 1, 'i@@')
+
+        self.failUnlessArgIsBlock(NSDictionary.keysOfEntriesPassingTest_, 0, objc._C_NSBOOL + '@@o^' + objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSDictionary.keysOfEntriesWithOptions_passingTest_, 1, objc._C_NSBOOL + '@@o^' + objc._C_NSBOOL)
+
 if __name__ == '__main__':
     main( )

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdocktile.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdocktile.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdocktile.py	Tue Sep  1 10:48:21 2009
@@ -6,5 +6,8 @@
         self.failUnlessResultIsBOOL(NSDockTile.showsApplicationBadge)
         self.failUnlessArgIsBOOL(NSDockTile.setShowsApplicationBadge_, 0)
 
+    def testConstants(self):
+        self.failUnlessEqual(NSAppKitVersionNumberWithDockTilePlugInSupport, 1001.0)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdocument.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdocument.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsdocument.py	Tue Sep  1 10:48:21 2009
@@ -86,5 +86,10 @@
         self.failUnlessArgIsSEL(NSDocument.saveToFile_saveOperation_delegate_didSaveSelector_contextInfo_, 3, 'v@:@'+objc._C_NSBOOL+'^v')
         self.failUnlessArgHasType(NSDocument.saveToFile_saveOperation_delegate_didSaveSelector_contextInfo_, 4, '^v')
 
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSDocument.canConcurrentlyReadDocumentsOfType_)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nserror.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nserror.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nserror.py	Tue Sep  1 10:48:21 2009
@@ -9,19 +9,20 @@
 
 class TestNSError (TestCase):
     def testConstants(self):
-        self.failUnless( isinstance(NSCocoaErrorDomain, unicode) )
-        self.failUnless( isinstance(NSPOSIXErrorDomain, unicode) )
-        self.failUnless( isinstance(NSOSStatusErrorDomain, unicode) )
-        self.failUnless( isinstance(NSMachErrorDomain, unicode) )
-        self.failUnless( isinstance(NSUnderlyingErrorKey, unicode) )
-        self.failUnless( isinstance(NSLocalizedDescriptionKey, unicode) )
-        self.failUnless( isinstance(NSLocalizedFailureReasonErrorKey, unicode) )
-        self.failUnless( isinstance(NSLocalizedRecoverySuggestionErrorKey, unicode) )
-        self.failUnless( isinstance(NSLocalizedRecoveryOptionsErrorKey, unicode) )
-        self.failUnless( isinstance(NSRecoveryAttempterErrorKey, unicode) )
-        self.failUnless( isinstance(NSStringEncodingErrorKey, unicode) )
-        self.failUnless( isinstance(NSURLErrorKey, unicode) )
-        self.failUnless( isinstance(NSFilePathErrorKey, unicode) )
+        self.failUnlessIsInstance(NSCocoaErrorDomain, unicode)
+        self.failUnlessIsInstance(NSPOSIXErrorDomain, unicode)
+        self.failUnlessIsInstance(NSOSStatusErrorDomain, unicode)
+        self.failUnlessIsInstance(NSMachErrorDomain, unicode)
+        self.failUnlessIsInstance(NSUnderlyingErrorKey, unicode)
+        self.failUnlessIsInstance(NSLocalizedDescriptionKey, unicode)
+        self.failUnlessIsInstance(NSLocalizedFailureReasonErrorKey, unicode)
+        self.failUnlessIsInstance(NSLocalizedRecoverySuggestionErrorKey, unicode)
+        self.failUnlessIsInstance(NSLocalizedRecoveryOptionsErrorKey, unicode)
+        self.failUnlessIsInstance(NSRecoveryAttempterErrorKey, unicode)
+        self.failUnlessIsInstance(NSStringEncodingErrorKey, unicode)
+        self.failUnlessIsInstance(NSURLErrorKey, unicode)
+        self.failUnlessIsInstance(NSFilePathErrorKey, unicode)
+        self.failUnlessIsInstance(NSHelpAnchorErrorKey, unicode)
 
     def testAttemptRecovery(self):
         self.failUnlessArgHasType(TestNSErrorHelper.attemptRecoveryFromError_optionIndex_delegate_didRecoverSelector_contextInfo_, 1, objc._C_NSUInteger)

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsevent.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsevent.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsevent.py	Tue Sep  1 10:48:21 2009
@@ -152,6 +152,23 @@
         self.failUnlessEqual(NSHelpFunctionKey, unichr(0xF746))
         self.failUnlessEqual(NSModeSwitchFunctionKey, unichr(0xF747))
 
+    @min_os_level('10.5')
+    def testConstants10_5(self):
+        self.failUnlessEqual(NSEventTypeGesture, 29)
+        self.failUnlessEqual(NSEventTypeMagnify, 30)
+        self.failUnlessEqual(NSEventTypeSwipe, 31)
+        self.failUnlessEqual(NSEventTypeRotate, 18)
+        self.failUnlessEqual(NSEventTypeBeginGesture, 19)
+        self.failUnlessEqual(NSEventTypeEndGesture, 20)
+
+        self.failUnlessEqual(NSEventMaskGesture, 1 << 29)
+        self.failUnlessEqual(NSEventMaskMagnify, 1 << 30)
+        self.failUnlessEqual(NSEventMaskSwipe, 1 << 31)
+        self.failUnlessEqual(NSEventMaskRotate, 1 << 18)
+        self.failUnlessEqual(NSEventMaskBeginGesture, 1 << 19)
+        self.failUnlessEqual(NSEventMaskEndGesture, 1 << 20)
+
+
 
     def testFunctions(self):
         v = NSEventMaskFromType(NSLeftMouseDown)
@@ -175,5 +192,10 @@
 
         self.failUnlessResultHasType(NSEvent.userData, '^v')
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsBlock(NSEvent.addGlobalMonitorForEventsMatchingMask_handler_, 1, 'v@')
+        self.failUnlessArgIsBlock(NSEvent.addLocalMonitorForEventsMatchingMask_handler_, 1, 'v@')
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsexception.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsexception.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsexception.py	Tue Sep  1 10:48:21 2009
@@ -23,20 +23,24 @@
 
 class TestNSException (TestCase):
     def testConstants(self):
-        self.failUnless( isinstance(NSGenericException, unicode) )
-        self.failUnless( isinstance(NSRangeException, unicode) )
-        self.failUnless( isinstance(NSInvalidArgumentException, unicode) )
-        self.failUnless( isinstance(NSInternalInconsistencyException, unicode) )
-        self.failUnless( isinstance(NSMallocException, unicode) )
-        self.failUnless( isinstance(NSObjectInaccessibleException, unicode) )
-        self.failUnless( isinstance(NSObjectNotAvailableException, unicode) )
-        self.failUnless( isinstance(NSDestinationInvalidException, unicode) )
-        self.failUnless( isinstance(NSPortTimeoutException, unicode) )
-        self.failUnless( isinstance(NSInvalidSendPortException, unicode) )
-        self.failUnless( isinstance(NSInvalidReceivePortException, unicode) )
-        self.failUnless( isinstance(NSPortSendException, unicode) )
-        self.failUnless( isinstance(NSPortReceiveException, unicode) )
-        self.failUnless( isinstance(NSOldStyleException, unicode) )
+        self.failUnlessIsInstance(NSGenericException, unicode)
+        self.failUnlessIsInstance(NSRangeException, unicode)
+        self.failUnlessIsInstance(NSInvalidArgumentException, unicode)
+        self.failUnlessIsInstance(NSInternalInconsistencyException, unicode)
+        self.failUnlessIsInstance(NSMallocException, unicode)
+        self.failUnlessIsInstance(NSObjectInaccessibleException, unicode)
+        self.failUnlessIsInstance(NSObjectNotAvailableException, unicode)
+        self.failUnlessIsInstance(NSDestinationInvalidException, unicode)
+        self.failUnlessIsInstance(NSPortTimeoutException, unicode)
+        self.failUnlessIsInstance(NSInvalidSendPortException, unicode)
+        self.failUnlessIsInstance(NSInvalidReceivePortException, unicode)
+        self.failUnlessIsInstance(NSPortSendException, unicode)
+        self.failUnlessIsInstance(NSPortReceiveException, unicode)
+        self.failUnlessIsInstance(NSOldStyleException, unicode)
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSAssertionHandlerKey, unicode)
 
     @expectedFailure
     def testUncaughtExceptionHandler(self):

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsexpression.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsexpression.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsexpression.py	Tue Sep  1 10:48:21 2009
@@ -15,6 +15,16 @@
         self.assertEquals(NSSubqueryExpressionType, 13)
         self.assertEquals(NSAggregateExpressionType, 14)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.assertEquals(NSBlockExpressionType, 19)
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsBlock(NSExpression.expressionForBlock_arguments_, 0, '@@@@')
+        self.failUnlessResultIsBlock(NSExpression.expressionBlock, '@@@@')
+
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsfilehandle.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsfilehandle.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsfilehandle.py	Tue Sep  1 10:48:21 2009
@@ -17,6 +17,12 @@
         f = NSFileHandle.alloc().initWithFileDescriptor_closeOnDealloc_(0, False)
         self.failUnlessArgIsBOOL(f.initWithFileDescriptor_closeOnDealloc_, 1)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsOut(NSFileHandle.fileHandleForReadingFromURL_error_, 1)
+        self.failUnlessArgIsOut(NSFileHandle.fileHandleForWritingToURL_error_, 1)
+        self.failUnlessArgIsOut(NSFileHandle.fileHandleForUpdatingURL_error_, 1)
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsfilemanager.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsfilemanager.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsfilemanager.py	Tue Sep  1 10:48:21 2009
@@ -14,6 +14,15 @@
     def fileManager_shouldRemoveItemAtPath_(self, a, b): return 1
     def fileManager_shouldProceedAfterError_removingItemAtPath_(self, a, b, c): return 1
 
+    def fileManager_shouldCopyItemAtURL_toURL_(self, a, b, c): return 1
+    def fileManager_shouldProceedAfterError_copyingItemAtURL_toURL_(self, a, b, c, d): return 1
+    def fileManager_shouldMoveItemAtURL_toURL_(self, a, b, c): return 1
+    def fileManager_shouldProceedAfterError_movingItemAtURL_toURL_(self, a, b, c, d): return 1
+    def fileManager_shouldLinkItemAtURL_toURL_(self, a, b, c): return 1
+    def fileManager_shouldProceedAfterError_linkingItemAtURL_toURL_(self, a, b, c, d): return 1
+    def fileManager_shouldRemoveItemAtURL_(self, a, b): return 1
+    def fileManager_shouldProceedAfterError_removingItemAtURL_(self, a, b, c): return 1
+
 
 
 class TestNSFileManager (TestCase):
@@ -51,6 +60,33 @@
         self.failUnless( isinstance(NSFileSystemNodes, unicode) )
         self.failUnless( isinstance(NSFileSystemFreeNodes, unicode) )
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSVolumeEnumerationSkipHiddenVolumes, 1<<1)
+        self.failUnlessEqual(NSVolumeEnumerationProduceFileReferenceURLs, 1<<2)
+
+        self.failUnlessEqual(NSDirectoryEnumerationSkipsSubdirectoryDescendants, 1<<0)
+        self.failUnlessEqual(NSDirectoryEnumerationSkipsPackageDescendants, 1<<1)
+        self.failUnlessEqual(NSDirectoryEnumerationSkipsHiddenFiles, 1<<2)
+
+        self.failUnlessEqual(NSFileManagerItemReplacementUsingNewMetadataOnly, 1<<0)
+        self.failUnlessEqual(NSFileManagerItemReplacementWithoutDeletingBackupItem, 1<<1)
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsOut(NSFileManager.contentsOfDirectoryAtURL_includingPropertiesForKeys_options_error_, 3)
+        self.failUnlessArgIsBOOL(NSFileManager.URLForDirectory_inDomain_appropriateForURL_create_error_, 3)
+        self.failUnlessArgIsOut(NSFileManager.URLForDirectory_inDomain_appropriateForURL_create_error_, 4)
+
+        self.failUnlessResultIsBOOL(NSFileManager.copyItemAtURL_toURL_error_)
+        self.failUnlessArgIsOut(NSFileManager.copyItemAtURL_toURL_error_, 2)
+        self.failUnlessResultIsBOOL(NSFileManager.moveItemAtURL_toURL_error_)
+        self.failUnlessArgIsOut(NSFileManager.moveItemAtURL_toURL_error_, 2)
+        self.failUnlessResultIsBOOL(NSFileManager.linkItemAtURL_toURL_error_)
+        self.failUnlessArgIsOut(NSFileManager.linkItemAtURL_toURL_error_, 2)
+        self.failUnlessResultIsBOOL(NSFileManager.removeItemAtURL_error_)
+        self.failUnlessArgIsOut(NSFileManager.removeItemAtURL_error_, 1)
+
     def testOutput(self):
         obj = NSFileManager.defaultManager()
         m = obj.setAttributes_ofItemAtPath_error_.__metadata__()
@@ -174,6 +210,12 @@
         self.failUnlessResultIsBOOL(NSFileManager.removeItemAtPath_error_)
         self.failUnlessArgIsOut(NSFileManager.removeItemAtPath_error_, 1)
 
+        self.failUnlessArgIsBlock(NSFileManager.enumeratorAtURL_includingPropertiesForKeys_options_errorHandler_, 3, objc._C_NSBOOL + '@@')
+
+        self.failUnlessResultIsBOOL(NSFileManager.replaceItemAtURL_withItemAtURL_backupItemName_options_resultingItemURL_error_)
+        self.failUnlessArgIsOut(NSFileManager.replaceItemAtURL_withItemAtURL_backupItemName_options_resultingItemURL_error_, 4)
+        self.failUnlessArgIsOut(NSFileManager.replaceItemAtURL_withItemAtURL_backupItemName_options_resultingItemURL_error_, 5)
+
     def testMethods(self):
         self.failUnlessArgIsBOOL(NSFileManager.fileAttributesAtPath_traverseLink_, 1)
         self.failUnlessResultIsBOOL(NSFileManager.changeFileAttributes_atPath_)
@@ -213,5 +255,17 @@
         self.failUnlessResultIsBOOL(TestNSFileManagerHelper.fileManager_shouldRemoveItemAtPath_)
         self.failUnlessResultIsBOOL(TestNSFileManagerHelper.fileManager_shouldProceedAfterError_removingItemAtPath_)
 
+    @min_os_level('10.6')
+    def testProtocols10_6(self):
+
+        self.failUnlessResultIsBOOL(TestNSFileManagerHelper.fileManager_shouldCopyItemAtURL_toURL_)
+        self.failUnlessResultIsBOOL(TestNSFileManagerHelper.fileManager_shouldProceedAfterError_copyingItemAtURL_toURL_)
+        self.failUnlessResultIsBOOL(TestNSFileManagerHelper.fileManager_shouldMoveItemAtURL_toURL_)
+        self.failUnlessResultIsBOOL(TestNSFileManagerHelper.fileManager_shouldProceedAfterError_movingItemAtURL_toURL_)
+        self.failUnlessResultIsBOOL(TestNSFileManagerHelper.fileManager_shouldLinkItemAtURL_toURL_)
+        self.failUnlessResultIsBOOL(TestNSFileManagerHelper.fileManager_shouldProceedAfterError_linkingItemAtURL_toURL_)
+        self.failUnlessResultIsBOOL(TestNSFileManagerHelper.fileManager_shouldRemoveItemAtURL_)
+        self.failUnlessResultIsBOOL(TestNSFileManagerHelper.fileManager_shouldProceedAfterError_removingItemAtURL_)
+
 if __name__ == '__main__':
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsfilewrapper.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsfilewrapper.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsfilewrapper.py	Tue Sep  1 10:48:21 2009
@@ -13,5 +13,22 @@
         self.failUnlessResultIsBOOL(NSFileWrapper.needsToBeUpdatedFromPath_)
         self.failUnlessResultIsBOOL(NSFileWrapper.updateFromPath_)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSFileWrapperReadingImmediate, 1<<0)
+        self.failUnlessEqual(NSFileWrapperReadingWithoutMapping, 1<<1)
+        self.failUnlessEqual(NSFileWrapperWritingAtomic, 1<<0)
+        self.failUnlessEqual(NSFileWrapperWritingWithNameUpdating, 1<<1)
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsOut(NSFileWrapper.initWithURL_options_error_, 2)
+        self.failUnlessResultIsBOOL(NSFileWrapper.matchesContentsOfURL_)
+        self.failUnlessResultIsBOOL(NSFileWrapper.readFromURL_options_error_)
+        self.failUnlessArgIsOut(NSFileWrapper.readFromURL_options_error_, 2)
+
+        self.failUnlessResultIsBOOL(NSFileWrapper.writeToURL_options_originalContentsURL_error_)
+        self.failUnlessArgIsOut(NSFileWrapper.writeToURL_options_originalContentsURL_error_, 3)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsgraphics.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsgraphics.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsgraphics.py	Tue Sep  1 10:48:21 2009
@@ -201,6 +201,28 @@
         except objc.error:
             pass
 
+    @min_os_level('10.5')
+    def testConstants10_5(self):
+        self.failUnlessEqual(NSColorRenderingIntentDefault, 0)
+        self.failUnlessEqual(NSColorRenderingIntentAbsoluteColorimetric, 1)
+        self.failUnlessEqual(NSColorRenderingIntentRelativeColorimetric, 2)
+        self.failUnlessEqual(NSColorRenderingIntentPerceptual, 3)
+        self.failUnlessEqual(NSColorRenderingIntentSaturation, 4)
+
+        self.failUnlessEqual(NSImageInterpolationDefault, 0)
+        self.failUnlessEqual(NSImageInterpolationNone, 1)
+        self.failUnlessEqual(NSImageInterpolationLow, 2)
+        self.failUnlessEqual(NSImageInterpolationHigh, 3)
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSWindowDepthTwentyfourBitRGB, 0x208)
+        self.failUnlessEqual(NSWindowDepthSixtyfourBitRGB, 0x210)
+        self.failUnlessEqual(NSWindowDepthOnehundredtwentyeightBitRGB, 0x220)
+
+        self.failUnlessEqual(NSImageInterpolationMedium, 4)
+
 
 if __name__ == "__main__":
+    NSApplication.sharedApplication()
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nshttpcookie.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nshttpcookie.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nshttpcookie.py	Tue Sep  1 10:48:21 2009
@@ -21,6 +21,7 @@
     def testMethods(self):
         self.failUnlessResultIsBOOL(NSHTTPCookie.isSessionOnly)
         self.failUnlessResultIsBOOL(NSHTTPCookie.isSecure)
+        self.failUnlessResultIsBOOL(NSHTTPCookie.isHTTPOnly)
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsimage.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsimage.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsimage.py	Tue Sep  1 10:48:21 2009
@@ -110,5 +110,39 @@
         self.failUnlessArgHasType(TestNSImageHelper.image_didLoadRepresentation_withStatus_, 2, objc._C_NSUInteger)
 
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgHasType(NSImage.drawInRect_fromRect_operation_fraction_respectFlipped_hints_,
+                0, NSRect.__typestr__)
+        self.failUnlessArgIsBOOL(NSImage.drawInRect_fromRect_operation_fraction_respectFlipped_hints_, 4)
+        self.failUnlessArgIsBOOL(NSImage.lockFocusFlipped_, 0)
+        self.failUnlessArgHasType(NSImage.initWithCGImage_size_, 1, NSSize.__typestr__)
+        self.failUnlessArgHasType(NSImage.CGImageForProposedRect_context_hints_, 0, 'o^' + NSRect.__typestr__)
+        self.failUnlessArgHasType(NSImage.bestRepresentationForRect_context_hints_, 0, NSRect.__typestr__)
+
+        self.failUnlessResultIsBOOL(NSImage.hitTestRect_withImageDestinationRect_context_hints_flipped_)
+        self.failUnlessArgHasType(NSImage.hitTestRect_withImageDestinationRect_context_hints_flipped_, 0, NSRect.__typestr__)
+        self.failUnlessArgHasType(NSImage.hitTestRect_withImageDestinationRect_context_hints_flipped_, 1, NSRect.__typestr__)
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSImageHintCTM, unicode)
+        self.failUnlessIsInstance(NSImageHintInterpolation, unicode)
+        self.failUnlessIsInstance(NSImageNameFolder, unicode)
+        self.failUnlessIsInstance(NSImageNameMobileMe, unicode)
+        self.failUnlessIsInstance(NSImageNameUserGuest, unicode)
+        self.failUnlessIsInstance(NSImageNameMenuOnStateTemplate, unicode)
+        self.failUnlessIsInstance(NSImageNameMenuMixedStateTemplate, unicode)
+        self.failUnlessIsInstance(NSImageNameApplicationIcon, unicode)
+        self.failUnlessIsInstance(NSImageNameTrashEmpty, unicode)
+        self.failUnlessIsInstance(NSImageNameTrashFull, unicode)
+        self.failUnlessIsInstance(NSImageNameHomeTemplate, unicode)
+        self.failUnlessIsInstance(NSImageNameBookmarksTemplate, unicode)
+        self.failUnlessIsInstance(NSImageNameCaution, unicode)
+        self.failUnlessIsInstance(NSImageNameStatusAvailable, unicode)
+        self.failUnlessIsInstance(NSImageNameStatusPartiallyAvailable, unicode)
+        self.failUnlessIsInstance(NSImageNameStatusUnavailable, unicode)
+        self.failUnlessIsInstance(NSImageNameStatusNone, unicode)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsimagerep.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsimagerep.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsimagerep.py	Tue Sep  1 10:48:21 2009
@@ -21,5 +21,17 @@
         self.failUnlessResultIsBOOL(NSImageRep.canInitWithData_)
         self.failUnlessResultIsBOOL(NSImageRep.canInitWithPasteboard_)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSImageRep.drawInRect_fromRect_operation_fraction_respectFlipped_hints_)
+        self.failUnlessArgHasType(NSImageRep.drawInRect_fromRect_operation_fraction_respectFlipped_hints_,
+              0, NSRect.__typestr__)
+        self.failUnlessArgHasType(NSImageRep.drawInRect_fromRect_operation_fraction_respectFlipped_hints_,
+              1, NSRect.__typestr__)
+        self.failUnlessArgIsBOOL(NSImageRep.drawInRect_fromRect_operation_fraction_respectFlipped_hints_, 4)
+
+        self.failUnlessArgHasType(NSImageRep.CGImageForProposedRect_context_hints_, 0,
+                'N^' + NSRect.__typestr__)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsindexset.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsindexset.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsindexset.py	Tue Sep  1 10:48:21 2009
@@ -14,6 +14,32 @@
         self.failUnlessArgSizeInArg(NSIndexSet.getIndexes_maxCount_inIndexRange_, 0, 1)
         self.failUnlessArgSizeInResult(NSIndexSet.getIndexes_maxCount_inIndexRange_, 0)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsBlock(NSIndexSet.enumerateIndexesUsingBlock_, 0,
+                'v' + objc._C_NSUInteger + 'o^' + objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSIndexSet.enumerateIndexesWithOptions_usingBlock_, 1,
+                'v' + objc._C_NSUInteger + 'o^' + objc._C_NSBOOL)
+        self.failUnlessArgHasType(NSIndexSet.enumerateIndexesInRange_options_usingBlock_, 0, NSRange.__typestr__)
+        self.failUnlessArgIsBlock(NSIndexSet.enumerateIndexesInRange_options_usingBlock_, 2,
+                'v' + objc._C_NSUInteger + 'o^' + objc._C_NSBOOL)
+
+        self.failUnlessArgIsBlock(NSIndexSet.indexPassingTest_, 0, 
+                objc._C_NSBOOL + objc._C_NSUInteger + 'o^' + objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSIndexSet.indexWithOptions_passingTest_, 1, 
+                objc._C_NSBOOL + objc._C_NSUInteger + 'o^' + objc._C_NSBOOL)
+        self.failUnlessArgHasType(NSIndexSet.indexInRange_options_passingTest_, 0,  NSRange.__typestr__)
+        self.failUnlessArgIsBlock(NSIndexSet.indexInRange_options_passingTest_, 2, 
+                objc._C_NSBOOL + objc._C_NSUInteger + 'o^' + objc._C_NSBOOL)
+
+        self.failUnlessArgIsBlock(NSIndexSet.indexesPassingTest_, 0, 
+                objc._C_NSBOOL + objc._C_NSUInteger + 'o^' + objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSIndexSet.indexesWithOptions_passingTest_, 1, 
+                objc._C_NSBOOL + objc._C_NSUInteger + 'o^' + objc._C_NSBOOL)
+        self.failUnlessArgHasType(NSIndexSet.indexesInRange_options_passingTest_, 0,  NSRange.__typestr__)
+        self.failUnlessArgIsBlock(NSIndexSet.indexesInRange_options_passingTest_, 2, 
+                objc._C_NSBOOL + objc._C_NSUInteger + 'o^' + objc._C_NSBOOL)
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsjavasetup.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsjavasetup.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsjavasetup.py	Tue Sep  1 10:48:21 2009
@@ -4,6 +4,7 @@
 from Foundation import *
 
 class TestNSJavaSetup (TestCase):
+    @max_os_level('10.5')
     def testConstants(self):
         self.failUnless(isinstance(NSJavaClasses, unicode))
         self.failUnless(isinstance(NSJavaRoot, unicode))
@@ -19,6 +20,7 @@
         self.failUnless(isinstance(NSJavaWillCreateVirtualMachineNotification, unicode))
         self.failUnless(isinstance(NSJavaDidCreateVirtualMachineNotification, unicode))
 
+    @max_os_level('10.5')
     def testFunctions(self):
         v = NSJavaNeedsVirtualMachine({})
         self.failUnless(v is False)

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nslayoutmanager.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nslayoutmanager.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nslayoutmanager.py	Tue Sep  1 10:48:21 2009
@@ -106,6 +106,20 @@
         self.fail("Buffer size is non-trivial: - (NSUInteger)getLineFragmentInsertionPointsForCharacterAtIndex:(NSUInteger)charIndex alternatePositions:(BOOL)aFlag inDisplayOrder:(BOOL)dFlag positions:(CGFloat *)positions characterIndexes:(NSUInteger *)charIndexes;")
 
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgHasType(NSLayoutManager.characterIndexForPoint_inTextContainer_fractionOfDistanceBetweenInsertionPoints_, 0, NSPoint.__typestr__)
+        self.failUnlessArgIsOut(NSLayoutManager.characterIndexForPoint_inTextContainer_fractionOfDistanceBetweenInsertionPoints_, 2)
+
+        self.failUnlessArgHasType(NSLayoutManager.fillBackgroundRectArray_count_forCharacterRange_color_,
+                0, 'N^' + NSRect.__typestr__)
+        self.failUnlessArgSizeInArg(NSLayoutManager.fillBackgroundRectArray_count_forCharacterRange_color_, 0, 1)
+        self.failUnlessArgHasType(NSLayoutManager.fillBackgroundRectArray_count_forCharacterRange_color_,
+                2, NSRange.__typestr__)
+
+
+
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nslocale.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nslocale.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nslocale.py	Tue Sep  1 10:48:21 2009
@@ -28,6 +28,27 @@
         self.failUnless(isinstance(NSIslamicCivilCalendar, unicode))
         self.failUnless(isinstance(NSJapaneseCalendar, unicode))
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSLocaleCollatorIdentifier, unicode)
+        self.failUnlessIsInstance(NSLocaleQuotationBeginDelimiterKey, unicode)
+        self.failUnlessIsInstance(NSLocaleQuotationEndDelimiterKey, unicode)
+        self.failUnlessIsInstance(NSLocaleAlternateQuotationBeginDelimiterKey, unicode)
+        self.failUnlessIsInstance(NSLocaleAlternateQuotationEndDelimiterKey, unicode)
+        self.failUnlessIsInstance(NSRepublicOfChinaCalendar, unicode)
+        self.failUnlessIsInstance(NSPersianCalendar, unicode)
+        self.failUnlessIsInstance(NSIndianCalendar, unicode)
+        self.failUnlessIsInstance(NSISO8601Calendar, unicode)
+
+        self.failUnlessEqual(NSLocaleLanguageDirectionUnknown, kCFLocaleLanguageDirectionUnknown)
+        self.failUnlessEqual(NSLocaleLanguageDirectionLeftToRight, kCFLocaleLanguageDirectionLeftToRight)
+        self.failUnlessEqual(NSLocaleLanguageDirectionRightToLeft, kCFLocaleLanguageDirectionRightToLeft)
+        self.failUnlessEqual(NSLocaleLanguageDirectionTopToBottom, kCFLocaleLanguageDirectionTopToBottom)
+        self.failUnlessEqual(NSLocaleLanguageDirectionBottomToTop, kCFLocaleLanguageDirectionBottomToTop)
+
+
+
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsmenu.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsmenu.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsmenu.py	Tue Sep  1 10:48:21 2009
@@ -7,6 +7,7 @@
     def numberOfItemsInMenu_(self, menu): return 1
     def menu_updateItem_atIndex_shouldCancel_(self, m, i, d, s): return 1
     def menuHasKeyEquivalent_forEvent_target_action_(self, m, e, t, a): return 1
+    def confinementRectForMenu_onScreen_(self, m, s): return 1
 
 
 class TestNSMenu (TestCase):
@@ -33,6 +34,9 @@
         self.failUnlessResultIsBOOL(NSMenu.showsStateColumn)
         self.failUnlessArgIsBOOL(NSMenu.setShowsStateColumn_, 0)
 
+        self.failUnlessResultIsBOOL(NSMenu.menuChangedMessagesEnabled)
+        self.failUnlessArgIsBOOL(NSMenu.setMenuChangedMessagesEnabled_, 0)
+        self.failUnlessResultHasType(NSMenu.locationForSubmenu_, NSPoint.__typestr__)
 
     def testConstants(self):
         self.failUnlessIsInstance(NSMenuWillSendActionNotification, unicode)
@@ -43,6 +47,25 @@
         self.failUnlessIsInstance(NSMenuDidBeginTrackingNotification, unicode)
         self.failUnlessIsInstance(NSMenuDidEndTrackingNotification, unicode)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSMenu.popUpMenuPositioningItem_atLocation_inView_)
+        self.failUnlessArgHasType(NSMenu.popUpMenuPositioningItem_atLocation_inView_, 1, NSPoint.__typestr__)
+        self.failUnlessResultHasType(NSMenu.size, NSSize.__typestr__)
+        self.failUnlessResultIsBOOL(NSMenu.allowsContextMenuPlugIns)
+        self.failUnlessArgIsBOOL(NSMenu.setAllowsContextMenuPlugIns_, 0)
+
+        self.failUnlessResultHasType(TestNSMenuHelper.confinementRectForMenu_onScreen_, NSRect.__typestr__)
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSMenuPropertyItemTitle, 1 << 0)
+        self.failUnlessEqual(NSMenuPropertyItemAttributedTitle, 1 << 1)
+        self.failUnlessEqual(NSMenuPropertyItemKeyEquivalent, 1 << 2)
+        self.failUnlessEqual(NSMenuPropertyItemImage, 1 << 3)
+        self.failUnlessEqual(NSMenuPropertyItemEnabled, 1 << 4)
+        self.failUnlessEqual(NSMenuPropertyItemAccessibilityDescription, 1 << 5)
+
 
 
 if __name__ == "__main__":

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsnotification.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsnotification.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsnotification.py	Tue Sep  1 10:48:21 2009
@@ -5,5 +5,9 @@
     def testMethods(self):
         self.failUnlessArgIsSEL(NSNotificationCenter.addObserver_selector_name_object_, 1, 'v@:@')
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsBlock(NSNotificationCenter.addObserverForName_object_queue_usingBlock_, 3, 'v@')
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsobjcruntime.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsobjcruntime.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsobjcruntime.py	Tue Sep  1 10:48:21 2009
@@ -68,6 +68,22 @@
 
         self.assertEquals(NSNotFound, NSIntegerMax)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSFoundationVersionNumber10_5, 677.00)
+        self.failUnlessEqual(NSFoundationVersionNumber10_5_1, 677.10)
+        self.failUnlessEqual(NSFoundationVersionNumber10_5_2, 677.15)
+        self.failUnlessEqual(NSFoundationVersionNumber10_5_3, 677.19)
+        self.failUnlessEqual(NSFoundationVersionNumber10_5_4, 677.19)
+        self.failUnlessEqual(NSFoundationVersionNumber10_5_5, 677.21)
+        self.failUnlessEqual(NSFoundationVersionNumber10_5_6, 677.22)
+
+        self.failUnlessEqual(NSEnumerationConcurrent, 1<<0)
+        self.failUnlessEqual(NSEnumerationReverse, 1<<1)
+        self.failUnlessEqual(NSSortConcurrent, 1<<0)
+        self.failUnlessEqual(NSSortStable, 1<<4)
+
+
 
     def testSelectorAccess(self):
         v = NSStringFromSelector('description')

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsobject.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsobject.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsobject.py	Tue Sep  1 10:48:21 2009
@@ -8,6 +8,7 @@
     def isContentDiscarded(self): return 1
     def beginContentAccess(self): return 1
 
+
 class TestNSObjectFunctions (TestCase):
     def testAllocation(self):
         o = NSAllocateObject(NSObject, 0, None)

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsopengl.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsopengl.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsopengl.py	Tue Sep  1 10:48:21 2009
@@ -88,6 +88,17 @@
         self.failUnlessResultHasType(NSOpenGLContext.CGLContextObj, 
                 '^{_CGLContextObj}')
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgHasType(NSOpenGLPixelFormat.initWithCGLPixelFormatObj_, 0, '^{_CGLPixelFormatObject}')
+        self.failUnlessArgHasType(NSOpenGLPixelFormat.initWithCGLBufferObj, 0, '^{_CGLBufferObject}')
+        self.failUnlessResultHasType(NSOpenGLPixelFormat.CGLBufferObj, '^{_CGLBufferObject}')
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessEqual(NSOpenGLPFARemotePixelBuffer, 91)
+        self.failUnlessEqual(NSOpenGLPFAAcceleratedCompute, 97)
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsoperation.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsoperation.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsoperation.py	Tue Sep  1 10:48:21 2009
@@ -24,5 +24,16 @@
         self.failUnlessResultIsBOOL(NSOperationQueue.isSuspended)
         self.failUnlessArgIsBOOL(NSOperationQueue.setSuspended_, 0)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBlock(NSOperation.completionBlock, 'v')
+        self.failUnlessArgIsBlock(NSOperation.setCompletionBlock_, 0, 'v')
+
+        self.failUnlessArgIsBlock(NSBlockOperation.blockOperationWithBlock_, 0, 'v')
+        self.failUnlessArgIsBlock(NSBlockOperation.addExecutionBlock_, 0, 'v')
+
+        self.failUnlessArgIsBOOL(NSOperationQueue.addOperations_waitUntilFinished_, 1)
+        self.failUnlessArgIsBlock(NSOperationQueue.addOperationWithBlock_, 0, 'v')
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsoutlineview.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsoutlineview.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsoutlineview.py	Tue Sep  1 10:48:21 2009
@@ -3,6 +3,9 @@
 from AppKit import *
 
 class TestNSOutlineViewHelper (NSObject):
+    def outlineView_sizeToFitWidthOfColumn_(self, v, c): return 1
+    def outlineView_shouldReorderColumn_toColumn_(self, v, c1, c2): return 1
+    def outlineView_shouldShowOutlineCellForItem_(self, v, i): return 1
     def outlineView_child_ofItem_(self, ov, nr, item): return 1
     def outlineView_isItemExpandable_(self, ov, item): return 1
     def outlineView_numberOfChildrenOfItem_(self, ov, item): return 1
@@ -91,5 +94,16 @@
         self.failUnlessResultIsBOOL(TestNSOutlineViewHelper.outlineView_isGroupItem_)
 
 
+    @min_os_level('10.6')
+    def testProtocols10_6(self):
+        self.failUnlessResultHasType(TestNSOutlineViewHelper.outlineView_sizeToFitWidthOfColumn_, objc._C_CGFloat)
+        self.failUnlessArgHasType(TestNSOutlineViewHelper.outlineView_sizeToFitWidthOfColumn_, 1, objc._C_NSInteger)
+        self.failUnlessResultIsBOOL(TestNSOutlineViewHelper.outlineView_shouldReorderColumn_toColumn_)
+        self.failUnlessArgHasType(TestNSOutlineViewHelper.outlineView_shouldReorderColumn_toColumn_, 1, objc._C_NSInteger)
+        self.failUnlessArgHasType(TestNSOutlineViewHelper.outlineView_shouldReorderColumn_toColumn_, 2, objc._C_NSInteger)
+
+        self.failUnlessResultIsBOOL(TestNSOutlineViewHelper.outlineView_shouldShowOutlineCellForItem_)
+
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspasteboard.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspasteboard.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspasteboard.py	Tue Sep  1 10:48:21 2009
@@ -52,5 +52,42 @@
         self.failUnlessResultIsBOOL(NSPasteboard.writeFileContents_)
         self.failUnlessResultIsBOOL(NSPasteboard.writeFileWrapper_)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSPasteboardTypeString, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypePDF, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypeTIFF, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypePNG, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypeRTF, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypeRTFD, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypeHTML, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypeTabularText, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypeFont, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypeRuler, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypeColor, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypeSound, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypeMultipleTextSelection, unicode)
+        self.failUnlessIsInstance(NSPasteboardTypeFindPanelSearchOptions, unicode)
+
+        self.failUnlessIsInstance(NSPasteboardURLReadingFileURLsOnlyKey, unicode)
+        self.failUnlessIsInstance(NSPasteboardURLReadingContentsConformToTypesKey, unicode)
+
+        self.failUnlessEqual(NSPasteboardWritingPromised, 1<<9)
+
+        self.failUnlessEqual(NSPasteboardReadingAsData, 0)
+        self.failUnlessEqual(NSPasteboardReadingAsString, 1<<0)
+        self.failUnlessEqual(NSPasteboardReadingAsPropertyList, 1<<1)
+        self.failUnlessEqual(NSPasteboardReadingAsKeyedArchive, 1<<2)
+
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSPasteboard.writeObjects_)
+        self.failUnlessResultIsBOOL(NSPasteboard.canReadItemWithDataConformingToTypes_)
+        self.failUnlessResultIsBOOL(NSPasteboard.canReadObjectForClasses_options_)
+
+        self.failUnlessResultIsBOOL(NSPasteboard.setPropertyList_forType_)
+        self.failUnlessResultIsBOOL(NSPasteboard.setString_forType_)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspathutilties.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspathutilties.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspathutilties.py	Tue Sep  1 10:48:21 2009
@@ -64,6 +64,19 @@
         self.assertEquals(NSSystemDomainMask, 8)
         self.assertEquals(NSAllDomainsMask, 0x0ffff)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSAutosavedInformationDirectory, 11)
+
+        self.failUnlessEqual(NSInputMethodsDirectory, 16)
+        self.failUnlessEqual(NSMoviesDirectory, 17)
+        self.failUnlessEqual(NSMusicDirectory, 18)
+        self.failUnlessEqual(NSPicturesDirectory, 19)
+        self.failUnlessEqual(NSPrinterDescriptionDirectory, 20)
+        self.failUnlessEqual(NSSharedPublicDirectory, 21)
+        self.failUnlessEqual(NSPreferencePanesDirectory, 22)
+        self.failUnlessEqual(NSItemReplacementDirectory, 99)
+
     def testMethods(self):
         self.failUnlessResultIsBOOL(NSString.isAbsolutePath)
         self.failUnlessArgIsOut(NSString.completePathIntoString_caseSensitive_matchesIntoArray_filterTypes_, 0)

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspredicate.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspredicate.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspredicate.py	Tue Sep  1 10:48:21 2009
@@ -18,5 +18,10 @@
         self.failUnlessResultIsBOOL(NSPredicate.evaluateWithObject_)
         self.failUnlessResultIsBOOL(NSPredicate.evaluateWithObject_substitutionVariables_)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsBlock(NSPredicate.predicateWithBlock_, 0, objc._C_NSBOOL + '@@')
+
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsprintinfo.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsprintinfo.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsprintinfo.py	Tue Sep  1 10:48:21 2009
@@ -67,6 +67,17 @@
         self.failUnlessArgIsBOOL(NSPrintInfo.setHorizontallyCentered_, 0)
         self.failUnlessArgIsBOOL(NSPrintInfo.setVerticallyCentered_, 0)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSPrintSelectionOnly, unicode)
+        self.failUnlessIsInstance(NSPrintJobSavingURL, unicode)
+        self.failUnlessIsInstance(NSPrintJobSavingFileNameExtensionHidden, unicode)
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSPrintInfo.isSelectionOnly)
+        self.failUnlessArgIsBOOL(NSPrintInfo.setSelectionOnly_, 0)
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsprintpanel.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsprintpanel.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsprintpanel.py	Tue Sep  1 10:48:21 2009
@@ -14,6 +14,9 @@
         self.failUnlessEqual(NSPrintPanelShowsPreview, 0x20000)
 
         self.failUnlessIsInstance(NSPrintPhotoJobStyleHint, unicode)
+
+    @min_os_level('10.5')
+    def testConstants10_5(self):
         self.failUnlessIsInstance(NSPrintPanelAccessorySummaryItemNameKey, unicode)
         self.failUnlessIsInstance(NSPrintPanelAccessorySummaryItemDescriptionKey, unicode)
 
@@ -21,6 +24,12 @@
         self.failUnlessArgIsSEL(NSPrintPanel.beginSheetWithPrintInfo_modalForWindow_delegate_didEndSelector_contextInfo_, 3, 'v@:@' + objc._C_NSInteger + '^v')
         self.failUnlessArgHasType(NSPrintPanel.beginSheetWithPrintInfo_modalForWindow_delegate_didEndSelector_contextInfo_, 4, '^v')
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSPrintPanelShowsPrintSelection, 1 << 5)
+
+        self.failUnlessIsInstance(NSPrintAllPresetsJobStyleHint, unicode)
+        self.failUnlessIsInstance(NSPrintNoPresetsJobStyleHint, unicode)
 
 
 if __name__ == "__main__":

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsprocessinfo.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsprocessinfo.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsprocessinfo.py	Tue Sep  1 10:48:21 2009
@@ -1,8 +1,10 @@
+from __future__ import with_statement
 from PyObjCTools.TestSupport import *
 
 from Foundation import *
 
 
+
 class TestNSProcessInfo (TestCase):
     def testConstants(self):
         self.assertEquals(NSWindowsNTOperatingSystem, 1)
@@ -13,6 +15,22 @@
         self.assertEquals(NSSunOSOperatingSystem, 6)
         self.assertEquals(NSOSF1OperatingSystem, 7)
 
+    def testNSDisabledSuddenTermination(self):
+        # annoyingly we cannot easily test if this has an effect, but
+        # this at least guards against typos.
+        with NSDisabledSuddenTermination:
+            pass
+
+        class TestException (Exception):
+            pass
+        try:
+            with NSDisabledSuddenTermination:
+                raise TestException(1)
+
+        except TestException:
+            pass
+
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspropertylist.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspropertylist.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nspropertylist.py	Tue Sep  1 10:48:21 2009
@@ -7,5 +7,12 @@
         self.failUnlessArgIsOut(NSPropertyListSerialization.dataFromPropertyList_format_errorDescription_, 2)
         self.failUnlessArgIsOut(NSPropertyListSerialization.propertyListFromData_mutabilityOption_format_errorDescription_, 3)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsOut(NSPropertyListSerialization.dataWithPropertyList_format_options_error_, 3)
+        self.failUnlessArgIsOut(NSPropertyListSerialization.writePropertyList_toStream_format_options_error_, 4)
+        self.failUnlessArgIsOut(NSPropertyListSerialization.propertyListWithData_options_format_error_, 3)
+        self.failUnlessArgIsOut(NSPropertyListSerialization.propertyListWithStream_options_format_error_, 3)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nssavepanel.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nssavepanel.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nssavepanel.py	Tue Sep  1 10:48:21 2009
@@ -10,6 +10,8 @@
     def panel_willExpand_(self, s, e): return 1
     def panel_directoryDidChange_(self, s, p): pass
     def panelSelectionDidChange_(self, s): pass
+    def panel_shouldEnableURL_(self, p, u): return 1
+    def panel_validateURL_error_(self, p, u, e): return 1
 
 class TestNSSavePanel (TestCase):
     def testConstants(self):
@@ -17,6 +19,8 @@
         self.failUnlessEqual(NSFileHandlingPanelOKButton, NSOKButton)
 
     def testMethods(self):
+        self.failUnlessResultIsBOOL(NSSavePanel.showsHiddenFiles)
+        self.failUnlessArgIsBOOL(NSSavePanel.setShowsHiddenFiles_, 0)
         self.failUnlessResultIsBOOL(NSSavePanel.allowsOtherFileTypes)
         self.failUnlessArgIsBOOL(NSSavePanel.setAllowsOtherFileTypes_, 0)
         self.failUnlessResultIsBOOL(NSSavePanel.isExpanded)
@@ -40,5 +44,16 @@
         self.failUnlessArgIsBOOL(TestNSSavePanelHelper.panel_userEnteredFilename_confirmed_, 2)
         self.failUnlessArgIsBOOL(TestNSSavePanelHelper.panel_willExpand_, 1)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsBlock(NSSavePanel.beginWithCompletionHandler_, 0, 'v' + objc._C_NSInteger)
+
+        self.failUnlessResultIsBOOL(TestNSSavePanelHelper.panel_shouldEnableURL_)
+        self.failUnlessResultIsBOOL(TestNSSavePanelHelper.panel_validateURL_error_)
+        self.failUnlessArgHasType(TestNSSavePanelHelper.panel_validateURL_error_, 2, 'o^@')
+
+        self.failUnlessArgIsBlock(NSSavePanel.beginSheetModalForWindow_completionHandler_, 1, 'v'+objc._C_NSInteger)
+        self.failUnlessArgIsBlock(NSSavePanel.beginWithCompletionHandler_, 0, 'v'+objc._C_NSInteger)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsscreen.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsscreen.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsscreen.py	Tue Sep  1 10:48:21 2009
@@ -7,5 +7,9 @@
         m = NSScreen.supportedWindowDepths.__metadata__()
         self.failUnless(m['retval']['c_array_delimited_by_null'])
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSScreenColorSpaceDidChangeNotification, unicode)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsset.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsset.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsset.py	Tue Sep  1 10:48:21 2009
@@ -164,5 +164,15 @@
 
         self.failUnlessArgIsBOOL(NSSet.initWithSet_copyItems_, 1)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsBlock(NSSet.enumerateObjectsUsingBlock_, 0, 'v@o^' + objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSSet.enumerateObjectsWithOptions_usingBlock_, 1, 'v@o^' + objc._C_NSBOOL)
+
+        self.failUnlessArgIsBlock(NSSet.objectsPassingTest_, 0, objc._C_NSBOOL + '@o^' + objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSSet.objectsWithOptions_passingTest_, 1, objc._C_NSBOOL + '@o^' + objc._C_NSBOOL)
+
+
+
 if __name__ == '__main__':
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nssortdescriptor.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nssortdescriptor.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nssortdescriptor.py	Tue Sep  1 10:48:21 2009
@@ -9,5 +9,17 @@
 
         self.failUnlessResultIsBOOL(NSSortDescriptor.ascending)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsBOOL(NSSortDescriptor.sortDescriptorWithKey_ascending_, 1)
+        self.failUnlessArgIsBOOL(NSSortDescriptor.sortDescriptorWithKey_ascending_selector_, 1)
+
+        self.failUnlessArgIsBOOL(NSSortDescriptor.sortDescriptorWithKey_ascending_comparator_, 1)
+        self.failUnlessArgIsBlock(NSSortDescriptor.sortDescriptorWithKey_ascending_comparator_, 2, 'i@@')
+        self.failUnlessArgIsBOOL(NSSortDescriptor.initWithKey_ascending_comparator_, 1)
+        self.failUnlessArgIsBlock(NSSortDescriptor.initWithKey_ascending_comparator_, 2, 'i@@')
+        self.failUnlessResultIsBlock(NSSortDescriptor.comparator, 'i@@')
+
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsspellchecker.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsspellchecker.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsspellchecker.py	Tue Sep  1 10:48:21 2009
@@ -8,13 +8,48 @@
         self.failUnlessArgIsBOOL(NSSpellChecker.checkSpellingOfString_startingAt_language_wrap_inSpellDocumentWithTag_wordCount_, 3)
         self.failUnlessArgIsOut(NSSpellChecker.checkSpellingOfString_startingAt_language_wrap_inSpellDocumentWithTag_wordCount_, 5)
         self.failUnlessResultIsBOOL(NSSpellChecker.setLanguage_)
-        self.failUnlessResultIsBOOL(NSSpellChecker.hasLearnedWord_)
+    
+        self.failUnlessArgHasType(NSSpellChecker.completionsForPartialWordRange_inString_language_inSpellDocumentWithTag_, 0, NSRange.__typestr__)
 
 
     @min_os_level('10.5')
     def testMethods10_5(self):
         self.failUnlessArgIsBOOL(NSSpellChecker.checkGrammarOfString_startingAt_language_wrap_inSpellDocumentWithTag_details_, 3)
         self.failUnlessArgIsOut(NSSpellChecker.checkGrammarOfString_startingAt_language_wrap_inSpellDocumentWithTag_details_, 5)
+        self.failUnlessResultIsBOOL(NSSpellChecker.hasLearnedWord_)
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgHasType(NSSpellChecker.checkString_range_types_options_inSpellDocumentWithTag_orthography_wordCount_,
+                1, NSRange.__typestr__)
+        self.failUnlessArgIsOut(NSSpellChecker.checkString_range_types_options_inSpellDocumentWithTag_orthography_wordCount_, 5)
+        self.failUnlessArgIsOut(NSSpellChecker.checkString_range_types_options_inSpellDocumentWithTag_orthography_wordCount_, 6)
+
+        self.failUnlessArgHasType(NSSpellChecker.requestCheckingOfString_range_types_options_inSpellDocumentWithTag_completionHandler_,
+                1, NSRange.__typestr__)
+        self.failUnlessArgIsBlock(NSSpellChecker.requestCheckingOfString_range_types_options_inSpellDocumentWithTag_completionHandler_,
+                5, 'v' + objc._C_NSInteger + '@@' + objc._C_NSInteger)
+
+        self.failUnlessArgHasType(NSSpellChecker.menuForResult_string_options_atLocation_inView_, 3, NSPoint.__typestr__)
+
+        self.failUnlessArgHasType(NSSpellChecker.guessesForWordRange_inString_language_inSpellDocumentWithTag_, 0, NSRange.__typestr__)
+
+        self.failUnlessResultIsBOOL(NSSpellChecker.automaticallyIdentifiesLanguages)
+        self.failUnlessArgIsBOOL(NSSpellChecker.setAutomaticallyIdentifiesLanguages_, 0)
+
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSTextCheckingOrthographyKey, unicode)
+        self.failUnlessIsInstance(NSTextCheckingQuotesKey, unicode)
+        self.failUnlessIsInstance(NSTextCheckingReplacementsKey, unicode)
+        self.failUnlessIsInstance(NSTextCheckingReferenceDateKey, unicode)
+        self.failUnlessIsInstance(NSTextCheckingReferenceTimeZoneKey, unicode)
+        self.failUnlessIsInstance(NSTextCheckingDocumentURLKey, unicode)
+        self.failUnlessIsInstance(NSTextCheckingDocumentTitleKey, unicode)
+        self.failUnlessIsInstance(NSTextCheckingDocumentAuthorKey, unicode)
+
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsspellserver.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsspellserver.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsspellserver.py	Tue Sep  1 10:48:21 2009
@@ -7,6 +7,8 @@
     def spellServer_suggestCompletionsForPartialWordRange_inString_language_(self, a, b, c, d): return 1
     def spellServer_checkGrammarInString_language_details_(self, a, b, c, d): return 1
 
+    def spellServer_checkString_offset_types_options_orthography_wordCount_(self, a, b, c, d, e, f, g): return 1
+
 
 
 class TestNSSpellServer (TestCase):
@@ -31,5 +33,11 @@
         self.failUnlessResultHasType(TestNSSpellServerHelper.spellServer_checkGrammarInString_language_details_, NSRange.__typestr__)
         self.failUnlessArgHasType(TestNSSpellServerHelper.spellServer_checkGrammarInString_language_details_, 3, 'o^@')
 
+    @min_os_level('10.6')
+    def testDelegate10_6(self):
+        self.failUnlessArgHasType(TestNSSpellServerHelper.spellServer_checkString_offset_types_options_orthography_wordCount_, 2, objc._C_NSUInteger)
+        self.failUnlessArgHasType(TestNSSpellServerHelper.spellServer_checkString_offset_types_options_orthography_wordCount_, 3, objc._C_NSInteger)
+        self.failUnlessArgHasType(TestNSSpellServerHelper.spellServer_checkString_offset_types_options_orthography_wordCount_, 6, 'o^' + objc._C_NSInteger)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nssplitview.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nssplitview.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nssplitview.py	Tue Sep  1 10:48:21 2009
@@ -14,6 +14,7 @@
     def splitView_additionalEffectiveRectOfDividerAtIndex_(self, sv, i): return 1
     def splitViewWillResizeSubviews_(self, nt): pass
     def splitViewDidResizeSubviews_(self, nt): pass
+    def splitView_shouldAdjustSizeOfSubview_(self, s, sv): return 1
 
 class TestNSSplitView (TestCase):
     def testConstants(self):
@@ -23,6 +24,11 @@
         self.failUnlessIsInstance(NSSplitViewWillResizeSubviewsNotification, unicode)
         self.failUnlessIsInstance(NSSplitViewDidResizeSubviewsNotification, unicode)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSSplitViewDividerStylePaneSplitter, 3)
+
+
     def testMethods(self):
         self.failUnlessResultIsBOOL(NSSplitView.isVertical)
         self.failUnlessArgIsBOOL(NSSplitView.setVertical_, 0)
@@ -58,5 +64,9 @@
         self.failUnlessResultHasType(TestNSSplitViewHelper.splitView_additionalEffectiveRectOfDividerAtIndex_, NSRect.__typestr__)
         self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_additionalEffectiveRectOfDividerAtIndex_, 1, objc._C_NSInteger)
 
+    @min_os_level('10.6')
+    def testProtocol10_6(self):
+        self.failUnlessResultIsBOOL(TestNSSplitViewHelper.splitView_shouldAdjustSizeOfSubview_)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsstream.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsstream.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsstream.py	Tue Sep  1 10:48:21 2009
@@ -84,5 +84,14 @@
     def testDelegate(self):
         self.failUnlessArgHasType(TestNSStreamHelper.stream_handleEvent_, 1, objc._C_NSUInteger)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        b = NSOutputStream.alloc()
+        try:
+            self.failUnlessArgIsBOOL(b.initWithURL_append_, 1)
+        finally:
+            b = b.initToMemory()
+        self.failUnlessArgIsBOOL(NSOutputStream.outputStreamWithURL_append_, 1)
+
 if __name__ == '__main__':
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsstring.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsstring.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsstring.py	Tue Sep  1 10:48:21 2009
@@ -339,6 +339,25 @@
         self.failUnlessArgSizeInArg(NSString.stringWithCString_length_, 0, 1)
         self.failUnlessArgHasType(NSString.stringWithCString_, 0, 'n^v')
         self.failUnlessArgIsNullTerminated(NSString.stringWithCString_, 0)
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSStringEnumerationByLines, 0)
+        self.failUnlessEqual(NSStringEnumerationByParagraphs, 1)
+        self.failUnlessEqual(NSStringEnumerationByComposedCharacterSequences, 2)
+        self.failUnlessEqual(NSStringEnumerationByWords, 3)
+        self.failUnlessEqual(NSStringEnumerationBySentences, 4)
+        self.failUnlessEqual(NSStringEnumerationReverse, 1 << 8)
+        self.failUnlessEqual(NSStringEnumerationSubstringNotRequired, 1 << 9)
+        self.failUnlessEqual(NSStringEnumerationLocalized, 1 << 10)
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgHasType(NSString.enumerateSubstringsInRange_options_usingBlock_, 0, 
+                NSRange.__typestr__)
+        self.failUnlessArgIsBlock(NSString.enumerateSubstringsInRange_options_usingBlock_, 2, 'v@'+NSRange.__typestr__+NSRange.__typestr__+'o^'+objc._C_NSBOOL)
+        self.failUnlessArgIsBlock(NSString.enumerateLinesUsingBlock_, 0, 'v@o^'+objc._C_NSBOOL)
+
     
 
 if __name__ == '__main__':

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstablecolumn.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstablecolumn.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstablecolumn.py	Tue Sep  1 10:48:21 2009
@@ -11,11 +11,14 @@
     def testMethods(self):
         self.failUnlessArgIsBOOL(NSTableColumn.setEditable_, 0)
         self.failUnlessResultIsBOOL(NSTableColumn.isEditable)
-        self.failUnlessArgIsBOOL(NSTableColumn.setHidden_, 0)
-        self.failUnlessResultIsBOOL(NSTableColumn.isHidden)
         self.failUnlessArgIsBOOL(NSTableColumn.setResizable_, 0)
         self.failUnlessResultIsBOOL(NSTableColumn.isResizable)
 
+    @min_os_level('10.5')
+    def testMethods10_5(self):
+        self.failUnlessArgIsBOOL(NSTableColumn.setHidden_, 0)
+        self.failUnlessResultIsBOOL(NSTableColumn.isHidden)
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstableheadercell.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstableheadercell.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstableheadercell.py	Tue Sep  1 10:48:21 2009
@@ -5,5 +5,8 @@
     def testMethods(self):
         self.failUnlessArgIsBOOL(NSTableHeaderCell.drawSortIndicatorWithFrame_inView_ascending_priority_, 2)
 
+        self.failUnlessResultHasType(NSTableHeaderCell.sortIndicatorRectForBounds_, NSRect.__typestr__)
+        self.failUnlessArgHasType(NSTableHeaderCell.sortIndicatorRectForBounds_, 0, NSRect.__typestr__)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstableview.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstableview.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstableview.py	Tue Sep  1 10:48:21 2009
@@ -25,6 +25,9 @@
     def tableView_dataCellForTableColumn_row_(self, tv, tc, r): return 1
     def tableView_isGroupRow_(self, tv, r): return 1
 
+    def tableView_sizeToFitWidthOfColumn_(self, tv, c): return 1
+    def tableView_shouldReorderColumn_toColumn_(self, tv, c1, c2): return 1
+
 
 
 
@@ -53,6 +56,12 @@
         self.failUnlessIsInstance(NSTableViewColumnDidResizeNotification, unicode)
         self.failUnlessIsInstance(NSTableViewSelectionIsChangingNotification, unicode)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSTableViewSelectionHighlightStyleNone, -1)
+        self.failUnlessEqual(NSTableViewDraggingDestinationFeedbackStyleNone, -1)
+        self.failUnlessEqual(NSTableViewDraggingDestinationFeedbackStyleRegular, 0)
+        self.failUnlessEqual(NSTableViewDraggingDestinationFeedbackStyleSourceList, 1)
 
     def testMethods(self):
         self.failUnlessArgIsBOOL(NSTableView.setAllowsColumnReordering_, 0)
@@ -77,14 +86,15 @@
         self.failUnlessArgIsBOOL(NSTableView.selectRowIndexes_byExtendingSelection_, 1)
         self.failUnlessResultIsBOOL(NSTableView.isColumnSelected_)
         self.failUnlessResultIsBOOL(NSTableView.isRowSelected_)
-        self.failUnlessArgIsBOOL(NSTableView.setAllowsTypeSelect_, 0)
-        self.failUnlessResultIsBOOL(NSTableView.allowsTypeSelect)
         self.failUnlessResultIsBOOL(NSTableView.textShouldBeginEditing_)
         self.failUnlessResultIsBOOL(NSTableView.textShouldEndEditing_)
         self.failUnlessArgIsBOOL(NSTableView.setAutosaveTableColumns_, 0)
         self.failUnlessResultIsBOOL(NSTableView.autosaveTableColumns)
         self.failUnlessArgIsBOOL(NSTableView.editColumn_row_withEvent_select_, 3)
 
+        self.failUnlessArgHasType(NSTableView.drawBackgroundInClipRect_, 0, NSRect.__typestr__)
+
+
 
         self.failUnlessArgIsBOOL(NSTableView.setDrawsGrid_, 0)
         self.failUnlessResultIsBOOL(NSTableView.drawsGrid)
@@ -94,6 +104,17 @@
         self.failUnlessArgIsBOOL(NSTableView.setAutoresizesAllColumnsToFit_, 0)
         self.failUnlessResultIsBOOL(NSTableView.autoresizesAllColumnsToFit)
 
+    @min_os_level('10.5')
+    def testMethods10_5(self):
+        self.failUnlessArgIsBOOL(NSTableView.setAllowsTypeSelect_, 0)
+        self.failUnlessResultIsBOOL(NSTableView.allowsTypeSelect)
+
+        self.failUnlessArgHasType(NSTableView.columnIndexesInRect_, 0, NSRect.__typestr__)
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSTableView.shouldFocusCell_atColumn_row_)
+
 
     def testProtocols(self):
         self.failUnlessResultHasType(TestNSTableViewHelper.numberOfRowsInTableView_, objc._C_NSInteger)
@@ -132,7 +153,14 @@
         self.failUnlessResultIsBOOL(TestNSTableViewHelper.tableView_isGroupRow_)
         self.failUnlessArgHasType(TestNSTableViewHelper.tableView_isGroupRow_, 1, objc._C_NSInteger)
 
-
+    @min_os_level('10.6')
+    def testProtococols10_6(self):
+        self.failUnlessResultHasType(TestNSTableViewHelper.tableView_sizeToFitWidthOfColumn_, objc._C_CGFloat)
+        self.failUnlessArgHasType(TestNSTableViewHelper.tableView_sizeToFitWidthOfColumn_, 1, objc._C_NSInteger)
+
+        self.failUnlessResultIsBOOL(TestNSTableViewHelper.tableView_shouldReorderColumn_toColumn_)
+        self.failUnlessArgHasType(TestNSTableViewHelper.tableView_shouldReorderColumn_toColumn_, 1, objc._C_NSInteger)
+        self.failUnlessArgHasType(TestNSTableViewHelper.tableView_shouldReorderColumn_toColumn_, 2, objc._C_NSInteger)
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstask.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstask.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstask.py	Tue Sep  1 10:48:21 2009
@@ -10,6 +10,11 @@
     def testConstants(self):
         self.failUnlessIsInstance(NSTaskDidTerminateNotification, unicode)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSTaskTerminationReasonExit, 1)
+        self.failUnlessEqual(NSTaskTerminationReasonUncaughtSignal, 2)
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstext.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstext.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstext.py	Tue Sep  1 10:48:21 2009
@@ -43,6 +43,11 @@
         self.failUnlessIsInstance(NSTextDidEndEditingNotification, unicode)
         self.failUnlessIsInstance(NSTextDidChangeNotification, unicode)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSTextWritingDirectionEmbedding, 0<<1)
+        self.failUnlessEqual(NSTextWritingDirectionOverride,  1<<1)
+
     def testMehods(self):
         self.failUnlessResultIsBOOL(NSText.writeRTFDToFile_atomically_)
         self.failUnlessArgIsBOOL(NSText.writeRTFDToFile_atomically_, 1)

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstextinputclient.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstextinputclient.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstextinputclient.py	Tue Sep  1 10:48:21 2009
@@ -15,6 +15,7 @@
     def fractionOfDistanceThroughGlyphForPoint_(self, pt): return 1
     def baselineDeltaForCharacterAtIndex_(self, idx): return 1
     def windowLevel(self): return 1
+    def drawsVerticallyForCharacterAtIndex_(self, i): return 1
 
 
 class TestNSTextInputClient (TestCase):
@@ -41,6 +42,11 @@
         self.failUnlessArgHasType(TestNSTextInputClientHelper.baselineDeltaForCharacterAtIndex_, 0, objc._C_NSUInteger)
         self.failUnlessResultHasType(TestNSTextInputClientHelper.windowLevel, objc._C_NSInteger)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(TestNSTextInputClientHelper.drawsVerticallyForCharacterAtIndex_)
+        self.failUnlessArgHasType(TestNSTextInputClientHelper.drawsVerticallyForCharacterAtIndex_, 0, objc._C_NSInteger)
+
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstextview.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstextview.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstextview.py	Tue Sep  1 10:48:21 2009
@@ -21,6 +21,8 @@
     def textView_draggedCell_inRect_event_(self, tv, a, b, c): return 1
     def textView_shouldSetSpellingState_range_(self, tv, a, b): return 1
     def textView_menu_forEvent_atIndex_(self, tv, a, b, c): return 1
+    def textView_willCheckTextInRange_options_types_(self, tv, a, b, c): return 1
+    def textView_didCheckTextInRange_types_options_results_orthography_wordCount_(self, tv, r, t, o, rs, ort, wc): return 1
 
 class TestNSTextView (TestCase):
     def testConstants(self):
@@ -158,6 +160,31 @@
         self.failUnlessArgHasType(TestNSTextViewHelper.textView_shouldSetSpellingState_range_, 2, NSRange.__typestr__)
         self.failUnlessArgHasType(TestNSTextViewHelper.textView_menu_forEvent_atIndex_, 3, objc._C_NSUInteger)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSTextView.isCoalescingUndo)
+
+        self.failUnlessArgIsBOOL(NSTextView.setAutomaticDataDetectionEnabled_, 0)
+        self.failUnlessResultIsBOOL(NSTextView.isAutomaticDataDetectionEnabled)
+        self.failUnlessArgIsBOOL(NSTextView.setAutomaticDashSubstitutionEnabled_, 0)
+        self.failUnlessResultIsBOOL(NSTextView.isAutomaticDashSubstitutionEnabled)
+        self.failUnlessArgIsBOOL(NSTextView.setAutomaticTextReplacementEnabled_, 0)
+        self.failUnlessResultIsBOOL(NSTextView.isAutomaticTextReplacementEnabled)
+        self.failUnlessArgIsBOOL(NSTextView.setAutomaticSpellingCorrectionEnabled_, 0)
+        self.failUnlessResultIsBOOL(NSTextView.isAutomaticSpellingCorrectionEnabled)
+
+        self.failUnlessArgHasType(NSTextView.checkTextInRange_types_options_, 0, NSRange.__typestr__)
+        self.failUnlessArgHasType(NSTextView.handleTextCheckingResults_forRange_types_options_orthography_wordCount_, 1, NSRange.__typestr__)
+
+    @min_os_level('10.6')
+    def testProtocols10_6(self):
+        self.failUnlessArgHasType(TestNSTextViewHelper.textView_willCheckTextInRange_options_types_, 1, NSRange.__typestr__)
+        self.failUnlessArgHasType(TestNSTextViewHelper.textView_willCheckTextInRange_options_types_, 3, 'N^' + objc._C_NSInteger)
+
+        self.failUnlessArgHasType(TestNSTextViewHelper.textView_didCheckTextInRange_types_options_results_orthography_wordCount_, 1, NSRange.__typestr__)
+        self.failUnlessArgHasType(TestNSTextViewHelper.textView_didCheckTextInRange_types_options_results_orthography_wordCount_, 2, objc._C_NSInteger)
+        self.failUnlessArgHasType(TestNSTextViewHelper.textView_didCheckTextInRange_types_options_results_orthography_wordCount_, 6, objc._C_NSInteger)
+
 
 
 

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstimer.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstimer.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstimer.py	Tue Sep  1 10:48:21 2009
@@ -16,7 +16,7 @@
 
     def _testHelp(self):
         obj = PythonClass()
-        pool = NSAutoreleasePool.new()
+        pool = NSAutoreleasePool.alloc().init()
         self.failUnlessArgIsBOOL(NSTimer.timerWithTimeInterval_target_selector_userInfo_repeats_, 4)
         timer = NSTimer.timerWithTimeInterval_target_selector_userInfo_repeats_(
                 0.1, obj, 'fire:', None, False)

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstimezone.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstimezone.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nstimezone.py	Tue Sep  1 10:48:21 2009
@@ -16,5 +16,10 @@
 
         self.failUnlessIsInstance(NSSystemTimeZoneDidChangeNotification, unicode)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSTimeZoneNameStyleGeneric, 4)
+        self.failUnlessEqual(NSTimeZoneNameStyleShortGeneric, 5)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurl.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurl.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurl.py	Tue Sep  1 10:48:21 2009
@@ -13,5 +13,83 @@
         self.failUnlessResultIsBOOL(NSURL.setProperty_forKey_)
         self.failUnlessArgIsBOOL(NSURL.URLHandleUsingCache_, 0)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSURLBookmarkCreationPreferFileIDResolution, ( 1 << 8 ))
+        self.failUnlessEqual(NSURLBookmarkCreationMinimalBookmark, ( 1 << 9 ))
+        self.failUnlessEqual(NSURLBookmarkCreationSuitableForBookmarkFile, ( 1 << 10 ))
+        self.failUnlessEqual(NSURLBookmarkResolutionWithoutUI, ( 1 << 8 ))
+        self.failUnlessEqual(NSURLBookmarkResolutionWithoutMounting, ( 1 << 9 ))
+
+        self.failUnlessIsInstance(NSURLNameKey, unicode)
+        self.failUnlessIsInstance(NSURLLocalizedNameKey, unicode)
+        self.failUnlessIsInstance(NSURLIsRegularFileKey, unicode)
+        self.failUnlessIsInstance(NSURLIsDirectoryKey, unicode)
+        self.failUnlessIsInstance(NSURLIsSymbolicLinkKey, unicode)
+        self.failUnlessIsInstance(NSURLIsVolumeKey, unicode)
+        self.failUnlessIsInstance(NSURLIsPackageKey, unicode)
+        self.failUnlessIsInstance(NSURLIsSystemImmutableKey, unicode)
+        self.failUnlessIsInstance(NSURLIsUserImmutableKey, unicode)
+        self.failUnlessIsInstance(NSURLIsHiddenKey, unicode)
+        self.failUnlessIsInstance(NSURLHasHiddenExtensionKey, unicode)
+        self.failUnlessIsInstance(NSURLCreationDateKey, unicode)
+        self.failUnlessIsInstance(NSURLContentAccessDateKey, unicode)
+        self.failUnlessIsInstance(NSURLContentModificationDateKey, unicode)
+        self.failUnlessIsInstance(NSURLAttributeModificationDateKey, unicode)
+        self.failUnlessIsInstance(NSURLLinkCountKey, unicode)
+        self.failUnlessIsInstance(NSURLParentDirectoryURLKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeURLKey, unicode)
+        self.failUnlessIsInstance(NSURLTypeIdentifierKey, unicode)
+        self.failUnlessIsInstance(NSURLLocalizedTypeDescriptionKey, unicode)
+        self.failUnlessIsInstance(NSURLLabelNumberKey, unicode)
+        self.failUnlessIsInstance(NSURLLabelColorKey, unicode)
+        self.failUnlessIsInstance(NSURLLocalizedLabelKey, unicode)
+        self.failUnlessIsInstance(NSURLEffectiveIconKey, unicode)
+        self.failUnlessIsInstance(NSURLCustomIconKey, unicode)
+        self.failUnlessIsInstance(NSURLFileSizeKey, unicode)
+        self.failUnlessIsInstance(NSURLFileAllocatedSizeKey, unicode)
+        self.failUnlessIsInstance(NSURLIsAliasFileKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeLocalizedFormatDescriptionKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeTotalCapacityKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeAvailableCapacityKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeResourceCountKey, unicode)
+
+    @min_os_level('10.6')
+    @expectedFailure
+    def testConstants10_6_notpresent(self):
+        self.failUnlessIsInstance(NSURLVolumeSupportsPersistentIDsKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeSupportsSymbolicLinksKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeSupportsHardLinksKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeSupportsJournalingKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeIsJournalingKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeSupportsSparseFilesKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeSupportsZeroRunsKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeSupportsCaseSensitiveNamesKey, unicode)
+        self.failUnlessIsInstance(NSURLVolumeSupportsCasePreservedNamesKey, unicode)
+
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSURL.getResourceValue_forKey_error_)
+        self.failUnlessArgIsOut(NSURL.getResourceValue_forKey_error_, 0)
+        self.failUnlessArgIsOut(NSURL.getResourceValue_forKey_error_, 2)
+        self.failUnlessArgIsOut(NSURL.resourceValuesForKeys_error_, 1)
+        self.failUnlessResultIsBOOL(NSURL.setResourceValue_forKey_error_)
+        self.failUnlessArgIsOut(NSURL.setResourceValue_forKey_error_, 2)
+        self.failUnlessResultIsBOOL(NSURL.setResourceValues_error_)
+        self.failUnlessArgIsOut(NSURL.setResourceValues_error_, 1)
+        self.failUnlessResultIsBOOL(NSURL.checkResourceIsReachableAndReturnError_)
+        self.failUnlessArgIsOut(NSURL.checkResourceIsReachableAndReturnError_, 0)
+        self.failUnlessResultIsBOOL(NSURL.isFileReferenceURL)
+
+        self.failUnlessArgIsOut(NSURL.bookmarkDataWithOptions_includingResourceValuesForKeys_relativeToURL_error_, 3)
+        self.failUnlessArgHasType(NSURL.initByResolvingBookmarkData_options_relativeToURL_bookmarkDataIsStale_error_, 3, 'o^' + objc._C_NSBOOL)
+        self.failUnlessArgIsOut(NSURL.initByResolvingBookmarkData_options_relativeToURL_bookmarkDataIsStale_error_, 4)
+        self.failUnlessArgHasType(NSURL.URLByResolvingBookmarkData_options_relativeToURL_bookmarkDataIsStale_error_, 3, 'o^' + objc._C_NSBOOL)
+        self.failUnlessArgIsOut(NSURL.URLByResolvingBookmarkData_options_relativeToURL_bookmarkDataIsStale_error_, 4)
+        self.failUnlessResultIsBOOL(NSURL.writeBookmarkData_toURL_options_error_)
+        self.failUnlessArgIsOut(NSURL.writeBookmarkData_toURL_options_error_, 3)
+        self.failUnlessArgIsOut(NSURL.bookmarkDataWithContentsOfURL_error_, 1)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurlconnection.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurlconnection.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurlconnection.py	Tue Sep  1 10:48:21 2009
@@ -1,6 +1,12 @@
 from Foundation import *
 from PyObjCTools.TestSupport import *
 
+
+class TestNSURLConnectionHelper (NSObject):
+    def connection_canAuthenticateAgainstProtectionSpace_(self, a, b): return 1
+    def connectionShouldUseCredentialStorage_(self, a): return 1
+    def connection_didSendBodyData_totalBytesWritten_totalBytesExpectedToWrite_(self, a, b, c, d): return 1
+
 class TestNSURLConnection (TestCase):
     def testMethods(self):
         self.failUnlessResultIsBOOL(NSURLConnection.canHandleRequest_)
@@ -10,5 +16,13 @@
         self.failUnlessArgIsOut(NSURLConnection.sendSynchronousRequest_returningResponse_error_, 1)
         self.failUnlessArgIsOut(NSURLConnection.sendSynchronousRequest_returningResponse_error_, 2)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(TestNSURLConnectionHelper.connection_canAuthenticateAgainstProtectionSpace_)
+        self.failUnlessResultIsBOOL(TestNSURLConnectionHelper.connectionShouldUseCredentialStorage_)
+        self.failUnlessArgHasType(TestNSURLConnectionHelper.connection_didSendBodyData_totalBytesWritten_totalBytesExpectedToWrite_, 1, objc._C_NSInteger)
+        self.failUnlessArgHasType(TestNSURLConnectionHelper.connection_didSendBodyData_totalBytesWritten_totalBytesExpectedToWrite_, 2, objc._C_NSInteger)
+        self.failUnlessArgHasType(TestNSURLConnectionHelper.connection_didSendBodyData_totalBytesWritten_totalBytesExpectedToWrite_, 3, objc._C_NSInteger)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurldownload.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurldownload.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurldownload.py	Tue Sep  1 10:48:21 2009
@@ -5,6 +5,8 @@
     def download_willResumeWithResponse_fromByte_(self, a, b, c): pass
     def download_didReceiveDataOfLength_(self, a, b): pass
     def download_shouldDecodeSourceDataOfMIMEType_(self, a, b): return 1
+    def download_canAuthenticateAgainstProtectionSpace_(self, a, b): return 1
+    def downloadShouldUseCredentialStorage_(self, a): return 1
 
 
 class TestNSURLDownload (TestCase):
@@ -19,6 +21,8 @@
         self.failUnlessArgHasType(TestNSURLDownloadHelper.download_willResumeWithResponse_fromByte_, 2, objc._C_LNG_LNG)
         self.failUnlessArgHasType(TestNSURLDownloadHelper.download_didReceiveDataOfLength_, 1, objc._C_NSUInteger)
         self.failUnlessResultIsBOOL(TestNSURLDownloadHelper.download_shouldDecodeSourceDataOfMIMEType_)
+        self.failUnlessResultIsBOOL(TestNSURLDownloadHelper.download_canAuthenticateAgainstProtectionSpace_)
+        self.failUnlessResultIsBOOL(TestNSURLDownloadHelper.downloadShouldUseCredentialStorage_)
 
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurlerror.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurlerror.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurlerror.py	Tue Sep  1 10:48:21 2009
@@ -50,5 +50,12 @@
     def testConstants10_5(self):
         self.failUnlessEqual(NSURLErrorDataLengthExceedsMaximum, -1103)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSURLErrorFailingURLErrorKey, unicode)
+        self.failUnlessIsInstance(NSURLErrorFailingURLStringErrorKey, unicode)
+
+        self.failUnlessEqual(NSURLErrorClientCertificateRequired, -1206)
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurlprotectionspace.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurlprotectionspace.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsurlprotectionspace.py	Tue Sep  1 10:48:21 2009
@@ -12,6 +12,11 @@
         self.failUnlessIsInstance(NSURLAuthenticationMethodHTTPDigest, unicode)
         self.failUnlessIsInstance(NSURLAuthenticationMethodHTMLForm, unicode)
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSURLAuthenticationMethodClientCertificate, unicode)
+        self.failUnlessIsInstance(NSURLAuthenticationMethodServerTrust, unicode)
+
     def testMethods(self):
         self.failUnlessResultIsBOOL(NSURLProtectionSpace.receivesCredentialSecurely)
         self.failUnlessResultIsBOOL(NSURLProtectionSpace.isProxy)

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsview.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsview.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsview.py	Tue Sep  1 10:48:21 2009
@@ -50,7 +50,29 @@
         self.failUnlessIsInstance(NSFullScreenModeWindowLevel, unicode)
         self.failUnlessIsInstance(NSViewDidUpdateTrackingAreasNotification, unicode)
 
-
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSViewLayerContentsRedrawNever, 0)
+        self.failUnlessEqual(NSViewLayerContentsRedrawOnSetNeedsDisplay, 1)
+        self.failUnlessEqual(NSViewLayerContentsRedrawDuringViewResize, 2)
+        self.failUnlessEqual(NSViewLayerContentsRedrawBeforeViewResize, 3)
+
+        self.failUnlessEqual(NSViewLayerContentsPlacementScaleAxesIndependently, 0)
+        self.failUnlessEqual(NSViewLayerContentsPlacementScaleProportionallyToFit, 1)
+        self.failUnlessEqual(NSViewLayerContentsPlacementScaleProportionallyToFill, 2)
+        self.failUnlessEqual(NSViewLayerContentsPlacementCenter, 3)
+        self.failUnlessEqual(NSViewLayerContentsPlacementTop, 4)
+        self.failUnlessEqual(NSViewLayerContentsPlacementTopRight, 5)
+        self.failUnlessEqual(NSViewLayerContentsPlacementRight, 6)
+        self.failUnlessEqual(NSViewLayerContentsPlacementBottomRight, 7)
+        self.failUnlessEqual(NSViewLayerContentsPlacementBottom, 8)
+        self.failUnlessEqual(NSViewLayerContentsPlacementBottomLeft, 9)
+        self.failUnlessEqual(NSViewLayerContentsPlacementLeft, 10)
+        self.failUnlessEqual(NSViewLayerContentsPlacementTopLeft, 11)
+
+        self.failUnlessIsInstance(NSDefinitionPresentationTypeKey, unicode)
+        self.failUnlessIsInstance(NSDefinitionPresentationTypeOverlay, unicode)
+        self.failUnlessIsInstance(NSDefinitionPresentationTypeDictionaryApplication, unicode)
 
     def testMethods(self):
         self.failUnlessResultIsBOOL(NSView.isDescendantOf_)
@@ -116,6 +138,21 @@
         self.failUnlessResultIsBOOL(NSView.enterFullScreenMode_withOptions_)
         self.failUnlessResultIsBOOL(NSView.isInFullScreenMode)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSView.canDrawConcurrently)
+        self.failUnlessArgIsBOOL(NSView.setCanDrawConcurrently_, 0)
+        self.failUnlessResultIsBOOL(NSView.acceptsTouchEvents)
+        self.failUnlessArgIsBOOL(NSView.setAcceptsTouchEvents_, 0)
+        self.failUnlessResultIsBOOL(NSView.wantsRestingTouches)
+        self.failUnlessArgIsBOOL(NSView.setWantsRestingTouches_, 0)
+
+        self.failUnlessArgHasType(NSView.showDefinitionForAttributedString_atPoint_, 1, NSPoint.__typestr__)
+
+        self.failUnlessArgHasType(NSView.showDefinitionForAttributedString_range_options_baselineOriginProvider_, 1, NSRange.__typestr__)
+        self.failUnlessArgIsBlock(NSView.showDefinitionForAttributedString_range_options_baselineOriginProvider_, 3, 
+                NSPoint.__typestr__ + NSRange.__typestr__)
+
 
     def testProtocol(self):
         self.failUnlessArgHasType(TestNSViewHelper.view_stringForToolTip_point_userData_, 2, NSPoint.__typestr__)

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsviewcontroller.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsviewcontroller.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsviewcontroller.py	Tue Sep  1 10:48:21 2009
@@ -10,5 +10,6 @@
 
         self.failUnlessResultIsBOOL(NSViewController.commitEditing)
 
+
 if __name__ == "__main__":
     main()

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nswindow.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nswindow.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nswindow.py	Tue Sep  1 10:48:21 2009
@@ -69,6 +69,22 @@
         self.failUnlessIsInstance(NSWindowDidEndSheetNotification, unicode)
         self.failUnlessIsInstance(NSWindowDidChangeScreenProfileNotification, unicode)
 
+
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessEqual(NSAppKitVersionNumberWithDeferredWindowDisplaySupport, 1019.0)
+
+        self.failUnlessEqual(NSWindowCollectionBehaviorManaged, 1<<2)
+        self.failUnlessEqual(NSWindowCollectionBehaviorTransient, 1<<3)
+        self.failUnlessEqual(NSWindowCollectionBehaviorStationary, 1<<4)
+        self.failUnlessEqual(NSWindowCollectionBehaviorParticipatesInCycle, 1<<5)
+        self.failUnlessEqual(NSWindowCollectionBehaviorIgnoresCycle, 1<<6)
+        self.failUnlessEqual(NSWindowNumberListAllApplications, 1<<0)
+        self.failUnlessEqual(NSWindowNumberListAllSpaces, 1<<4)
+
+        self.failUnlessIsInstance(NSWindowWillStartLiveResizeNotification, unicode)
+        self.failUnlessIsInstance(NSWindowDidEndLiveResizeNotification, unicode)
+
     def testMagicConstants(self):
         self.failUnlessEqual(NSNormalWindowLevel, kCGNormalWindowLevel)
         self.failUnlessEqual(NSFloatingWindowLevel, kCGFloatingWindowLevel)
@@ -159,6 +175,19 @@
         self.failUnlessResultIsBOOL(NSWindow.canBeVisibleOnAllSpaces)
         self.failUnlessArgIsBOOL(NSWindow.setCanBeVisibleOnAllSpaces_, 0)
 
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessResultIsBOOL(NSWindow.inLiveResize)
+        self.failUnlessResultIsBOOL(NSWindow.isOnActiveSpace)
+        self.failUnlessResultIsBOOL(NSWindow.isMovable)
+        self.failUnlessArgIsBOOL(NSWindow.setMovable_, 0)
+        self.failUnlessResultIsBOOL(NSWindow.preventsApplicationTerminationWhenModal)
+        self.failUnlessArgIsBOOL(NSWindow.setPreventsApplicationTerminationWhenModal_, 0)
+        self.failUnlessResultIsBOOL(NSWindow.allowsConcurrentViewDrawing)
+        self.failUnlessArgIsBOOL(NSWindow.setAllowsConcurrentViewDrawing_, 0)
+
+        self.failUnlessArgHasType(NSWindow.windowNumberAtPoint_belowWindowWithWindowNumber_, 0, NSPoint.__typestr__)
+
     def testProtocols(self):
         self.failUnlessResultIsBOOL(TestNSWindowHelper.windowShouldClose_)
         self.failUnlessResultHasType(TestNSWindowHelper.windowWillResize_toSize_, NSSize.__typestr__)

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsworkspace.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsworkspace.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/PyObjCTest/test_nsworkspace.py	Tue Sep  1 10:48:21 2009
@@ -63,6 +63,31 @@
         self.failUnless(isinstance(NSWorkspaceRecycleOperation, unicode))
         self.failUnless(isinstance(NSWorkspaceDuplicateOperation, unicode))
 
+    @min_os_level('10.6')
+    def testConstants10_6(self):
+        self.failUnlessIsInstance(NSWorkspaceDesktopImageScalingKey, unicode)
+        self.failUnlessIsInstance(NSWorkspaceDesktopImageAllowClippingKey, unicode)
+        self.failUnlessIsInstance(NSWorkspaceDesktopImageFillColorKey, unicode)
+        self.failUnlessIsInstance(NSWorkspaceApplicationKey, unicode)
+        self.failUnlessIsInstance(NSWorkspaceDidHideApplicationNotification, unicode)
+        self.failUnlessIsInstance(NSWorkspaceDidUnhideApplicationNotification, unicode)
+        self.failUnlessIsInstance(NSWorkspaceDidActivateApplicationNotification, unicode)
+        self.failUnlessIsInstance(NSWorkspaceDidDeactivateApplicationNotification, unicode)
+        self.failUnlessIsInstance(NSWorkspaceVolumeLocalizedNameKey, unicode)
+        self.failUnlessIsInstance(NSWorkspaceVolumeURLKey, unicode)
+        self.failUnlessIsInstance(NSWorkspaceVolumeOldLocalizedNameKey, unicode)
+        self.failUnlessIsInstance(NSWorkspaceVolumeOldURLKey, unicode)
+        self.failUnlessIsInstance(NSWorkspaceDidRenameVolumeNotification, unicode)
+        self.failUnlessIsInstance(NSWorkspaceScreensDidSleepNotification, unicode)
+        self.failUnlessIsInstance(NSWorkspaceScreensDidWakeNotification, unicode)
+        self.failUnlessIsInstance(NSWorkspaceDidChangeFileLabelsNotification, unicode)
+        self.failUnlessIsInstance(NSWorkspaceActiveSpaceDidChangeNotification, unicode)
+        self.failUnlessIsInstance(NSWorkspaceLaunchConfigurationAppleEvent, unicode)
+        self.failUnlessIsInstance(NSWorkspaceLaunchConfigurationArguments, unicode)
+        self.failUnlessIsInstance(NSWorkspaceLaunchConfigurationEnvironment, unicode)
+        self.failUnlessIsInstance(NSWorkspaceLaunchConfigurationArchitecture, unicode)
+
+
     def testMethods(self):
         self.failUnlessResultIsBOOL(NSWorkspace.openFile_)
         self.failUnlessResultIsBOOL(NSWorkspace.openFile_withApplication_)
@@ -100,6 +125,24 @@
         self.failUnlessResultIsBOOL(NSWorkspace.filenameExtension_isValidForType_)
         self.failUnlessResultIsBOOL(NSWorkspace.type_conformsToType_)
 
+        self.failUnlessResultIsBOOL(NSWorkspace.selectFile_inFileViewerRootedAtPath_)
+        self.failUnlessArgHasType(NSWorkspace.slideImage_from_to_, 1, NSPoint.__typestr__)
+        self.failUnlessArgHasType(NSWorkspace.slideImage_from_to_, 2, NSPoint.__typestr__)
+
+    @min_os_level('10.6')
+    def testMethods10_6(self):
+        self.failUnlessArgIsOut(NSWorkspace.launchApplicationAtURL_options_configuration_error_, 3)
+        self.failUnlessResultIsBOOL(NSWorkspace.showSearchResultsForQueryString_)
+
+        self.failUnlessArgIsBlock(NSWorkspace.recycleURLs_completionHandler_, 1, 'v@@')
+        self.failUnlessArgIsBlock(NSWorkspace.duplicateURLs_completionHandler_, 1, 'v@@')
+
+        self.failUnlessResultIsBOOL(NSWorkspace.unmountAndEjectDeviceAtURL_error_)
+        self.failUnlessArgIsOut(NSWorkspace.unmountAndEjectDeviceAtURL_error_, 1)
+
+        self.failUnlessResultIsBOOL(NSWorkspace.setDesktopImageURL_forScreen_options_error_)
+        self.failUnlessArgIsOut(NSWorkspace.setDesktopImageURL_forScreen_options_error_, 3)
+
 
 if __name__ == '__main__':
     main( )

Modified: trunk/pyobjc/pyobjc-framework-Cocoa/setup.py
==============================================================================
--- trunk/pyobjc/pyobjc-framework-Cocoa/setup.py	(original)
+++ trunk/pyobjc/pyobjc-framework-Cocoa/setup.py	Tue Sep  1 10:48:21 2009
@@ -22,6 +22,12 @@
     CFLAGS=["-isysroot", "/"]
     LDFLAGS=CFLAGS
 
+import platform
+CFLAGS.append(
+    "-DPyObjC_BUILD_RELEASE=%02d%02d"%(tuple(map(int, platform.mac_ver()[0].split('.')[:2])))
+)
+
+
 try:
     from PyObjCMetaData.commands import extra_cmdclass, extra_options
 except ImportError:
@@ -163,10 +169,6 @@
                 [ 'Modules/_Foundation_NSDecimal.m' ],
                 extra_compile_args=CFLAGS,
                 extra_link_args=CFLAGS + ['-framework', 'Foundation']),
-        Extension('Foundation._functioncallbacks', 
-                [ 'Modules/_Foundation_functioncallbacks.m' ],
-                extra_compile_args=CFLAGS,
-                extra_link_args=CFLAGS + ['-framework', 'Foundation']),
         Extension('Foundation._nscoder', 
                 [ 'Modules/_Foundation_nscoder.m' ],
                 extra_compile_args=CFLAGS,

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july