Transitioning from Apple extensions
Scott Palmer
swpalmer at gmail.com
Fri Jun 1 11:44:46 PDT 2012
On 2012-06-01, at 1:32 PM, Chris Harshman wrote:
> On Fri, Jun 1, 2012 at 1:07 AM, Mario Torre
> <neugens.limasoftware at gmail.com>wrote:
>
>> That's the bet that people lose when use proprietary extensions.
>>
>
> Well, in fairness to OS X Java developers everywhere, Apple pitched Java as
> a first-class dev environment for the Mac for years, before abdicating;
> remember Steve Jobs joining McNealy during a JavaOne
> keynote<http://www.sfgate.com/cgi-bin/article.cgi?f=/e/a/2000/06/06/NEWS8616.dtl>
> ?
>
> At least the 'proprietary extensions' are still (from the developer's
> perspective) Java, and can be coded around; i.e., it's *preferable* (for
> Mac users/developers), but not *absolutely necessary* to use:
>
>
> - The apple.laf.useScreenMenuBar system property (which itself takes
> over from the deprecated com.apple.macos.useScreenMenuBar ) to use the
> Mac's native top-of-screen menu bar instead of a menu bar attached to a
> window (er, JFrame) instance;
> - The apple.laf.AquaLookAndFeel Swing look and feel
> - The com.apple.eawt.Application (i.e., .setDockIconImage(),
> .setDockMenu(), etc) package to manage an application's dock presence;
> - Apple's 'native' java.awt.FileDialog;
> - The apple.awt.fileDialogForDirectories property (that begat this
> thread that I've hijacked);
> - The Window.documentModified property to indicate a 'dirty' (unsaved
> changes) window state (this one may not be Mac-centric);
> - The com.apple.eawt.* classes to handle Apple events (with, e.g.,
> ApplicationAdapter already deprecated in favor of
> com.apple.eawt.AppEvent.* events...); etc.
I think Windows 7 has the equivalent of a dock (the "taskbar"), and a dock menu, and changing dock icons (with progress indicators and such), etc…
There is probably a windows equivalent of a quit message (independent of closing a window).
Windows has a directory chooser, so the "fileDialogForDirectories" is not Mac-only either. There are lots of overlapping features that are not covered by the JRE.
Given the Microsoft eventually just clones features from Mac OS… Maybe Oracle should simply use Mac OS as the basis of what will eventually become common functionality and provide support from the beginning. :-)
There is already more than one place in the JRE that states the functionality may not be available on all platforms. So when Windows catches up the implementation can be fleshed out.
Scott
More information about the macosx-port-dev
mailing list