This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 47513 - [40cat] items in build menu for freeform project not in menu bar
Summary: [40cat] items in build menu for freeform project not in menu bar
Status: RESOLVED WONTFIX
Alias: None
Product: projects
Classification: Unclassified
Component: Generic Projects UI (show other bugs)
Version: 4.x
Hardware: PC Windows ME/2000
: P4 blocker (vote)
Assignee: jrojcek
URL:
Keywords:
Depends on:
Blocks: 42682
  Show dependency tree
 
Reported: 2004-08-19 19:08 UTC by shemnon
Modified: 2009-11-07 11:38 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description shemnon 2004-08-19 19:08:45 UTC
[ BUILD # : 200408121535 ]
[ JDK VERSION : J2SE 1.4.2_04 ]

The context menu for the freeform project has 
Build Ptoject, Clean Project, Clean and Build Project, Run Project, Generate Javadoc for Project, and then <custom build targets>.  

In the build menu bar the space reserved for <project type specific build items> contains only Generate Javadoc for "<project>".  

This seems to be a huge mis-match, either more of the standard context options should be in the menu bar or none should be.
Comment 1 Jesse Glick 2004-08-19 19:56:56 UTC
As designed. Main menu items are intended to be fixed in number and
identity. Since different freeform projects can have arbitrary
different context menu items, it would be impossible to have the main
menu display every possible action for all open projects (many of
which would usually be disabled anyway, depending on the node
selection) or the actions for the currently selected project, without
making the Build menu be dynamically (re-)populated (which can cause
problems for customization and for the screen menu bar on Mac OS X).
Custom actions can be invoked just from the context menu on the project.
Comment 2 Jesse Glick 2004-08-19 19:57:09 UTC
x
Comment 3 Jesse Glick 2004-08-19 19:57:21 UTC
More appropriate resolution.
Comment 4 shemnon 2004-08-19 20:11:25 UTC
Is there a different set of design docs that are not available on the
web site?

http://projects.netbeans.org/buildsys/build-sys-ui-spec.html

Go down to the "Build Menu," the second set of menu items are reserved
per project type.

I understand not wanting toa dd every custom target that shows up on
teh context popup menu, but there are standard buld targets that the
wizard prompts for.  Those could be added.

And if none are going to be added then the "Generate Javadoc for
<project>" menu item should be removed, because it is confusing to the
user to see one and only one project specific build target when there
are at least four other standard project targets.

As it stands, having items only accessable via context menus violates
the java look and feel...
http://java.sun.com/products/jlf/ed2/book/HIG.Menus3.html#42159 (first
coffee cup point under contextual menus.  If the concern is for too
large a menu perhaps the custom build targets could live inside a
"custom targets" cascade?  

If it's going to be closed again as "won't fix" please state that you
are aware it vioaltes usability guidelines.
Comment 5 Jesse Glick 2004-08-19 20:38:14 UTC
The section "reserved for project-type specific items" is for just
that - items which are generally used by a project type (preferably
more than one). But an individual freeform project can have arbitrary
actions which are not common to other freeform projects, much less
other kinds of projects. It does not make sense to add menu items for
idiosyncratic actions which only apply to a single project.

Generate Javadoc is used by other project types as well and makes
sense as a global option since it is so common.

Clean is available for all project types but intentionally omitted
from the main menu in favor of Clean & Build.

Redeploy could perhaps be added to the Run menu, especially if
standard web app projects bind it also.

All other actions with standard binding names recommended by the
freeform properties dialog are already in the main menus (Build or Run).

Re. having a main menu item for every possible context menu item -
nice goal, but not always practical. Evaluated on a case by case
basis. Especially for items which are context-sensitive: e.g. just
because a Java class node has a context menu that lets you Add ->
Method doesn't mean it is practical to have a main menu item "Add
Method to Currently Java Class" enabled when a class node is selected.
It would just be too much.

Reassigning to Jano for consideration of other suggestions such as a
submenu with items generated from the currently selected project,
which could be helpful from the standpoint of number of keystrokes
required to invoke the action. Would require API changes, however, in
addition to UI changes, so not planned for 4.0.
Comment 6 shemnon 2004-08-19 21:08:47 UTC
As a clarifiction, perhaps the main point fo this bug as I first
intended it.  Build and Clean and Build are only available for the
freeform project iff it is also the main project.  if a freeform
project is not the main project but focused in some way (as a tree
selection in the projects tab or editing a file in that project) then
there is no way via the menu bar to build or to clean and build the
project.  If just those two menu items (in the same menu group as the
generate javadoc item) were addressed I would be satisfied in
resolving the bug.
Comment 7 Jesse Glick 2004-08-20 17:54:42 UTC
The last paragraph referred to issue #47510, a separate consideration.
Comment 8 Jesse Glick 2009-10-20 16:49:24 UTC
No plans to create such a UI that I know of. Could be prototyped as an add-on module if there is sufficient interest.