Positioning of a display pointer on a display screen

Abstract: A method for rapid positioning of a display pointer on a display screen may be accomplished by establishing a preferred order of display pointer movement between widgets when the particular screen location of the widgets is known. Having established the preferred order, the display pointer is automatically repositioned based on the preferred order when an input stimulus is activated. The input stimulus may be activated by a function of the keyboard, mouse, or any other input devices that may be used in association with a computer.

Description: This invention relates generally to graphic user interface systems and, more particularly, to a method for positioning a display pointer in such graphic user interface systems. A graphic user interface (GUI) provides computer users with an easy and visual means for evoking computer applications without having to remember computer function keystrokes. Such GUI applications allow the user to position a display pointer over a particular widget, click a button, and evoke an application associated with the particular widget. As is known in the computer art, a widget is a graphic symbol displayed on a computer screen that is associated with a particular application. As is also known, windows have a plurality of widgets associated with them. For example, a window may have widgets to shrink the size of the window, grow the window, open or close a file within the window, close the window, scroll a screen on the window, etc. While widgets allow the user to visually evoke computer applications, or functions, they are activated by moving the display pointer over the particular widget. This may not be easy, especially when the size of the widget is very small. In such situations, the computer user must demonstrate good hand-eye coordination to evoke an associate function of a small widget. Some text programs have reduced the hand-eye coordination problem for positioning of a text pointer by using tab functions. For example, FileMaker, manufactured by Microsoft Inc., allows a user to select a tab order for entering or reading data from a particular file. Even though such a system allows the user to establish a tab order, it is for a text-based application, not a graphic user interface application. Therefore, a need exists for a graphics-based method that allows easy movement of a display pointer from one widget to another without the need for a computer user to rely on hand-eye coordination to evoke an associated function, but still benefiting from the advantages of a GUI system. IBM Technical Disclosure Bulletin, vol.36, No. 4,1 April 1993, pages 433-435, discloses a method of moving the display pointer from one desktop object to another in round-robin fashion, without physically moving the mouse on the desk surface. Accordingly, in a first aspect of the present invention there is provided a method for positioning a display pointer on a display screen, the method comprising the steps of: based on known screen location of widgets, establishing a user preferred order of display pointer movement between at least some of the widgets; and automatically repositioning the display pointer based on the user preferred order of the display pointer movement when an input stimulus is activated. In a second aspect of the invention there is provided a computer readable storage medium for storing program instructions that, when read by a computer, causes the computer to position a display pointer on a display screen, the computer readable storage medium comprising: first storage means for storing program instructions that cause the computer to, based on known screen location of widgets, establish a user preferred order of display pointer movement between at least some of the widgets; and second storage means for storing program instructions that cause the computer to automatically reposition the display pointer based on the preferred order of the display pointer movement when an input stimulus is activated. A preferred embodiment of the invention will now be described, by way of example only, with reference to the accompanying drawings in which: Figure 1 illustrates a schematic block diagram of a computer system that may incorporate the present invention; Figure 2 illustrates the display screen of Figure 1 that includes a plurality of windows and associated widgets; and Figure 3 illustrates a logic diagram that may be used to implement a method in accordance with the present invention. Generally, the present invention provides a method for rapid positioning of a display pointer on a display screen. This may be accomplished by establishing a preferred order of display pointer movement between widgets when the particular screen location of the widgets is known. Having established the preferred order, the display pointer is automatically repositioned when an input stimulus is activated. The input stimulus may be activated by a function of the keyboard, a mouse, or any other computer input device. By repositioning a display pointer in this manner, the computer user does not have to rely on hand-eye coordination to evoke a computer function. The user can simply activate an input stimulus to automatically move the display pointer from one widget to another, which was not an option for the user in prior art graphic user interface systems. Figure 1 illustrates a schematic block diagram of a computer system 10 which may be used to support the present invention. The computer system 10 is shown to include a central processing unit 12, memory 14, a display 16, a keyboard 18, and a mouse 20. The mouse 20 includes a tracking ball 22 which is coupled to a track ball device driver 24 within the central processing unit 12. The track ball device driver 24 is coupled to a track ball interpretive module 26 which provides a signal to the screen monitor module 28. The screen monitor module 28 also receives an input from a keyboard interpretive module 32 which receives signals from the keyboard device driver 30. The screen monitor module 28 provides signals to the display driver 34 which in turn drives the display 16. Each of these elements are well known in the art; thus, no further discussion will be presented other than to further illustrate the present invention. Figure 2 illustrates the display screen 16 showing three windows 36, 38, 40. As shown, window 38 is in the forefront of the screen with windows 36 and 40 in the background. Thus, window 38 is the active, or current, window and is shown to include a menu bar 50 and a plurality of widgets 52, 54, 56, 58, 62. Window 38 also includes an action list 60 and an action display panel 64. As is generally known, when one of the action items of action list 60 is selected, via its associated selection widget 62, that particular action is displayed in the action display panel 64. Also shown in Figure 2 is a display pointer 68 which may be controlled via a mouse, or other input stimulus. In prior art applications, the user would have to position the display pointer 68 over a particular widget in which the user wanted to evoke the associated application. For example, assume that the user desires to select action 2 from the action list 60. in such a situation, the user would have to position the display pointer 68 over the selection widget 62 for action number 2. As shown, the associated widget is relatively small, thus the user would have to focus rather intently to get the point of the display pointer 68 in a close enough position to action number 2 to select the associated function. In contrast, the present invention allows the user to select an order of widget application. For example, assume that the user selected a preferred widget order to be the widgets 62 for action items 1 through 4, followed by the shrink or grow widget 54, the window scroll widget 56, the corner drag widget 58, and finally, the close window widget 52. Thus, given the shown positioning of the display pointer 68, when the user activates some input stimulus, say chording (pushing two buttons of a mouse simultaneously), causes the display pointer to automatically reposition to the selection window associated with action 1. If the user activates the input stimulus again, the display pointer automatically repositions itself to the selection widget 62 associated with action item number 2. As the user continues to activate the input stimulus in this manner, the display pointer will automatically reposition itself through the preferred order established by the user. Figure 3 illustrates a logic diagram that may be used to implement a method for automatically repositioning a display pointer. The steps of this method may be stored on any computer readable storage medium, such as memory 14 (of Figure 1), a computer disk, RAM, ROM, magnetic tape, Cds, or any other means for storing digital information. The process begins at step 80 wherein a determination is made as to whether the screen location of the widgets are known. If not, the process proceeds to step 82 wherein the pixel locations of the widgets is determined in X and Y directions. As is known, a typical computer display screen is comprised of a plurality of widgets organized in X and Y directions. Based on X and Y coordinates of the display screen, a particular pixel location can be determined as is generally understood in the art to be performed by the screen monitor module 28 of Figure 1. Once the pixel locations of the widgets is known, it is stored as shown in step 84. Once the screen locations of the widgets are known, the process proceeds to step 86 wherein a preferred order of display pointer movement between widgets is established. This may be established by prompting the user to select the particular widgets he or she desires to be in the preferred order. This is shown at step 86-1. The process then proceeds to step 86-2 wherein the widget's pixel location is stored in the order that the user selected the given widget. The widget order, or preferred order, of display pointer movement, may be associated with one window, as was described with reference to Figure 2, or a plurality of windows. Further, the user may select widgets that are associated with particular icons for different applications. Having established the preferred order, the process proceeds to step 88 wherein the process determines whether an input stimulus has been activated. As mentioned above, the input stimulus may be chording the mouse, or any other means for inputting a command function to the central processing unit. If the input stimulus is not activated, the process proceeds to step 90 where the process determines whether the widgets have moved. As is known with graphic user interface systems, the user may reposition windows, widgets, icons, etc., anywhere upon the display screen. When a widget or widgets are moved as determined by step 90, the process proceeds to step 94 wherein the new pixel location of the widgets are determined. Having determined the new pixel location, that information is stored at step 96, and the process returns to step 88. If, however, the widgets did not move, the process waits either for an input stimulus to be activated or a widget to be moved. When the input stimulus is detected, or activated, the process proceeds to step 92. At step 92, the display pointer is automatically repositioned on the display based on the preferred order of the display pointer movement. As mentioned above with referenced to Figure 2, when the user activates the input stimulus, the display pointer 68 jumps from the selection widget 62 for the first action item to the selected widget 62 of the second action item, and so on in the order established by the user. Thus, the present invention provides a method for rapid repositioning of a display pointer. With such a method, a user of a graphic user interface system can automatically reposition a display pointer upon a widget with a simple input stimulus as opposed to having to visually position the display pointer over such a widget. Thus, when widgets are small and placing the display pointer over such a widget is difficult, the present invention eliminates such difficulties.

Claims: A method for automatically repositioning a display pointer between screen widgets on a display screen when an input stimulus is activated, based on known screen location of widgets, characterised in that the method comprises the steps of: establishing (86) a user preferred order of display pointer movement between at least some of the widgets; automatically repositioning (92) the display pointer, based on the user preferred order of the display pointer movement, when an input stimulus is activated. The method of claim 1, wherein the known screen locations of the widgets are determined by: determining (82) pixel location of the widgets in an x-direction and a y-direction on the display screen; and storing (84) the pixel location as the known location of the widgets. The method of claim 1 or claim 2, wherein the input stimulus is activated by: responding to a chording function on a computer mouse. The method of claim 1 or claim 2, wherein the input stimulus is activated by: responding to a single function button on a computer mouse. The method of any preceding claim, wherein the predetermined order is established by: prompting (86-1) a user to select the widgets; and storing (86-2) each of the widgets in an order selected by the user. The method of claim 5 further comprising prompting the user to select the widgets from a current window displayed on the display screen. The method of claim 5 further comprising prompting the user to select the widgets from several application icons displayed on the display screen. A computer readable storage medium for storing program instructions that, when read by a computer, cause the computer to automatically reposition a display pointer between screen widgets on a display screen when an input stimulus is activated, based on known screen location of widgets, characterised in that the computer readable storage medium comprises: first storage means for storing program instructions that cause the computer to, based on known screen location of widgets, establish (86) a user preferred order of display pointer movement between at least some of the widgets; and second storage means for storing program instructions that cause the computer to automatically reposition (92) the display pointer based on the user preferred order of the display pointer movement when an input stimulus is activated. The computer readable storage medium of claim 8, wherein the first storage means further comprises, to determine the known screen locations, the functions of: storing program instructions that cause the computer to determine (82) pixel location of the widgets in an x-direction and a y-direction on the display screen; and storing program instructions that cause the computer to store (84) the pixel location as the known location of the widgets. The computer readable storage medium of claim 8 or claim 9, wherein the second storage means further comprises, to activate the input stimulus, the function of: storing program instructions that cause the computer to respond to a chording function on a computer mouse. The computer readable storage medium of claim 8 or claim 9, wherein the second storage means further comprises, to activate the input stimulus, the function of: storing program instructions that cause the computer to respond to a single function button on a computer mouse. The computer readable storage medium of claim 8, wherein the first storage means further comprises, to establish the preferred order, the functions of: storing program instructions that cause the computer to prompt (86-1) a user to select the at least some of the widgets; and storing program instructions that cause the computer to store (86-2) each of the at least some of the widgets in an order selected by the user. The computer readable storage medium of claim 12, wherein the first storage means further comprises storing program instructions that cause the computer to prompt the user to select the at least some of the widgets from a current window displayed on the display screen. The computer readable storage medium of claim 12, wherein the first storage means further comprises storing program instructions that cause the computer to prompt the user to select the at least some of the widgets from several application icons displayed on the display screen. A computer system comprising: a display screen; characterised in that the computer system further comprises: processing means for establishing (86) a user preferred order of display pointer movement between widgets on the display screen and for automatically repositioning (92) the display pointer based on the user preferred order of the display pointer movement when an input stimulus is activated.

Inventors: GREGG LEON EDWARD, JAASKELAINEN WILLIAM JR, GREGG, LEON EDWARD, JAASKELAINEN, WILLIAM, JR.
Applicants: IBM, INTERNATIONAL BUSINESS MACHINES CORPORATION
Application year: 1996
Main classification: G06F3
IPC codes: G06F3