|
|  Get related patents on CD |
| United States Patent | 5877766 |
| Link to this page | http://www.wikipatents.com/5877766.html |
| Inventor(s) | Bates; Cary Lee (Rochester, MN);
Day; Paul Reuben (Rochester, MN) |
| Abstract | A user interface component and method of using the same graphically display
linked records with node display elements representing individual records,
and optional link display elements representing the links therebetween.
The user interface component may be automatically and dynamically
generated during navigation between linked records, such that whenever a
new link is taken from a record represented by a node display element, a
new node display element is generated. In addition, the user interface
component may further be configured to graphically represent the
particular location of a particular link within a record, as well as a
scroll display element associated with selected node display elements such
that specific data or locations within the records associated therewith
may be accessed. Moreover, the user interface component may also be
configured to incorporate a retrieve progress display element that
indicates a current status of a retrieve operation for a record.
Individual node display elements within a user interface component may
also separately indicate status information for their associated records,
e.g., displaying a cache status and/or a matching status that indicates
whether associated records match a predetermined search criteria, among
others. The user interface component may also be utilized to perform
common operations such as printing, caching and loading, among others, on
selected records in response to user selection of the nodes associated
with the selected records. |
| |
|
Title Information  |
|
|
|
|
|
|
| Publication Date |
March 2, 1999 |
|
|
|
|
|
| Filing Date |
August 15, 1997 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Title Information  |
|
|
References  |
|
|
| *references marked with an asterisk below are user-added references |
|
U.S. References |
|
|
|
|
|
|
U.S. References |
|
|
Foreign References |
|
|
|
|
|
|
Foreign References |
|
|
Other References |
|
|
|
|
|
|
Other References |
|
|
|
|
|
References  |
|
|
|
|
|
|
|
|
|
|
|
Public's "Guesstimation" of Royalty Value
| |
|
|
|
|
|
|
|
|
|
|
|
|
Market Review  |
|
|
Technical Review  |
|
|
Claims  |
|
|
What is claimed is:
1. A method of graphically representing on a computer display a plurality
of linked records, the method comprising:
(a) displaying a plurality of node display elements, wherein each of which
is associated with a record, and wherein at least a pair of node display
elements are respectively associated with a pair of records that are
linked to one another, the pair of node display elements graphically
linked with one another; and
(b) displaying a scroll display element on a selected one of the node
display elements, the scroll display element indicating a selected
location within the record associated with the selected node display
element.
2. A method of graphically representing on a computer display a plurality
of linked records, the method comprising:
(a) displaying a pluality of node display elements, wherein each is
associated with a record, and wherein at least a pair of node display
elements are respectively associated with a pair of records that are
linked to one another, the pair of node display elements graphically
linked with one another; and
(b) displaying a control element on a selected one of the node display
elements, the control element configured to navigate between first and
second locations within the record associated with the selected node
display element in response to user input.
3. A method of graphically representing on a computer display a plurality
of hypertext documents, the method comprising:
(a) displaying first and second node display elements, each of which is
respectively associated with first and second hypertext documents, the
second node display element graphically linked with the first node display
element to represent a hypertext link in the first hypertext document to
the second hypertext document;
(b) displaying a scroll display element on the first node display element,
the scroll display element indicating a selected location within the first
hypertext document;
(c) displaying at least a portion of the contents of the first hypertext
document proximate the selected location in a window;
(d) selectively scrolling the window through the contents of the first
hypertext document in response to user manipulation of the scroll display
element within the first node display element; and
(e) displaying the contents of the second hypertext document in the window
in response to user manipulation of the scroll display element from the
first node display element to the second node display element.
4. A method of graphically representing on a computer display a plurality
of records including first and second records, wherein the first record
includes a link to the second record, the method comprising;
(a) displaying first and second node display elements, the first and second
node display elements respectively associated with the first and second
records; and
(b) displaying a link display element that graphically links the first and
second node display elements, the link display element at least partially
overlapping the first node display element at a relative location on the
first node display element that approximates a relative location of the
link in the first record.
5. The method of claim 1, wherein the plurality of linked records includes
hypertext linked documents.
6. The method of claim 5, wherein the plurality of linked records includes
hypertext markup language (HTML) documents.
7. The method of claim 1, wherein each node display element includes an
elongated member having a length associated with a relative size of its
associated record.
8. The method of claim 1, wherein each node display element is rectangular.
9. The method of claim 1, wherein each node display element includes a
status indicator that visually represents a status of the node display
element.
10. The method of claim 9, wherein the status indicator indicates a status
selected from the group consisting of cache status, selected status,
search criteria matching status, record type status, duplicate status, and
combinations thereof.
11. The method of claim 9, wherein the status indicator for each node
display element is selected from the group consisting of a color
indicator, a pattern indicator, a border indicator, an icon indicator, an
alphanumeric indicator, and combinations thereof.
12. The method of claim 1, wherein displaying the plurality of node display
elements includes displaying a first node display element associated with
a first record from the plurality of records, the method further
comprising, in response to user selection of a link in the first record to
a second record in the plurality of linked records, dynamically generating
a second node display element associated with the second record that is
graphically linked to the first node display element.
13. The method of claim 1, further comprising displaying a link display
element that graphically links first and second node display elements from
the plurality of node display elements, the first node display element
associated with a first record having a link to a second record associated
with the second node display element, the link display element indicating
a relative location of the link in the first record.
14. The method of claim 13, wherein the link display element includes a
link marker display element overlapping the first node display element at
a relative location along a longitudinal axis of the first node display
element that approximates the relative location of the link in the first
record.
15. The method of claim 14, wherein the first and second node display
elements graphically adjoin one another proximate the link display
element, and wherein the second node display element extends in a
non-parallel direction relative to the first node display element.
16. The method of claim 13, wherein the first and second node display
elements extend parallel to and spaced apart from one another, and wherein
the link display element includes a connector display element extending
between and graphically linking the first and second node display
elements.
17. The method of claim 13, further comprising displaying a retrieve
progress indicator within at least one of the first node display element
and link display element to indicate the progress of retrieval of the
second record.
18. The method of claim 1, further comprising displaying the contents of
the record associated with the selected node display element in a window.
19. The method of claim 18, wherein the window is a browser.
20. The method of claim 18, further comprising displaying the user
interface component in a separate window from that of the contents of the
record associated with the selected node display element.
21. The method of claim 18, further comprising selectively scrolling the
window through the contents of the record associated with the selected
node in response to user manipulation of the scroll display element.
22. The method of claim 21, farther comprising coordinating movement of the
scroll display element with that of an additional scroll display element
for the window.
23. The method of claim 18, further comprising:
(a) displaying a second scroll display element on another selected one of
the node display elements; and
(b) displaying the contents of the record associated with the other
selected node display element in a second window.
24. The method of claim 23, wherein the first and second scroll display
elements are associated with the same end user.
25. The method of claim 23, wherein the first and second scroll display
elements are associated with different end users.
26. The method of claim 23, further comprising graphically associating each
scroll display element with its associated window.
27. The method of claim 26, wherein graphically associating each scroll
display element with its associated window includes utilizing on each set
of associated scroll display elements and windows a common visual
indicator selected from the group consisting of a color indicator, a
pattern indicator, a border indicator, an icon indicator, an alphanumeric
indicator, and combinations thereof.
28. The method of claim 18, further comprising:
(a) displaying a second scroll display element on the selected node display
element; and
(b) displaying the contents of the record associated with the selected node
display element in a second window.
29. The method of claim 18, further comprising indicating with the scroll
display element the relative proportion of the contents of the record that
are currently displayed in the window.
30. The method of claim 18, wherein the selected node display element is a
first node display element associated with a first record, the method
further comprising displaying the contents of a second record in the
window in response to user selection of a link in the first record to the
second record using the scroll display element.
31. The method of claim 30, wherein the contents of the second record are
displayed in the window in response to an end user dragging the scroll
display element from the first node display element to a second node
display element associated with the second record.
32. The method of claim 31, wherein movement of the scroll display element
is confined to the boundaries of the node display elements.
33. The method of claim 30, wherein the contents of the second record are
displayed in the window in response to an end user dragging the scroll
display element from the first node display element to a link display
element graphically linking the first node display element to a second
node display element associated with the second record.
34. The method of claim 33, wherein movement of the scroll display element
is confined to the boundaries of the node display elements and link
display element.
35. The method of claim 30, further comprising delaying display of the
contents of the second record in the window until the scroll display
element has been moved a predetermined distance beyond a boundary
associated with the link.
36. The method of claim 35, wherein the boundary is defined on a second
node display element associated with the second record.
37. The method of claim 35, wherein the boundary is defined on a link
display element graphically linking the first node display element to a
second node display element associated with the second record.
38. The method of claim 18, wherein the selected node display element is a
first node display element associated with a first record, the method
further comprising displaying the contents of a second record in the
window in response to an end user dragging the scroll display element from
the first node display element to a second node display element associated
with the second record.
39. The method of claim 2, wherein the control element includes a scroll
display element that indicates a selected location within the record
associated with the selected node display element.
40. The method of claim 2, wherein the control element includes at least
one arrow button disposed on the selected node display element.
41. A user interface component configured to display on a computer display
a graphic representation of a plurality of linked records, the user
interface component comprising:
(a) a plurality of node display elements, wherein each of which is
associated with a record, and wherein at least a pair of node display
elements are respectively associated with a pair of records that are
linked to one another, the pair of node display elements graphically
linked with one another; and
(b) a scroll display element defined on a selected one of the node display
elements, the scroll display element indicating a selected location within
the record associated with the selected node display element.
42. A computer system configured to display a graphic representation of a
plurality of linked records, the computer system comprising:
(a) a computer display; and
(b) a processor configured to display on the computer display a plurality
of node display elements, wherein each of which is associated with a
record, and wherein at least a pair of node display elements are
respectively associated with a pair of records that are linked to one
another, the pair of node display elements graphically linked with one
another; and to display a scroll display element on a selected one of the
node display elements, the scroll display element indicating a selected
location with the record associated with the selected node display
element.
43. A program product comprising:
(a) a program configured to perform a method of graphically representing on
a computer display a plurality of linked records, the method comprising
displaying a plurality of node display elements, wherein each of which is
associated with a record, and wherein at least a pair of node display
elements are respectively associated with a pair of records that are
linked to one another, the pair of node display elements graphically
linked with one another; and to display a scroll display element on a
selected one of the node display elements, the scroll display element
indicating a selected location within the record associated with the
selected node display element; and
(b) a signal bearing media bearing the program.
44. The program product of claim 43, wherein the signal bearing media is
transmission type media.
45. The program product of claim 43, wherein the signal bearing media is
recordable media.
46. The method of claim 4, wherein the link display element includes a
marker display element overlapping the first node display element at a
relative location along a longitudinal axis of the first node display
element that approximates the relative location of the link in the first
record.
47. The method of claim 46, wherein the first and second node display
elements graphically adjoin one another proximate the link display
element, and wherein the second node display element extends in a
non-parallel direction relative to the first node display element.
48. The method of claim 4, wherein the first and second node display
elements extend parallel to and spaced apart from one another, and wherein
the link display element includes a connector display element extending
between and graphically linking the first and second node display
elements.
49. The method of claim 48, wherein the connector display element
terminates at one end proximate a relative location along a longitudinal
axis of the first node display element that approximates the relative
location of the link in the first record, and terminates at another end
proximate a midpoint of the second node display element.
50. The method of claim 4, further comprising displaying a scroll display
element on a selected one of the node display elements, the scroll display
element indicating a selected location within the record associated with
tie selected node display element.
51. The method of claim 4, further comprising:
(a) dynamically generating a third node display element associated with a
third record; and
(b) rearranging at least one of the first, second and third node display
elements such that the spans thereof do not overlap.
52. The method of claim 51, wherein rearranging at least one of the first,
second and third node display elements is selected from the group
consisting of translating, rotating, and resizing at least one of the
first, second and third node display elements, and combinations thereof.
53. The method of claim 4, further comprising:
(a) dynamically generating a third node display element associated with a
third record; and
(b) in response to user selection of a link in third record to one of the
first and second records, generating a back arc display element
graphically linking the third node display element to the node display
element associated with the one of the first and second records.
54. The method of claim 4, further comprising performing a file management
operation on the user interface component, the file management operation
selected from the group consisting of saving the user interface component,
retrieving the user interface component, and combinations thereof.
55. The method of claim 4, further comprising modifying the user interface
component in a manner selected from the group consisting of minimizing a
plurality of node display elements, deleting at least one node display
element, rearranging at least one node display element, and combinations
thereof.
56. A user interface component configured to display on a computer display
a graphic representation of a plurality of records including first and
second records, wherein the first record includes a link to the second
record, the user interface component comprising:
(a) first and second node display elements, the first and second node
display elements respectively associated with the first and second
records; and
(b) a link display element that graphically links the first and second node
display elements, the link display element at least partially overlapping
the first node display element at a relative location on the first node
display element that approximates a relative location of the link in the
first record.
57. A computer system configured to display a graphic representation of a
plurality of records including first and second records, wherein the first
record includes a link to the second record, the computer system
comprising:
(a) a computer display; and
(b) a processor configured to display on the computer display first and
second node display elements, the first and second node display elements
respectively associated with the first and second records, and to display
on the computer display a link display element that graphically links the
first and second node display elements, the link display element at least
partially overlapping the first node display element at a relative
location on the first node display element that approximates a relative
location of the link in the first record.
58. A program product comprising:
(a) a program configured to perform a method of graphically representing on
a computer display a plurality of records including first and second
records, wherein the first record includes a link to the second record,
the method comprising displaying first and second node display elements,
the first and second node display elements respectively associated with
the first and second records; and displaying a link display element that
graphically links the first and second node display elements, the link
display element at least partially overlapping the first node display
element at a relative location on the first node display element that
approximates a relative location of the link in the first record; and
(b) a signal bearing media bearing the program.
59. The program product of claim 58, wherein the signal bearing media is
transmission type media.
60. The program product of claim 58, wherein the signal bearing media is
recordable media.
61. The method of claim 4, further comprising determining the relative
location of the link in the first record.
62. A method of graphically representing on a computer display a plurality
of records including first and second records, wherein the first record
includes a link to the second record, the method comprising:
(a) displaying first and second node display elements, the first and second
node display elements respectively associated with the first and second
records; and
(b) displaying a link display element that graphically links the first and
second node display elements, the link display element indicating a
relative location of the link in the first record, wherein the link
display element includes a marker display element overlapping the first
node display element at a relative location along a longitudinal axis of
the first node display element that approximates the relative location of
the link in the first record. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
CROSS-REFERENCE TO RELATED APPLICATIONS
The above-identified application is related to a co-pending patent
application filed on even date herewith by the above-identified inventors,
U.S. patent application Ser. No. 08/912,030, and entitled "USER INTERFACE
COMPONENT AND METHOD OF NAVIGATING ACROSS A BOUNDARY COUPLED TO A SCROLL
BAR DISPLAY ELEMENT", which application is incorporated by reference
herein.
FIELD OF THE INVENTION
The invention is generally related to computers and computer software for
use therewith, and more particularly, to user interface components for
permitting user access to data stored in a computer.
BACKGROUND OF THE INVENTION
As computers have become more complex and powerful, the manner in which end
users or operators interface with computers has grown increasingly
important. Early computers relied on switches, lights, and/or punch cards
that required an end user to interact essentially in the computers native
binary languages. Eventually, video displays were developed that enabled
end users to interact with computers through textual information and
commands. Another significant step in this evolution was the development
of graphical user interfaces (GUIs), which permitted end users to interact
with computers through the more intuitive operations of "pointing and
clicking" on graphical display elements with a pointer controlled by a
mouse or other user interface device. For example, to print a file, an end
user in a text-based system might be required to enter a command such as
"print<filename>". With a graphical user interface, a similar operation
might be accomplished by merely moving a pointer with a mouse and clicking
on an graphical icon showing a graphic representation of a printer.
Information is often presented to an end user in a graphical user interface
component known as a window. A window may include any number of controls
or handles that an end user can point and click on to perform different
operations. For example, a title bar is often provided at the top of a
window to identify the application the window is associated with. A window
may also include resizing handles along its boundaries that a user can
grab with the pointer to change the size of the window. A menu bar on a
window may include multiple pull-down menus that a user can select to
perform specific functions listed in the menus.
A window may be used to display a relatively large document with only a
portion of the document shown at any given time. Scroll bars on the window
may then be used to navigate through the document--that is, to scroll
through the information in a document so that a different portion of the
document is displayed in the window. A scroll bar itself has a number of
controls. For example, an end user may control a slider (or puck) on a
scroll bar by clicking and holding down a mouse button over the slider,
and then moving the pointer to scroll to a specific location in the
document. An end user may also click on arrow buttons found at each end of
a scroll bar to scroll a document line-by-line. Also, an end user may
click on regions in the scroll bar between the slider and the buttons to
scroll the document page-by-page or screen-by-screen.
A principal use of windowing technology is in accessing data stored in a
computer. For example, data may be organized into records or files that
are linked together in a predetermined manner. Accessing such data in an
efficient manner is often problematic.
Data is often stored in files that are stored within various directories
organized into a hierarchical directory tree. A number of graphical user
interfaces represent directories using folder icons that an end user can
click on to view the files and/or sub-directories contained within a given
directory.
A directory tree typically can be used to reach any directory and/or file
available to a computer. When the directories and files are all stored
locally (e.g., on a hard or floppy disk drive), a directory tree may be an
efficient manner of accessing data. However, data may also be stored
outside of a computer, e.g., on a private network such as a local area
network (LAN) or wide area network (WAN), and/or on a public network such
as the Internet. The amount of data stored on these additional sources is
often too substantial for access with a conventional directory tree, as
thousands of files and directories may be represented in a given tree. An
end user may have to manually dig through several levels of directories to
find a particular file. An end user may also be able to use a search
engine to find possible directories for a file; however, several
directories may nonetheless need to be viewed before the desired data is
found.
Another manner of accessing data is through the use of embedded links. For
example, on a segment of the Internet known as the World Wide Web,
information is organized into hypertext documents having embedded
hypertext links that an end user can click on to either jump to different
documents, or to jump to different locations within the same document. A
wide variety of information formats such as text, graphics, video, sound,
and animation may be integrated into these hypertext documents. The World
Wide Web has enjoyed such immense popularity that many private networks
now also support hypertext documents, as do a number of existing computer
operating systems and computer software applications.
A computer software application, often referred to as a browser, is
typically used to navigate between and through hypertext documents. With a
browser, an end user can point and click on links such as highlighted
text, images or other user interface components (e.g., buttons) in
documents to navigate to different documents and/or to different locations
within the same document. With the vast amount of information available to
an end user, however, it is quite easy to lose one's place after
navigating through several links.
Unlike an end user's local files, hypertext documents often cannot be
organized hierarchically into directories that descend from a common root.
For example, a document may be linked to multiple documents that are
completely unrelated to one another, and which may be stored on different
computers that are located on the opposite side of the world from one
another. Consequently, conventional directory trees are not well suited
for maintaining one's place during browsing.
Many browsers maintain a history of navigated locations to enable an end
user to backtrack through several links, e.g., by clicking on a "back"
button. Revisiting backtracked links may be performed using a "forward"
button. In addition, an end user may save favorite locations as
"bookmarks", which may themselves be organized into user-specified
folders. An end user often can later access bookmarked locations merely by
selecting a bookmark from a menu.
Nevertheless, neither history nor bookmark information typically provides a
full picture or map of the various documents and locations that an end
user has traversed while browsing. For example, when an end user navigates
through several links from a particular document, backtracks to the
original document using a back button, and then selects another link
within that original document, the previous links navigated from the
original document typically can no longer be retrieved using the "forward"
button of the browser. Documents retrieved previously from the Internet or
another network may be stored locally in a cache to speed repeat access,
but once the history information for forward links is lost, the underlying
documents are often only retrievable through manual searching of the
computer cache.
Also, bookmarking locations is typically a manually-performed activity,
whereby an end user specifically stores and organizes favorite sites as he
or she sees fit. Bookmarking is therefore time consuming and fully
dependent on end users. Unless an end user takes the extra time to
bookmark every visited location, a complete map or history of navigated
locations often cannot be maintained.
History and bookmark information are also not well suited to navigating
within particular documents. While some documents may include internal
hypertext links that point to different locations within the same
documents, history and bookmark information permits navigation within such
documents only to the particular locations specified by the internal
hypertext links. Instead, separate mechanisms such as scroll bars must be
used as the principal mechanisms for navigating to particular locations
within documents. Consequently, an end user is often forced to consciously
click on different objects in a graphical user interface depending upon
whether the end user wishes to navigate between documents or to navigate
within documents. As a result, navigation with this type of user interface
is slow and burdensome for many end users.
Therefore, a significant need exists for a manner of organizing and
enhancing access to hypertext documents and the like. Moreover, a
significant need exists for a manner of enhancing navigation between and
within such documents.
SUMMARY OF THE INVENTION
The invention addresses these and other problems associated with the prior
art in providing a unique user display and method of using the same in
which linked records are graphically displayed with node display elements
representing individual records, and link display elements representing
the links therebetween. One particular application deriving unique benefit
from the invention is in that of navigating hypertext documents, whether
stored locally, on a private network, and/or on the Internet or other
public network. However, it should be appreciated that the invention may
benefit other applications that utilize linked records consistent with the
invention.
Consistent with one aspect of the invention, a user interface component may
be configured to incorporate a scroll display element associated with a
selected node display element to access specific data or locations within
the record associated therewith. In this manner, navigation within records
and navigation between records is integrated into a common user interface
to speed as well as to simplify access to the data within the records.
Consistent with a further aspect of the invention, other control elements
in addition to or in lieu of a scroll display element may be utilized on a
selected node display element to facilitate navigation within the record
associated therewith.
Consistent with another aspect of the invention, a user interface component
may further be configured to graphically represent the particular location
of a particular link within a record. This additional information enables
an end user to quickly ascertain the relative location of a link within a
record.
Consistent with yet another aspect of the invention, individual node
display elements within a user interface component may separately indicate
status information for their associated records. For example, a cache
status may be indicated in individual node display elements to indicate
whether the associated records are currently stored in a computer's
memory.
Consistent with an additional aspect of the invention, a user interface
component may also be configured to incorporate a retrieve progress
display element that indicates a current status of a retrieve operation
for a record. By graphically associating the retrieve progress display
element with a node and/or link display element, the status of a retrieve
operation may be easily and quickly ascertained.
Consistent with yet another aspect of the invention, other status
information may be indicated within a user interface component. For
example, a matching status may be indicated in individual node display
elements to indicate whether the associated records match a predetermined
search criteria.
Consistent with a further aspect of the invention, a user interface
component may also be utilized to perform common operations on selected
records in response to user selection of the nodes associated with the
selected records. Customized groupings of records may therefore be jointly
operated upon through a highly efficient user interface.
These and other advantages and features, which characterize the invention,
are set forth in the claims annexed hereto and forming a further part
hereof. However, for a better understanding of the invention, and of the
advantages and objectives attained through its use, reference should be
made to the Drawing, and to the accompanying descriptive matter, in which
there is described exemplary embodiments of the invention.
BRIEF DESCRIPTION OF THE DRAWING
FIG. 1 is a block diagram of a representative computer display upon which
is illustrated a user interface component consistent with the principles
of the present invention.
FIG. 2 is a block diagram of a representative computer display upon which
is illustrated an alternate user interface component to that illustrated
in FIG. 1.
FIG. 3 is a block diagram of an exemplary hardware environment suitable for
use with the various embodiments of the invention.
FIG. 4 is a block diagram of an exemplary software environment suitable for
use with the various embodiments of the invention.
FIG. 5 is a flowchart illustrating the program flow of one of the browsers
of FIG. 4.
FIG. 6 is a flowchart illustrating the program flow of the map registry of
FIG. 4.
FIG. 7 is a flowchart illustrating the program flow of one of the map
managers of FIG. 4.
FIG. 8 is a flowchart illustrating the program flow of one of the map
displays of FIG. 4.
FIG. 9 is a flowchart illustrating the program flow of the add user routine
shown in FIG. 7.
FIG. 10 is a block diagram of an exemplary map display after initialization
thereof.
FIG. 11 is a flowchart illustrating the program flow of the process link
routine of FIG. 7.
FIG. 12 is a flowchart illustrating the program flow of the determine
initial placement routine of FIG. 11.
FIG. 13 is a flowchart illustrating the program flow of the attempt to
rearrange map display routine of FIG. 11. FIGS. 14A, 14B and 14C are block
diagrams of an exemplary non-adjoining-type map displays illustrating the
placement of a target node display element and the subsequent
rearrangement of the map display accordingly.
FIGS. 15A, 15B and 15C are block diagrams of an exemplary adjoining-type
map displays illustrating the placement of a target node display element
and the subsequent rearrangement of the map display accordingly.
FIG. 16 is a flowchart illustrating the program flow of the span
determining routine of FIG. 13.
FIG. 17 is a flowchart illustrating the program flow of the update user
position in map routine of FIG. 7.
FIGS. 18A and 18B are block diagrams of exemplary adjoining-type and
non-adjoining-type map displays, respectively, after addition of a node
display element.
FIG. 19 is a flowchart illustrating the program flow of the perform bounded
drag routine of FIG. 8.
FIG. 20 is a flowchart illustrating the program flow of the perform
unbounded drag routine of FIG. 8.
FIGS. 21A and 21B are block diagrams of exemplary non-adjoining-type map
displays illustrating cache status indicators on the node display
elements, respectively before and after retrieval of documents associated
with selected node display elements.
FIG. 22 is a block diagram of an exemplary adjoining-type map display
illustrating cache status indicators on the node display elements.
FIG. 23 is a block diagram of an exemplary non-adjoining-type map display
with one suitable retrieve progress display element displayed therein.
FIG. 24 is a block diagram of an exemplary non-adjoining-type map display
with an alternate retrieve progress display element to that shown in FIG.
23.
FIG. 25 is a block diagram of an exemplary adjoining-type map display with
one suitable retrieve progress display element displayed therein.
FIG. 26 is a block diagram of an exemplary adjoining-type map display with
an alternate retrieve progress display element to that shown in FIG. 25.
FIG. 27 is a flowchart illustrating the program flow of the search based
map display generation routine of FIG. 8.
FIG. 28 is a flowchart illustrating the program flow of the Add NDE routine
of FIG. 27.
FIG. 29 is a flowchart illustrating the program flow of the any children
match search criteria? routine of FIG. 27.
FIG. 30 is a block diagram of an exemplary map display generated by the
routines of FIGS. 27-29.
FIG. 31 is a flowchart illustrating additional event handling routines for
the map display of FIG. 8.
FIG. 32 is a flowchart illustrating the program flow of the select sub-map
routine of FIG. 31.
FIG. 33 is a flowchart illustrating the program flow of the perform action
routine of FIG. 31.
FIG. 34 is a block diagram of an exemplary print map display consistent
with the invention.
FIG. 35 is a block diagram of a representative computer display upon which
is illustrated an adjoining-type map display and associated zoom window
wherein elastic boundaries are provided between node display elements.
FIG. 36 is a flowchart illustrating the program flow of an alternate
perform bounded drag routine to that of FIG. 19, implementing an elastic
boundary between node display elements.
FIGS. 37A-37C are block diagrams illustrating movement of a slider display
across an elastic boundary in the map display of FIG. 35.
FIG. 38 is a block diagram illustrating elastic boundaries within a
nonadjoining-type map display consistent with the invention.
FIGS. 39A-39D are block diagrams illustrating movement of a slider display
element along a scroll bar display element having elastic boundaries.
DETAILED DESCRIPTION
The various embodiments of the invention principally provide a unique user
interface component to graphically represent a data structure having a
plurality of linked records. The user interface component, which is
referred to below as a map display component, or simply a map display,
utilizes a map data structure, or map, with a plurality of node display
elements (NDE's) to represent individual records that are graphically
linked to one another. In addition, a plurality of link display elements
(LDE's) in the map data structure may be utilized to represent the links
between such node display elements.
One application of a map display is in navigating hypertext documents
stored locally on an end user's computer, on a private network such as a
local area network (LAN) or wide area network (WAN), and/or on the
Internet or other public network. Consequently, in such an application,
the node display elements typically represent hypertext documents, while
the link display elements typically represent the actual hypertext links
between such documents. The hypertext documents may be, for example, in
hypertext markup language (HTML) format, and may include text as well as
various multimedia objects such as static and/or moving images, sounds,
animations, etc. Further, the hypertext documents may include executable
objects such as Java applets, controls such as Java Beans and Active X
controls, scripts such as Javascript scripts, etc. The node display
elements may represent only HTML-format documents, with any multimedia or
executable objects contained therein considered to be part of the same
documents. Alternatively, multimedia and/or executable objects may be
embodied in separate node display elements, whereby the references to such
objects in HTML-format documents would also operate as links and be
embodied in separate link display elements.
While the disclosure shall hereinafter describe the use of map displays for
representing and/or navigating linked hypertext documents, it should be
appreciated that the invention may have benefit in other applications to
access (e.g., view, store, modify, etc.) linked records consistent with
the invention. For example, map displays consistent with the invention may
be utilized to represent private databases, menuing systems, etc.
When used in conjunction with navigating hypertext documents, a map display
is typically generated dynamically, whereby node display elements are
automatically added to the map display as new links are taken by an end
user. Consequently, the map displays may be used to provide a history, or
"bread crumb trail" for an end user as he or she navigates through various
records. Given the practically endless amount of content on the Internet,
for example, the history provided by a map display may be invaluable.
Another display element that may be included in a map display is a scroll
display element, also known as a "slider" or "puck", which enables node
display elements to have additional functionality as scroll bars for
navigating through the contents of their associated records. When a
separate display such as a browser window is activated for displaying the
contents of a given document, a slider disposed within a region of the
associated node display element may be utilized to scroll the browser
window through the contents of the document. Moreover, a slider may be
utilized to navigate to different documents, e.g., by dragging the slider
to another node display element, either by passing through adjacent
elements (a "bounded" drag) or by dragging directly to the desired node
display element (an "unbounded" drag). Through this arrangement,
navigation within documents is integrated with navigation between
documents, thereby greatly simplifying access thereto.
Furthermore, as will be discussed in greater detail below, each node
display element may also be sized relativ | | |