WO1994024657A1 - Interactive user interface - Google Patents

Interactive user interface Download PDF

Info

Publication number
WO1994024657A1
WO1994024657A1 PCT/US1994/004248 US9404248W WO9424657A1 WO 1994024657 A1 WO1994024657 A1 WO 1994024657A1 US 9404248 W US9404248 W US 9404248W WO 9424657 A1 WO9424657 A1 WO 9424657A1
Authority
WO
WIPO (PCT)
Prior art keywords
pane
window
icon
display
contents
Prior art date
Application number
PCT/US1994/004248
Other languages
French (fr)
Inventor
Andrew Shalit
Jeremy Jones
Original Assignee
Apple Computer Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Computer Inc. filed Critical Apple Computer Inc.
Priority to CA002161023A priority Critical patent/CA2161023C/en
Priority to AU67073/94A priority patent/AU6707394A/en
Priority to EP94914825A priority patent/EP0695448B1/en
Priority to JP52352294A priority patent/JP4255511B2/en
Priority to DE69428988T priority patent/DE69428988T2/en
Publication of WO1994024657A1 publication Critical patent/WO1994024657A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • G06F3/04855Interaction with scrollbars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04803Split screen, i.e. subdividing the display area or the window area into separate subareas

Definitions

  • This invention relates to interactive user interfaces for computers, and in particular to such interfaces known as graphic user interfaces (GUIs).
  • GUIs graphic user interfaces
  • GUIs are exemplified by the Finder operating system used in Macintosh computers.
  • An aspect of that system is described in U.S. Patent 4,931,783, whose contents are herein incorporated by reference. That patent describes how to manipulate or control the functions available from the operating system through the use of pull-down menus. The details of how to implement such a system, as well as other Finder functions, are described in detail in "Inside Macintosh", published by Addison-Wesley.
  • the Windows operating system for use with DOS machines is another example of a popular operating system providing a GUI.
  • the present invention is applicable to all such systems, and is primarily concerned with accessing operating system or program functions merely by pointing and clicking and/or dragging and dropping a screen pointer under user control by manipulating a control device, usually a mouse, but can also include a keyboard.
  • Finder used as a file manager, in order to retrieve an object stored on disk, you can by various manipulations ultimately view on the screen in a typical GUI active window a listing of the names of directories and of subdirectories in outline form. Also listed could be the size and last modified date next to each name.
  • Objects representations displayed by Finder are typically directories, and files, herein referred to as "directory objects".
  • Next to each directory name is an expansion triangle, right pointing.
  • the contents of the directory object are not visible on the screen.
  • To view the contents of a particular directory you click on its triangle. The latter becomes downward-pointing, and the directory contents are displayed in the same window, which is the active window.
  • you double-click on a directory it opens its own window and displays the names of the directory objects it contains.
  • files cannot be opened in Finder, and thus it is not possible to edit the contents of a particular file directly through the Finder.
  • An object of the invention is a novel user interface for improving the ability of the user to navigate or browse through stored or computed items (aka objects).
  • a further object of the invention is a user interface that enables a user to view and edit the contents of an object regardless of the type of the object.
  • Another object of the invention is a user interface which provides views of an object in an ordered, intelligent relationship to one another for assisting a user's understanding of the window contents.
  • the invention in its broadest aspect is concerned with providing means to enable a user by clicking or dragging and dropping to open up in the existing or in a new, separate pane the contents of an item or object listed or displayed in an existing pane on the screen.
  • the item may be a file.
  • an icon in the form of a split-bar box is added to the normal window's or pane's scroll bar.
  • a routine is invoked that creates a new pane on the screen, and opens up the item for display in the new pane, without affecting the display in the existing pane (other than to indicate that the contents of the item are now available).
  • a window or pane is provided with an input icon. Dragging an item or object in a window or pane and dropping on to the input icon displays the contents of the item or object in an existing pane. This is similar to dragging an item to the split-bar box, except that when using the split-bar box, a new pane is always created.
  • a first window or pane is also provided with an output icon. Assuming a second pane with an input icon exists on the screen, dragging the output icon of the first pane to the input icon of the second pane will cause the second pane to be dynamically linked to and always to display the contents of whatever item is currently selected in the first pane. If the selection in the first pane changes, so will the contents displayed in the second pane. This is what is meant by stating that the second pane is dynamically linked to the first pane, namely, so that whatever is selected in the first pane will be displayed in the second pane. Multiple items may also be selected, in which case multiple items will be displayed.
  • a fourth preferred embodiment automatically provides an inline component editor in a window or pane for editing of the contents of the item displayed in the window or pane. This is described in more detail and claimed in the referenced related case, whose contents are herein incorporated by reference.
  • a fifth preferred embodiment combines the use of the output icon or outbox with the split-bar box.
  • dragging the output icon on a window or pane to and dropping onto a split-bar box in the same window or pane creates a new second pane dynamically linked to the original window or pane, so that whatever is selected in the first window or pane will be displayed in the second pane, with the first window or pane continuing to display its original contents.
  • a sixth preferred embodiment makes use of the input icon in a single window or pane. Selecting an object displayed in the single window or pane and dragging it to and dropping it on the input icon associated with that window or pane causes the contents of the selected object to replace the original set of objects on display in the same window or pane.
  • the advantages of the invention include a significant expansion of GUI principles for many users. In addition to other situations, it is useful to provide an improved programming environment for programmers, that will simplify access to one or more program modules for simultaneous viewing and/or editing. Moreover, the control device manipulations are easy for a user to understand, and they rapidly produce the sought after action.
  • Fig. 1 is a block diagram of a typical computer system
  • Figs. 2A-2D, 3A-3D, 4A-4E, 5A-5C, 6, 7, 8, 9A-9E, and 10A-10D are screen views showing various user interactions in accordance with the invention.
  • Fig. 1 shows a typical computerized system 10, comprising a console 11 containing a CPU 12, memory 13 in the form of RAM, ROM and disk, and I/O circuitry 14 connected to a monitor 15 having a display screen 16, and control devices in the form of a keyboard 17 and a mouse 18.
  • the mouse 18 typically contains button switches 19 operated by a user of the system.
  • a cursor or pointer 20 is typically displayed on the screen 16 and its position is controllable via the mouse 18 or the keyboard 17 as is well known.
  • a typical window 21 is displayed on the screen 16, with a title bar 22 in the window.
  • Object means any representation of information or of a data structure that can be displayed on the monitor screen, and includes one or more text characters, one or more sound representations, a picture or video representation such as a video frame, in general any graphic element, and also includes a directory, a file or a database record.
  • Window means a portion of a computer screen used to display information.
  • Pane is a portion of a window. It can also include the entire window and constitute a single pane within the window.
  • Contents of an object means a view of an object which shows the object itself, may show the pieces that make up the object, and may also include related objects or descriptions of the object (such as its size or age). These pieces may be other objects, or some other visual display. When the contents of an object are displayed, the user may be able to modify them. "Opening” or “opening up” an object means displaying the contents of an object or displaying objects that are related to allow viewing and/or editing.
  • Control device means devices manipulated by users to move cursors around a screen, and include a mouse and keyboard.
  • Pointing to an object on screen means actuating the control device to move the cursor so that it is over or adjacent the object.
  • the cursor is a pointer such as an arrow, it means moving the arrow tip close to the object.
  • “Clicking” on an object means to press and quickly release a switch on the control device, such as a button on a mouse, when the cursor is pointing to the object.
  • Dragging means to click on the object, and while holding the switch activated, to manipulate the control device to move the object to a new screen location, and then to release the switch to drop it on another object or to fix the new screen location of the object.
  • “Double-clicking" an object on screen is by pointing to the object and clicking twice rapidly, often used for special control purposes .
  • Select is the action of choosing an object or other user interface element, such as an icon. The action of selecting may be performed with the mouse, or through the keyboard.
  • scroll bar is a common control device displayed alongside a window, having, typically, at opposite ends small arrowed scroll boxes or buttons that when clicked on by the user causes the window contents to scroll.
  • a "button” or “box” on a scroll bar is a representation of a control device for use with a mouse.
  • a “thumb” is a button or box on the scroll bar, between its ends, which moves and whose location on the scroll bar corresponds to the location in the whole information of the current view.
  • Icon means any screen image or representation which upon activation by a user-controlled cursor acts as part of control means to perform a certain function.
  • Typical icons include, for example, file representations, and boxes and buttons on scroll bars.
  • the invention features, associated with existing windows or panes, the provision of new, user-interface, control items referred to as boxes or icons, which when invoked causes new actions to take place for the purpose of greatly enhancing the ability of a user to navigate or browse through all kinds of different objects stored in memory 13.
  • This new behavior of the system is brought about by the interaction of the new control items with the underlying routines under the control of the CPU, when the user carries out certain actions. Once the actions are described, and the behavior desired described, then creating the routines to produce that behavior is straight forward and well within the skill of the average skilled person using existing knowledge. Examples of several routines are presented hereinafter.
  • Fig. 2A shows a screen display 30 in accordance with the invention. It comprises the usual title bar 31 with a close box 32 on the left and a zoom box 33 on the right. Vertical 34 and horizontal 35 scroll bars are depicted, with the usual scroll arrows at opposite ends, and a thumb 36. A size box 29 is also shown in the lower right corner of the window.
  • a horizontal split-bar box or split-pane icon 38 is provided at the left end of the horizontal scroll bar 35
  • a vertical split-bar box or split-pane icon 39 is provided at the top end of the vertical scroll bar 34, the split-bar boxes functioning to split the window into old and new panes, or to split a pane into old and new subpanes.
  • a second title bar 41 is provided below the regular title bar 31, and at its left end an input icon 42, with an arrow facing in, and at its right end an output icon 43, with an arrow facing out.
  • the window 30 shows a listing of four directory objects in the directory named Leibniz. Two names are shown, with an icon 45 representing a text file, and two names are shown with an icon 44 representing a sub-directory, and with right-pointing triangles 46 indicating that the named object's contents are not displayed.
  • the user by manipulating his mouse 18 has pointed with his pointer cursor 20 to the third listed object named ARM Support and clicked on it.
  • This action selects the object, indicated by highlighting 45A.
  • the user drags 47 (Fig. 2B) the file name to the horizontal split bar box 38 (Fig. 3B), and releases the mouse button. That action causes a routine to execute which forms in the original window 30 a first pane 50 with the contents of the original window 30, and creates a new second pane 51, both under the original top title bar 31.
  • the original window can also be thought of one large pane. What is displayed in the first pane 50 are the objects that occupied the area now occupied by the first pane 50.
  • Objects originally displayed where the new second pane 51 exists are truncated.
  • the original sub-title bar 41 has also split into old 41 A and new 4 IB title bars for the old and new panes.
  • Both panes 50, 51 contain its own horizontal 52 and vertical 53 scroll bars, horizontal 54 and vertical 55 split bar boxes, and input 56 and output 57 icons.
  • the contents of the second pane 51 is a display of the contents of the selected object, ARM Support, which is the title 59 in the second pane. Note also that the contents happens to be a further listing of text documents shown by name as indented under ARM Support. And, the downward-pointing triangle 60 indicates that the directory's contents are displayed in that second pane 51.
  • split bar box 38 activation of the split bar box 38 created a new pane 51 holding the contents of an item or object, in this case a directory ARM Support, selected 45A in the original window 30.
  • the name "split bar” was chosen to indicate to the user that the control box when activated splits the original window into two panes, with one pane displaying the contents of a item selected in the other pane.
  • you want to view the contents of an object you have three choices: (1) you can open the object in its own special window with the prior art Finder; (2) you can open the object in another pane as described above and below in accordance with the invention; (3) you can open the object inline, by using the triangles, in accordance with an aspect of the invention described below and illustrated in Figs. 5A-5C.
  • Figs. 3A-3D are a set of similar views showing the action of the second preferred embodiment.
  • the starting point is a window 64 split into two panes 65, 66 each with the same structure as depicted in Fig. 2D.
  • the same reference numbers indicate the same elements as in the drawing figure where originally introduced.
  • the user has selected, again, the object ARM Support, by pointing and clicking, to highlight 45 A the name.
  • the user drags 67 (Fig. 3B) the selected name to the input icon 56 in the right pane 66.
  • the second pane 66 Upon releasing the mouse button, the second pane 66 (Fig. 3D) now displays the contents of the selected object, as in Fig. 2D.
  • Figs. 4A-4E show the third preferred embodiment.
  • the starting point is a window 70 with two panes 65 and 66, with the object contents of Leibniz displayed in the left pane 65, and one object ARM Support selected and highlighted 45A.
  • the user manipulating his mouse now clicks on the output icon 57 of the left pane 65 and drags it 71 (Fig. 4B) to the input icon 56 of the right pane 66 (Fig. 4C) and then releases the mouse button.
  • This action opens up the selected object, ARM Support, and displays its contents in the right pane 66, with the downturned rectangle 60 showing to the user that the contents are displayed (Fig. 4D).
  • This embodiment differs from the Figs. 3A-3D embodiment in that the second pane is dynamically linked to the first pane and continues to display the contents of the initially selected file until a new selection in the first pane is made in which case the contents of the new selection are displayed in the second pane.
  • Fig. 4E shows a new selection 73 of the Level- 1 file in the first pane 65, and the display in the second pane 66 correspondingly changes to show the contents of Level-1, replacing the contents of the previous selection ARM Support.
  • the display will remain unchanged until the window 70 is closed, or the left or right pane 66 is closed.
  • Figs. 4E shows a new selection 73 of the Level- 1 file in the first pane 65, and the display in the second pane 66 correspondingly changes to show the contents of Level-1, replacing the contents of the previous selection ARM Support.
  • the display will remain unchanged until the window 70 is closed, or the left or right pane 66 is closed.
  • the window 75 contains as before a left pane 76 and a right pane 77.
  • the contents of object Leibniz is displayed in the left pane 76.
  • ARM Support had been opened in the right pane 77. This could be accomplished by any of the processes described in connection with Figs. 2A-2D, 3A-3D and 4A-4E.
  • the feature illustrated here is to automatically provide an editing function in the new pane 77.
  • the downturned triangle 60 shows that object ARM Support has been opened inline, and the contents of ARM Support (2 files) are displayed in the same right pane 77.
  • the down-turned triangle 78 next to the dump lisp file shows that that file has also been opened inline in the same pane 77, and contains 3 text objects.
  • Fig. 5 A shows the contents of dump lisp as three (indented) text objects, and also shows the user pointing 79 to the triangle of the first text object to select it.
  • Fig. 5B shows that the item indicated as open in Fig. 5A has opened inline in pane 77, and again indented, the contents of the first text object which are displayed below it, with the down-turned triangle 79 showing its display, and with the pointer 79 replaced by an editing I-beam cursor 80 which has been clicked to locate a blinking vertical line 81 as the insertion point for new text.
  • Fig. 5C shows that a line of new text has been added by the user to the first text object. .All of the normal edit functions are available in the new pane.
  • panes could automatically be provided with an inline component editor and activated when the cursor is positioned in the pane and assumes the edit I-beam shape and the user clicks the mouse.
  • an inline component editor is meant an editor which exists within a pane, rather than taking up an entire pane or entire window. The editor is a device which allows you to view and modify data.
  • a single pane may contain several inline component editors, possibly of different types.
  • a different type of editor means it is for editing different kinds of data, or editing in different formats. For example, one could have a text editor, a picture editor, fill-in-the blanks form editor, etc.
  • FIGs. 5B and 5C each show an inline component editor for editing text in the right-hand pane.
  • the new panes were split horizontally from an existing pane. That would be the normal result of using the horizontal split bar 54.
  • Using the vertical split-bar 55 would cause vertical panes to be formed that would function in exactly the same manner as the horizontal panes.
  • dragging an output icon from a top pane to the input icon of the bottom pane would cause the selected items in the top pane to open up and be displayed in the bottom pane.
  • highlighting a selection can also be accomplished through the use of a color change.
  • split-bar icon has been located on the scroll bar, and the input and output icons on the title bar, it will be understood that the invention is not limited to those locations of the icons. They can be located anywhere on or inside a pane or window, and the appropriate software easily modified to detect clicking or dragging on the icon wherever displayed on the screen
  • the split-bar icon has been illustrated in connection with a window containing a single pane, as indicated, for example, in Fig. 2C, it can be made operative in a pane of a window to split the pane into two sub-panes and in general whether one or more than one pane is present.
  • the input icon is used to control what is displayed in a pane, illustrated, for example, in Figs. 3A-3D, where activating the input icon 56 of the second pane 66 displays in pane 66 the contents of the ARM Support object.
  • the output icon is used primarily to transfer information from the pane where activated to another pane.
  • the contents of an object in the first pane 65 are transferred and displayed in the second pane 66.
  • the highlighting of the output icon 57 indicates the current selection of the highlighted object ARM Support.
  • the invention is not limited to selecting a split-bar icon in a pane or window that also contains the selected object, to split that pane or window.
  • the invention also applies to selecting an object in a first pane displayed on the screen, dragging the object to the split-bar icon in a second pane in the same or a different window displayed on the screen, with the result that the second pane splits into two sub-panes, with one sub-pane displaying whatever was displayed in the first pane, and the other sub-pane displaying the contents of the selected object.
  • the invention is not limited to selecting a single object, but can also be applied to multiple objects selected and dragged to a split-bar icon for displaying the contents of all of the selected objects.
  • a split-bar icon can be combined with that of an output icon. For example, by selecting an output icon in a first pane, and then selecting a split-bar icon in a second pane, which can be the same pane or a different pane from the one containing the output icon (and the panes can also be in different windows), the second pane containing the selected split-bar icon splits into two panes. One of these displays whatever was displayed in the second pane, and the other displays the contents of the selection in the first pane. Moreover, the two panes are dynamically linked so that, as the selection in the first pane changes, the display in the new pane changes. As before, selection can be performed by selecting an output icon with a mouse, dragging until the mouse is over the desired split-bar icon, and then releasing the mouse. The net result is splitting a pane while simultaneously linking it to another pane.
  • FIGs. 9A-9E shows in Fig. 9A selection of the output icon 107 in pane 105, dragging the output icon 108 (Fig. 9B) and dropping on the split-bar icon 109 in the same pane 105 (Fig. 9C) causes the original display in pane 105 to continue in the left pane and to create a new second pane 111 (Fig. 9D) which displays the contents of the selected item ARM Support in the original pane 105.
  • the new pane 111 is dynamically linked to the old pane 105, so making a new selection 113 (Fig. 9E) in pane 105 displays in new pane 111 the contents of the new selection Level 1. Further, the process depicted in Fig.
  • first pane 3 for displaying the contents of one or more selected objects in a first pane is not limited to an input icon in an existing second pane.
  • the first and second panes can be in the same window or pane or in different windows or panes, and the first and second panes can even be the same pane.
  • the invention is not limited to providing an inline editor when displaying the contents of an object inline.
  • the display of the object in the pane is replaced by display of the contents of the object.
  • the positions of other objects in the pane are changed to make room for the expanded view of the object originally selected.
  • This feature is implemented as described by clicking on a special icon next to an object in a pane, such as the selected triangular icon 79 in Fig. 5A.
  • Figs. 6-8 show several other ways in which the invention can provide important benefits to users. Fig.
  • pane 6 is an example of how a programmer may use the invention, and shows 5 panes, 83-87, that can simultaneously be displayed on a single monitor screen. All the panes have been dynamically linked via their input 89 and output 90 icons, so that each pane in turn displays the contents of the object selected in the previous pane.
  • the pane contents are as follows:
  • Pane 1(83) shows all the code modules associated with a given project
  • Pane 2(84) shows all classes defined in the code module selected (shown highlighted) in Pane 1;
  • Pane 3(85) shows the methods defined on the class selected in Pane 2;
  • Pane 4(86) shows the source code of the method selected in Pane 3;
  • Pane 5(87) shows a list of other classes which implement the method selected in Pane 3. This example also illustrates that one pane can drive more than one other pane. Note that both Panes 4 (86) and 5 (87) are driven by the selection in Pane 3.
  • Fig. 7 illustrates how the tools of the invention described herein are useful for general data browsing, and are not limited to program development.
  • Fig. 7 illustrates how the tools of the invention described herein are useful for general data browsing, and are not limited to program development.
  • Pane 1(93) shows all the car models available at a given dealership; Pane 2(94) shows the options available for the car model selected in Pane 1; Pane 3(95) shows a description of the option selected in Pane 2.
  • Pane 4(96) Pane 4 at the bottom is linked to Pane 1 and displays the selected car model.
  • FIG. 8 illustrates use of the invention for file location or management. In the five panes illustrated in Fig. 8:
  • Pane 1(97) shows all the directories and files on a give hard disk
  • Pane 2(98) shows all the directories and files in the directory selected in Pane 1;
  • Pane 3(99) shows all the directories and files in the directory selected in
  • Pane 4(100) shows all the directories and files in the directory selected in
  • the various panes are dynamically linked by, for example, as described above, dragging and dropping the output icon of one pane onto the input icon of another pane.
  • the new item may replace the old contents of the pane, or the new item may supplement the old contents of the pane.
  • Figs. 10A-10D illustrate supplementing the old contents.
  • left pane 120 shows the contents of Leibniz
  • right pane 120 shows the contents of My Files.
  • ARM Support is selected 122 (Fig. 10A) in the left pane, and dragged 124 (Fig. 10B) and dropped (Fig. IOC) on the input icon 123 in the right pane 121
  • the contents of pane 121 now displays both the contents of My Files and ARM Support.
  • the choice between these two behaviors is easily made by the choice of the particular implementation of this feature of the invention, or both possibilities are easily implemented by providing separate routines for each, and allowing the user the option to select the behavior desired.
  • This variant of the invention involving two possible behaviors applies not only to dragging and dropping a selected displayed item on the input box, as shown in Figs. 3C and IOC, but also to dragging and dropping the output box of one pane onto the input box of another pane, illustrated in Fig. 4C.
  • Panes 4(86) and 5(87) in Fig. 6 are linked to the same Pane 3(85), their displayed contents are different. This is to illustrate that opening up an item to display its contents can involve a display of one of several different objects or sets of objects related in some way to the item opened up. For instance, Pane 4(86) displays the code for one method for the class "table”, whereas Pane 5(87) displays a number of other implementors for the "table" class. Where, as here, several possible displays exist when opening up an item, the choice can be left to the user determined by initial configuration or during use by issuing a supplemental command, such as by holding down a special key when selecting an item or when linking the panes. This is easily implemented by different routines each of which when invoked determines the displayed contents, the routine being invoked in turn being determined by a user action.
  • Routine B Routine C Routine D The advantages of the invention include allowing users to create in a relatively simple way their own views on the stored data, by opening new panes to view, and edit if desired, the structure of objects in an old pane which continues to display its original data. Moreover, it also affords a simple and quick way for a user to browse or navigate through a sequence of nested objects.
  • An important benefit of the invention is that a small number of additional user interface elements provides a relatively large number of valuable desktop functions, such as, splitting a pane and simultaneously determining which object is displayed in the newly created pane, splitting a pane and simultaneously linking it to another pane, specifying that the contents of an object or group of objects should be displayed in an existing pane, linking two or more existing panes, and displaying the contents of an object inline.

Abstract

An interactive user interface for a computer controlled system to simplify browsing and navigating through information structures. The interface uses a split-pane icon (38, 39) on a window scroll bar, or input (42) and output (43) icons on a window title bar (41). When activating the split-pane icon (38, 39) by dragging a selected object to it, a new pane opens up displaying the contents of the object. Where a first (50) or second (51) pane exists, dragging a selected object to the first or the second pane's input icon (56), or dragging the ouptut icon (57) of the first pane (50) to the second pane's input icon (56), will display the contents of a selected object in the first (50) or second (51) pane respectively. Other ways of controlling the displays in the same or different window or panes are also described.

Description

INTERACTIVE USER INTERFACE
This invention relates to interactive user interfaces for computers, and in particular to such interfaces known as graphic user interfaces (GUIs). BACKGROUND OF INVENTION
GUIs are exemplified by the Finder operating system used in Macintosh computers. An aspect of that system is described in U.S. Patent 4,931,783, whose contents are herein incorporated by reference. That patent describes how to manipulate or control the functions available from the operating system through the use of pull-down menus. The details of how to implement such a system, as well as other Finder functions, are described in detail in "Inside Macintosh", published by Addison-Wesley. The Windows operating system for use with DOS machines is another example of a popular operating system providing a GUI. The present invention is applicable to all such systems, and is primarily concerned with accessing operating system or program functions merely by pointing and clicking and/or dragging and dropping a screen pointer under user control by manipulating a control device, usually a mouse, but can also include a keyboard.
With Finder used as a file manager, in order to retrieve an object stored on disk, you can by various manipulations ultimately view on the screen in a typical GUI active window a listing of the names of directories and of subdirectories in outline form. Also listed could be the size and last modified date next to each name. Objects representations displayed by Finder are typically directories, and files, herein referred to as "directory objects". Next to each directory name is an expansion triangle, right pointing. The contents of the directory object are not visible on the screen. To view the contents of a particular directory, you click on its triangle. The latter becomes downward-pointing, and the directory contents are displayed in the same window, which is the active window. Alternatively, if you double-click on a directory, it opens its own window and displays the names of the directory objects it contains. However, files cannot be opened in Finder, and thus it is not possible to edit the contents of a particular file directly through the Finder.
SUMMARY OF INVENTION
An object of the invention is a novel user interface for improving the ability of the user to navigate or browse through stored or computed items (aka objects). A further object of the invention is a user interface that enables a user to view and edit the contents of an object regardless of the type of the object.
Another object of the invention is a user interface which provides views of an object in an ordered, intelligent relationship to one another for assisting a user's understanding of the window contents.
The invention in its broadest aspect is concerned with providing means to enable a user by clicking or dragging and dropping to open up in the existing or in a new, separate pane the contents of an item or object listed or displayed in an existing pane on the screen. As an example only, the item may be a file. In a first preferred embodiment, an icon in the form of a split-bar box is added to the normal window's or pane's scroll bar. By selecting, as by clicking on, the desired item or object in the existing pane, and dragging the item name to and dropping on the split bar box, a routine is invoked that creates a new pane on the screen, and opens up the item for display in the new pane, without affecting the display in the existing pane (other than to indicate that the contents of the item are now available).
In a second preferred embodiment, a window or pane is provided with an input icon. Dragging an item or object in a window or pane and dropping on to the input icon displays the contents of the item or object in an existing pane. This is similar to dragging an item to the split-bar box, except that when using the split-bar box, a new pane is always created.
In a third preferred embodiment that builds on the second preferred embodiment, a first window or pane is also provided with an output icon. Assuming a second pane with an input icon exists on the screen, dragging the output icon of the first pane to the input icon of the second pane will cause the second pane to be dynamically linked to and always to display the contents of whatever item is currently selected in the first pane. If the selection in the first pane changes, so will the contents displayed in the second pane. This is what is meant by stating that the second pane is dynamically linked to the first pane, namely, so that whatever is selected in the first pane will be displayed in the second pane. Multiple items may also be selected, in which case multiple items will be displayed. A fourth preferred embodiment automatically provides an inline component editor in a window or pane for editing of the contents of the item displayed in the window or pane. This is described in more detail and claimed in the referenced related case, whose contents are herein incorporated by reference.
A fifth preferred embodiment combines the use of the output icon or outbox with the split-bar box. In this embodiment, dragging the output icon on a window or pane to and dropping onto a split-bar box in the same window or pane creates a new second pane dynamically linked to the original window or pane, so that whatever is selected in the first window or pane will be displayed in the second pane, with the first window or pane continuing to display its original contents.
A sixth preferred embodiment makes use of the input icon in a single window or pane. Selecting an object displayed in the single window or pane and dragging it to and dropping it on the input icon associated with that window or pane causes the contents of the selected object to replace the original set of objects on display in the same window or pane. The advantages of the invention include a significant expansion of GUI principles for many users. In addition to other situations, it is useful to provide an improved programming environment for programmers, that will simplify access to one or more program modules for simultaneous viewing and/or editing. Moreover, the control device manipulations are easy for a user to understand, and they rapidly produce the sought after action. In addition, with the use of the input/output icons, it is possible to link and display three or more panes, each containing the lower-level contents of a higher-level previous pane. The above and further objects, details and advantages of the present invention will become apparent from the following detailed description of preferred embodiments thereof, when read in conjunction with the accompanying drawings.
SUMMARY OF DRAWINGS
Fig. 1 is a block diagram of a typical computer system; Figs. 2A-2D, 3A-3D, 4A-4E, 5A-5C, 6, 7, 8, 9A-9E, and 10A-10D are screen views showing various user interactions in accordance with the invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Fig. 1 shows a typical computerized system 10, comprising a console 11 containing a CPU 12, memory 13 in the form of RAM, ROM and disk, and I/O circuitry 14 connected to a monitor 15 having a display screen 16, and control devices in the form of a keyboard 17 and a mouse 18. The mouse 18 typically contains button switches 19 operated by a user of the system. A cursor or pointer 20 is typically displayed on the screen 16 and its position is controllable via the mouse 18 or the keyboard 17 as is well known. A typical window 21 is displayed on the screen 16, with a title bar 22 in the window.
The following terms used herein will have the following meanings.
"Object" means any representation of information or of a data structure that can be displayed on the monitor screen, and includes one or more text characters, one or more sound representations, a picture or video representation such as a video frame, in general any graphic element, and also includes a directory, a file or a database record.
"Window" means a portion of a computer screen used to display information.
"Pane" is a portion of a window. It can also include the entire window and constitute a single pane within the window.
"Contents of an object" means a view of an object which shows the object itself, may show the pieces that make up the object, and may also include related objects or descriptions of the object (such as its size or age). These pieces may be other objects, or some other visual display. When the contents of an object are displayed, the user may be able to modify them. "Opening" or "opening up" an object means displaying the contents of an object or displaying objects that are related to allow viewing and/or editing.
"Control device" means devices manipulated by users to move cursors around a screen, and include a mouse and keyboard.
"Pointing" to an object on screen means actuating the control device to move the cursor so that it is over or adjacent the object. When the cursor is a pointer such as an arrow, it means moving the arrow tip close to the object.
"Clicking" on an object means to press and quickly release a switch on the control device, such as a button on a mouse, when the cursor is pointing to the object.
"Dragging" means to click on the object, and while holding the switch activated, to manipulate the control device to move the object to a new screen location, and then to release the switch to drop it on another object or to fix the new screen location of the object.
"Double-clicking" an object on screen is by pointing to the object and clicking twice rapidly, often used for special control purposes . "Select" is the action of choosing an object or other user interface element, such as an icon. The action of selecting may be performed with the mouse, or through the keyboard.
- A - A "scroll bar" is a common control device displayed alongside a window, having, typically, at opposite ends small arrowed scroll boxes or buttons that when clicked on by the user causes the window contents to scroll.
A "button" or "box" on a scroll bar is a representation of a control device for use with a mouse.
A "thumb" is a button or box on the scroll bar, between its ends, which moves and whose location on the scroll bar corresponds to the location in the whole information of the current view.
"Icon" means any screen image or representation which upon activation by a user-controlled cursor acts as part of control means to perform a certain function. Typical icons include, for example, file representations, and boxes and buttons on scroll bars.
All of the foregoing actions described above are implemented, as is well known, under control of the computer 11, and specifically the CPU 12, by a series of software routines which are part of the operating system and which are invoked by keyboard commands, or, with a GUI, more usually by clicking on or dragging an object. The operating system knows at all times the location of the screen cursor, and routines are selected and invoked to be run by the location of the cursor when the mouse is clicked or double-clicked or released and by the state of the system. So, for example, positioning the cursor over an item displayed and clicking will select the item, if the system state allows this action. Similarly, if the system state allows it, double clicking on a directory item will display its contents. The invention features, associated with existing windows or panes, the provision of new, user-interface, control items referred to as boxes or icons, which when invoked causes new actions to take place for the purpose of greatly enhancing the ability of a user to navigate or browse through all kinds of different objects stored in memory 13. This new behavior of the system is brought about by the interaction of the new control items with the underlying routines under the control of the CPU, when the user carries out certain actions. Once the actions are described, and the behavior desired described, then creating the routines to produce that behavior is straight forward and well within the skill of the average skilled person using existing knowledge. Examples of several routines are presented hereinafter.
Fig. 2A shows a screen display 30 in accordance with the invention. It comprises the usual title bar 31 with a close box 32 on the left and a zoom box 33 on the right. Vertical 34 and horizontal 35 scroll bars are depicted, with the usual scroll arrows at opposite ends, and a thumb 36. A size box 29 is also shown in the lower right corner of the window. In accordance with the invention, a horizontal split-bar box or split-pane icon 38 is provided at the left end of the horizontal scroll bar 35, and a vertical split-bar box or split-pane icon 39 is provided at the top end of the vertical scroll bar 34, the split-bar boxes functioning to split the window into old and new panes, or to split a pane into old and new subpanes. In addition, a second title bar 41 is provided below the regular title bar 31, and at its left end an input icon 42, with an arrow facing in, and at its right end an output icon 43, with an arrow facing out. The operation with these new control icons will now be described from the user's standpoint, and the implementation of the operations will be later explained.
The window 30 shows a listing of four directory objects in the directory named Leibniz. Two names are shown, with an icon 45 representing a text file, and two names are shown with an icon 44 representing a sub-directory, and with right-pointing triangles 46 indicating that the named object's contents are not displayed.
In the window 30 shown in Fig. 2A, the user by manipulating his mouse 18 has pointed with his pointer cursor 20 to the third listed object named ARM Support and clicked on it. This action selects the object, indicated by highlighting 45A. While holding down the mouse button, the user drags 47 (Fig. 2B) the file name to the horizontal split bar box 38 (Fig. 3B), and releases the mouse button. That action causes a routine to execute which forms in the original window 30 a first pane 50 with the contents of the original window 30, and creates a new second pane 51, both under the original top title bar 31. The original window can also be thought of one large pane. What is displayed in the first pane 50 are the objects that occupied the area now occupied by the first pane 50. Objects originally displayed where the new second pane 51 exists are truncated. The original sub-title bar 41 has also split into old 41 A and new 4 IB title bars for the old and new panes. Both panes 50, 51 contain its own horizontal 52 and vertical 53 scroll bars, horizontal 54 and vertical 55 split bar boxes, and input 56 and output 57 icons. However, the contents of the second pane 51 is a display of the contents of the selected object, ARM Support, which is the title 59 in the second pane. Note also that the contents happens to be a further listing of text documents shown by name as indented under ARM Support. And, the downward-pointing triangle 60 indicates that the directory's contents are displayed in that second pane 51. Thus, activation of the split bar box 38 created a new pane 51 holding the contents of an item or object, in this case a directory ARM Support, selected 45A in the original window 30. The name "split bar" was chosen to indicate to the user that the control box when activated splits the original window into two panes, with one pane displaying the contents of a item selected in the other pane. When you want to view the contents of an object, you have three choices: (1) you can open the object in its own special window with the prior art Finder; (2) you can open the object in another pane as described above and below in accordance with the invention; (3) you can open the object inline, by using the triangles, in accordance with an aspect of the invention described below and illustrated in Figs. 5A-5C. While split-bar or similar icons were used in the prior art, they did not control what was displayed in the second pane. For example, with text on the screen, activating the prior art vertical split-bar icon by dragging to a new screen location would form two new panes, with the upper pane displaying the upper half of what was displayed on the original screen, and with the lower pane displaying the lower half of what was displayed on the original screen. Thus, in neither of the new panes created can the displayed contents be controlled. In the invention, in contrast, what is displayed in the new second pane is the contents of what was selected by and is thus under the control of the user in the original single pane.
Figs. 3A-3D are a set of similar views showing the action of the second preferred embodiment. In this case, the starting point is a window 64 split into two panes 65, 66 each with the same structure as depicted in Fig. 2D. Here, as in subsequent figures, the same reference numbers indicate the same elements as in the drawing figure where originally introduced. In the left pane 65, the user has selected, again, the object ARM Support, by pointing and clicking, to highlight 45 A the name. Now, the user drags 67 (Fig. 3B) the selected name to the input icon 56 in the right pane 66. Upon releasing the mouse button, the second pane 66 (Fig. 3D) now displays the contents of the selected object, as in Fig. 2D. If desired, it is possible to highlight the output icon 57 of the left pane and the input icon 56 of the right to show to the user that the selected object contents have been outputted to the right pane which now displays its content, as before.
If the right pane 66 had, for example, been displaying another set of objects, then the result of the actions taken in this embodiment will cause the display in the second pane 66 to change to that of the contents of the object selected in the first pane 65. Figs. 4A-4E show the third preferred embodiment. As in the Figs. 3A-3D embodiment, the starting point is a window 70 with two panes 65 and 66, with the object contents of Leibniz displayed in the left pane 65, and one object ARM Support selected and highlighted 45A. The user manipulating his mouse now clicks on the output icon 57 of the left pane 65 and drags it 71 (Fig. 4B) to the input icon 56 of the right pane 66 (Fig. 4C) and then releases the mouse button. This action opens up the selected object, ARM Support, and displays its contents in the right pane 66, with the downturned rectangle 60 showing to the user that the contents are displayed (Fig. 4D).
This embodiment differs from the Figs. 3A-3D embodiment in that the second pane is dynamically linked to the first pane and continues to display the contents of the initially selected file until a new selection in the first pane is made in which case the contents of the new selection are displayed in the second pane. This is illustrated in Fig. 4E, which shows a new selection 73 of the Level- 1 file in the first pane 65, and the display in the second pane 66 correspondingly changes to show the contents of Level-1, replacing the contents of the previous selection ARM Support. The display will remain unchanged until the window 70 is closed, or the left or right pane 66 is closed. In the embodiment shown in Figs. 4B, and 4C, it is preferred to highlight the left pane output icon 57 when dragged and the right pane input icon 56 when the mouse button is released to show to the user the link between the two panes. In the Figs. 5A-5C embodiment, the window 75 contains as before a left pane 76 and a right pane 77. The contents of object Leibniz is displayed in the left pane 76. ARM Support had been opened in the right pane 77. This could be accomplished by any of the processes described in connection with Figs. 2A-2D, 3A-3D and 4A-4E. The feature illustrated here is to automatically provide an editing function in the new pane 77.
In the embodiment of the invention shown in Figs. 5A-5C, the downturned triangle 60 (Fig. 5A) shows that object ARM Support has been opened inline, and the contents of ARM Support (2 files) are displayed in the same right pane 77. The down-turned triangle 78 next to the dump lisp file (Fig. 5A) shows that that file has also been opened inline in the same pane 77, and contains 3 text objects. Fig. 5 A shows the contents of dump lisp as three (indented) text objects, and also shows the user pointing 79 to the triangle of the first text object to select it.
Fig. 5B shows that the item indicated as open in Fig. 5A has opened inline in pane 77, and again indented, the contents of the first text object which are displayed below it, with the down-turned triangle 79 showing its display, and with the pointer 79 replaced by an editing I-beam cursor 80 which has been clicked to locate a blinking vertical line 81 as the insertion point for new text. Fig. 5C shows that a line of new text has been added by the user to the first text object. .All of the normal edit functions are available in the new pane. If a third or more panes were opened with the contents of a file in the second 77 or any preceding pane then they, too, could automatically be provided with an inline component editor and activated when the cursor is positioned in the pane and assumes the edit I-beam shape and the user clicks the mouse. By an "inline component editor" is meant an editor which exists within a pane, rather than taking up an entire pane or entire window. The editor is a device which allows you to view and modify data. A single pane may contain several inline component editors, possibly of different types. A different type of editor means it is for editing different kinds of data, or editing in different formats. For example, one could have a text editor, a picture editor, fill-in-the blanks form editor, etc. The illustrations in Figs. 5B and 5C each show an inline component editor for editing text in the right-hand pane. In the preceding examples, the new panes were split horizontally from an existing pane. That would be the normal result of using the horizontal split bar 54. Using the vertical split-bar 55 would cause vertical panes to be formed that would function in exactly the same manner as the horizontal panes. Thus, for example, dragging an output icon from a top pane to the input icon of the bottom pane would cause the selected items in the top pane to open up and be displayed in the bottom pane.
It will also be understood that highlighting a selection, or highlighting the linked output/input icons, can also be accomplished through the use of a color change.
While the split-bar icon has been located on the scroll bar, and the input and output icons on the title bar, it will be understood that the invention is not limited to those locations of the icons. They can be located anywhere on or inside a pane or window, and the appropriate software easily modified to detect clicking or dragging on the icon wherever displayed on the screen
Also, while the use of the split-bar icon has been illustrated in connection with a window containing a single pane, as indicated, for example, in Fig. 2C, it can be made operative in a pane of a window to split the pane into two sub-panes and in general whether one or more than one pane is present. In the examples given, the input icon is used to control what is displayed in a pane, illustrated, for example, in Figs. 3A-3D, where activating the input icon 56 of the second pane 66 displays in pane 66 the contents of the ARM Support object. The output icon is used primarily to transfer information from the pane where activated to another pane. Thus, in Figs. 4A-4E, the contents of an object in the first pane 65 are transferred and displayed in the second pane 66. Also, in Fig. 4C, the highlighting of the output icon 57 indicates the current selection of the highlighted object ARM Support.
It is also noted that the invention is not limited to selecting a split-bar icon in a pane or window that also contains the selected object, to split that pane or window. The invention also applies to selecting an object in a first pane displayed on the screen, dragging the object to the split-bar icon in a second pane in the same or a different window displayed on the screen, with the result that the second pane splits into two sub-panes, with one sub-pane displaying whatever was displayed in the first pane, and the other sub-pane displaying the contents of the selected object. Also, the invention is not limited to selecting a single object, but can also be applied to multiple objects selected and dragged to a split-bar icon for displaying the contents of all of the selected objects.
Moreover, the use of a split-bar icon can be combined with that of an output icon. For example, by selecting an output icon in a first pane, and then selecting a split-bar icon in a second pane, which can be the same pane or a different pane from the one containing the output icon (and the panes can also be in different windows), the second pane containing the selected split-bar icon splits into two panes. One of these displays whatever was displayed in the second pane, and the other displays the contents of the selection in the first pane. Moreover, the two panes are dynamically linked so that, as the selection in the first pane changes, the display in the new pane changes. As before, selection can be performed by selecting an output icon with a mouse, dragging until the mouse is over the desired split-bar icon, and then releasing the mouse. The net result is splitting a pane while simultaneously linking it to another pane.
This is illustrated in Figs. 9A-9E, which shows in Fig. 9A selection of the output icon 107 in pane 105, dragging the output icon 108 (Fig. 9B) and dropping on the split-bar icon 109 in the same pane 105 (Fig. 9C) causes the original display in pane 105 to continue in the left pane and to create a new second pane 111 (Fig. 9D) which displays the contents of the selected item ARM Support in the original pane 105. The new pane 111 is dynamically linked to the old pane 105, so making a new selection 113 (Fig. 9E) in pane 105 displays in new pane 111 the contents of the new selection Level 1. Further, the process depicted in Fig. 3 for displaying the contents of one or more selected objects in a first pane is not limited to an input icon in an existing second pane. The first and second panes can be in the same window or pane or in different windows or panes, and the first and second panes can even be the same pane.
As a further embodiment of the invention, in the same pane or window, selecting an object and dragging it to and dropping it on the input icon in that same pane or window will cause the contents of that object 111 to replace the original display in that window. Similarly, linking two existing panes as described in connection with Figs. 4A-4E also applies to the same pane or to panes in different windows. As the selection in the first pane changes, the display in the pane containing the input icon changes.
Still further, as explained in connection with Figs. 5A-5C, the invention is not limited to providing an inline editor when displaying the contents of an object inline. By selecting an object in a given pane, and issuing a command through the keyboard or mouse, the display of the object in the pane is replaced by display of the contents of the object. The positions of other objects in the pane are changed to make room for the expanded view of the object originally selected. This feature is implemented as described by clicking on a special icon next to an object in a pane, such as the selected triangular icon 79 in Fig. 5A. Figs. 6-8 show several other ways in which the invention can provide important benefits to users. Fig. 6 is an example of how a programmer may use the invention, and shows 5 panes, 83-87, that can simultaneously be displayed on a single monitor screen. All the panes have been dynamically linked via their input 89 and output 90 icons, so that each pane in turn displays the contents of the object selected in the previous pane. The pane contents are as follows:
Pane 1(83): shows all the code modules associated with a given project;
Pane 2(84): shows all classes defined in the code module selected (shown highlighted) in Pane 1;
Pane 3(85) shows the methods defined on the class selected in Pane 2; Pane 4(86) shows the source code of the method selected in Pane 3; Pane 5(87) shows a list of other classes which implement the method selected in Pane 3. This example also illustrates that one pane can drive more than one other pane. Note that both Panes 4 (86) and 5 (87) are driven by the selection in Pane 3.
Fig. 7 illustrates how the tools of the invention described herein are useful for general data browsing, and are not limited to program development. In the three panes 93-95 illustrated in Fig 7,
Pane 1(93) shows all the car models available at a given dealership; Pane 2(94) shows the options available for the car model selected in Pane 1; Pane 3(95) shows a description of the option selected in Pane 2. Pane 4(96) Pane 4 at the bottom is linked to Pane 1 and displays the selected car model.
Fig. 8 illustrates use of the invention for file location or management. In the five panes illustrated in Fig. 8:
Pane 1(97): shows all the directories and files on a give hard disk;
Pane 2(98): shows all the directories and files in the directory selected in Pane 1;
Pane 3(99): shows all the directories and files in the directory selected in
Pane 2
Pane 4(100): shows all the directories and files in the directory selected in
Pane 3; Pane 5(101): shows all the directories and files in the directory selected in
Pane 4.
In the examples illustrated in Figs. 6, 7 and 8, the various panes are dynamically linked by, for example, as described above, dragging and dropping the output icon of one pane onto the input icon of another pane. When dragging a new selected item to an input icon, if the pane associated with the input icon already contains one or more objects, two possible behaviors are possible: the new item may replace the old contents of the pane, or the new item may supplement the old contents of the pane. For example, if in Fig 3C the right pane 66 had displayed objects, dragging and dropping the selected item 45A on the input box 56 could result in replacing the contents in the right pane 66 with the contents of the new selected item. Figs. 10A-10D illustrate supplementing the old contents. In Fig. 10 A, left pane 120 shows the contents of Leibniz, and right pane 120 shows the contents of My Files. When ARM Support is selected 122 (Fig. 10A) in the left pane, and dragged 124 (Fig. 10B) and dropped (Fig. IOC) on the input icon 123 in the right pane 121, the contents of pane 121 now displays both the contents of My Files and ARM Support. The choice between these two behaviors is easily made by the choice of the particular implementation of this feature of the invention, or both possibilities are easily implemented by providing separate routines for each, and allowing the user the option to select the behavior desired. This variant of the invention involving two possible behaviors applies not only to dragging and dropping a selected displayed item on the input box, as shown in Figs. 3C and IOC, but also to dragging and dropping the output box of one pane onto the input box of another pane, illustrated in Fig. 4C.
It will be noted that, though Panes 4(86) and 5(87) in Fig. 6 are linked to the same Pane 3(85), their displayed contents are different. This is to illustrate that opening up an item to display its contents can involve a display of one of several different objects or sets of objects related in some way to the item opened up. For instance, Pane 4(86) displays the code for one method for the class "table", whereas Pane 5(87) displays a number of other implementors for the "table" class. Where, as here, several possible displays exist when opening up an item, the choice can be left to the user determined by initial configuration or during use by issuing a supplemental command, such as by holding down a special key when selecting an item or when linking the panes. This is easily implemented by different routines each of which when invoked determines the displayed contents, the routine being invoked in turn being determined by a user action.
The manner of implementing the various features of the invention are straightforward and will be evident to those skilled in this act using well-known publications, such as Inside Macintosh, which provide analogous code routines for responding to cursor location and mouse clicks to provide functions, such as, to open up panes, to display contents of selected files, and to provide editors for windows or panes. No invention is believed necessary to implement those functions as described herein. Nevertheless, to assist those skilled in the art, what follows below is a listing of code modules or routines, labeled A-N which when invoked in the proper order, will produce the function corresponding to Figs. 2A-
2D, 3A-3D, 4A-4E, and 5A-5C herein. The routines are:
A. Display-all
Ask each window to display B. Display Window
Draw window frame
Ask each pane in window to display
C. Display Pane Draw Pane Title Bar, input icon, output icon, split bar icons, scroll bars
D. Display domain object
If domain object is open, display domain object content If domain object is not open, display domain object title
E. Open domain object
Set domain object opened state "open" Display-all
F. Close domain object
Set domain object opened state "closed" Display-all
G. Select domain object
Set domain object selection state "selected" Display-all
H. Unselect domain object
Set domain object selection state "unselected" Display-all
I. Split for split-bar (argument)
Shrink my pane
Ask my window to add new pane Ask new pane to set display list according to (argument) J. Set display list pane (argument)
If (argument) is a domain object, set display-list state to domain object
If (argument) is an outbox, set display-list state to link to selection of pane of outbox
K. Process-click twist-triangle
If my domain object is open, ask my domain to close
If my domain object is closed, ask my domain object to open
Display-all
L. Process-click split-bar icon
Drag until release
Split for my domain objects
M. Process-click domain object
If object is open, edit object, otherwise:
Drag until release
If release in my pane, ask domain object to select
If release in any split-bar, ask split-bar to split for domain object
If release in any inbox, ask pane of inbox to set display list according to domain object
Display-all
N. Process-click outbox Drag until release If release in any split-bar, ask split-bar to split for outbox If release in any inbox, ask pane of inbox to set display list according to outbox
Display-all The routines A-N will be invoked in a certain sequence, indicated below following receipt of a mouse click over an icon or object. The indentation indicates nested subroutines.
Routine invocation corresponding to Figs. 2A-2D
Routine M Routine I
Routine J Routine A
Routine B
Routine C Routine D
Routine invocation corresponding to Figs. 3A-3D
Routine M
Routine J Routine A
Routine B Routine C Routine D Routine invocation corresponding to Figs. 4A-4E
Routine N
Routine J Routine A
Routine B Routine C
Routine D
Routine invocation corresponding to Figs. 5A-5C
Routine K Routine E
Routine A
Routine B Routine C Routine D The advantages of the invention include allowing users to create in a relatively simple way their own views on the stored data, by opening new panes to view, and edit if desired, the structure of objects in an old pane which continues to display its original data. Moreover, it also affords a simple and quick way for a user to browse or navigate through a sequence of nested objects.
An important benefit of the invention is that a small number of additional user interface elements provides a relatively large number of valuable desktop functions, such as, splitting a pane and simultaneously determining which object is displayed in the newly created pane, splitting a pane and simultaneously linking it to another pane, specifying that the contents of an object or group of objects should be displayed in an existing pane, linking two or more existing panes, and displaying the contents of an object inline.
Although there have been described what are at present considered to be the embodiments of the invention, it will be understood that the invention may be embodied in other specific forms without departing from the essential characteristics thereof. The present embodiments are therefore to be considered in all respects as illustrative, and not restrictive.
This scope of the invention is indicated by the appended claims rather than the foregoing description.

Claims

WHAT IS CLAIMED IS:
1. In a computer-controlled display system providing for display of a cursor and of first objects within an existing first window or pane and associated with the display window-control means responsive to user-manipulation of a cursor control device, the improvement comprising:
(a) said window-control means comprising a first icon and first means which in response to activation of the first icon by the cursor creates on the display a second new pane displaying the data contents of an object selected in the existing first window or pane selected by the user.
2. The system of claim 1, wherein the new second pane is within the existing first window or pane.
3. The system of claim 1, wherein the new second pane is separate from the first window or pane.
4. The system of claim 1, wherein the first icon is in the first window or pane.
5. The system of claim 1, wherein the first window or pane has associated with it a scroll bar and a title bar, and the first icon is located on the scroll bar.
6. The system of claim 1, wherein the first window or pane has associated with it horizontal and vertical scroll bars, and the first icon comprises a horizontal pane-splitting icon on the horizontal scroll bar and a vertical pane-splitting icon on the vertical scroll bar.
7. The system of claim 1, further comprising edit means in the computer providing an edit function for objects displayed in a window or pane, said window-control means activating the edit means for use on the object contents displayed in the new second pane.
8. In a computer-controlled display system providing for display of a cursor and of first objects within a first window or pane and associated with the display window- control means responsive to user-manipulation of a cursor control device, the improvement comprising:
(a) said window-control means comprising an input icon displayed on the screen,
(b) first means responsive to activation with the cursor of the input icon for displaying on the screen the contents of an object selected by the user from the first or from another window or pane.
9. The system of claim 8, wherein the input icon is associated with the first window or pane, and the display of the contents occurs in said first window or pane.
10. The system of claim 9, further comprising edit means providing an edit function, in said first window or pane and activated when the contents are displayed.
11. In a computer-controlled display system providing for display of a cursor and of first objects within a first window or pane and associated with the screen window- control means responsive to user manipulation of a cursor-control device, the improvement comprising:
(a) first means in the computer for providing a new second window or pane on the screen,
(b) said window-control means comprising, associated with the first window or pane and the second window or pane, an input icon and an output icon, and means for linking the output icon of the first window or pane to the input icon of the second window or pane, said linking causing the new pane to display the contents of a selected object displayed in the first window or pane.
12. The system of claim 11, wherein the input and output icons are displayed in title bars of the first and second window or panes.
13. The system of claim 11, further comprising means for highlighting the linked icons.
14. The system of claim 11, further comprising editing means for the second window or pane, said editing means being activated in the second window or pane when the input icon of the second window or pane is linked to the output icon of the first window or pane.
15. The system of claim 11, further comprising means for changing the display in the second window or pane when a different object is selected in the first window or pane to the contents of the different object.
16. The system of claim 12, wherein the window-control means comprises a split-bar icon, and means in response to dragging and dropping the output icon on the split-bar icon for creating a new second pane dynamically linked to the first window or pane.
17. In a computer-controlled display system providing for display of a cursor and of first objects within a first window or pane and associated with the screen window- control means responsive to user-manipulation of a cursor control device, the improvement comprising the steps of:
(a) generating and displaying window-control means in the form of a split-pane icon, said split-pane icon when activated functioning to create a new pane and an old pane, with the old pane containing a selected object originally displayed in the first window or pane and with the new pane displaying the contents of the selected object originally displayed in the first window or pane,
(b) selecting an object displayed in the first window or pane,
(c) activating the window-control means to divide the first window or pane into an old pane containing the selected object originally displayed in the first window or pane and
a new pane to display the contents of the selected object.
18. In a computer-controlled display system providing for display of a cursor and of first objects within a first window or pane and associated with the display window- control means responsive to user-manipulation of a cursor control device, the improvement comprising the steps of:
(a) generating and displaying window-control means in the form of spaced input and output icons,
(b) creating a second window or pane having spaced input and output icons,
(c) selecting an object displayed in the first window or pane,
(d) manipulating the user-control means to link the output icon of the first window or pane to the input icon of the second window or pane to cause the second window or pane to display the contents of the selected object in the first window or pane.
19. The method of claim 18, wherein selecting an object is evidenced by highlighting the object.
20. The method of claim 19 wherein activating an icon is carried out by selecting an object in the first window or pane and dragging it to an input icon.
21. The method of claim 18, wherein linking the output to the input icon is carried out by selecting the output icon and dragging it to the input icon.
22. The method of claim 18, further comprising providing editing means for the second window or pane, said editing means being activated when the split-pane icon of the first window or pane or the input icon of the second window or pane is activated.
23. The method of claim 18, further comprising providing means associated with the second window or pane to open up inline an object displayed in the second window or pane, said last-named means being activated by the user to display in the second window or pane the contents of said object.
24. In a computer-controlled display system providing for display of a cursor and of first objects within a first window or pane and associated with the display window- control means responsive to user-manipulation of a cursor control device, the improvement comprising the steps of:
(a) generating and displaying window-control means in the form of a split-bar icon and spaced input and output icons,
(b) selecting an object and an output icon in a window or pane,
(c) selecting a split-bar icon in a window or pane, whereby the window or pane with the selected split-bar icon splits into first and second subpanes, with the first subpane displaying whatever was displayed in the latter window or pane and with the second subpane displaying the contents of the selected object.
25. The method of claim 24, wherein the window or pane with the selected output icon is the same window or pane with the selected split-bar icon.
26. In a computer-controlled display system providing for display of a cursor and of first objects within a first window or pane and associated with the display window- control means responsive to user-manipulation of a cursor control device, the improvement comprising the steps of:
(a) generating and displaying window-control means in the form of spaced input and output icons,
(b) creating a second window or pane having spaced input and output icons,
(c) selecting an object displayed in the first window or pane,
(d) manipulating the user-control means to link the output icon of the first window or pane to the input icon of the second window or pane whereby the window or pane with the selected input icon displays the contents of the object selected in the window or pane with the selected output icon.
27. In a computer-controlled display system providing for display of a cursor and of first objects within a first window or pane and associated with the display window- control means responsive to user-manipulation of a cursor control device, the improvement comprising:
(a) means for generating and displaying window-control means in the form of a split-bar icon and spaced input and output icons,
(b) means in response to selection of an object and an output icon in a window or pane and a split-bar icon in a window or pane for splitting the window or pane with the selected split-bar icon into first and second subpanes and for displaying in the first subpane whatever was displayed in the window or pane with the selected split-bar icon and for displaying in the second subpane the contents of the selected objects.
28. In a computer-controlled display system providing for display of a cursor and of first objects within a first window or pane and associated with the display window- control means responsive to user-manipulation of a cursor control device, the improvement comprising:
(a) means for generating and displaying window-control means in the form of a split-bar icon and spaced input and output icons,
(b) means in response to selection of an object and an output icon in a window or pane and a split-bar icon in a window or pane for splitting the window or pane with the selected split-bar icon into first and second subpanes and for displaying in the first subpane whatever was displayed in the window or pane with the selected split-bar icon and for displaying in the second subpane the contents of the selected objects.
29. The system of claim 28, wherein the means of element (b) are such that, if the window or pane contains first objects, then the contents of the selected object supplement the first objects
PCT/US1994/004248 1993-04-20 1994-04-18 Interactive user interface WO1994024657A1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CA002161023A CA2161023C (en) 1993-04-20 1994-04-18 Interactive user interface
AU67073/94A AU6707394A (en) 1993-04-20 1994-04-18 Interactive user interface
EP94914825A EP0695448B1 (en) 1993-04-20 1994-04-18 Interactive user interface
JP52352294A JP4255511B2 (en) 1993-04-20 1994-04-18 Interactive user interface
DE69428988T DE69428988T2 (en) 1993-04-20 1994-04-18 INTERACTIVE USER INTERFACE

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US5051093A 1993-04-20 1993-04-20
US08/050,510 1993-04-20

Publications (1)

Publication Number Publication Date
WO1994024657A1 true WO1994024657A1 (en) 1994-10-27

Family

ID=21965654

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1994/004248 WO1994024657A1 (en) 1993-04-20 1994-04-18 Interactive user interface

Country Status (7)

Country Link
US (1) US5714971A (en)
EP (1) EP0695448B1 (en)
JP (1) JP4255511B2 (en)
AU (1) AU6707394A (en)
CA (1) CA2161023C (en)
DE (1) DE69428988T2 (en)
WO (1) WO1994024657A1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0820002A1 (en) * 1996-07-17 1998-01-21 International Business Machines Corporation Multi-pane window with reconfiguring workspaces
EP0841609A2 (en) * 1996-11-07 1998-05-13 Adobe Systems Incorporated Combining palettes on a computer display
EP0713187A3 (en) * 1994-11-17 1998-09-23 Sharp Kabushiki Kaisha Schedule-managing apparatus being capable of moving or copying a schedule of a date to another date
US6064387A (en) * 1998-01-23 2000-05-16 Dell, Usa, L.P. Animated cursor and icon for computers
US6236400B1 (en) * 1998-04-02 2001-05-22 Sun Microsystems, Inc. Method and apparatus for controlling the display of hierarchical information
WO2002025420A1 (en) * 2000-09-18 2002-03-28 International Business Machines Corporation Method, system and computer program for managing views at a computer display

Families Citing this family (134)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581092B1 (en) * 1999-09-29 2003-06-17 Ricoh Co., Ltd. Method and system for remote diagnostic, control and information collection based on various communication modes for sending messages to users
JP3402659B2 (en) * 1993-05-13 2003-05-06 オリンパス光学工業株式会社 Image handling equipment
US5583984A (en) * 1993-06-11 1996-12-10 Apple Computer, Inc. Computer system with graphical user interface including automated enclosures
US5956030A (en) * 1993-06-11 1999-09-21 Apple Computer, Inc. Computer system with graphical user interface including windows having an identifier within a control region on the display
US6604103B1 (en) 1994-09-02 2003-08-05 Mark A. Wolfe System and method for information retrieval employing a preloading procedure
US7103594B1 (en) 1994-09-02 2006-09-05 Wolfe Mark A System and method for information retrieval employing a preloading procedure
US7467137B1 (en) 1994-09-02 2008-12-16 Wolfe Mark A System and method for information retrieval employing a preloading procedure
US7302638B1 (en) 1995-06-07 2007-11-27 Wolfe Mark A Efficiently displaying and researching information about the interrelationships between documents
US5774670A (en) * 1995-10-06 1998-06-30 Netscape Communications Corporation Persistent client state in a hypertext transfer protocol based client-server system
CA2175148C (en) * 1996-04-26 2002-06-11 Robert Cecco User interface control for creating split panes in a single window
US5923328A (en) * 1996-08-07 1999-07-13 Microsoft Corporation Method and system for displaying a hierarchical sub-tree by selection of a user interface element in a sub-tree bar control
US6054988A (en) * 1996-08-14 2000-04-25 International Business Machines Corporation Expand to wells function in graphical user interface system
US6006252A (en) 1996-10-08 1999-12-21 Wolfe; Mark A. System and method for communicating information relating to a network resource
TW347518B (en) * 1997-03-06 1998-12-11 Samsung Electronics Co Ltd Display screen split method of a computer system
US5917492A (en) * 1997-03-31 1999-06-29 International Business Machines Corporation Method and system for displaying an expandable tree structure in a data processing system graphical user interface
US8626763B1 (en) 1997-05-22 2014-01-07 Google Inc. Server-side suggestion of preload operations
US6028602A (en) * 1997-05-30 2000-02-22 Telefonaktiebolaget Lm Ericsson Method for managing contents of a hierarchical data model
US6025844A (en) * 1997-06-12 2000-02-15 Netscape Communications Corporation Method and system for creating dynamic link views
US6104401A (en) * 1997-06-12 2000-08-15 Netscape Communications Corporation Link filters
JPH11143760A (en) * 1997-10-23 1999-05-28 Internatl Business Mach Corp <Ibm> File transferring device and method therefor
US7257604B1 (en) 1997-11-17 2007-08-14 Wolfe Mark A System and method for communicating information relating to a network resource
US6281896B1 (en) * 1998-03-31 2001-08-28 International Business Machines Corporation Data processor controlled interface with multiple tree of elements views expandable into individual detail views
US6151024A (en) * 1998-03-31 2000-11-21 International Business Machines Corporation Data processor controlled display interface with tree hierarchy of elements view expandable into multiple detailed views
US6043816A (en) * 1998-05-29 2000-03-28 Hewlett-Packard Company User interface mechanism for maintaning quick access to important information in a windows-based computer environment
US6239799B1 (en) * 1998-06-23 2001-05-29 International Business Machines Corporation Method and system for providing a splitter bar control
AU4723999A (en) 1998-06-29 2000-01-17 Sbc Technology Resources, Inc. Emergency facility information system and methods
US6285366B1 (en) * 1998-06-30 2001-09-04 Sun Microsystems, Inc. Hierarchy navigation system
US6642946B1 (en) * 1998-08-13 2003-11-04 The Cattleman's Resource, Inc. Livestock inventory and materials system with interactive graphical user interface
JP2000089889A (en) * 1998-09-14 2000-03-31 Sharp Corp Input display device
US6195094B1 (en) * 1998-09-29 2001-02-27 Netscape Communications Corporation Window splitter bar system
US10728381B2 (en) * 1999-06-04 2020-07-28 Raman K. Rao Reconfigurable mobile device interfaces supporting authenticated high quality video, audio, TV and multimedia services
US6691282B1 (en) 1999-06-22 2004-02-10 Nortel Networks Limited Method and apparatus for displaying and navigating containment hierarchies
US6448985B1 (en) 1999-08-05 2002-09-10 International Business Machines Corporation Directory tree user interface having scrollable subsections
US6733455B2 (en) * 1999-08-20 2004-05-11 Zonare Medical Systems, Inc. System and method for adaptive clutter filtering in ultrasound color flow imaging
US20020173721A1 (en) * 1999-08-20 2002-11-21 Novasonics, Inc. User interface for handheld imaging devices
US6685645B1 (en) 2001-10-20 2004-02-03 Zonare Medical Systems, Inc. Broad-beam imaging
EP1128638A1 (en) * 2000-02-23 2001-08-29 Koninklijke Philips Electronics N.V. Device with a display panel and method for displaying data
JP3909994B2 (en) 2000-02-29 2007-04-25 アルプス電気株式会社 Input device
JP2001306593A (en) * 2000-04-17 2001-11-02 Kuniichi Okada Display method, display processor and recording medium
US20060123356A1 (en) * 2000-05-05 2006-06-08 Microsoft Corporation Dynamic and updateable computing application panes
TW594556B (en) * 2000-11-03 2004-06-21 Synq Technology Inc Computer system for displaying multiple window screens
KR100359834B1 (en) * 2000-12-18 2002-11-07 엘지전자 주식회사 method for management to help-words functional in digital TV reciever
US6731312B2 (en) * 2001-01-08 2004-05-04 Apple Computer, Inc. Media player interface
US9256356B2 (en) * 2001-03-29 2016-02-09 International Business Machines Corporation Method and system for providing feedback for docking a content pane in a host window
US6771292B2 (en) 2001-03-29 2004-08-03 International Business Machines Corporation Method and system for providing feedback concerning a content pane to be docked in a host window
WO2002088979A1 (en) 2001-05-02 2002-11-07 Bitstream Inc. Methods and systems for displaying media in scaled manner and/or in orientation
US7219309B2 (en) * 2001-05-02 2007-05-15 Bitstream Inc. Innovations for the display of web pages
US20020191028A1 (en) * 2001-06-19 2002-12-19 Senechalle David A. Window manager user interface
US6966033B1 (en) * 2001-09-28 2005-11-15 Emc Corporation Methods and apparatus for graphically managing resources
US20030081007A1 (en) * 2001-10-31 2003-05-01 James Cyr Object oriented explorer type environment
US7444599B1 (en) 2002-03-14 2008-10-28 Apple Inc. Method and apparatus for controlling a display of a data processing system
US7117450B1 (en) * 2002-03-15 2006-10-03 Apple Computer, Inc. Method and apparatus for determining font attributes
US7269797B1 (en) * 2002-03-28 2007-09-11 Fabrizio Bertocci Mechanism to organize windows in a graphic application
US9715500B2 (en) * 2004-04-27 2017-07-25 Apple Inc. Method and system for sharing playlists
US9412417B2 (en) 2002-04-05 2016-08-09 Apple Inc. Persistent group of media items for a media device
US7680849B2 (en) * 2004-10-25 2010-03-16 Apple Inc. Multiple media type synchronization between host computer and media device
US7827259B2 (en) * 2004-04-27 2010-11-02 Apple Inc. Method and system for configurable automatic media selection
US7797446B2 (en) * 2002-07-16 2010-09-14 Apple Inc. Method and system for updating playlists
US6948125B2 (en) * 2002-04-25 2005-09-20 International Business Machines Corporation Computer controlled user interactive display interface implementation for tracking the organization of items in a hierarchical tree of nested categories
US7458034B2 (en) * 2002-05-08 2008-11-25 Kabushiki Kaisha Toshiba Data organization support method and program product therefor
US7415677B2 (en) * 2002-06-05 2008-08-19 Sap Aktiengesellschaft Temporary communication areas for a computer user interface
US7831925B2 (en) * 2002-06-06 2010-11-09 Siebel Systems, Inc. Method for content-sensitive resizing of display
US7958455B2 (en) * 2002-08-01 2011-06-07 Apple Inc. Mode activated scrolling
US8484576B2 (en) * 2003-04-17 2013-07-09 Supersonic Aerospace International, Llc System and method for customizing multiple windows of information on a display
JP4193629B2 (en) * 2003-07-25 2008-12-10 ソニー株式会社 Screen display device, program, and screen display method
US7620916B2 (en) * 2003-09-29 2009-11-17 Sap Ag User interface navigation in software applications
US7739164B1 (en) * 2003-10-07 2010-06-15 Trading Technologies International, Inc. System and method for displaying risk data in an electronic trading environment
US7752118B1 (en) 2003-10-07 2010-07-06 Trading Technologies International, Inc. System and method for risk grid display in an electronic trading environment
US20050131945A1 (en) * 2003-12-16 2005-06-16 International Business Machines Corporation Compact interface for the display and navigation of object hierarchies
US7698654B2 (en) * 2004-01-05 2010-04-13 Microsoft Corporation Systems and methods for co-axial navigation of a user interface
EP1706811A2 (en) * 2004-01-09 2006-10-04 Koninklijke Philips Electronics N.V. Two panel navigation
US7900151B2 (en) 2004-03-05 2011-03-01 Sap Ag Maintaining individual object data
US7694233B1 (en) * 2004-04-30 2010-04-06 Apple Inc. User interface presentation of information in reconfigured or overlapping containers
KR101117835B1 (en) * 2004-05-06 2012-03-22 다카토시 야나세 Window display system, window display method, program development support device, and server device
US9552141B2 (en) 2004-06-21 2017-01-24 Apple Inc. Methods and apparatuses for operating a data processing system
US20060020903A1 (en) * 2004-07-26 2006-01-26 Shih-Yang Wang Window split system and method
US20060036968A1 (en) * 2004-08-11 2006-02-16 Aurobinda Pradhan Confirming a processing action
DE102004043175A1 (en) * 2004-09-03 2006-03-23 Siemens Ag Graphical user interface, computing device, use, method of presenting information with a user interface, computer program product, and computer readable medium
US8261246B1 (en) * 2004-09-07 2012-09-04 Apple Inc. Method and system for dynamically populating groups in a developer environment
JP4450213B2 (en) * 2004-11-12 2010-04-14 国産電機株式会社 Power supply for fuel injection device
JP4134008B2 (en) * 2004-11-19 2008-08-13 任天堂株式会社 Image processing apparatus and image processing program
KR100714687B1 (en) * 2004-12-31 2007-05-04 삼성전자주식회사 Apparatus and method for offering graphic user interface which is consist of plural columns
US11314378B2 (en) 2005-01-07 2022-04-26 Apple Inc. Persistent group of media items for a media device
US7958441B2 (en) * 2005-01-07 2011-06-07 Apple Inc. Media management for groups of media items
US7496832B2 (en) * 2005-01-13 2009-02-24 International Business Machines Corporation Web page rendering based on object matching
US20070028189A1 (en) * 2005-07-27 2007-02-01 Microsoft Corporation Hierarchy highlighting
US7765491B1 (en) * 2005-11-16 2010-07-27 Apple Inc. User interface widget for selecting a point or range
US20060107218A1 (en) * 2006-01-17 2006-05-18 Microsoft Corporation View-based navigation model for graphical user interfaces
US20060101353A1 (en) * 2006-01-17 2006-05-11 Microsoft Corporation Multi-pane navigation model for graphical user interfaces
US7793226B2 (en) * 2006-08-14 2010-09-07 International Business Machines Corporation Method and system for grouping and stacking tab user interface objects with icon status indicators
US20080148164A1 (en) * 2006-12-15 2008-06-19 Iac Search & Media, Inc. Toolbox minimizer/maximizer
US8612877B2 (en) * 2006-12-18 2013-12-17 Blackberry Limited Method for providing options associated with computer applications in a mobile device and a menu and application therefor
US8276098B2 (en) * 2006-12-22 2012-09-25 Apple Inc. Interactive image thumbnails
US20080216010A1 (en) * 2007-01-29 2008-09-04 Medicomp Systems, Inc. Method and system for displaying hierarchical information
EP2114685A1 (en) 2007-03-02 2009-11-11 Marvell International Ltd. Device and method for servicing an inkjet print head on a hand held printer
KR101382504B1 (en) * 2007-05-21 2014-04-07 삼성전자주식회사 Apparatus and method for making macro
US8046369B2 (en) 2007-09-04 2011-10-25 Apple Inc. Media asset rating system
US8701078B1 (en) 2007-10-11 2014-04-15 Versionone, Inc. Customized settings for viewing and editing assets in agile software development
US8739047B1 (en) * 2008-01-17 2014-05-27 Versionone, Inc. Integrated planning environment for agile software development
US9349109B2 (en) * 2008-02-29 2016-05-24 Adobe Systems Incorporated Media generation and management
US20090228831A1 (en) * 2008-03-04 2009-09-10 Andreas Wendker Customization of user interface elements
US8204916B2 (en) * 2008-03-06 2012-06-19 Microsoft Corporation Hierarchical presentation of search results
JP2009245423A (en) * 2008-03-13 2009-10-22 Panasonic Corp Information device and window display method
US9501751B1 (en) 2008-04-10 2016-11-22 Versionone, Inc. Virtual interactive taskboard for tracking agile software development
US20090265650A1 (en) * 2008-04-18 2009-10-22 Canovai Christopher A Efficient Information Transfer Systems
EP2133765B1 (en) * 2008-06-11 2019-11-27 Siemens Aktiengesellschaft User interface and a method thereof
US8490021B2 (en) * 2008-06-20 2013-07-16 Microsoft Corporation User interface for navigating large scale hierarchical namespaces
TWI386843B (en) * 2008-07-03 2013-02-21 Wistron Corp Method and system for dividing a screen display zone, and a computer program product
US20100087230A1 (en) * 2008-09-25 2010-04-08 Garmin Ltd. Mobile communication device user interface
US8561012B1 (en) 2008-10-08 2013-10-15 Versionone, Inc. Transitioning between iterations in agile software development
US8453067B1 (en) 2008-10-08 2013-05-28 Versionone, Inc. Multiple display modes for a pane in a graphical user interface
US20100146431A1 (en) * 2008-12-09 2010-06-10 Microsoft Corporation Object picker with window splitter
US8875088B1 (en) 2009-01-21 2014-10-28 Versionone, Inc. Methods and systems for performing project schedule forecasting
US8418147B1 (en) 2009-05-08 2013-04-09 Versionone, Inc. Methods and systems for reporting on build runs in software development
US9292161B2 (en) * 2010-03-24 2016-03-22 Microsoft Technology Licensing, Llc Pointer tool with touch-enabled precise placement
US20110291964A1 (en) * 2010-06-01 2011-12-01 Kno, Inc. Apparatus and Method for Gesture Control of a Dual Panel Electronic Device
US20120110499A1 (en) * 2010-10-29 2012-05-03 Microsoft Corporation Virtualized layouts
KR102188757B1 (en) 2010-11-18 2020-12-08 구글 엘엘씨 Surfacing off-screen visible objects
US9495270B2 (en) * 2011-05-31 2016-11-15 Vmware, Inc. User interface for monitoring the status of an object in a virtual computing environment
US9317196B2 (en) 2011-08-10 2016-04-19 Microsoft Technology Licensing, Llc Automatic zooming for text selection/cursor placement
US20130067394A1 (en) * 2011-09-12 2013-03-14 Microsoft Corporation Pointer invocable navigational user interface
KR20140012323A (en) * 2012-07-19 2014-02-03 삼성전자주식회사 Image display apparatus and image display method, and computer readable recording medium
US9218118B2 (en) 2012-09-11 2015-12-22 Apple Inc. Media player playlist management
US9558278B2 (en) 2012-09-11 2017-01-31 Apple Inc. Integrated content recommendation
KR101957173B1 (en) 2012-09-24 2019-03-12 삼성전자 주식회사 Method and apparatus for providing multi-window at a touch device
KR102127925B1 (en) * 2013-04-29 2020-06-29 엘지전자 주식회사 Mobile terminal and control method thereof
US20150006205A1 (en) * 2013-06-28 2015-01-01 Christopher Corey Chase System and method providing automobile insurance resource tool
US20150095842A1 (en) * 2013-09-30 2015-04-02 Microsoft Corporation Extendable blade sequence along pannable canvas direction
US9454353B2 (en) * 2013-10-01 2016-09-27 International Business Machines Corporation Initiating use of software as part of a messaging window
JP5908046B1 (en) 2014-10-21 2016-04-26 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation A method, apparatus, and program for combining and displaying a plurality of areas.
US9946701B2 (en) * 2015-02-11 2018-04-17 International Business Machines Corporation Selectively pinning sections of displayed content
US11016648B2 (en) * 2018-10-30 2021-05-25 Johnson Controls Technology Company Systems and methods for entity visualization and management with an entity node editor
EP4328730A1 (en) * 2021-08-02 2024-02-28 Samsung Electronics Co., Ltd. Electronic device for displaying user interface, and operating method thereof
US11803292B2 (en) * 2022-03-03 2023-10-31 Microsoft Technology Licensing, Llc User interface component and region layout control

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5008853A (en) * 1987-12-02 1991-04-16 Xerox Corporation Representation of collaborative multi-user activities relative to shared structured data objects in a networked workstation environment

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5065347A (en) * 1988-08-11 1991-11-12 Xerox Corporation Hierarchical folders display
US5146556A (en) * 1988-10-11 1992-09-08 Next Computer, Inc. System and method for managing graphic images
US5140677A (en) * 1990-05-11 1992-08-18 International Business Machines Corporation Computer user interface with window title bar mini-icons

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5008853A (en) * 1987-12-02 1991-04-16 Xerox Corporation Representation of collaborative multi-user activities relative to shared structured data objects in a networked workstation environment

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Mastering Windows 3.1, ROBERT COWART, published 1992, "Using the File Manager", pages 102-143, especially page 130, Figure 4.14. *
See also references of EP0695448A4 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0713187A3 (en) * 1994-11-17 1998-09-23 Sharp Kabushiki Kaisha Schedule-managing apparatus being capable of moving or copying a schedule of a date to another date
EP0820002A1 (en) * 1996-07-17 1998-01-21 International Business Machines Corporation Multi-pane window with reconfiguring workspaces
US5920315A (en) * 1996-07-17 1999-07-06 International Business Machines Corporation Multi-pane window with recoiling workspaces
EP0841609A2 (en) * 1996-11-07 1998-05-13 Adobe Systems Incorporated Combining palettes on a computer display
EP0841609A3 (en) * 1996-11-07 1999-11-17 Adobe Systems Incorporated Combining palettes on a computer display
US6064387A (en) * 1998-01-23 2000-05-16 Dell, Usa, L.P. Animated cursor and icon for computers
US6236400B1 (en) * 1998-04-02 2001-05-22 Sun Microsystems, Inc. Method and apparatus for controlling the display of hierarchical information
WO2002025420A1 (en) * 2000-09-18 2002-03-28 International Business Machines Corporation Method, system and computer program for managing views at a computer display

Also Published As

Publication number Publication date
AU6707394A (en) 1994-11-08
DE69428988T2 (en) 2002-05-29
EP0695448A4 (en) 1997-03-12
CA2161023A1 (en) 1994-10-27
US5714971A (en) 1998-02-03
EP0695448B1 (en) 2001-11-07
DE69428988D1 (en) 2001-12-13
JPH08509311A (en) 1996-10-01
CA2161023C (en) 2009-12-22
JP4255511B2 (en) 2009-04-15
EP0695448A1 (en) 1996-02-07

Similar Documents

Publication Publication Date Title
US5714971A (en) Split bar and input/output window control icons for interactive user interface
US6072486A (en) System and method for creating and customizing a deskbar
JP2732557B2 (en) Method and data processing system for changing function of GUI
US5977972A (en) User interface component and method of navigating across a boundary coupled to a scroll bar display element
US5664133A (en) Context sensitive menu system/menu behavior
US20200183572A1 (en) Single action selection of data elements
US6097391A (en) Method and apparatus for graphically manipulating objects
US6393429B1 (en) File handling device, and a recording medium storing a file handling program
US6104401A (en) Link filters
US6404446B1 (en) Multi-node user interface component and method thereof for use in displaying visual indication of search results
US5668964A (en) Graphical user interface for creating a new notebook with a dragged page
US7181698B2 (en) Detachable tabs presenting accessed objects in a multi-tab interface
US6025844A (en) Method and system for creating dynamic link views
US5297253A (en) Computer user interface navigational tool
JP3742428B2 (en) Graphical user interface and method for selectively opening container objects during drag and drop operations
US7210107B2 (en) Menus whose geometry is bounded by two radii and an arc
US6606101B1 (en) Information pointers
US5491783A (en) Method and apparatus for facilitating integrated icon-based operations in a data processing system
JP2003536125A (en) User interface for centralized management and access provision
EP0622729A2 (en) A user interface builder for a user interface server
WO2001079982A2 (en) Methods and apparatus for presenting information to a user of a computer system
JP3565441B2 (en) Data processing system
JPH01172997A (en) Graphic customization of memu display
US6195095B1 (en) Method and apparatus for displaying attributes of a computer work station on a graphical user interface
EP0613145A2 (en) Card file graphical user interface with visual representation of video data

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AT AU BB BG BR BY CA CH CN CZ DE DK ES FI GB GE HU JP KG KP KR KZ LK LU LV MD MG MN MW NL NO NZ PL PT RO RU SD SE SI SK TJ TT UA UZ VN

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1994914825

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2161023

Country of ref document: CA

WWP Wipo information: published in national office

Ref document number: 1994914825

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWG Wipo information: grant in national office

Ref document number: 1994914825

Country of ref document: EP