The Java ME SDK 3.0 EA for MacOS can only be added as a Java Platform on the MacOS using NetBeans 6.8. To add the Java ME SDK 3.0 EA for Mac OS as a NetBeans Java Platform do the following: From. NetBeans is available for both Windows and Mac; we are using NetBeans IDE Release 3.6 / 4.0. When you select your download from the list under 'English installers', be sure to select the version for your particular operating system ( Mac OS X, Windows, etc ).
Table of Contents
- NetBeans on OS-X
- To platform-specific code or not
- The obvious stuff
- Subtler but nice to have changes
NetBeans does run on OS-X, as do other Java applications. But there are a number of ways in which it does not meet the expectations of macintosh users. We will explore the problems and potential solutions, starting with those which are glaring but requiring the least work, and moving into greater detail.
This document is a preliminary survey of areas known to be problematic in NetBeans on OS-X. Difficulty is rated on an ad-hoc scale from 1 to ten - these are off-the-cuff estimates trying to take into account as much as I know about the problems involved as possible. Feedback is welcomed - I am new to the Mac, so no doubt there are both some omissions and errors.
As much as I am able, I will try to take the perspective of an OS-X user in terms of the problems and solutions discussed here. Some will be clearly beyond the scope of what we should do, but it is helpful to review all of the options when prioritizing them.
The status notes 'not started' vs. 'not planned' should at this time be considered recommendations - those that are not started are ones I believe we could and should do; those marked not planned are more questionable or more far-reaching changes.
NetBeans is by definition, a Java application - write once, run anywhere. But, particularly with regard to the differences between the Macintosh UI and other platforms, providing an optimal user experience requires paying at least some attention to the expectations of users on a given platform.
While the number of NetBeans users on OS-X is a small (but growing) percentage, if we are to support a platform well, that means doing the work to create a good user experience. It is my opinion that, while we shouldn't go to the extreme of, say, providing an alternate Window System based on Java-Cocoa, we owe it to our users to do what it takes to make NetBeans feel like a natural part of their desktop. After all, if we don't, they'll simply use a competing IDE.
The first items to mention are things that stick out like sore thumbs. Many of them do not require heroic efforts to fix.
Does not use the screen menu bar — Mac apps use a single menu shared between all frames, displayed by the OS at the top of the screen. NetBeans displays its own menu in its main window. This can be fixed using a line switch, but there are currently problems with context sensitive actions not appearing enabled or disabled as they should be.
Solution: Locate and fix the menu enablement problems, and set the system property to use the system menu bar on startup.
Complications: None, other than diagnosing what's wrong with our menus - possibly could be rolled into other menu fixes mentioned below.
Difficulty: 3
Status: Not started
Issuezilla: pending
Solution: Write Aqua-friendly UI delegates for custom window system components.
Complications: Best ways to do Aqua friendly UIs, access to Aqua classes.
Difficulty: 2
Status: Provisionally solved
Issuezilla: pending
Look and feel — NetBeans needs to default to Aqua look and feel. This has already been provisionally changed, and it remains to be seen if there are significant problems that should cause this change to be rolled back. Solution: Make sure NetBeans works properly with Aqua look and feel, provides UI delegates for custom components that fit well in Aqua.
Note
The above screenshot does not perfectly match the development trunk; it uses the brushed metal look, which, while attractive, causes problems in dialogs, and contains the in progress implementation of finder-style toolbars, which is not in the trunk, and should not be used until after icon redesign. There is a different toolbar UI which is also Aqua friendly which is in the trunk and should ship with 3.6.
Complications: Access to Apple L&F classes, graphic elements (gradients, etc.) - we should minimize the amount of code that might need to be modified as Aqua evolves.
Difficulty: 5
Status: Provisional OS-X delegates pending review
Issuezilla: pending
The issues below would help NetBeans feel more natural on OS-X, but are non-critical.
Netbeans Jdk Mac Os X 10.6
Help integration — Even Java apps on OS-X are encouraged to use the operating system's help viewer. We use JavaHelp in our own help window.
Solution: The OS-X help browser uses HTML; it needs to be investigated how well it could work with JavaHelp content. We might be lucky and the integration could be fairly easy. It probably wouldn't be easy.
Complications: Interprocess communication, help file format compatibility.
Difficulty: 8
Status: Not planned
Issuezilla: pending
Note in the screenshot above the lack of complexity of the icons (good heavens, they're monochrome!), and how few there are.
Note
We have an implementation of Finder-style toolbars that could be put in place now, but it tends to emphasize just how badly our icons fit on the desktop more than the current UI. You can see it in the 12-30 development build screenshot above.
Solution: Reconsider the use of toolbars in general in NetBeans; either revamp them across the board, or offer a smaller subset via defaulting some to hidden if os os-x - this is easy to do - modules like the External Browser module already do similar things to offer per-platform configurations.
Complications: This needs to be approached by someone willing to slay sacred cows.
Difficulty: 2
Status: Not started
Issuezilla: pending