System information

Besides fixing the specific problem, which was an internal bug in Classic, a change was made to Classic USB policy
for MacOS X 10.2 and later. The new policy is that if a USB device has multiple interfaces, some of which are of the
class that they might have been opened by Classic to be visible to the emulated MacOS 9 environment, yet others of
which are not and thus might successfully match to a Mac OS X driver, then the entire device is not opened by
Classic and thus will only function in the Mac OS X environment. In other words, "split cases" where a USB device
has some interfaces in use by Classic and some by "X" drivers, will no longer be allowed. For additional
information on which devices are seized by Classic, search for the document "Classic USB Device Arbitration" on
developer.apple.com and in the USB SDK; it has been updated for Jaguar. (r. 2761572).
Calling LMGetBootDrive() from classic now returns the correct volume reference number. (r. 2756118).
It is now possible for classic applications to extract the process serial number from an Apple event they received
from a Mac OS X application, save that process serial number, and later use it to send an Apple event to that
application. (r. 2392561).
A problem where Application Died events were not being sent for Classic applications that had unexpectedly quit
has been corrected. (r. 2922254).
When called from a Classic application, PBHGetDirAccess was failing with a paramErr (-50). This has been
corrected. (r. 2908703).
A problem where Gestalt() was returning the wrong system version - 9.2 rather than 9.2.1 - when called in a
classic application running in the Classic environment in Mac OS X 10.1 has been corrected. (r. 2771448).
Better Apple Event error checking and handling has been added to Classic Support's Apple Event handlers. This
helps prevent possible crashes inside Classic if an error occurred while an Apple Event was being processed. (r.
2749114).
A problem where applications in the Classic environment could not connect to localhost tcp servers running in Mac
OS X has been fixed. (r. 2831535).
A problem where PAP spoolers running in the Classic environment could not be seen over AppleTalk by
PrintCenter has been fixed. (r. 2720750).
Back to top
Cocoa
A set of object-oriented frameworks that support rapid development and high productivity, using a dynamic runtime and
rich object hierarchy. Please refer to file:///Developer/Documentation/ReleaseNotes/AppKit.html on your 10.2 system
for detailed information on changes in Cocoa in 10.2.
AppKit
AppKit is a framework that provides graphical objects with default behaviors for rapid application development, including
windows, panels, buttons, menus, scrollers, text fields, and more.
The declaration of NSCopyBitmapFromGState() listed in NSGraphics.h was removed. (r. 2781664).
NSColor's +colorWithPatternImage method now returns an auto-released object, where before it did not
(r.2797049) .
Back to top
AppKitJava
AppKitJava refers to the Java-language-specific portion of AppKit.
-outlineView:itemForPersistentObject: now has a Java based counterpart named
outlineViewItemForPersistentObject. As well, -outlineView:persistentObjectForItem: now has the Java based
counterpart outlineViewPersistentObjectForItem. (r. 2837824).
Cocoa-Java's NSSavePanel didn't have a way to set wether or not the extension is shown. Now, the following APIs
can be used to control extension hiding: setCanSelectHiddenExtension, isExtensionHidden, and setExtensionHidden.
(r. 2830102).
Back to top