Window Interfaces
Window Interfaces
"Window interfaces" refers to the commonly used way to organize a computer monitor's screen space for interaction with a human user. Screen space is organized into regions called "windows." Each window utilizes some screen space for computer–human interaction. Typically, a computer system with window interfaces also supports the mouse and the keyboard as interactive devices for user input.
Two Styles of Window Interfaces
There are various styles of organizing the windows on a screen. One approach is to treat the screen as a desktop and the windows as documents on the desktop. The windows may overlap one another so that some windows partially or completely obscure other windows. Only those windows that stay on top are fully visible. Users can use the mouse to drag the windows around on the screen or to bring a certain window to the top. Figure 1 illustrates overlapping windows on a screen.
Another way to organize windows is by tiling: subdividing screen space so that the windows do not overlap and arranging the windows like tiles to fill the screen space. Figure 2 (see p. 214) illustrates tiling windows. Tiling attempts to keep all the windows entirely visible at the same time.
General Operations on Windows
Window interfaces allow users to work on multiple tasks at the same time. Windows supports certain standard operations that are both versatile and practical:
- Dragging a window to a different position on the screen;
- Resizing the dimensions of a window;
- Iconifying a window (to suspend the use of a window, the user may hide the window in use, turning it into an icon on the desktop, that is, the screen);
- Restoring a window from an icon (an icon is simply a small window that supports the restore operation);
- Closing a window.
Typically, someone uses the mouse to perform these operations. The mouse moves a corresponding cursor on the screen.
A window has other designated areas, some of which are like buttons. Figure 3 (see p. 215) identifies specific button areas of a window. The mouse cursor can be placed over a designated area and then pressed to invoke the desired operation on the window. For example, a window can be dragged to a new location by placing the cursor over the title bar of a window and moving the mouse while keeping the button pressed down; when the mouse button is released, the window stays at the new location on the screen. (A mouse with more than one button most often uses the left button to invoke the operation.)
When the cursor is on the Close button, a window can be closed by clicking on the mouse button—that is, pressing the button down and releasing it momentarily. A window can be iconified by clicking over the Iconify button. A window can be restored from an icon by double-clicking over the icon—that is, clicking two times quickly. The border around a window is often the area specifically designated to resize the window. When the cursor is over the window border, the system may even change the appearance of the cursor, indicating that the user can now resize the window. The mouse button can then be held down and the window border dragged to resize the window to the desired dimensions.
Other Features
Many other functions can be performed in a windows environment. A sampling of these operations follows.
Focus Window—For Keyboard Input.
These are the common window operations in application programs using window interfaces. A user may use the window to interact with a program in many other application-specific ways. If a user wants an application program to read keyboard input as it is being typed, the program can display the keys in a window as typing progresses. However, because there are multiple windows, one of the windows needs to be designated the Focus window to receive keyboard input. Usually, a simple mouse click or any operation on the window brings it into focus to receive keyboard input. The Focus window usually will have a slightly different appearance to indicate this distinction.
Menu Bar.
Another common application design is to use a menu bar in the window. The menu bar is a designated area strip labeled with menu items. When the mouse cursor is placed over a menu label , the menu label becomes highlighted. A click on the mouse button will then bring up a drop-down menu . A user can then move the mouse cursor to any item in the menu to select an operation and then click on a menu item to invoke the operation. Figure 4 (see p. 216) shows selecting the Close operation in the menu under the File menu label.
Scroll Bar.
Sometimes the screen space in the window is not large enough, and parts of the program output may be obscured. A common practice in program design is to use a scroll bar, which allows the user to move the window within a larger, imaginary screen space for output. Scrolling the window then exposes other parts of program output. Figure 5 (see p. 217) illustrates a scroll bar. Clicking on the direction buttons scrolls the window in increments along the indicated direction. A user may also scroll the window smoothly with the mouse by placing the cursor over the thumbnail on the scroll bar, holding down the mouse button, and moving the thumbnail in the desired direction.
Application Wizard.
A powerful application of windows is their ability to provide online help information with an application wizard. When a user needs help working with a particular program, the program will, on the user's request, hold the progress of the program at that stage and pop up a separate window to provide helpful information online. The program can provide help that is specific to the task at hand and even guide the user through the rest of the task. This style of intelligent online help is provided by an application wizard, a common example of which is the Office Assistant in Microsoft Word 2000.
Customizable Look and Feel.
Most any implementation of window interfaces is highly customizable. The look and feel of window interfaces may be quite different, but the fundamental generic operations are not.
Brief History of Window Interfaces
In the mid-1970s, the Xerox Palo Alto Research Center first used the Alto computer to access multiple computers as an intelligent gateway. The Alto computer divided the monitor screen into windows, each of which could run a different program or access a different computer in the network. Later, Xerox, in the Dynabook project, developed a programming languagecalled Smalltalk. Designed into the execution of Smalltalk was the use of multiple overlapping windows on the screen for interaction with the human user.
During the 1980s, while the use of interactive computer graphics was becoming commonplace, window interfaces caught on. The Macintosh computer and the later Sun workstation applied the desktop metaphor to the monitor screen, using overlapping windows on the screen as if they were documents on the desk; each window provided screen real estate for human–computer interaction.
Another system for window interfaces on networked computers, called X-Windows, was developed by an industry consortium led by the Mass achusetts Institute of Technology (MIT). Soon this system became the industry standard. Today, many derivative systems of X-Windows are available from various computer vendors for use on the Unix platform, including Linux. Macintosh, from Apple Computer, Inc., continues to carry its own system of window interfaces. Microsoft Corporation rode on the success of marketing DOS (Disk Operating System) on the Intel-based personal computer developed by IBM, called the "IBM-PC" during the late 1980s, and imitated the Macintosh window interfaces to develop Windows on DOS. Windows became very popular on its release in the early 1990s, and Microsoft has developed later versions, called Windows 95, Windows 98, and Windows 2000, including Windows NT, which was developed in the early 1990s for networked computers. For the most part, all these systems are similar in their user-interface design.
see also Apple Computer, Inc.; Microsoft Corporation; Xerox Corporation.
Peter Y. Wu
Bibliography
Goldberg, Adele, and David Robson. Smalltalk-80: The Language and Its Implementation. Reading, MA: Addison Wesley, 1983.
Hiltzik, Michael. Dealers of Lightning: Xerox PARC and the Dawn of the Computer Age. New York: Harper Business, 2000.
Reiss, Levi, and Joseph Radin. X-Window Inside and Out. Berkeley, CA: Osborne/Mc Graw-Hill, 1992.