`Malamud et al.
`
`I IIIII IIIIIIII Ill lllll lllll lllll lllll lllll lllll lllll lllll 111111111111111111
`US006437800Bl
`US 6,437,800 Bl
`Aug. 20, 2002
`
`(10) Patent No.:
`(45) Date of Patent:
`
`(54)
`
`INFORMATION CURSORS
`
`OTHER PUBLICATIONS
`
`(75)
`
`Inventors: Mark A. Malamud, Seattle; John E.
`Elsbree, King County; David A.
`Barnes, Seattle, all of WA (US)
`
`(73) Assignee: Microsoft Corporation, Redmond, WA
`(US)
`
`( *) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by O days.
`
`(21) Appl. No.: 08/329,724
`
`(22) Filed:
`
`Oct. 26, 1994
`
`(63)
`
`(51)
`(52)
`(58)
`
`(56)
`
`Related U.S. Application Data
`
`Continuation of application No. 081054,564, filed on Apr.
`28, 1993, now abandoned.
`Int. Cl.7 .................................................. G09G 5/08
`U.S. Cl. ........................................ 345/711; 345/705
`Field of Search ................................. 345/145, 146,
`345/156, 157,163,705,711
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`4,789,962 A
`4,984,152 A
`5,157,768 A
`5,169,342 A
`5,436,637 A
`
`................ 3641900
`1211988 Berry et al.
`111991 Muller ....................... 3641200
`1011992 Roeber et al. .............. 3951157
`1211992 Steele et al. ................ 4341112
`* 711995 Gayraud et al.
`............ 3451146
`
`Meckler Corporation, Treasures of the Smithsonian, Evalu(cid:173)
`ation (from Dialog), pp. 1-4, May 2002.*
`Matthies, Kurt W. G. "Balloon Help Takes Off," Power
`Tools, Power Programming, Mac User, Dec. 1991, 5 pages.
`Macintosh Reference 7, Apple Computer,Inc., Chapter 1, "A
`Review of Standard Macintosh Operations," 1991, pp.
`30---31.
`"Unobtrusive Application Icon Label Interface," IBM Tech(cid:173)
`nical Disclosure Bulletin, New York, Nov. 1990, vol. 33
`(6A), p. 104.
`"User-Controlled Display of Hypermedia Links via Mouse
`Location," IBM Technical Disclosure Bulletin, New York,
`Aug. 1993, vol. 36 (8), p. 669.
`
`* cited by examiner
`
`Primary Examiner-Richard Hjerpe
`Assistant Examiner-Henry N. Tran
`(74) Attorney, Agent, or Firm-Banner & Witcoff, Ltd.
`
`(57)
`
`ABSTRACT
`
`Information cursors are provided for use in an operating
`system and/or application programs. Each information cur(cid:173)
`sor includes a pointing portion to point to objects displayed
`on a video display and an information portion to display
`information about an object to which the pointing portion
`points. The information displayed in an information cursor
`may include the name of the object, a preview of the
`contents of the object, or property information about the
`object.
`
`13 Claims, 6 Drawing Sheets
`
`/,?
`
`DATA PROCESSING
`SYSTEM
`
`/rJ
`
`CPU
`
`MEMORY
`
`N
`
`/6'
`
`16'
`
`,?tJ
`
`KEYBOARD
`
`MOUSE
`
`VIDEO
`DISPLAY
`
`OPERA Tl NC
`SYSTEM
`
`MOUSE
`DRIVER
`
`rJrJ
`,c,c
`
`,?,/
`
`Ralph Lauren Corp., Exhibit 1004 Page 1
`
`
`
`/~2
`
`DATA PROCES
`SYSTEM
`
`'G
`
`/tJ
`
`CPU
`
`l
`
`.,
`MEMORY/ 04
`
`I
`
`0 I
`
`/ 06'
`
`'
`
`06'
`
`/
`
`KEYBOARD
`
`MOUSE
`
`Qr}
`
`OPERATING ~ ,C
`SYSTEM
`
`MOUSE -J4
`
`DRIVER
`
`j,
`
`1
`
`2tJ
`
`/
`
`VIDEO
`DISPLAY
`
`Aj. I
`
`d •
`r:JJ.
`•
`~
`~ .....
`~ = .....
`
`~
`~
`N ~=
`
`N
`C
`C
`N
`
`'JJ. =(cid:173)~
`~ ....
`"'"" 0 ....,
`
`O'I
`
`e
`rJ'J.
`-..a-..
`~
`-..""-l
`~
`Q
`Q
`~
`i,-
`
`Ralph Lauren Corp., Exhibit 1004 Page 2
`
`
`
`U.S. Patent
`
`Aug. 20, 2002
`
`Sheet 2 of 6
`
`US 6,437,800 Bl
`
`,
`I
`I
`I
`I
`
`-- -
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`v1~i;l
`20
`DISPLAY I~
`I
`I
`I
`
`I
`
`J7(J
`!
`
`28
`~
`I
`
`(NAME)
`
`L ~oy--~j. 2a-- _J
`
`NAME CURSOR
`
`,
`I
`
`-- -
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`v1~i;l
`DISPLAY,~
`
`20
`
`I
`I
`J7-t
`I
`laooK
`l
`I
`I
`I
`ICON 28
`L ___________ _J
`
`J'o
`!
`
`BOOK COVER
`
`-?o__j
`NAME CURSOR
`
`Aj. 20
`
`, - - - - - - - - - - -= - i
`2tJ
`VIDEO
`I
`DISPLAY I~
`I
`I
`I
`I
`I
`I
`
`j'.J
`
`28
`
`I
`
`J'oa
`!
`( NAME I)
`~ - ~-I !:A~!'!_; _ _ ! _J
`
`]
`
`26
`NAME CURSOR
`
`J'tJo
`P-.
`9.
`rZ,? N~
`
`Ralph Lauren Corp., Exhibit 1004 Page 3
`
`
`
`U.S. Patent
`
`Aug. 20, 2002
`
`Sheet 3 of 6
`
`US 6,437,800 Bl
`
`J'(}
`
`BOOK COVER
`
`J'.2
`BOOK
`ICON
`
`.28
`
`, - - - - - - - - - - - - - - i
`.2()
`VIDEO
`I
`DISPLAY~
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`L_ _ __ _____ _J
`
`,!{\
`
`!
`'
`
`"-,
`
`IJ~
`r..)lj
`
`._je~
`
`J'8
`COMB I NED NAME AND
`PREVIEW CURSOR
`
`~
`
`£1,.
`
`.r Zff. ~
`
`... A.
`
`..ell
`
`I - - - - - - - - VIDi;l
`.2()
`I
`,/,/
`DISPLAY I~
`I
`I
`I
`I
`I
`I
`42 I
`I
`L _ - / - - - - - __ _JAj. s
`
`Maximize Bui/on
`This bu/Ion allows
`you lo expand a
`window lo /Is full
`s;ze.
`
`Ralph Lauren Corp., Exhibit 1004 Page 4
`
`
`
`U.S. Patent
`
`Aug. 20, 2002
`
`Sheet 4 of 6
`
`US 6,437,800 Bl
`
`BEGIN
`
`MOVE CURSOR
`POSI T!ON TO
`POINT IN WINDOW
`
`StJ
`
`SEND MESSAGE TO
`WINDOW PROGRAM
`SPECIFY/NC POSI !ION
`AND FORWARD TO
`WINDOW PROCEDURE
`
`WINDOW PROCEDURE
`DETERMINES WHAT
`IS DISPLAYED AT
`TH[ POSITION
`
`IS
`SPECIFIED
`POSI !ION OBJECT
`WITH
`!DENT! TY
`
`S.f
`
`::..---~ DISPLAY CURSOR
`WITHOUT INFO. OR
`DISPLAY CONVENTIONAL
`CURSOR
`
`Yes
`
`S6'
`
`DISPLAY INFO.
`REGARDING OBJECT
`IN TH[ CURSOR
`
`RETURN
`
`Ralph Lauren Corp., Exhibit 1004 Page 5
`
`
`
`U.S. Patent
`
`Aug. 20, 2002
`
`Sheet 5 of 6
`
`US 6,437,800 Bl
`
`BEGIN
`
`58
`
`WINDOW ROUTINE
`PASSES MESSAGE TO
`OPERATING SYSTEM
`SPECIFYING INFO.
`ABOUT OBJECT
`
`,M_o---~ DISPLAY
`CONVENTIONAL
`CURSOR
`
`Yes
`
`DISPLAY CURSOR
`WI TH INFO.
`
`RETURN
`
`Ralph Lauren Corp., Exhibit 1004 Page 6
`
`
`
`U.S. Patent
`
`Aug. 20, 2002
`
`Sheet 6 of 6
`
`US 6,437,800 Bl
`
`BEGIN - - -
`C
`
`6'6'
`
`POS I 1 I ON CURSOR OVER
`SOURCE OBJ£C 1 AND
`[) I SPLAY NAME OF
`SOURCE OBJECT IN
`CURSOR
`
`PRESS MOUSE BUTTON
`WI TH CURSOR ON
`SOURCE OBJECT
`
`6'8
`
`!)RAC SOURCE OBJECT
`
`OVER
`DESTINA 1/0N
`OBJECT
`
`{78
`- - - - -~ -~
`,Yi_e s----11~D I SPLAY DES Tl NA Tl ON
`NAM£ IN CURSOR
`
`No
`
`DISPLAY BLANK
`FOR DESTINA 1/0N
`NAM£ IN CURSOR
`
`76'
`
`BUTTON
`R£L£AS£D?
`
`Yes
`
`C RETURN ---Aj. tf
`
`Ralph Lauren Corp., Exhibit 1004 Page 7
`
`
`
`US 6,437,800 Bl
`
`1
`INFORMATION CURSORS
`
`CROSS-REFERENCE TO RELATED APPLICATION
`This application is a continuation of U.S. patent appli(cid:173)
`cation Ser. No. 08/054,564, filed Apr. 28, 1993 now aban-
`doned.
`
`TECHNICAL FIELD
`
`The present invention relates generally to data processing
`systems and, more particularly, to information cursors for
`use on video displays of data processing systems.
`
`BACKGROUND OF THE INVENTION
`
`5
`
`Many operating systems provide a cursor that indicates a
`current position on a video display. The cursor is generally
`manipulable by an input device, such as a keyboard or a
`mouse. In certain operating systems, such as the Microsoft
`WINDOWS, version 3.1, operating system, which is sold by
`Microsoft Corporation of Redmond, Washington, a window
`may have a status bar that displays information about the
`object to which the cursor is currently pointing. As the
`cursor is moved to point at different objects, the contents of
`the status bar changes accordingly. The status bar is a
`separate graphic entity that is not connected to the cursor and
`does not move with the cursor. The status bar is positioned
`on the video display at a fixed location within a window. As
`such, a user has to look at two separate portions of the screen
`if he wishes to view both the cursor and the status bar. This
`separation of the status bar from the cursor can be confusing 30
`and burdensome to the user.
`
`2
`dragged over the video display to where the destination(cid:173)
`object icon is positioned. The cursor then points to the
`destination object icon and the name of the destination
`object is displayed along with the name of the source object
`as part of the cursor.
`In accordance with still another aspect of the present
`invention, a method is practiced wherein a pointing portion
`of an information cursor is displayed on the video display.
`The pointing portion points to an icon associated with an
`10 object. Information about the object that is associated with
`the icon to which the pointing portion points is displayed as
`part of the information cursor.
`In accordance with a further aspect of the present
`invention, a data processing system includes a video display
`15 and an input device that is operable by a user to communi(cid:173)
`cate with the data processing system. The data processing
`system includes a means for producing a user interface on
`the video display and a means for displaying objects on the
`user interface. The data processing system further includes
`20 a means for displaying a cursor and for moving the cursor in
`response to a user operating the input device. The cursor has
`an indicator portion and information display portion. The
`indicator portion indicates a user selected one of the objects
`that is displayed on the user interface. In addition, the data
`25 processing system includes a means for displaying informa(cid:173)
`tion in the information display portion of the cursor regard(cid:173)
`ing the object that is indicated by the indicator portion of the
`cursor.
`The means for displaying information may include a
`means for displaying a name of the object, a means for
`displaying a preview of the object, or a means for displaying
`property information about the object. Still further, the data
`processing system may include a means for turning "On" or
`"Off" the cursor such that when the cursor is turned "off",
`35 the means for displaying information is deactivated.
`BRIEF DESCRIPTION OF THE DRAWINGS
`FIG. 1 is a block diagram of a data processing system for
`practicing a preferred embodiment of the present invention.
`FIGS. 2a, 2b and 2c each contain a diagram showing an
`example of a name cursor generated in accordance with the
`preferred embodiment of the present invention.
`FIG. 3 is a diagram showing an example of a preview
`45 cursor generated in accordance with the preferred embodi(cid:173)
`ment of the present invention.
`FIG. 4 is a diagram showing an example of combined
`name and preview cursor generated in accordance with the
`preferred embodiment of the present invention.
`FIG. 5 is a diagram showing an example of property
`cursor generated in accordance with the preferred embodi(cid:173)
`ment of the present invention.
`FIG. 6 is a flowchart showing the steps performed to
`implement the information cursors of the preferred embodi-
`55 ment of present invention.
`FIG. 7 is a flowchart illustrating in more detail how
`information about an object is displayed in an information
`cursor generated in accordance with the preferred embodi(cid:173)
`ment of the present invention.
`FIG. 8 is a flowchart illustrating the steps performed by
`the preferred embodiment of the present invention in dis(cid:173)
`playing a name cursor in a drag and drop operation.
`
`SUMMARY OF THE INVENTION
`
`40
`
`In accordance with a first aspect of the present invention,
`a method is practiced in a data processing system having a
`video display and an input device. In this method, objects,
`including an information cursor, are displayed on a video
`display. The cursor is positioned over at least a portion of
`one of the objects that is displayed in response to a user
`using the input device. Information about the object which
`at least a portion of the cursor is over is displayed on the
`video display.
`The information that is displayed as part of the cursor may
`include a name of the object, a preview of the contents of the
`object, or property information about the object. The prop(cid:173)
`erty information may include help information regarding the
`object. Furthermore, the input device may be a mouse that
`is used to position the cursor.
`The information cursor may be displayed as having a 50
`pointing portion for pointing to objects on the video display
`and an information portion for displaying information about
`the object. The information cursor may be specified as "On"
`or "Off". When the information cursor is specified as "On",
`information about the object is displayed as part of the
`cursor. However, when the information cursor is specified as
`"Off", such information is not displayed as part of the cursor.
`In accordance with another aspect of the present
`invention, a cursor, a source-object icon for a source object,
`and a destination-object icon for a destination object are 60
`displayed on a video display. The cursor is moved to point
`to the source object icon in response to movements of a
`mouse by a user. A name of the source object is displayed as
`part of the cursor on the video display. In response to the
`user depressing the button of the mouse while the cursor 65
`points to the source-object icon and moving the mouse while
`keeping the button depressed, the source-object icon is
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`The present invention provides "information cursors"
`which display graphical or textual information about an
`
`Ralph Lauren Corp., Exhibit 1004 Page 8
`
`
`
`US 6,437,800 Bl
`
`15
`
`3
`object to which the cursor points. Each information cursor
`has two portions: a pointing portion and an information
`portion. The pointing portion points to a position on a video
`display. The information portion displays textual or graphi-
`cal information about the object to which the pointing 5
`portion points. Information cursors are made available by an
`operating system to applications that are run on the operat(cid:173)
`ing system. Information cursors are available in a number of
`different varieties. Four varieties of information cursors are
`provided by the preferred embodiment. The four varieties of 10
`information cursors are name cursors, preview cursors,
`combined name and preview cursors, and property cursors.
`The four types of information cursors are described in more
`detail below.
`FIG. 1 is a block diagram of a data processing system 10
`that is suitable for practicing the preferred embodiment of
`the present invention. The data processing system 10
`includes a central processing unit (CPU) 12 that oversees
`operation of the system. The data processing system 10 also
`includes a memory 14, a keyboard 16, a mouse 18, and a
`video display 20. The memory 14 may include different
`types of storage, such as RAM, ROM, or disk storage. The
`memory 14 holds a copy of an operating system 22. A mouse
`driver 24 is provided within the operating system 22 to drive
`the mouse 18.
`Before discussing the implementation details of the infor(cid:173)
`mation cursors in the preferred embodiment of the present
`invention, it is helpful to further examine the different
`varieties of information cursors that are provided by the
`preferred embodiment. FIG. 2a shows an example of a name
`cursor 26 displayed on the video display 20. Name cursor 26
`includes a pointing portion 28 (i.e., a conventional pointing
`cursor) and a name box 30. The name box 30 displays the
`name of the object to which the pointing portion 28 points.
`FIG. 2b shows an example of how the name cursor 26 is
`used. Suppose that a book icon 32, representing a book of
`text stored in the system 10 (FIG. 1), is displayed on the
`video display 20. When the pointing portion 28 of the name
`cursor 26 points to the book icon 32, the name box 30 of the
`name cursor displays the phrase "Book Cover". More
`generally, the name box 30 displays the name of the item to
`which the pointing portion 28 points. The user interface may
`be programmed such that, when the pointing portion 28
`points to nothing of significance, the name box 30 remains
`blank. Alternatively, the user interface may be programmed
`so that the name box 30 disappears in such an instance.
`In some circumstances, the name cursor 26 may include
`two name boxes 30a and 30b, such as shown in FIG. 2c. For
`instance, in an operating system that supports drag and drop
`operations, two names may be displayed in the name cursor
`26 during a drag and drop operation. In particular, the name
`of the source object and the name of the target object are
`shown in name boxes 30a and 30b, respectively. The target
`object name is not shown until the pointing portion 28 of
`the-name cursor 26 is moved to point to the target object. A
`source object icon 33 for the source object is dragged along
`with the cursor during the drag portion of the operation.
`FIG. 3 shows an example of a preview cursor 34, which
`includes a preview portion 36 and the same pointing portion
`28 as the name cursor 26. The preview cursor 34 provides a
`preview of the contents of the object to which the cursor
`points. In the example shown in FIG. 3, the preview cursor
`34 points to the book icon 32 displayed on the video display
`20. The preview portion 36 holds graphical data depicting a
`preview of the contents of the object (i.e., the book icon 32)
`to which the pointing portion 28 points. In the example of
`
`4
`FIG. 3, the book concerns chess, and the preview portion 36
`shows a graphical scene of chess pieces flying through the
`air.
`The name cursor 26 (FIGS. 2a, 2b and 2c) and the
`preview cursor 34 (FIG. 3) may be combined into a com(cid:173)
`bined name and preview cursor 38, as shown in FIG. 4. The
`combined name and preview cursor 38 includes three com(cid:173)
`ponents. First, the preview cursor 38 includes a pointing
`portion 28 for pointing to an object on the video display 20,
`at least one name box 30 (two name boxes are used with a
`drag and drop operation, in a fashion analogous to that
`described above for the name cursor) for displaying the
`name of the object to which the pointing portion points and
`a preview portion 36 for holding a preview of the contents
`of the object to which the pointing portion points. In the
`example illustrated in FIG. 4, the name box 30 displays the
`phrase "Book Cover", whereas the preview portion 36
`displays the graphic of chess pieces flying through the air.
`An additional variety of information cursor that is pro-
`20 vided by the preferred embodiment of the present invention
`is a property cursor 40, such as shown in FIG. 5. A property
`cursor 40 includes the pointing portion 28 and a property
`box 42. The property box 40 displays property information
`( often including the name of the object) regarding the object
`25 to which the pointer portion 28 points. In the example of
`FIG. 5, the property cursor 40 serves as a help cursor that
`displays help information in the property box 42 for the
`object to which the pointing portion 28 points. In FIG. 5, the
`pointer portion 28 points to a maximize button 44. The text
`30 in the property box 42 identifies the nature of the maximize
`button 44 to which the pointer portion 28 points and displays
`relevant help information regarding this object.
`The implementation of the preferred embodiment of the
`present invention will now be described with reference to
`35 the Microsoft WINDOWS, version 3.1, operating system. In
`particular, the operating system 22 is an embellished version
`of the Microsoft WINDOWS, version 3.1, operating system
`that supports the use of information cursors. The present
`invention is not limited to implementations with this oper-
`40 ating system; rather, those skilled in the art will appreciate
`that the present invention may be implemented with other
`operating systems as well.
`In explaining the implementation of the preferred embodi(cid:173)
`ment of the present invention, it is helpful to consider the
`45 type of input device that is used. In the discussion that
`follows, it is assumed that the mouse 18 (FIG. 1) is used as
`the input device for manipulating the position of the cursor
`on the video display 20. It should, nevertheless, be appre(cid:173)
`ciated that the present invention is not limited to the use of
`50 a mouse as the input device; rather, other input devices, such
`as a keyboard or a pointing device, may alternatively be
`used.
`The operating system 22 (FIG. 1) logically divides the
`user interface into a number of windows. In general, each
`55 window has a separate window procedure associated with it.
`The operating system 22 maintains a message queue for
`each program that generates windows. As a program may
`generate multiple windows, the message queue may hold
`messages for multiple windows. When an event occurs, the
`60 event is translated into a message that is put into the message
`queue for the program. The program retrieves and delivers
`the message to the proper window procedure by executing a
`block of code known as the "message loop". The window
`procedure that received the message then processes the
`65 message.
`When a user positions a cursor with the mouse 18 over a
`window or clicks the mouse by depressing one of the mouse
`
`Ralph Lauren Corp., Exhibit 1004 Page 9
`
`
`
`US 6,437,800 Bl
`
`10
`
`15
`
`5
`buttons within the window, the procedure for the window
`receives a mouse message. The operating system 22 pro(cid:173)
`vides a number of predefined mouse messages. The mouse
`messages specify the status of mouse buttons and the
`position of the cursor within the window. The position of the
`cursor within the window is specified in (X, Y) coordinates
`relative to the upper left-hand cover of the window. The
`window procedure receives the mouse message and utilizes
`the information contained in the message to respond to the
`mouse activities. A new mouse message need not be gen(cid:173)
`erated for every single pixel position change of a mouse
`within a window; rather, a message may be generated each
`time the mouse moves more than a threshold number of
`pixels transversed by the mouse.
`This message system plays a role in the implementation of
`information cursors described above. The appearance of the
`cursors on the video display 20 (FIG. 1) is dictated by
`bitmaps stored within the operating system 22. The role that
`the message loop serves in the implementation of the
`information cursors can be seen in the flowchart of FIG. 6,
`which illustrates the steps performed by the system 10 (FIG. 20
`1) when the cursor moves into a window that is displayed on
`the video display 20. Initially, the cursor position is moved
`by the mouse 18 or other input device to point within the
`window (step 48 in FIG. 6). A message is generated and sent
`to the application program that is executing, which, in turn, 25
`forwards the message to the window procedure associated
`with the window (step 50). The message specifies the
`position of the cursor in the window as described above. The
`window procedure then determines what is displayed at the
`cursor position within the window (step 52). For instance, an 30
`object may be at the specified position or nothing of par(cid:173)
`ticular importance may be at the specified position. A
`determination is made whether the specified position corre(cid:173)
`sponds to the position of an object with an identity (step 54).
`In other words, a determination is made whether a named 35
`entity is present at the specified cursor position. If a named
`entity is present at the specified cursor position, the infor(cid:173)
`mation regarding the object at the specified cursor position
`is displayed in the information cursor (step 56). If, however,
`a named entity is not present at the specified cursor position, 40
`either a conventional cursor is displayed or the information
`containing portion ( e.g., name box 30, preview portion 36 or
`property box 40) of the information cursor is shown in blank
`(step 57). The choice between these options is controlled by
`the application program.
`FIG. 7 is a flowchart showing in more detail the steps that
`must be performed in order to realize step 56 of FIG. 6. After
`the window procedure has determined what is at the speci(cid:173)
`fied cursor position, the procedure passes a message to the
`operating system 22 (FIG. 1) that tells the operating system 50
`what type of cursor to display and sets forth the contents and
`type of information to be displayed in the cursor (step 58 in
`FIG. 7). Suppose that the application program desires to
`display a name cursor 26 (FIG. 2a). A message requesting
`that a name cursor be displayed is passed to the operating 55
`system 22 along with a text string for the name to be
`displayed in the name box 30. However, if the cursor to be
`displayed is a preview cursor 34 (FIG. 3), a message
`specifying that a preview cursor is required is sent. The
`message includes a pointer to a bitmap of graphical infor- 60
`mation that the operating system 22 should use in the
`preview portion 36. Still further, a property cursor 46 may
`be requested in the message. The message, in such a case,
`includes a text string for the text of property information to
`be displayed in the property box 42.
`Whether the information cursor is displayed depends
`upon whether the information cursor is designated as "On"
`
`6
`or "Off". The operating system checks whether the infor(cid:173)
`mation cursor is "On" (step 60). In certain instances, the user
`may have the option of specifying whether the information
`cursor is "On" or "Off'. Alternatively, the information
`5 cursors may be programmed by the application program or
`operating system 22 (FIG. 1) such that they are automati(cid:173)
`cally turned "On" when the conventional cursor points to a
`named entity. This latter option provides an automatic
`mechanism for switching "On" or "Off" the information
`cursor. If the information cursor is not "On", a conventional
`cursor is displayed (step 64). As an example, consider the
`name cursor 26. If the name cursor 26 is "Off", the name box
`30 is not displayed (FIG. 2a). Instead, a conventional cursor
`is displayed. On the other hand, if the name cursor is "On",
`the pointing portion 28 is displayed along with the appro(cid:173)
`priate name information (step 62) to be used in the name
`box.
`The name cursor 26 (FIG. 2c) that is shown during a drag
`and drop operation is somewhat unique relative to the other
`types of information cursors. FIG. 8 is a flowchart showing
`the steps performed by the preferred embodiment of the
`present invention to display the name cursor 26 during a
`drag and drop operation. The generation of messages from
`the mouse 18 and the response of window procedures are the
`same as described above for the single-name-box name
`cursor. In step 66, the pointing portion 28 of the name cursor
`points to a source object, and the name of the source object
`is displayed in the first name box 30a (see FIG. 2c), such as
`described above for the single-name-box name cursor of
`FIGS. 2a and 2b. A user then depresses the mouse button
`while the pointing portion 28 of the name cursor points to
`the source-object icon (step 68) and drags the source-object
`icon by moving the mouse and keeping the button depressed
`(step 70) until the source-object icon is positioned over a
`destination-object icon.
`The system performs a loop while the source-object icon
`is being dragged. In particular, the system checks whether
`the pointing portion 28 of the name cursor is positioned over
`a destination object (step 72). if not, a blank is displayed for
`the destination object name in the second name box 30b. The
`system checks whether the mouse is released (step 76). If
`not, the drag continues (step 70). When the pointing portion
`is positioned over a destination object, the name of the
`destination object is then displayed in the second name box
`45 30b (see FIG. 2c) of the name cursor 36 (step 72 of FIG. 8).
`The loop continues until the mouse button is released to
`terminate the drag and drop operation.
`While the present invention has been described with
`reference to a preferred embodiment thereof, those skilled in
`the art will appreciate that various changes and form of the
`detail may be made without departing from the scope of the
`present invention as defined by the appended claims.
`What is claimed is:
`1. In a data processing system having a video display and
`an input device, a method, comprising the steps of:
`( a) displaying objects on the video display, said objects
`including an information cursor with a pointing portion
`for pointing to locations on the video display and an
`information portion for displaying information that is
`displayed in a selected relative position with respect to
`the pointing portion;
`(b) in response to a user using the input device, position-
`ing the information cursor so that the pointing portion
`of the information cursor points to one of the objects
`that is displayed and the information portion is in the
`selected relative position with respect to the pointing
`portion; and
`
`65
`
`Ralph Lauren Corp., Exhibit 1004 Page 10
`
`
`
`US 6,437,800 Bl
`
`7
`(c) displaying currently undisplayed information on the
`video display about the object to which the pointing
`portion of the information cursor points in the infor(cid:173)
`mation portion of the information cursor.
`2. The method as recited in claim 1 wherein the step of 5
`displaying currently undisplayed information on the video
`display further comprises the step of displaying a name of
`the object to which the pointing portion of the information
`cursor points.
`3. The method as recited in claim 2 wherein the step of 10
`displaying currently undisplayed information on the video
`display in the information portion of the information cursor
`further comprises the step of displaying a preview of con(cid:173)
`tents of the object to which the pointing portion of the
`information cursor points in the information portion of the 15
`information cursor.
`4. The method as recited in claim 1 wherein the step of
`displaying currently undisplayed information on the video
`display in the information portion of the information cursor
`further comprises the step of displaying a preview of con- 20
`tents of the object in the information portion of the infor(cid:173)
`mation cursor to which the pointing portion of the informa(cid:173)
`tion cursor points.
`5. The method as recited in claim 1 wherein the step of
`displaying currently undisplayed information on the video 25
`display further comprises the step of displaying property
`information in the information portion of the information
`cursor about the object to which the pointing portion of the
`information cursor points.
`6. The method as recited in claim 5 wherein the step of 30
`displaying property information further comprises the step
`of displaying help information in the information portion of
`the cursor regarding the object to which the pointing portion
`of the information cursor points.
`7. The method as recited in claim 1 wherein the input 35
`device is a mouse and the step of positioning the cursor
`further comprises the steps of tracking movements of the
`mouse by the user and updating a position of the cursor on
`the video display.
`8. The method as recited in claim 1, further comprising 40
`the step of determining what information is associated with
`the object to which the pointing portion of the information
`cursor points.
`9. The method as recited in claim 1 wherein the step of
`displaying currently undisplayed information on the video 45
`display further comprises the steps of:
`(i) determining whether the information cursor is speci(cid:173)
`fied as "On"; and
`(ii) in response to determining whether the information
`cursor is specified as "On", displaying currently undis- 50
`played information on the video display about the
`object to which the pointing portion of the information
`cursor points when the information cursor is specified
`as "On".
`10. In a data processing system having a mouse, having at
`least one button, and a video display, a method comprising
`the steps of:
`
`8
`( a) displaying a cursor, a source-object icon for a source
`object and a destination-object icon for a destination
`object on the video display;
`(b) in response to movements of the mouse by a user,
`moving the cursor to point to the source-object icon;
`(c) displaying on the video display a name of the source
`object as part of the cursor;
`( d) in response to the user depressing the button of the
`mouse while the cursor points to the source object icon
`and moving the mouse while keeping the button
`depressed, dragging the source-object icon over the
`video display to where the destination-object icon is
`positioned so that the cursor points to the destination(cid:173)
`object icon; and
`( e) displaying a name of the destination object along with
`the name of the source object as part of the cursor.
`11. A computer-readable medium whose contents cause a
`computer system having a visual display and a mouse with
`at least one button to perform the steps of:
`displaying on the visual display a cursor, a source object
`icon for a source object, and a destination object icon
`for a destination object;
`in response to movements of the mouse by a user, moving
`the cursor to point to the source object icon;
`displaying on the visual display a name of the source
`object a