Below are descriptions for menus that are common to many programs. Because they are so common, there are some guidelines to their use so that there is some consistency from program to program. With the exception of the Program menu, each of these menus should be used only if they make sense for your program.
Program: Items related to operating on the program itself.
Shows the About window. This is not a commonly-accessed item, so do not provide a keyboard shortcut for it.
Show the window which is used to customize options for your program. This can be a submenu if your program only has a couple of options.
This should be the bottom item in the menu and a separator should go above it. Clicking on this item should close all windows and quit the program.
File: This contains items related to documents handled by your program.
Create a new document. This item should have an ellipsis if it shows a window, but not if it doesn't.
Open a document from disk.
This is a submenu in the File menu to allow fast access to recent documents. It should not open a window of any kind except if your program uses a one-window-per-document architecture. The number of recent items should be limited to no more than 5 items.
The function of this item depends on the program architecture. In a program which has one document per window, this closes the window. If there is only one open window, this quits the program. Although it is not recommended, if a program allows for multiple documents to be shown in the same window, this item closes one document.
Save the current document. This should not show a window unless it is a new document that has not yet been saved. It does not normally show a window, so no ellipsis is necessary.
This performs the same basic kind of task as Save, but it always shows a window.
This item executes a Save command for all documents in the program. The procedure for handling new documents which have not yet been saved is as follows:
Undoes all changes made to the document since the last save.
Import data from another file format into a new document. Like Open, this always shows a window.
Convert the data in the current document to another format. Like Save As, this always shows a window.
Shows the page settings window for printer setup.
This always shows the print window before printing the current document. This is not intended to be the same as when a toolbar button is pressed.
Edit: Items in this menu are used for different editing tasks
Undoes the most recently performed edit. When possible, this item should be dynamic and also include the name of the task that it would undo, such as 'Undo Cut' or 'Undo Typing.' User operations which do not change document data, such as changing zoom levels or the like, should not be included in Undo operations.
Undoes the most recent Undo operation. Like Undo, this menu item should also be dynamic when possible.
Copies the currently-selected data in the current document to the clipboard and removes it from the document.
Copies the currently-selected data in the current document to the clipboard.
Inserts the data on the clipboard into the current document. If there is an existing selection in the current document, the paste operation replaces the selected data with the pasted data.
Selects all data in the current document.
Search: Tasks in this menu include finding and replacing data and other navigation commands.
This always shows a Find window for the program. The Find window should then allow the user to choose whatever options he desires for the find and disappear when the actual find is executed.
This repeats the most recent Find. If no find has been performed in the program yet, it should show the Find window. Because this command does not normally show a window, no ellipsis is needed.
Help: Different ways that the user can learn more about your program and get help when needed.
Shows the manual for the program in a new window. The manual should never be shown in a BAlert.
Opens the default web browser at the website for the program or the program's company, respectively.