[0001] A portion of the disclosure of this patent document contains material which is subject
to copyright protection. The copyright owner has no objection to the facsimile reproduction
by anyone of the patent document or the patent disclosure, as it appears in the Patent
and Trademark Office patent file or records, but otherwise reserves all copyright
rights whatsoever.
BACKGROUND
[0002] Various User Interfaces ("Uls") are known for managing and manipulating documents
and other objects on computing devices. One type of Ul displays a list of Most Recently
Used ("MRU") objects. For example, word processors often display a list of most recently
used documents and operating systems often display a list of most recently used applications.
Displaying such a list allows expedited access to recently used objects. Users may
simply navigate a menu rather than, for example, a series of dialogue boxes to navigate
through a file path. Such a list may display, for instance, the ten most recently
used objects. Typically, this list is displayed as a text based menu item at the bottom
of the application's top-level File menu or from an "Open Recent>" fly-out menu under
the top-level File menu. While this Ul may be convenient for a user accustomed to
looking in the top-level File menu for MRU files, it does not lend itself well to
a task-based Ul.
[0003] A task-based Ul makes tasks, not files and folders, the primary unit of interaction.
Instead of showing entire hierarchies of information, such as a trees of files or
file paths, a task- based Ul typically displays icons with task-oriented phrases or
images related to the task-at-hand, for example "Make New Drawing", "Open Existing
Drawing" or "Organize Pictures". A task-based Ul tends to be user friendly because
users tend to use applications to accomplish tasks. These tasks are configured to
be in line with what a user might be thinking at the moment they launch an application.
In other words, users tend to think in terms of tasks that they want to accomplish
as opposed to documents. Therefore, task-based Uls have become popular.
[0004] This task-based approach is convenient for an application that deals with a single
type of file. For example, "Cover Flow", the animated Ul integrated with many APPLE
COMPUTERS, INC.
TM products, displays icons to a user representing both the task of playing, i.e., rendering,
a media file and the underlying media file. This Ul works well when there is only
one task to be accomplished, rendering in this example. However, the convenience of
this approach wanes when an application allows a user to perform multiple tasks or
author multiple types of files or documents. Such an application may include multiple
modules of varying types, for example a text module to create document objects, an
image module to create image objects, a layout module to create layout objects, a
letter module to create letter objects, a rule module to create rule objects, and
a portfolio module to create portfolio objects. Each of these types represents a task,
however they also each represent a type of file, document, or other object that a
user may use or author.
[0005] In the case of applications dealing with multiple object types, the traditional menu-based
MRU system is cumbersome, to say the least. Additionally, the traditional task-based
Ul either takes up too much screen real estate to be usable (e.g., having a set of
icons representing each set of tasks you might want to perform per document type)
or non-intuitive tasks are combined together (e.g., to reduce the number of icons).
For example, while Cover Flow is convenient for user interfaces that only require
navigation of media files (i.e. only of files that may be considered the same type),
it would become difficult to use with files of diverse file types (e.g., files that
cannot be merely rendered with a media player).
SUMMARY
[0006] According to a first aspect, there can be provided a computing device including a
processor configured to execute instructions to provide a graphical user interface
displayed on a display device and for facilitating navigation through a collection
of files stored in a storage device, the user interface including a primary icon displayed
on the display device and representing a selected file, a temporal axis defined across
at least a portion of the primary icon, and one or more secondary icons displayed
on the display device, each representing a respective additional file, the secondary
icons being positioned separate from the primary icon, wherein the secondary icons
are arranged along the temporal axis in temporal order of each additional file represented
by the secondary icons.
[0007] According to another aspect, there can be provided a computer-implemented method
including displaying on a display device a primary icon representing a selected object,
displaying on the display device on a sequential axis one or more secondary icons,
each secondary icon representing a respective additional object, the secondary icons
being positioned separate from the primary icon, allowing a user to select with an
input device one of the primary or secondary icons, performing with a computing device
a function on the object associated with the primary icon in the case the user selects
the primary icon, and transitioning with the computing device the primary icon and
secondary icons to make the selected secondary icon the primary icon in the case the
user selects one of the secondary icons.
BRIEF DESCRIPTION OF THE DRAWINGS
[0008] FIG. 1 illustrates an example of a Ul display of a task screen including one or more
widgets.
[0009] FIG. 2A illustrates an example of a UI display of a widget in its initial state.
[0010] FIG. 2B illustrates an example of a Ul display of a widget displaying the MRU icon.
[0011] FIG. 2C illustrates an example of a alternative Ul display of a widget displaying
the MRU icon.
[0012] FIG. 2D illustrates an example of a Ul display of a widget displaying the two MRU
Icons.
[0013] FIG. 2E illustrates an example of a Ul display of a widget displaying the three MRU
Icons.
[0014] FIG. 2F illustrates an example of a Ul display of a widget displaying the four MRU
Icons.
[0015] FIG. 2G illustrates an example of a Ul display of a widget showing the second through
fifth MRU icons.
[0016] FIG. 2H illustrates an example of a Ul display of a widget showing the fourth through
sixth MR U icons.
[0017] FIG. 2I illustrates an example of a Ul display of a widget showing the fifth and
sixth MRU icons.
[0018] FIG. 3 illustrates an example of a flowchart of an example method of navigation of
recently used objects.
[0019] FIG. 4A illustrates an example of a Ul display of a widget having a vertical sequential
axis.
[0020] FIG. 4B illustrates an example of a Ul display of a widget having a diagonal sequential
axis.
[0021] FIG. 4C illustrates an example of a Ul display of a widget having sequential axis
having a rigid bend.
[0022] FIG. 4D illustrates an example of a Ul display of a widget having a sequential axis
having an arc form.
[0023] FIG. 4E illustrates an example of a Ul display of a widget having a sequential axis
having a serpentine form.
[0024] FIG. 4F illustrates an example of a Ul display of a widget having a sequential axis
in the form of a jagged line.
[0025] FIG. 4G illustrates an example of a UI display of a widget having a sequential axis
crossing only a portion of the primary icon.
[0026] FIG. 4H illustrates an example of a Ul display of a widget having a sequential axis
crossing the proximity of the primary icon.
[0027] FIG. 5 illustrates a computing device for providing a graphical user interface displayed
on a display device and for facilitating navigation through a collection of objects
stored on a storage device.
[0028] While the user interface and method is described herein by way of example and embodiments,
those skilled in the art will recognize that the user interface and method is not
limited to the embodiments or drawings described. It should be understood that the
drawings and description are not intended to limit embodiments to the particular form
disclosed. Rather, the intention is to cover all modifications, equivalents and alternatives
falling within the spirit and scope of the invention defined by the appended claims.
Any headings used herein are for organizational purposes only and are not meant to
limit the scope of the description or the claims. As used herein, the word "may" is
used in a permissive sense (i.e., meaning having the potential to), rather than the
mandatory sense (i.e., meaning must). Similarly, the words "include", "including",
and "includes" mean including, but not limited to.
DETAILED DESCRIPTION
[0029] Embodiments of the present disclosure include a Ul and method for facilitating navigation
of icons to perform a function (e.g., view or edit) with respect to recently used
objects associated with the icons. The icons may be configured along a sequential
axis to allow a user to easily identify the task or object associated with each icon.
The icons arranged along the sequential axis may be arranged temporally according
to a critical date of an associated object. The critical date may be, for example,
the object create date, the object last viewed date, the object last edited date,
the object last run date, the object deleted date, a user defined date, or any other
date. While embodiments disclosed herein often refer to most recently used ("MRU")
objects, it is understood that "used" can refer to any critical date criteria and
is not limited to the preceding examples. Alternatively, sequences of icons may be
arranged by other sequential values, such as version numbers, document identification
numbers, or priority numbers. Additionally, in a multi-user environment, icons may
be organized temporally with regard to a specific user's use or with regard to all
users' use.
[0030] The sequential axis may be a linear axis defined across at least a portion of a primary
icon and may have one or more secondary icons arranged in a sequential order along
the axis in relation to the primary icon and positioned separate from the primary
icon. For example, the sequential order may be a temporal order (i.e., time-based
order) having the icons arranged by a critical date. In embodiments where the axis
is a horizontal axis defined across at least a portion of the primary icon and the
sequential order is a temporal order, secondary icons may be arranged along the horizontal
axis to the sides of the primary icon. In other words, secondary icons representing
objects with a critical date (e.g., a date of creation) before the critical date of
the object represented by the primary icon may be arranged in temporal order to the
left of the primary icon. In similar fashion, secondary icons representing objects
having a critical date after the critical date of the object represented by the primary
icon may be arranged in temporal order to the right of the primary icon.
[0031] Of course, temporal order may be alternatively be from right-to-left. Such embodiments
may be advantageous in implementations where flow is customarily from right-to-left,
such as Arabic systems. Also, alternative sequences for icon arrangement may be used,
such as reverse temporal order for example. In still other embodiments, a sequential
axis may be arranged in other directions, for example a top to bottom axis 410 (FIG.
4A), a top-left to bottom-right axis 420 (FIG. 4B), or in any other linear direction.
In still other embodiments, the sequential axis may not be linear. For example, the
axis could be a sequential axis having a rigid bend 430 (FIG. 4C), may be an arcing
axis 440 (FIG. 4D), may be a serpentine axis 450 (FIG.4E), may be a jagged axis 460
having a series of rigid bends (FIG.4F), or may take any other form. Additionally,
while an embodiment includes a sequential axis crossing a central portion of a primary
icon, alternative embodiments may include a sequential axis 470 crossing only a portion
of the primary icon (FIG. 4G), or a sequential axis 480 only crossing the proximity
of the primary icon (FIG.4H). It is understood that the axes shown in FiGs. 4A-4G
are merely for illustrative purposes and not part of the Ul.
[0032] Each MRU icon may display images or information to allow a user to easily identify
the object represented by the icon. For example, an MRU icon may display the filename
of an associated file and the date and time the file was last viewed. By way of alternative
example, an MRU icon may display a screenshot of the MRU object to allow a user to
easily identify the MRU object. Such a screenshot may be a thumbnail view of the object,
an enlarged portion of the object, or any other display to assist a user in quickly
identifying the object. In some embodiments, the primary icon may display a screenshot
of the object while secondary icons may include brief information for identifying
an object.
[0033] The Ul facilitates user creation of a new object of a specific type. By way of example,
a user may create a new text object (e.g., a document file) by selecting (e.g., clicking
with a mouse pointer) a "new" icon (i.e., an icon associated with the task of creating
a new object). Upon a user selecting the new icon, the Ul may simply create a new
object and associate it with an icon. Alternatively, the UI may display an editor
(e.g., a word processor) to allow the user to author and edit text in the text object.
[0034] New icons may be configured to allow a user to intuitively understand that selecting
the icon will create a new object of a specific type. By way of example only, a new
icon may simply be labelled "New ... " if it is clearly recognizable to a user the
type of object to be created (e.g., by being labelled or stylized or being arranged
with icons associated with a specific object type). By way of alternative example,
a new icon may appear as a blank object of a specific type.
[0035] The Ul allows a user to easily navigate, view, edit, or perform other tasks or functions
on recently used objects. A user may access (e.g., open to view or edit) the object
associated with the primary icon by simply selecting the primary icon (e.g., clicking
on it with a mouse pointer). Additionally, in response to a user selection of a secondary
icon, the object associated with the selected secondary icon may become the object
associated with the primary icon and the secondary icons may become associated with
objects to maintain the sequential ordering of the sequential axis. A user may then
access the object represented by the primary icon by selecting it or navigate further
in a sequential "direction" by selecting another secondary icon.
[0036] The primary icon may be accentuated with respect to secondary icons. The primary
icon may, for example, be larger than the secondary icons, be a different colour or
shade than secondary icons, have an appearance of being in front of secondary icons,
or have any other distinguishing characteristic. Additionally, the primary icon may
always maintain the same position, for example a centred position.
[0037] It should be noted that a Ul according to embodiments of the present disclosure may
be implemented with any type of software executed on any hardware device(s) and may
be embodied in a pre-programmed general purpose computing device. For example, the
Ul may be implemented using a server, a personal computer, a portable computer, a
thin client, mobile device (e.g., cell phone, smart phone, IPOD
TM , etc.) or any suitable device or devices. The Ul may be displayed on a viewing device,
for example, a screen or projected display. A user may interact with the UI via an
input device, for example a mouse, keyboard, or touch-screen.
[0038] A Ul according to the present teachings may be implemented with software executed
on computing device 510 of FIG. 5. Computing device 510 has one or more processors
511 designed to process instructions, for example computer readable instructions stored
on a storage device 513. By processing instructions, processors 511 transforms underlying
objects such as the objects associated with icons displayed on the Ul. Storage device
513 may be any type of storage device (e.g., such an optical storage device, a magnetic
storage device, a solid state storage device, etc.). Alternatively, instructions may
be stored in remote storage devices, for example storage devices accessed over a network
or the Internet. Computing device 510 additionally has memory 512, an input controller
516, and an output controller 515. A bus 514 operatively connects components of computing
device 510, including processor 511, memory 512, storage device 513, input controller
516, output controller 515, and any other devices (e.g., network controllers, sound
controllers, etc.). Display controller 515 is operatively coupled (e.g., via a wired
or wireless connection) to a display device 520 (e.g., a monitor, television, mobile
device screen, etc.) in such a fashion that display controller 515 can transform the
display on display device 520 (e.g., in response to modules executed). Input controller
516 is operatively coupled (e.g., via a wired or wireless connection) to input device
530 (e.g., mouse, keyboard, touch-pad, scroll-ball, etc.) in such a fashion that input
can be received from a user (e.g., a user may select with input device 530 icons in
the UI displayed on display device 520). Computing device 510, display device 520,
and input device 530 may be separate devices (e.g., a personal computer connected
by wires to a monitor and mouse), may be integrated in a single device (e.g., a mobile
device with a touch-screen), or any combination of devices (e.g., a computing device
operatively coupled to a touch-screen display device, a plurality of computing devices
attached to a single display device and input device, etc.).
[0039] FIG. 1 illustrates an example of Ul task screen 100. Task screen 100 includes one
or more widgets (i.e., elements that display information arrangements). Each widget
can correspond to an object type. By way of non-limiting example, task screen 100
may include a text widget 10, an image widget 20, a letter widget 30, a layout widget
40, and a portfolio widget 50. Each widget may be an arrangement of icons. Each icon
may be associated with (i.e., represent) a task (e.g., creating a text object or opening
an existing text object) as well as an object of a specific type (e.g., a document).
If objects of the widget type have previously been created, each widget may display
icons representing MRU objects to allow a user to quickly and easily access recently
used objects of that widget type.
[0040] Each widget (e.g., portfolio widget 50) may include a primary icon (e.g., icon 53).
The primary icon is accentuated to allow a user to easily and quickly recognize it
as the primary icon. The embodiment illustrated in FIG. 1 shows primary icons having
a greater size than secondary icons, arranged centrally within each widget, and partially
overlapping secondary icons. In alternative embodiments, the primary icon may be of
another size that differentiates it from the secondary icon, for example the primary
icon could be smaller than the secondary icons, could be taller and thinner than the
secondary icons, could be shorter and fatter than the secondary icons, or have any
other size or dimensional differentiation characteristic. Alternatively, the primary
icon may be the same size but other visual indicia may allow a user to identify the
primary icon, for example the display on the icon, the colour of the icon, the shape
of the icon, or other visual effects (e.g., 3D effects).
[0041] Each widget in the illustrated embodiment includes icons arranged separate from the
primary icon along a horizontal sequential axis defined across a central portion of
the primary icon and defined by the secondary icons described below. Of course, while
the secondary icons are separate from the primary icon, this includes arrangements
where the secondary icons are in proximity to the primary icon and contact or are
partially overlapped by the primary icon as shown in FIG. 1. Dotted line 70 in FIG.
1 illustrates the horizontal sequential axis. It is understood that line 70 is included
in FIG. 1 merely to illustrate to a reader the horizontal temporal axis and is not
part of the Ul. In embodiments having a temporal axis arranged according to a last-viewed
date with the most recently viewed objects rightmost and the least recently viewed
objects leftmost, the icons may be arranged according to a last-viewed date of the
object associated with each icon. For example, portfolio widget 50 may have the most
recently viewed portfolio associated with icon 52, the second most recently viewed
portfolio associated with icon 53, the third most recently used portfolio associated
with icon 54, and the fourth most recently used portfolio associated with icon 55.
In some embodiments, a widget may display less icons if less objects exist. For example,
if only a single letter has been viewed, letter widget 30 may display only a single
icon 32 associated with the most recently viewed letter.
[0042] Arranging MRU icons in this fashion allows users to see how many recently used objects
exist. For example, by glancing at task screen 100, a user can instantly deduce from
text widget 10 that no text objects have been created because text widget 10 shows
no MRU icons. Similarly, a user can instantly see that a single image object and a
single letter object exist because each respective widget shows a single MRU icon.
[0043] According to this example, each widget includes a "new" icon configured to perform
the task of creating a new object of a specific type. For example, by selecting "new"
icon 11, a new text object may be created. If no objects of a specific type exist,
a "new" icon may be the only icon in a widget (e.g., "new" icon 11 is the only icon
in text widget 10 because no text objects may exist). Additionally, because logically
a new object will be the most recently viewed when created, widgets having recently
used objects may arrange a "new" icon at an end of the sequential axis. For example,
"new" icon 51 associated with the task of creating a new portfolio may be arranged
in the right-most position of portfolio widget 50 as shown.
[0044] With icons arranged along a temporal axis having the MRU objects arranged in the
right-most position, a "new" icon may always be in the right-most position even if
a user navigates toward less recently used objects. Alternatively, a "new" icon may
be arranged on a temporal axis in the right-most position and may disappear from view
when a user navigates in the direction of less recently used objects.
[0045] When a user first opens an application having task screen 100, all widgets may have
a "new" icon as the primary icon. For example, widgets 10 and 20 appear as they would
when the application is first opened. This allows a user to create a new object of
any widget type with a single selection. At the same time, because any icons associated
with MRU object are visible to the left of the "new" icon, a user may quickly and
intuitively navigate to and open recently used objects. After a user finishes authoring
or editing an object and exits the respective editor, that object may become the most
recently used and an icon associated with that object may become the primary icon.
For example, widgets 30 and 40 each show icons representing the MRU object in as the
primary icon. Thus, a user can quickly return to editing the object with a single
selection.
[0046] While the Ul illustrated in FIG. 1 shows a maximum of five icons in each widget,
the number of icons displayed by each widget may be optimally configured depending
on situational factors. For example, a greater number of icons may be shown on a large
screen or in the interface to a program that only performs a few types of tasks or
uses only a few types of objects. Alternatively, a program that performs a wide range
of tasks may only have the available Ul real estate (i.e., viewing space) to include
widgets displaying fewer icons. Likewise, the size of the icons comprising the widgets
may vary depending on situational factors, such as the number of tasks performed by
an application and the size of a viewable Ul. Still further, the amount of overlap
of icons in a widget may vary. In FIG. 1, all but about a quarter of each secondary
icon is "overlapped" by another icon. In other embodiments this ratio may vary, for
example secondary icons may be three quarters visible, may not be overlapped at all,
or may have any desirable ratio of overlap. Greater overlap of icons may allow more
widgets to fit on a screen or more icons to comprise each widget. Alternatively, lesser
overlap may allow more information to be displayed on each secondary icon, thereby
allowing a user to more readily identify or recognize each icon. There may be a direct
correlation between the size of the icons comprising the widgets, the number of icons,
and the overlap of the icons.
[0047] The number of icons, icon size, icon overlap, or other display parameters of a widget
may be user selectable. The system or application may automatically select optimal
display parameters of a widget based on situational factors. The system may further
automatically vary these parameters of a widget as situational factors vary, for example
when a user varies the viewable size of the task screen 100.
[0048] The arrangement of icons may vary widely while still maintaining benefits of the
present teachings. In contrast to the widgets illustrated in FIG. 1, the icons comprising
a widget may simply be arranged temporally from left to right with the icon representing
the most recently used object taking left-most positions. In analogous fashion, icons
may be arranged, i.e., the sequential axis can be oriented, vertically, diagonally,
or in any other orientation. Still further, icons may be arranged in other alignments,
for example along an arc, a serpentine line, a line having one or more bends (e.g.,
beginning above the primary icon, bending at a right angle, and extending to the right
of the primary icon) or a jagged line.
[0049] Still further, the arrangement of icons according to alternative embodiments may
appear three-dimensional (3D) to a user. For example, portfolio widget 50 shown in
FIG. 1 may appear to have primary icon 53 floating in front of the secondary icons
55, 54, 52, and 51. In such an embodiment, secondary icons 52 and 54 may appear recessed
behind primary icon 53 and secondary icons 51 and 55 may appear further recessed behind
secondary icons 52 and 54. Additional effects or rendering may add to a user's 3D
perception of arrangement of icons comprising a widget, for example lighting and/or
shading. The present disclosure further contemplates 3D effects utilizing emerging
3D technologies, such as features of 3D display panels and user input devices utilizing
3D control.
[0050] Additionally, while the icons of widgets illustrated in FIG. 1 all appear to be oriented
along the user's viewing plane, alternative embodiments may include icons that rotate
or tilt to both create a pleasant viewing experience to a user and to allow a user
to quickly tell the sequential orientation of the icons. Still other visual effects,
such as curvature of the icons, colouring of the icons, or changing a user's perceived
viewpoint (i.e. changing the camera angle) may be included in other embodiments.
[0051] Independent of the orientation or arrangement of the sequence of icons, in some embodiments,
a "new" icon may always be at least partially visible and quickly accessible by a
user. In FIG. 1, a "new" icon is always either the primary icon or the secondary icon
in the right-most position. Alternatively, a "new" icon may be arranged in a widget
in other positions. By way of example only, if icons are arranged temporally from
left to right according to a critical date of the object associated with the icon,
a "new" icon may extend below the widget along a vertical axis. In still other embodiments,
a "new" icon may be smaller than the primary icon and may appear to a user to hover
in front of a portion of the primary icon.
[0052] The following sets forth how a user may navigate one or more widgets in some embodiments
of the present disclosure. A user may select the primary icon of the widget to either
create a new object of that widget type (if a "new" icon is the primary icon) or perform
another task (e.g., view, edit, print, etc.) on an object of that widget type associated
with the primary icon (if an icon associated with an object is the primary icon).
For example, a user may select "new" icon 11 of text module widget 10 to create a
new document or may select primary icon 32 of letter widget 30 to edit the MRU letter.
Alternatively, a user may select a secondary icon of a widget to traverse the icons
in the direction of the selected icon. By selecting a secondary icon, the icons adjust
horizontally to transform the selected icon from a secondary icon to the primary icon
(i.e., transform the object associated with the selected secondary icon to the object
associated with the primary icon). A user may then select the primary icon to either
create a new object of that widget type (if a "new" icon is now the primary icon)
or perform another task or function (e.g., view, edit, print, run, delete, etc.) on
an object of that widget type associated with the primary icon (if an icon associated
with an object is the primary icon). Scrolling, selection, and other Ul navigation
can be accomplished with any known input device, such as a mouse, touchpad, touch-screen,
digitizer, scroll wheel, keyboard, and the like.
[0053] As the icons of a widget are transformed (i.e., rearranged) to make the selected
secondary icon the primary icon, the widget maintains the sequential arrangement of
the icons. In other words, selecting a secondary icon brings that secondary icon to
the primary icon position and rearranges the secondary icons to maintain the sequential
arrangement. According to some embodiments, at all times a "new" icon may remain oriented
immediately to the right of icon representing the most recently used object. A user
may continue to select secondary icons to further traverse the icons in a widget (i.e.
to navigate to icons associated with less recently used objects).
[0054] As a user traverses the icons of a widget, the icons may move horizontally across
the widget. When a user initiates navigation toward icons associated with less recently
used objects, icons associated with less recently used objects, to the extent they
exist, may appear in the leftmost positions of the widget and all other icons move
to the right enough positions to allow the selected secondary icon to take the position
of primary icon. If there are not enough positions for all secondary icons to be displayed
to the right of the primary icon, icons associated with more recently used objects
may no longer be displayed in the widget. For example by selecting secondary icon
55 in portfolio widget 50, secondary icon 55 becomes the primary icon and two icons
associated with less recently used portfolios display to the left of now primary icon
55. In like fashion, secondary icon 54 moves into the position of secondary icon 52
and secondary icons 53 and 52 disappear from view. "New" icon 51, however, may always
be displayed. FlGs. 2A through 2J show example navigation by a user of icons of a
widget in more detail according to some embodiments.
[0055] FIG. 2A illustrates an example Ul display of a widget in its initial state. In FIG.
2A, the icons comprising the widget include only a single icon 201labeled "New". To
create a new object of the widget type, a user selects "new" icon 201, for example
by clicking on it with a mouse pointer. By selecting "new" icon 201, the Ul may display
an editor to allow the user to modify the new object, such as by authoring and editing
text in a text object. The editor may partially or totally obstruct (i.e., hide from
the user's view) one or more widgets, for example widgets 10-50 illustrated on task
screen 100 of FIG. 1. Alternatively, selecting "new" icon 201 may create an icon associated
with a new object (e.g., an empty text object) that may then be selected and opened
from the widget.
[0056] After working with the text object, the user who was authoring a text object may
decide to start working on a letter. The user may then save the changes to the text
object in conventional fashion and exits the editor. The text widget may then appear
as in FIG. 2B, having two icons, "new" icon 221 and an icon 222 representing the MRU
text object, because the new text object is now the MRU text object. Icon 222 representing
the MRU object is the primary icon to allow a user to quickly edit the recently exited
text object.
[0057] Because no letters exist, a letter widget appears the same as the widget shown in
FIG. 2A. The user selects "new" icon 201 to create a new letter object. The Ul may
display an editor to allow the user to modify the new letter object. While editing
the new letter object, the user may realize that they need to further edit the text
object they previously created. The user may then exit the letter editor to go back
to a task screen. As discussed with reference to FIG. 1 above, when a user exits an
editor, one or more widgets of different types (e.g., widgets 10, 20, 30, 40 and 50)
may be displayed to the user on a task screen (e.g., task screen 100). The letter
widget now looks like FIG. 2B, having two icons, because one letter object exists.
Again, the icon representing the MRU letter object is the primary icon to allow a
user to edit the letter object with a single click.
[0058] At this point, the user needs only to select primary icon 222 of the text widget
to continue editing the MRU text object. The user may switch back to editing the letter
object just as easily. Because the widget arranges the icon associated with the MRU
object as the primary icon, a user may easily transition from editing one object type
to editing another.
[0059] FIG. 2C shows the a widget's initial appearance when an object already exists (a
widget having two icons, "new" icon 231 being the primary icon and an icon 231 associated
with the MRU object being a secondary icon arranged to the left of "new" icon 231
according to a temporal sequencing). A widget may have this initial appearance after
a user launches or logs into the application (i.e., prior to editing a new or existing
object which that widget pertains to).
[0060] Similarly, FIG. 2D shows the initial view of a widget having two existing objects.
While the widget comprises three icons, "new" icon 241 remains the primary icon while
MRU1 icon 242 and MRU2 icon 243 extend to the left of "new" icon 241. In an embodiment
which has a maximum of two secondary icons extending from either side of the primary
icon, FIG. 2D represents the initial appearance of a widget of any object type where
more than two objects of that type have been previously used. The following explains
how a user may navigate from the widget shown in FIG. 2D to view and access less recently
used objects.
[0061] If a user selects MRU1 icon 242, the icons of the widget transform to bring the MRU1
icon 242 into the primary icon position and the secondary icons are transformed to
maintain temporal sequencing. FIG. 2E shows the view of a widget after selecting MRU1
icon 242 which was partially hidden behind "new" icon 241 of FIG. 2D. In FIG. 2E,
"new" icon 251 remains in view but transforms to a secondary icon to the right of
the primary icon. This can provide an intuitive temporal arrangement because new objects
are in the future and the historical order of objects puts the oldest objects on the
left-hand side of "new" icon 251.
[0062] FIG. 2F shows the state of the widget after selecting MRU2 icon 253 of FIG. 2E. "New"
icon 261 transitions one position to the right and MRU1 icon 262 transitions one position
to the right as well.
[0063] FIG. 2G illustrates that, according to some example embodiments, a "new" icon, e.g.
"new" icon 271, always remains in view even when a user selects MRU3 icon 264 of FIG.
2F (or MRU3 icon 254 from FIG. 2E) and MRU3 icon 273 becomes the primary icon. In
this case, the MRU1 icon disappears from view. It would reappear next to "new" icon
271 should the user select secondary icon MRU2 icon 272.
[0064] FIG. 2H illustrates that icons to the left of the primary icon disappear when there
are no more objects older than those associated with the displayed icons. In this
case, MRU6 icon 284 represents the oldest object of the type represented by the widget.
Therefore, no left-most icon appears after selecting MRU5 icon 275. FIG. 2H also illustrates
that the user is not limited to selecting only the immediately preceding icon but
may select any icon, for example the leftmost icon (the icon associated with the oldest
object currently in view). In this case, icons associated with the next two most recently
used objects (or less if there is only one or none) are displayed as secondary icons
to the left of the primary icon.
[0065] FIG. 2I illustrates the state of the widget after selecting MRU6 icon 284, the icon
associated with the oldest object (e.g., the object having the oldest critical date).
The widget displays no icons to the left of the primary icon and MRU5 icon 292 is
now on the right. "New" icon 291 may still remain in the right-most position.
[0066] Thus, the sequential flow of icons representing objects progresses from left to right
as a user navigates toward less recently used objects with a "new" icon always remaining
visible. As described above, the primary icon of the widget may show a preview of
the associated object's contents. When an icon associated with an object is the primary
icon, selecting the icon, for example by clicking on it, performs a function on the
associated object (e.g., opening it for viewing or editing, printing, deleting, etc.).
In similar fashion, a user may navigate toward more recently used objects.
[0067] Alternatively, selecting the primary icon may perform other functions relating to
that object. A user may be able to directly perform a function (e.g., open an object
for editing) on an object associated with a secondary icon, for example by performing
a special selection, such as double-clicking, holding a keyboard key while clicking,
or pressing a keyboard shortcut combination.
[0068] Also, a user may drag-and-drop icons in a widget to navigate a widget. For example,
a user may click on an icon associated with a recently used object and drag the icon
to the right to view icons associated with less recently used objects or may drag
the icon to the left to view icons associated with more recently used objects. The
speed with which a user drags-and-drops icons may determine how far the widget traverses
recently used objects.
[0069] A widget may have an associated search function to allow a user to directly navigate
the icons of a widget to search for an object. For example, task screen 100 of FIG.
1 shows a search box 60 configured to allow a user to directly search for an object
associated with an icon of a widget. A user interface may have a search box 60 for
each widget configured to search objects associated with icons of that widget or may
include a search box 60 for searching objects associated with icons of a plurality
of widgets. Additionally, search box 60 may allow a user to search by various attributes
of an object, such as the objects name, type, last used date, or any other search
parameter.
[0070] A user's rights or permissions may determine one or more attributes of the icons
of a widget. By way of example, in a system having multiple users, a user may not
see icons associated with objects that the user does not have certain rights to. Alternatively,
icons associated with objects a user does not have certain rights to may show some
indicia of the user's rights, such as an icon may have a specific colour or tint if
the user of the widget has read-only rights, has all rights except deletion, or any
other rights scenario. In still other embodiments, a "new" icon may be displayed only
to a user whose permission allow creation of a new object of the widget type.
[0071] Referring now to FIG. 3, flowchart 300 shows how a computer-implemented method may
facilitate navigation of recently used objects. In step 305, when an application is
first opened or logged into, a display device displays a widget having a "new" icon
as the primary icon. At step 310, the widget remains displayed on the display device
and awaits a user command received from a user input device, for example selection
of the primary icon or of a secondary icon with a mouse. When a user command is received,
at step 315 a computing device determines if the primary icon was selected or if a
secondary icon was selected. If the primary icon was selected, the flowchart proceeds
to step 330 and a function is performed on the object associated with the primary
icon. For example, if the object associated with the primary icon is a text file,
the file may be opened with an editor to allow the user to edit the file. In this
case the flowchart may remain at step 330 until the user exits the editor, at which
point the computing device would return the process to step 310 and await a further
user command. Alternatively, a computing device may perform a function, such as printing
the object associated with the primary icon, and return to step 310. If a secondary
icon is selected at step 315, the flowchart proceeds to step 320 and the computing
device transitions icons to transform the selected secondary icon into the primary
icon (i.e. the object associated with the selected secondary icon becomes the object
associated with the primary icon). After step 320, at step 330 a computing device
transforms the right-most icon to a "new" icon. The flowchart then returns to step
310 and awaits further commands from a user.
[0072] Other embodiments of the present disclosure may include a non-transitory computer
readable storage device having computer readable instructions (e.g., code) stored
therein configured to be processed by a processor to provide a user interface to a
user according to embodiments of the present teachings.
[0073] Of course the sequential axis is not limited to organizing objects in temporal order
according to a critical date. Alternative embodiments provide logical sequencing of
objects to beneficially allow a user to quickly and intuitively access objects in
a task based Ul. By way of example only, a widget may display objects in alphabetical
order by file name. Similarly, the present teachings are not limited to widgets each
pertaining to a different object type. Alternative embodiments may include a plurality
of widgets pertaining to the same file type but having some other differentiating
factor. For example, two widgets may both relate to document objects, but one may
comprise documents related to a first project while the other may comprise documents
relating to a second project. Alternatively, a widget may arrange objects of different
types along a sequential axis according to the object type. Still other embodiments
may organize objects according to size (e.g., file size in bytes, kilobytes, megabytes,
terabytes, etc.), court (e.g., character count, word count, line count, paragraph
count, page count, section count, etc.), the number of vertices (e.g., a 2D or 3D
file), the number of notes (e.g., for a MIDI file), or the progression of primary
key signatures (e.g., for a music file).
[0074] Alternative embodiments include multiple intermediate task-based screens in order
to finally arrive at what the user wants to accomplish. In other words, the object
associated with each icon of a widget may be an additional widget. This approach allows
for tiered navigation of objects and may conserve screen real estate. At the same
time, this approach may inconvenience a user by requiring navigation between at least
two widgets. In still other embodiments, a task screen, such as task screen 100 shown
in FIG. 1, may be associated with each icon. This approach allows for tiered navigation
of an even greater number of objects. Of course still other embodiments may have icons
associated with a mixture of objects, such as having one or more icons associated
with widgets, one or more icons associated with task screens, and one or more icons
associated with other objects.
[0075] The above disclosure generally refers to "objects" represented by the icons. One
of ordinary skill in the art will understand an object may be a file, application,
operating system, database, database entry, or any other module that may be associated
by an icon. The objects are stored on media in a non-transitory manner. Additionally,
a file may be an application stored on media in a non-transitory manner.
[0076] Thus, from one viewpoint there has been disclosed a computing device including a
processor executing instructions to provide a graphical user interface displayed on
a display device and for facilitating navigation through a collection of files stored
in a storage device, the user interface including a primary icon displayed on the
display device and representing a selected file, a temporal axis defined across at
least a portion of the primary icon, and one or more secondary icons displayed on
the display device, each representing a respective additional file, the secondary
icons being positioned separate from the primary icon, wherein the secondary icons
are arranged along the temporal axis in temporal order of each additional file represented
by the secondary icons.
[0077] By way of further illustration of the concepts and teachings conveyed by the present
disclosure, the following numbered clauses are offered as additional description:
Clause 1. A computing device having a processor executing instructions to provide
a graphical user interface displayed on a display device and for facilitating navigation
through a collection of files stored in a storage device, the user interface comprising:
a primary icon displayed on the display device and representing a selected file; a
temporal axis defined across at least a portion of said primary icon; and one or more
secondary icons displayed on the display device, each representing a respective additional
file, said secondary icons being positioned separate from said primary icon; wherein
said secondary icons are arranged along the temporal axis in temporal order of each
additional file represented by the secondary icons.
Clause 2. The computing device of clause 1, wherein the temporal axis is defined substantially
horizontally across said primary icon and where said secondary icons having a critical
date prior to a critical date of the selected file are positioned to the left of the
primary icon and where said secondary icons having a critical date subsequent to a
critical date of the selected file are positioned to the right of the primary icon.
Clause 3. The computing device of clause 1 or 2, wherein the temporal axis is defined
substantially vertically across said primary icon and where said secondary icons having
a critical date prior to a critical date of the selected file are positioned below
the primary icon and where said secondary icons having a critical date subsequent
to a critical date of the selected file are positioned above the primary icon.
Clause 4. The computing device of clause 1, 2 or 3, wherein the critical dates are
at least one of a date of creation of the additional file represented by the secondary
icon, a last edit date of the additional file represented by the secondary icon, a
last view date of the additional file represented by the secondary icon, and a deleted
date of the file represented by the secondary icon.
Clause 5. The computing device of any preceding clause, wherein selection of one of
the secondary icons selects the additional file represented by the secondary icon
and transforms the additional file into said selected file and the selected secondary
icon into said primary icon.
Clause 6. The computing device of any preceding clause, wherein at least one of said
primary or secondary icons represents creation of a new file.
Clause 7. The computing device of any preceding clause, wherein the user interface
is oriented for a specific task.
Clause 8. The computing device of any preceding clause, wherein said primary icon
is accentuated with respect to said secondary icons.
Clause 9. The computing device of clause 8, wherein said primary icon is larger than
said secondary Icons.
Clause 10. The computing device of clause 6 or any claim dependent thereon, wherein
the icon representing creation of a new file is always visible.
Clause 11. A computing device having a processor executing instructions to provide
a graphical user interface displayed on a display device and for facilitating navigation
through a collection of objects stored in a storage device, the user interface comprising:
a primary icon displayed on the display device and representing a selected object;
a sequential axis defined across at least a portion of said primary icon; and one
or more secondary icons displayed on the display device, each representing a respective
additional object, said secondary icons being positioned separate from said primary
icon; wherein said secondary icons are arranged along the sequential axis in sequential
order based on at least one of a date of creation of the additional object represented
by the secondary icon, a last edit date of the additional object represented by the
secondary icon, a last view date of the additional object represented by the secondary
icon, a deleted date of the additional object represented by the secondary icon, a
name of the additional object, rights associated with the additional object, the type
of the additional object, a version of the additional object represented by the secondary
icon, an object size, an object count, a number of vertices, a number of notes, and
a progression of primary key signatures.
Clause 12. The computing device of clause 11, wherein selection of one of the secondary
icons selects the additional object represented by the secondary icon and transforms
the additional object into said selected object and the selected secondary icon into
said primary icon.
Clause 13. The computing device of clause 12, wherein the primary icon is always located
in the same position.
Clause 14. The computing device of clause 13, wherein the primary icon is always located
in the middle of the axis.
Clause 15. The computing device of any of clauses 11 to 14, wherein at least one of
said primary or secondary icons represents creation of a new object.
Clause 16. The computing device of any of clauses 11 to 15, wherein said objects are
files.
Clause 17. A computing device having a processor executing instructions to provide
a graphical user interface displayed on a display device and for facilitating navigation
through a collection of objects stored in a storage device, the user interface comprising:
a primary icon displayed on the display device and representing a selected object;
a temporal axis centred on least a portion of said primary icon; and one or more secondary
icons displayed on the display device, each representing a respective additional object,
said secondary icons being positioned separate from said primary icon; wherein said
secondary icons are arranged along the temporal axis in temporal order of each additional
object represented by the secondary icons.
Clause 18. The computing device of clause 17, wherein selection of one of the secondary
icons selects the additional object represented by the secondary icon and transforms
the additional object into said selected object and the selected secondary icon into
said primary icon.
Clause 19. The computing device of clause 18, wherein at least one of said primary
or secondary icons represents creation of a new object.
Clause 20. A computing device having a processor executing instructions to provide
a graphical user interface displayed on a display device and for facilitating navigation
through a collection of objects stored in a storage device, the user interface comprising:
a primary icon displayed on the display device and representing a selected object;
a temporal axis defined across at least a portion of said primary icon; and one or
more secondary icons displayed on the display device, each representing a respective
additional object; wherein said secondary icons are arranged along the temporal axis
in temporal order of each additional object represented by the secondary icons, and
wherein one or more secondary icons represent an object configured to create a new
object.
Clause 21. The computing device of clause 20, wherein said secondary icons representing
an object configured to create a new object are arranged at an end of said temporal
axis.
Clause 22. The computing device of clause 20 or 21, wherein selection of one of the
secondary icons selects the additional object represented by the secondary icon and
transforms the additional object into said selected object and the selected secondary
icon into said primary icon.
Clause 23. The computing device of clause 20, 21 or 22, wherein the critical dates
are at least one of a date of creation of the additional object represented by the
secondary icon, a last edit date of the additional object represented by the secondary
icon, a last view date of the additional object represented by the secondary icon,
and a deleted date of the object represented by the secondary icon.
Clause 24. The computing device of any of clauses 20 to 23, wherein a user's rights
determines one or more attributes of one of more secondary icons.
Clause 25. A computer-implemented method, comprising: displaying on a display device
a primary icon representing a selected object; displaying on the display device on
a sequential axis one or more secondary icons, each secondary icon representing a
respective additional object, said secondary icons being positioned separate from
said primary icon; allowing selection of one of the primary or secondary icons; and
transitioning the primary icon and secondary icons to make the selected secondary
icon the primary icon upon selection of one of the secondary icons.
Clause 26. Computer readable instructions stored on a non-transitory storage device,
the computer readable instructions configured to be processed by a processor to perform
a method comprising: displaying on a display device a primary icon representing a
selected object; displaying on the display device on a sequential axis one or more
secondary icons, each secondary icon representing a respective additional object,
said secondary icons being positioned separate from said primary icon; allowing selection
of one of the primary or secondary icons; and transitioning with the computing device
the primary icon and secondary icons to make the selected secondary icon the primary
icon upon selection of one of the secondary icons.
Clause 27. A computing device having a processor executing instructions to provide
a graphical user interface displayed on a display device for facilitating navigation
through a collection of objects stored in a storage device, the user interface having
two or more widgets, each widget comprising: a primary icon displayed on the display
device and representing a selected object; a sequential axis defined across at least
a portion of said primary icon; and one or more secondary icons displayed on the display
device, each representing a respective additional object, said secondary icons being
positioned separate from said primary icon; wherein said secondary icons are arranged
along the sequential axis in sequential order.
[0078] The present disclosure has been described through a number of illustrative example
embodiments. However, various modifications can be made without departing from the
scope of the invention as defined by the appended claims and legal equivalents.
1. A computing device having a processor configured to execute instructions to provide
a graphical user interface displayed on a display device and for facilitating navigation
through a collection of objects stored in a storage device, the user interface comprising:
a primary icon displayed on the display device and representing a selected object;
a temporal axis defined across at least a portion of said primary icon; and
one or more secondary icons displayed on the display device, each representing a respective
additional object, said secondary icons being
positions separate from said primary icon;
wherein said secondary icons are arranged along the temporal axis in temporal order
of each additional object represented by the secondary icons.
2. The computing device of claim 1, wherein each object is a file.
3. The computing device of claim 1 or 2, wherein the temporal axis is defined according
to one of the group comprising:
substantially horizontally across said primary icon and where said secondary icons
having a critical date prior to a critical date of the selected file are positioned
to the left of the primary icon and where said secondary icons having a critical date
subsequent to a critical date of the selected file are positioned to the right of
the primary icon; and
substantially vertically across said primary icon and where said secondary icons having
a critical date prior to a critical date of the selected file are positioned below
the primary icon and where said secondary icons having a critical date subsequent
to a critical date of the selected file are positioned above the primary icon.
4. The computing device of claim 3, wherein the critical dates are at least one of a
date of creation of the additional file represented by the secondary icon, a last
edit date of the additional file represented by the secondary icon, a last view date
of the additional file represented by the secondary icon, and a deleted date of the
file represented by the secondary icon.
5. The computing device of any preceding claim, wherein selection of one of the secondary
icons selects the additional object represented by the secondary icon and transforms
the additional object into said selected object and the selected secondary icon into
said primary icon.
6. The computing device of any preceding claim, wherein the user interface is oriented
for a specific task.
7. The computing device of any preceding claim, wherein said primary icon is accentuated
with respect to said secondary icons, optionally wherein said primary icon is larger
than said secondary icons.
8. The computing device of any preceding claim, wherein at least one of the primary or
secondary icons represents creation of a new object, optionally wherein the icon representing
creation of a new object is always visible, and optionally wherein said at least one
icon representing an object configured to create a new object is arranged at an end
of said temporal axis.
9. The computing device of any preceding claim, wherein a user's rights determines one
or more attributes of one of more secondary icons.
10. The computing device of any preceding claim, wherein the temporal axis is a sequential
axis wherein said secondary icons are arranged along the sequential axis in sequential
order based on at least one of a date of creation of the additional object represented
by the secondary icon, a last edit date of the additional object represented by the
secondary icon, a last view date of the additional object represented by the secondary
icon, a deleted date of the additional object represented by the secondary icon, a
name of the additional object, rights associated with the additional object, the type
of the additional object, a version of the additional object represented by the secondary
icon, an object size, an object count, a number of vertices, a number of notes, and
a progression of primary key signatures.
11. The computing device of any preceding claim, wherein the primary icon is always located
in the same position.
12. The computing device of claim 11, wherein the primary icon is always located in the
middle of the axis.
13. A computing device having a processor configured to execute instructions to provide
two or more graphical user interface widgets on a display device for facilitating
navigation through a collection of objects stored in a storage device, each user interface
widget comprising the user interface of any preceding claim.
14. A method of providing a graphical user interface on a display device and for facilitating
navigation through a collection of objects stored in a storage device, the user interface
comprising:
displaying on a display device a primary icon representing a selected object;
displaying on the display device on a sequential axis one or more secondary icons,
each secondary icon representing a respective additional object; and
allowing selection of one of the primary and secondary icons.
15. A computer readable medium conveying computer readable instructions configured to
be processed by a processor to perform the method of claim 14.