FAQ Pages, parts, sites, windows: What is all this stuff?
Denizens of the Eclipse newsgroups, clearly expressing frustration with the overwhelming sea of terms, have been known to ask, “What is the Eclipsian word for X?,” or “What is that thingy called in Eclipse Speak?.” In an effort to assuage the suffering of new users, the following is a mile-high view of the pieces of the Eclipse UI.
The term used to represent the entire UI is workbench. The workbench itself has no physical manifestation, but the workbench object is used to access most of the general APIs and services available in the generic UI. The workbench is displayed in one or more workbench windows. These basic top-level windows make up an Eclipse application. Note that dialogs, wizards, and other transient pop-ups are not called workbench windows.
At the top of each window is the title bar, typically a native widget with a title and controls for resizing and closing. Next comes the menu bar, and after that is the cool bar. The cool bar is a fancy term for a bar of buttons that can be dragged around and reorganized across multiple lines. On the left, right, or bottom, depending on user preference, is the fast view bar, where fast views—iconified views—are stored. At the bottom is the status line, where various bits of information are shown; the far-right corner of the status line is called the progress indicator.
The main body of a workbench window is represented by the workbench page, which in turn is made up of workbench parts, which come in two varieties: views and editors. The initial size and orientation of the parts in the page are determined by a perspective.
Parts interact with the rest of the window via their site. The site is not a visible entity but simply an API mechanism to separate the methods that operate on the view from the methods that operate on controls and services outside the view. This allows the workbench implementers to add new features to the sites without breaking all the plug-ins that implement the parts. Figure 9.1 Spider graph shows how a view (ContentOutline) and an editor (WelcomeEditor) each has its own site, which is hosted by a page, inside a workbench window, owned by the workbench.
<img src="../images/views.png" alt="what a pity, spider went away"> Figure 9.1 Spider diagram of site parts
In addition, sites bring together that functionality that different parts of the workbench had in common but could not be expressed well in a single inheritance hierarchy.
This FAQ was originally published in Official Eclipse 3.0 FAQs. Copyright 2004, Pearson Education, Inc. All rights reserved. This text is made available here under the terms of the Eclipse Public License v1.0.