Frames

A frame can have three states--active, selected, and unselected:


If a frame is missing a shared library, a gray fill is displayed. The Show Borders command displays the extent of all frame borders within the active document.

Although frames are typically rectangular, they can be any shape. The size and shape of a frame is determined by the frame's container. When an embedded frame attempts to change size, it must negotiate with its container. The container also controls whether a frame can be moved or transformed.

The contents of the frame cannot control its size, shape, or location within its container, but the contents do control their response to these changes. For example, when a frame is set to a smaller size, the contents may decide to simply clip, reformat, or scale--whatever is appropriate for the component's data type.

Frame selection

When a frame is selected, it cannot be active--its containing frame is active. Selecting all of the contents of a frame is different than selecting the frame itself. When the user selects all of a frame's contents, the frame remains active and will persist even after the selection is deleted. When the user selects the frame itself, the containing frame is active, and the selected frame will be deleted if the selection is deleted.

A frame's container is responsible for providing selection feedback because it controls the size, shape, and location of its embedded frames. Since selection feedback is up to the container, a frame may highlight differently in different containers, or even in the same container if the frame is part of a multiple selection.

Developers are free to provide ways to select frames that are appropriate for their types of components. Currently, there are several ways for the user to select a frame:

A frame can be selected even when it has been opened into a window.

Frame activation

In the CommonPoint application system, only one frame can be active at a time--activating another frame deactivates the currently active frame. The active frame completely contains the current selection; the selection cannot span more than one frame.

The active frame must be in the active window. In fact, a frame cannot become active unless it is in the active window. When a frame becomes active, it highlights the current selection and shows its menus and palettes. When a frame becomes inactive, it clears the current selection and hides its menus and palettes. An inactive frame should not receive keyboard events.


The frame's container is responsible for displaying the activation feedback around an active, embedded frame. The frame's container is also responsible for removing the activation feedback around an embedded frame when it becomes inactive.

Frames are activated by clicking inside them. If a document contains a set of frames that are nested inside each other, clicking inside the frames will activate the deepest embedded frame that contains the mouse location.


Frames become inactive when the user clicks in the contents of some other frame. Clicking the menu palette, scroll bars, or other elements that cannot be activated does not deactivate a frame--only clicking inside the contents of another frame or window does so.

NOTE Not all frames can be activated. For example, a frame presenting a sound component might be represented as a command button--the sound can be played but not edited. In this case, the frame is not the same as an enclosable icon because the sound component is embedded and not enclosed.

Copying and pasting frames

The result of copying or moving a selection from one frame to another depends on the types of data understood by the source and destination frames:

If the selection consists of a single frame, the selection should always be embedded, regardless of whether the frame could have been absorbed.

If a selection consists of more than one frame, the selection should be wrapped in a frame of the same type as the original containing frame. The selection can be embedded or absorbed depending on the source and destination frame types.


[Contents] [Previous] [Next]
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.

Generated with WebMaker