In a multiwindow system in which a plurality of windows are set on a display screen at positions such that these windows partially overlap and the display priority and position of each window can be arbitrarily changed, when the operator instructs to change the display priority of the window, a check is automatically made to see if there exists the window which will be completely covered by the other windows having priorities higher than that of this window and will fully disappear from the screen if the display priority is changed or not. If such a window is found out, the display priority of this window is changed in the state in which this window is automatically shifted to the position where a part of this window can be seen on the screen, thereafter the window is displayed on the screen. The changing process of the display priority of the window and the automatic shifting process of the position of the window are controlled by referring to and correcting the contents of the window management tables in which the data indicative of the sizes, positions, display priorities, and the like of the respective windows is stored.
In a display control system, when a continuous command requiring a continuous display updating process on a display screen is received from an application software, a corresponding display processing sequence is produced and stored in a time table. The time table defines titles of subroutines to be executed in terms of time. A timer interrupt routine is executed at every given timing for looking into the time table and identifying the subroutine to be executed at that time point, and for calling and executing the identified subroutine. Accordingly, the identified subroutines are executed in turn in the timer interrupt routines so as to accomplish the continuous display updating process. Since the continuous display updating process is executed as timer interruption, a simple command requiring a simple display updating process or a further continuous command can be received and processed while the former continuous display updating process is executed.
A method for managing simultaneous display of multiple windows in a graphical user interface (GUI). A computer system with a display and user interface input device displays a primary or container window on the display, comprising a predetermined region for displaying information and/or receiving user commands associated with a first computer process. The system displays a target window comprising a predetermined region for displaying information and/or receiving user commands associated with a different computer process. The target window is typically displayed in a higher z-order relative to the primary window to maintain it on top. In response to a predetermined triggering condition, the target window is manipulated by movement, temporary disappearance, and/or size reduction, while maintaining the relative z-order of the target window relative to the primary window and away from a predetermined avoidance region associated with the first computer process. The target window can be moved away a minimal distance, biased in a predetermined direction, or positioned at anchor points relative to the container window to avoid obscuring the avoidance region.
Notification of an executing object becoming idle is provided in a multitasking environment. As the object executes, a user can interface with a second object. When the executing object becomes accessible, a buoy icon object is displayed on the computer screen. The buoy icon has the name of the accessible object as well as a pointer line extending from the buoy icon to the accessible object. The buoy icon provides notification that the accessible object execution is complete or is ready to receive a user input. The user can either remove the buoy icon from the screen or select the buoy icon object to focused the accessible object. The newly focused accessible object can then be used. The buoy icon notification can be enabled or disabled on an object-by-object basis.
A method, apparatus and memory embodying detailed logic direct a computer system to automatically shift a window substantially off a display screen using a pointer and user controls (e.g., mouse). The display screen has at least one edge, but typically is rectangular in shape having four edges. The first step of the method includes moving the window on the display screen in a direction consistent with the movement of the pointer. To do so, the user positions and activates the pointer over the window using the user controls. The second step includes automatically scrolling the window substantially off the display screen such that only a portion of the window remains visible at the edge of the display screen. This step occurs when the user has activated and positioned the pointer over the window and then moved the activated pointer to one of the edges of the display screen for a predetermined amount of time (e.g., two seconds).
A declarative object-oriented approach to menu construction provides a mechanism for specifying the behavior, appearance and function of menus as part of an interactive user interface. Menus are constructed from interchangeable object building blocks to obtain the characteristics wanted without the need to write new code or code and maintaining a coherent interface standard. The approach is implemented by dissecting interface menu behavior into modularized objects specifying orthogonal components of desirable menu behaviors. Once primary characteristics for orthogonal dimensions of menu behavior are identified, individual objects are constructed to provide specific alternatives for the behavior within the definitions of each dimension. Finally, specific objects from each dimension are combined to construct a menu having the desired selections of menu behaviors.