LispWorks CAPI User Guide > 1 Introduction to the CAPI > 1.3 The CAPI model


1.3.1 CAPI Classes

There are four basic objects in the CAPI model: interfaces , menus , panes and layouts .

Everything that the CAPI displays is contained within an interface (an instance of the class interface ). When an interface is displayed a window appears containing all the menus and panes you have specified for it.

An interface can contain a number of menus which are collected together on a menu bar. Each menu on the menu bar can contain menu items or other menus. Items can be grouped together visually and functionally inside menu components . Menus, menu items, and menu components are, respectively, instances of the classes menu , menu-item , and menu-component .

Panes are window objects such as buttons and lists. They can be positioned anywhere in an interface. The CAPI provides many different kinds of pane class, among them push-button , list-panel , editor-pane , tree-view and graph-pane .

The positions of panes are controlled by a layout, which allows objects to be collected together and positioned either regularly (with instances of the classes column-layout , row-layout or grid-layout ) or arbitrarily using a pinboard-layout . Layouts themselves can be laid out by other layouts -- for example, a row of buttons can be laid out above a list by placing both the row-layout and the list in a column-layout .


LispWorks CAPI User Guide (Unix version) - 22 Dec 2009