topmost

Generic Function

Package: common-graphics

Arguments: window

Returns the value of the topmost property of a basic-pane. Applicable only to top-level windows (those windows whose parent is the screen). If true, then window will always stay in front of all non-topmost top-level windows (assuming that window is itself a top-level window; topmost has no effect for a non-top-level window).

May be specified with the :topmost initarg as usual with properties. You can setf the topmost property of a window in order to change whether it is a topmost window. One exception is that if you turn on the topmost property of a form, the form itself will not be topmost, but its running window will be.

Care should be taken when making an owned (overlapped or pop-up) window be topmost, because this can lead to the owned siblings of the window becoming non-contiguous in the occlusion order; that is, some of the sibling owned windows may come in front of another application while others stay behind it. For example, if you make a window whose parent is the development-main-window in the IDE, it will be an owned top-level window (since the development-main-window defines an is-child-allowed method to force all of its descendents to be owned windows rather than child windows). If you further make this window be a topmost window and then expose and hide the window (perhaps with pop-up-modal-dialog), then you may find that returning to Allegro from another application exposes only a single selected IDE window.

Therefore, if you make an owned (overlapped or pop-up) window (which provides modality with respect to all of its sibling owned windows) for use as a modal dialog and wish the dialog to also be topmost, then it is recommended that you turn the topmost property on just before calling pop-up-modal-dialog and turn it back off just after.

Common Graphics and IDE documentation is described in About Common Graphics and IDE documentation in cgide.htm.

The documentation is described in introduction.htm and the index is in index.htm.

Copyright (c) 1998-2000, Franz Inc. Berkeley, CA., USA. All rights reserved.

Created 2000.10.5.