1. Field of the Invention
The present invention relates in general to a method, system and computer program product for preventing inadvertent selection within a graphical user interface; and, more specifically, to a user interface for detecting an initial display of a dialog box and preventing inadvertent selection of the default option within that dialog box.
2. Description of the Related Art
In recent years, an effort has been made to overcome the increasing complexity of computer systems by providing what has come to be known as “graphical user interface” or “GUI”. Such interfaces provide a natural and intuitive technique for a user to be able to manipulate files, programs and utilities within a modern computer system without requiring the user to enter complex command sequences. One important feature of such interfaces is the utilization of pointing devices as an input technique for the user. Such pointing devices may include a mouse, roller ball, light pen, or touch screen. Such devices are natural, intuitive and permit the user to graphically manipulate and select various actions within the computer system.
More recently, a further enhancement to this technique has been proposed. So-called “smart mouse” systems are common in modern computer systems. Smart mouse systems automatically move the pointer associated with a mouse, or other graphical pointing device, to an application-specific location within a graphical user interface, rather than requiring the mouse or pointing device to be physically relocated. This technique is frequently utilized when an application requests a confirmation operation from a user. For example, when the user selects an “Exit” menu in order to leave an application program, the application will typically display a message dialog box which consists of a question message, an “OK” button, and a “Cancel” button, in order to confirm the user's selection. From this point forward, the application does not permit the user to perform any operations other than to confirm or cancel the particular operation which initiated this process.
Smart mouse graphical user interfaces will automatically relocate the pointer associated with a graphical pointing device to the location within the display of the default response to such a dialog box.
While the aforementioned technique can quickly enhance efficiency, there may also be unintended consequences of such actions. For example, if the user has taken an action which, unbeknownst to the user, results in a dialog box being displayed with the pointer located over a default action, the user may, without conscious thought, select that default action by activating a mouse button or some similar action.
In this case, it is possible that previous actions desired by the user will be undone or files may be saved which the user did not desire within his or her system.
Consequently, it would appear that a method and system for avoiding such inadvertent action would be desirable.
It is therefore one object of the present invention to provide a method, system and program for reducing or preventing inadvertent selection within a graphical user interface.
It is another object of the present invention to prevent such inadvertent selection within a graphical user interface while still permitting automatic relocation of a graphical pointing device pointer to a default response location within a dialog box.
The foregoing object are achieved as is now described. A method, system and computer program product are disclosed for preventing inadvertent selection within a graphical user interface by temporarily intercepting any user input from a keyboard or graphical pointer which occurs within a specified short period of time following detection of an initial display of a dialog box. A second dialog box or other request for confirmation is then presented to the user, requesting confirmation of the intercepted user input prior to initiation thereof.
The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as a preferred mode of use, further objects and advantages thereof, will best be understood by reference to the following detailed descriptions of an illustrative embodiment when read in conjunction with the accompanying drawings, in which:
With reference now to the figures, wherein like reference numerals refer to like and corresponding parts throughout, and in particular with reference to
With reference to
A number of program modules may be stored in the drives and RAM 8, including an operating system 14, application program modules 16, such as Microsoft's OFFICE suite of program modules, and program data 18. A user may enter commands and information into data processing system 15 through a keyboard 46 and pointing device, such as a mouse 48. Other input devices (not shown) may include a microphone, joystick, game pad, satellite dish, scanner, or the like. These and other input devices are often connected to processing unit 4 through a serial port interface 39 that is coupled to system bus 5, but may be connected by other interfaces, such as a game port or a universal serial bus (USB). A monitor 24 or other type of display device is also connected to system bus 5 via an interface, such as a video adapter 36. In addition to the monitor, personal computers typically include other peripheral output devices (not shown), such as speakers or printers.
Data processing system 15 may operate in a networked environment using logical connections to one or more remote computers, such as a remote computer 49. The remote computer 49 may be a server, a router, a peer device or other common network node, and typically includes many or all of the elements described relative to data processing system 15. The logical connections depicted in
When used in a LAN networking environment, data processing system 15 is connected to LAN 51 through a network interface 42. When used in a WAN networking environment, data processing system 15 typically includes a modem 44 or other means for establishing communications over WAN 53, such as the Internet. The modem 44, which may be internal or external, is connected to system bus 5 via serial port interface 39. In a networked environment, program modules depicted relative to data processing system 15, or portions thereof, may be stored in the remote memory storage device. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.
Referring now to
With reference now to
It should be apparent to those having ordinary skill in this art that, in the event the action which has precipitated the display of dialog box 66 was not expected by the user, an inadvertent activation of a mouse button may result in changes to the document being lost, or another action that may be entirely unintended by the user. This will occur as a result of the automatic pre-positioning of cursor 68 over the default response within dialog box 66. Therefore, a method for preventing such inadvertent selection would be greatly appreciated.
Referring now to
Next, reference numeral 84 refers to the “Snap To” feature of modern mouse pointers in which the user may opt to automatically move the pointer to a default button in a displayed dialog box, as described above with respect to
Box 90 within window 80 permits the user to specify various visibility features for the mouse pointer and such features are well-known to those having ordinary skill in this art.
Finally, referring to block 86, the user may select “inadvertence protection” by checking the box within this block. Further, a scroll bar 88 is provided which permits the user to specify a particular period of time during which inadvertence protection will be provided. In the depicted embodiment of the present invention, inadvertence protection may be provided, in a matter which will be explained in greater detail herein, between 0 seconds and 1.5 seconds following the display of a dialog box. Of course, those having ordinary skill in the art will appreciate that greater or lesser periods of time may be selected in accordance with personal preferences.
With reference now to
Still referring to block 102, in the event a dialog box has opened, the process passes to block 104. Block 104 illustrates a determination of whether or not the user has made an input to the system, utilizing a graphical pointer, keyboard or the like, within a specified short period of time (n seconds). Those having ordinary skill in this art will appreciate that in addition to mouse activation buttons, many default response buttons include a so-called “accelerator key” wherein the default action may be selected by merely striking a particular letter of the alphabet. Thus, user inputs which occur within a short specified period of time following the display of a dialog box will necessarily encompass inputs utilizing both graphical pointing devices and keyboards. In the event no user input is detected within the specified short period of time following display of a dialog box, the process returns, in an iterative fashion, to await the next opening of a dialog box. However, in the event user input is detected within that short specified period of time, the process passes to block 106.
Block 106 illustrates the temporary interception of the user input and, as depicted within block. 108, a confirmation dialog is presented. A confirmation dialog may constitute a simple graphical display inquiring if indeed the user did intend the default response, an audible warning tone, or any other technique whereby the user's attention may be drawn to the fact that a default action has been selected.
Next, the process passes to block 110. As illustrated within block 110 after the user has confirmed the input, either by selecting a confirmation button or by re-entering the previous input. The process then passes to block 112, which depicts the taking of that selected action. In the event the user has failed to confirm the input which resulted in the selection of the default action, the process returns, in an iterative fashion, to block 102 to await the opening of the next dialog box.
Referring again to block 112, after the selective action has been taken, the process passes to block 114 and returns, in an iterative fashion.
Upon reference to the foregoing, those having skill in this art will appreciate that the present application provides a technique whereby inadvertent selection of a default action as a result of automatic relocation of a graphical pointer can be avoided without diminishing the enhanced efficiency of modern graphical user interfaces.
While the invention has been particularly shown and described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention.