As graphical user interfaces and display systems for computers continue to offer increased functionality, they provide the user with greater flexibility in manipulating the information that is displayed on a monitor, or similar type of display device. In some instances, however, such manipulation could produce unexpected results. For example, some display systems offer the user the ability to change the resolution of the display device. If the user decreases the resolution of the device, for example to make icons or text appear larger, the objects on the display will move relative to a reference point, as well as change size, in accordance with the change in resolution. The user may prefer that certain objects remain in their original position, however. For instance, it may be desirable to keep tool palettes in a corner of the display. Furthermore, some of the objects at the periphery of the original display may be partially removed from view, even though the user may desire to have such objects remain readily accessible. Such objects might include utility windows that the user may want to frequently access during the operation of the computer.
Similar situations can occur when objects are moved on the desktop of the user interface, or when display configurations change. For instance, if the user switches the display from a full-sized monitor to an LCD screen on a notebook computer, the different operating parameters of the two display devices may affect the size of the desktop. As a result, the positions and sizes of the objects on the display can change, and some of them may become unviewable because they are positioned outside of the display area. It is desirable, therefore, to provide a mechanism which is capable of maintaining windows and other similar objects in an accessible condition that conforms to the user's preferences, despite changes in the display environment.