1. A computer-implemented method for navigating among a hierarchy of palette windows in a graphical user interface displayed on a computer system, wherein the computer system includes a display, the method comprising: displaying on the display a first palette window from the hierarchy of palette windows, wherein one or more of the palette windows in the hierarchy comprise palette items that are selectable by a user, wherein each of the palette items is selectable by the user to include functionality in a program being created or modified, wherein one or more of the palette windows comprise a palette window selection item, wherein the palette window selection item is selectable by the user to display a second palette window from the hierarchy of palette windows, and wherein the first palette window includes one or more navigation items displayed on the first palette window for navigating among the hierarchy of palette windows; receiving user input selecting a navigation item displayed on the first palette window; closing the first palette window in response to said receiving user input selecting the navigation item; and displaying at least one of a parent palette window or a child palette window in relation to the first palette window in the hierarchy of palette windows in response to said user input selecting the navigation item.