[kepler-dev] [Bug 4291] - The main menu bar should not change based on the location of focus.

bugzilla-daemon at ecoinformatics.org bugzilla-daemon at ecoinformatics.org
Tue Aug 18 09:01:33 PDT 2009


http://bugzilla.ecoinformatics.org/show_bug.cgi?id=4291


cxh at eecs.berkeley.edu changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         OS/Version|All                         |MacOS X
           Priority|P1                          |P3
           Platform|All                         |Macintosh




------- Comment #1 from cxh at eecs.berkeley.edu  2009-08-18 09:01 -------
I believe this is a Mac OS X specific bug, so I'm changing the Hardware and OS.
I'm also lowering this in priority because the system still works with 
this bug.

The bug can be restated as:
In many schools of UI design, it is considered to be "bad" if the menu choices
change.  It is considered good design if menu choices are disabled instead
of removed.  However, this rule is often violated.

In Kepler under Mac OS X, we now have one menu bar at the top, which 
presumably follows the Mac design.  However, on other platforms, each window
has its own menu bar.  So, on other platforms, the graph editor, the Display
actor and the Plotter all have separate menu bars, but on the Mac, we 
currently change the menu bar depending on the focus.

One possible solution would be to have the Display and Plotter disable
all non-applicable menu choices.

However, a larger issue is that we basically have a plug-in system where
the user adds functionality and we don't know what menus will be added as
the system is run and new functionality is loaded.  So, an entirely static
set of menu choices is not really possible in a user extensible system.
Currently, the vergil graph viewer, the Display actor and the Plot actor all
use ptolemy.gui.Top, which provides some uniformity of menu choices.

I see this as quite a bit of work and out of scope for 2.0.0.  It would
be faster to identify a Mac OS X UI compliant system and redevelop using
that system.  Looking at how Netbeans and Eclipse RCP work might help here.

I agree that developing menu infrastructure that changed less might be nice,
but should we hold up 2.0.0 for this?


More information about the Kepler-dev mailing list