Desktop Environment

From Apache OpenOffice Wiki
Jump to: navigation, search



The com.sun.star.frame.Desktop service is the central management instance for the Apache OpenOffice application framework. All Apache OpenOffice application windows are organized in a hierarchy of frames that contain viewable components. The desktop is the root frame for this hierarchy. From the desktop you can load viewable components, access frames and components, terminate the office, traverse the frame hierarchy and dispatch command requests.

The name of this service originates at StarOffice 5.x, where all document windows were embedded into a common application window that was occupied by the StarOffice desktop, mirroring the Windows desktop. The root frame of this hierarchy was called the desktop frame. The name of this service and the interface name com.sun.star.frame.XDesktop were kept for compatibility reasons.

The desktop object and frame objects use auxiliary services, such as the com.sun.star.document.TypeDetection service and other, opaque implementations that interact with the UNO-based office, but are not accessible through the Apache OpenOffice API. Examples for the latter are the global document event handling and its user interface (Tools → Customize → Events), and the menu bars that use the dispatch API without being UNO services themselves. The desktop service, together with these surrounding objects, is called the desktop environment.

The Desktop terminates the office and manages components and frames

The viewable components managed by the desktop can be three different kinds of objects: full-blown office documents with a document model and controllers, components with a controller but no model, such as the bibliography and database browser, or simple windows without API-enabled controllers, for example, preview windows. The commonality between these types of components is the com.sun.star.lang.XComponent interface. Components with controllers are also called office components, whereas simple window components are called trivial components.

Frames in the Apache OpenOffice API are the connecting link between windows, components and the desktop environment. The relationship between frames and components is discussed in the next section, Framework API.

Like all other services, the com.sun.star.frame.Desktop service can be exchanged by another implementation that extends the functionality of Apache OpenOffice. By exchanging the desktop service it is possible to use different kinds of windows or to make Apache OpenOffice use MDI instead of SDI. This is not an easy thing to do, but it is possible without changing any code elsewhere in Apache OpenOffice.

Content on this page is licensed under the Public Documentation License (PDL).
Personal tools
In other languages