U.S. patent application number 13/669536 was filed with the patent office on 2014-05-08 for providing file indexes and per-file viewing modes within a file management application.
This patent application is currently assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION. The applicant listed for this patent is INTERNATIONAL BUSINESS MACHINES CORPORATION. Invention is credited to Barry Alan KRITT, Sarbajit K. RAKSHIT.
Application Number | 20140129564 13/669536 |
Document ID | / |
Family ID | 50623365 |
Filed Date | 2014-05-08 |
United States Patent
Application |
20140129564 |
Kind Code |
A1 |
KRITT; Barry Alan ; et
al. |
May 8, 2014 |
PROVIDING FILE INDEXES AND PER-FILE VIEWING MODES WITHIN A FILE
MANAGEMENT APPLICATION
Abstract
Various embodiments present file indexes within a file managing
and navigation interface. In one embodiment, a set of files is
presented within a user interface of a file managing and navigation
application. A visual indicator is associated with at least one
file in the set of files. The visual indicator indicates to a user
that the at least one file is associated with an index. The index
includes a set of index components associated with a content set of
the at least one file. A request from the user to is received to
display the index. The index is presented to the user within the
user interface based on receiving the request.
Inventors: |
KRITT; Barry Alan; (Raleigh,
NC) ; RAKSHIT; Sarbajit K.; (Kolkata, IN) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
INTERNATIONAL BUSINESS MACHINES CORPORATION |
Armonk |
NY |
US |
|
|
Assignee: |
INTERNATIONAL BUSINESS MACHINES
CORPORATION
Armonk
NY
|
Family ID: |
50623365 |
Appl. No.: |
13/669536 |
Filed: |
November 6, 2012 |
Current U.S.
Class: |
707/741 ;
707/821; 707/E17.002; 707/E17.01 |
Current CPC
Class: |
G06F 3/0482 20130101;
G06F 16/168 20190101 |
Class at
Publication: |
707/741 ;
707/821; 707/E17.01; 707/E17.002 |
International
Class: |
G06F 17/30 20060101
G06F017/30 |
Claims
1. A method, with an information processing system, for presenting
file indexes within a file managing and navigation interface, the
method comprising: presenting a set of files within a user
interface of a file managing and navigation application;
associating a visual indicator with at least one file in the set of
files, wherein the visual indicator indicates to a user that the at
least one file is associated with an index, wherein the index
comprises a set of index components associated with a content set
of the at least one file; receiving a request from the user to
display the index; and presenting, based on receiving the request,
the index to the user within the user interface.
2. The method of claim 1, wherein presenting the index further
comprises: presenting each of the set of index components in a
hierarchical structure with the at least one file as a root of the
hierarchical structure.
3. The method of claim 1, wherein request is received based on the
user selecting the visual indicator.
4. The method of claim 1, wherein presenting the index further
comprises: determining that the user has selected the visual
indicator; and expanding a view of the at least one file within the
user interface, wherein the expanding presents the index to the
user.
5. The method of claim 1, further comprising: receiving a selection
from the user of an index component in the set of index components;
and opening the at least one file at a page associated with the
index component that was selected.
6. The method of claim 1, further comprising: analyzing at least
the set of files; determining, based on the analyzing, that the at
least one file is associated with the index; and storing a set of
information indicating that the at least one file is associated
with the index.
7. The method of claim 1, wherein the index is stored within a set
of metadata associated with the at least one file.
8. A computer program storage product for presenting file indexes
within a file managing and navigation interface, the computer
program storage product comprising instructions configured to
perform a method comprising: presenting a set of files within a
user interface of a file managing and navigation application;
associating a visual indicator with at least one file in the set of
files, wherein the visual indicator indicates to a user that the at
least one file is associated with an index, wherein the index
comprises a set of index components associated with a content set
of the at least one file; receiving a request from the user to
display the index; and presenting, based on receiving the request,
the index to the user within the user interface.
9. The computer program storage product of claim 8, wherein
presenting the index further comprises: presenting each of the set
of index components in a hierarchical structure with the at least
one file as a root of the hierarchical structure.
10. The computer program storage product of claim 8, wherein
request is received based on the user selecting the visual
indicator.
11. The computer program storage product of claim 8, wherein
presenting the index further comprises: determining that the user
has selected the visual indicator; and expanding a view of the at
least one file within the user interface, wherein the expanding
presents the index to the user.
12. The computer program storage product of claim 8, wherein the
method further comprises: receiving a selection from the user of an
index component in the set of index components; and opening the at
least one file at a page associated with the index component that
was selected.
13. The computer program storage product of claim 8, wherein the
method further comprises: analyzing at least the set of files;
determining, based on the analyzing, that the at least one file is
associated with the index; and storing a set of information
indicating that the at least one file is associated with the
index.
14. A method, with an information processing system, for managing a
viewing mode of a file managing and navigation interface, the
method comprising: presenting a set of files within a user
interface of a file managing and navigation application, wherein
the set of files are presented in a first viewing mode; receiving,
from a user, a selection of at least one file in the set of files;
receiving, from the user, a selection of a second viewing mode
associated with the at least one file; and changing a current
viewing mode of the at least one file from the first viewing mode
to the second viewing mode, wherein a current viewing mode of each
remaining file in the set of files remains in the first viewing
mode.
15. The method of claim 14, further comprising: updating a set of
viewing mode state information associated with the set of files to
indicate that the at least one file is currently in a second
viewing mode state; and updating the set of viewing mode state
information associated with each remaining file in the set of files
to indicate that each of the remaining files is currently in a
first viewing mode state.
16. The method of claim 14, wherein the second viewing mode
presents the at least one file within the user interface as a
thumbnail.
17. The method of claim 14, wherein changing the current viewing
mode of the at least one file comprises: identifying a content set
of the at least file; and presenting the at least one file within
the user interface as a plurality of thumbnails, wherein each of
the plurality of thumbnails corresponds to a portion of the content
set of the least one file.
18. The method of claim 17, further comprising: receiving, from the
user, a selection of a thumbnail from the plurality of thumbnails;
and opening the at least one file at a page associated with the
thumbnail that was selected.
19. The method of claim 14, wherein presenting a set of files
further comprises: determining that the user has opened a virtual
folder comprising the set of files; identifying a creation date of
each of the set of files; comparing, for each of the set of files,
the creation date to a given threshold; presenting a first subset
of the set of files in the first viewing mode based on the creation
date of each file in the first subset being prior to the given
threshold; and presenting a second subset of the set of files in a
viewing mode that is different than the first viewing mode based on
the creation date of each file in the second subset being after the
given threshold.
20. A computer program storage product for managing a viewing mode
of a file managing and navigation interface, the computer program
storage product comprising instructions configured to perform a
method comprising: presenting a set of files within a user
interface of a file managing and navigation application, wherein
the set of files are presented in a first viewing mode; receiving,
from a user, a selection of at least one file in the set of files;
receiving, from the user, a selection of a second viewing mode
associated with the at least one file; and changing a current
viewing mode of the at least one file from the first viewing mode
to the second viewing mode, wherein a current viewing mode of each
remaining file in the set of files remains in the first viewing
mode.
21. The computer program storage product of claim 20, wherein the
second viewing mode presents the at least one file within the user
interface as a thumbnail.
22. The computer program storage product of claim 20, wherein
changing the current viewing mode of the at least one file
comprises: identifying a content set of the at least file; and
presenting the at least one file within the user interface as a
plurality of thumbnails, wherein each of the plurality of
thumbnails corresponds to a portion of the content set of the least
one file.
23. The computer program storage product of claim 22, wherein the
method further comprises: receiving, from the user, a selection of
a thumbnail from the plurality of thumbnails; and opening the at
least one file at a page associated with the thumbnail that was
selected.
24. The computer program storage product of claim 20, wherein
presenting a set of files further comprises: determining that the
user has opened a virtual folder comprising the set of files;
identifying a creation date of each of the set of files; comparing,
for each of the set of files, the creation date to a given
threshold; presenting a first subset of the set of files in the
first viewing mode based on the creation date of each file in the
first subset being prior to the given threshold; and presenting a
second subset of the set of files in a viewing mode that is
different than the first viewing mode based on the creation date of
each file in the second subset being after the given threshold.
Description
BACKGROUND
[0001] The present invention relates to file management and
navigation within a computing environment.
[0002] File management and navigation applications generally
provide users with an interface to explore files and folders within
a computing environment. For example, a user is able to view files
and folders stored on (or coupled to) the user's computer. The user
can move, delete, add, and rename files and folders through the
interface provided by the application. A user can also view
information such as file name, date of creation/modification, file
type, etc. associated with various files and folders. However, the
amount of information provided about a file is generally limited in
conventional file management/navigation applications. Also, many of
the operations provided by these conventional applications can only
be applied globally to all files being currently displayed.
BRIEF SUMMARY
[0003] In one embodiment, a method, with an information processing
system, for presenting file indexes within a file managing and
navigation interface is disclosed. The method comprises presenting
a set of files within a user interface of a file managing and
navigation application. A visual indicator is associated with at
least one file in the set of files. The visual indicator indicates
to a user that the at least one file is associated with an index.
The index comprises a set of index components associated with a
content set of the at least one file. A request from the user to is
received to display the index. The index is presented to the user
within the user interface based on receiving the request.
[0004] In another embodiment, a computer program storage product
for presenting file indexes within a file managing and navigation
interface is disclosed. The computer program storage product
comprises instructions configured to perform a method. The method
comprises presenting a set of files within a user interface of a
file managing and navigation application. A visual indicator is
associated with at least one file in the set of files. The visual
indicator indicates to a user that the at least one file is
associated with an index. The index comprises a set of index
components associated with a content set of the at least one file.
A request from the user to is received to display the index. The
index is presented to the user within the user interface based on
receiving the request.
[0005] In yet another embodiment, a method, with an information
processing system, for managing a viewing mode of a file managing
and navigation interface is disclosed. The method comprises
presenting a set of files within a user interface of a file
managing and navigation application. The set of files are presented
in a first viewing mode. A selection of at least one file in the
set of files is received from a user. A selection of a second
viewing mode associated with the at least one file is received from
the user. A current viewing mode of the at least one file is
changed from the first viewing mode to the second viewing mode. A
current viewing mode of each remaining file in the set of files
remains in the first viewing mode.
[0006] In a further embodiment, a computer program storage product
for managing a viewing mode of a file managing and navigation
interface is disclosed. The computer program storage product
comprises instructions configured to perform a method. The method
comprises presenting a set of files within a user interface of a
file managing and navigation application. The set of files are
presented in a first viewing mode. A selection of at least one file
in the set of files is received from a user. A selection of a
second viewing mode associated with the at least one file is
received from the user. A current viewing mode of the at least one
file is changed from the first viewing mode to the second viewing
mode. A current viewing mode of each remaining file in the set of
files remains in the first viewing mode.
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
[0007] The accompanying figures where like reference numerals refer
to identical or functionally similar elements throughout the
separate views, and which together with the detailed description
below are incorporated in and form part of the specification, serve
to further illustrate various embodiments and to explain various
principles and advantages all in accordance with the present
invention, in which:
[0008] FIG. 1 is a block diagram illustrating one example of an
operating environment according to one embodiment of the present
invention;
[0009] FIG. 2 illustrates one example of a file index according to
one embodiment of the present invention;
[0010] FIG. 3 shows one example of file managing and navigation
interface for presenting a one or more files and their file indexes
to a user according to one embodiment of the present invention;
[0011] FIG. 4 shows one example of index tracking information
according to one embodiment of the present invention;
[0012] FIG. 5 shows one example of the interface of FIG. 3 after a
user has selected an index indicator associated with a file
according to one embodiment of the present invention;
[0013] FIG. 6 shows one example of a file managing and navigation
interface that allows different viewing modes to be simultaneously
applied to different files according to one embodiment of the
present invention;
[0014] FIG. 7 shows one example of file viewing mode state
information according to one embodiment of the present
invention;
[0015] FIG. 8 shows the interface of FIG. 6 after a different
viewing mode has been applied to subset of the displayed files
according to one embodiment of the present invention;
[0016] FIG. 9 shows file viewing mode state information of FIG. 7
after it has been updated to include the new viewing mode
associated with a subset of the files according to one embodiment
of the present invention;
[0017] FIG. 10 shows one example of the interface of FIG. 6
presenting a set of files in a first viewing mode and
simultaneously presenting the remaining files in a second viewing
mode according to one embodiment of the present invention;
[0018] FIG. 11 shows one example of the interface of FIG. 6
presenting a plurality of thumbnails for a file in a first viewing
mode and simultaneously presenting the remaining files in a second
viewing mode according to one embodiment of the present
invention;
[0019] FIG. 12 is an operational flow diagram illustrating one
example of a process for presenting file indexes within a file
managing and navigation interface according to one embodiment of
the present invention;
[0020] FIG. 13 is an operational flow diagram illustrating one
example of a process for managing a viewing mode of a file managing
and navigation interface according to one embodiment of the present
invention; and
[0021] FIG. 14 is a block diagram illustrating a detailed view of
an information processing system according to one embodiment of the
present invention.
DETAILED DESCRIPTION
[0022] Operating Environment
[0023] FIG. 1 shows one example of an operating environment 100 for
managing digital folder/file viewing and navigating within a
viewing/navigation tool. In particular, FIG. 1 shows an information
processing 102 system such as (but not limited to) a desktop
computer, a laptop computer, a servers a wireless device (e.g., a
mobile phone, a tablet, a gaming device, a personal digital
assistant, etc.), and the like. The information processing system
102, in one embodiment, comprises a file/folder explorer 104. The
file explorer 104 is a file manager and navigation application that
allows users to view and manage (move, rename, add, delete,
organize, etc.) the plurality of files 106. In one embodiment, the
file explorer 104 comprises a file viewing manager 116 that manages
the presentation of the plurality of files 106 (and folders) within
the file explorer 104. The file viewing manager 116 can be part of
or separate from the file explorer 104. In one embodiment, the file
viewing manager 116 comprises a file index analyzer 118, a file
interaction monitor 120, a viewing mode applicator 122, and a file
presenter 124. The file viewing manager 116 and its components are
discussed in greater detail below.
[0024] The information processing system 102 also comprises a
plurality of files 106, and one or more applications 108. The
plurality of files 106 can be stored locally on the information
processing system 102 and/or on one or more other systems (not
shown). The applications 108, in this embodiment, are applications
that are associated with one or more of the plurality of files 106
and allow a user to interact with the contents 110 of a file and/or
execute a file. For example, the applications 108 include (but are
not limited to) word processing applications, media (photo, video,
and/or audio) viewing/editing applications, etc.
[0025] In one embodiment, each of the plurality of files 106 are
associated with metadata 112 such as, but not limited to, file
size, date of creation, data and time of last modification, file
type, authors, bit rate, camera model, and/or any other type of
information that describes the file and/or its contents. One or
more of the plurality of files 106 are also associated with at
least one index 114. The index 114 identifies and/or describes
various portions/sections of the file contents. In one example, the
index 114 provides an organized structure such as (but not limited
to) a table of contents that identifies and/or describes various
portions/sections of the file contents 110. An index 114 can be
stored within its associated file, or can be stored separate from
its associated file. Also, an index 114 can be generated/created by
a user, by the application 108 associated with file, by a separate
indexing application, by the operation system, etc.
[0026] FIG. 2 shows one example of an index 200 associated with a
document. The index 200 of FIG. 2 identifies/describes the content
(e.g., the various parts/sections) of the document. In this
example, the index 200 shows that the document comprises a "Cover"
section 202 that comprises a "Copyright Page" section 204. The
index also shows that the document comprises a "Contents Overview"
section 206, a "Contents" section 208, an "Introduction" section
210, and various chapters 212, 214, 216. In addition, the index 200
also comprises additional information 218 such as page numbers
associated with the content identified by the index 200.
[0027] Presenting an Index of a File within a Folder/File Explorer
Tool
[0028] As discussed above, the file explorer 104 allows users to
view and manage the plurality of files 106 and their folders. For
example, FIG. 3 shows one example of an interface 300 presented to
the user by the file viewing manager 116 of the file explorer 104.
In the example of FIG. 3 the file presenter 124 of the file viewing
manager 116 presents/displays one or more of files 302, 304, 306
from the plurality of files 106 and optionally their folders 308,
310, 312 to the user. A folder, in one embodiment, is a
virtual/logical container used to group and organize files in a
digital environment.
[0029] The file viewing manager 116 indicates to the user that a
folder 308, 310, 312 comprises one or more files via a visual
indicator(s). For example, the file viewing manager 116 can
visually change the icon, symbol, and/or text representing the
folder to indicate the folder comprises one or more files. In
another example the file viewing manager 116 presents a selectable
visual indicator 314, 316, 318 associated with the folder 308, 310,
312 to indicate the folder comprises one or more files. It should
be noted that a file is not required to be included within a
folder. For example, FIG. 3 shows that File_N 306 is displayed
within the interface 300 and is not associated with a folder. It
should also be noted that although FIG. 3 shows a single interface
300 displaying a plurality of folders and files, separate
interfaces can be displayed for each folder.
[0030] The user is able to select/click a visual indicator 314 to
expand (or collapse) the view of the associated folder 308. For
example, FIG. 3 shows that the displayed visual indicator 314
associated with Folder.sub.--1 308 has been selected resulting in
the files 302, 304 associated with Folder.sub.--1 308 to be
presented/displayed to the user. In one embodiment, the file
presenter 124 displays a folder 308 and its files 302, 304, using a
hierarchical structure such as (but not limited to) a tree
structure with the folder being a parent/root node and the files
being children/leaf nodes. The file viewing manager 116, in one
embodiment, visually changes the indicator 314 to indicate that the
user has expanded the folder 308. For example, the displayed symbol
314 can be changed from a "plus" sign to a "minus" sign. However,
other visual changes are applicable as well. When displayed in the
interface 300 a user can perform various functions on the files
302, 304, 306 (and folders 308, 310, 312). For example, the user
can delete the folders/files, rename the folders/files, move the
folders/files, open/execute the files, view the properties of the
folders/files, etc.
[0031] Upon a subsequent selection of the indicator 314, the file
viewing manager 116 collapses the hierarchal structure such that
the files 302, 304 within the folder 308 are hidden. For example,
FIG. 3 shows that Folder.sub.--3 310 is in a collapsed state and
comprises files, as indicated by the "plus" sign within the visual
indicator 316. It should be noted that other visual mechanisms for
indicating that a folder is collapsed and comprises files are
applicable as well.
[0032] In one embodiment, the file viewing manager 116 also
displays, via the interface 300, metadata 112 associated with the
displayed files 302, 304, 306 (and optionally folders) and their
contents 110. For example, FIG. 3 shows that metadata such as the
name 320, size 322, type 324, and modification information 326
associated with a given file is displayed to the user. The user is
able to select the metadata that is displayed, and the position of
the displayed metadata. The file presenter 124 can also organize
the files 302, 304, 306 and folders 308, 310, 312 based on the
metadata 112. For example, folders and files can be organized based
on name, size, type, date of modification, etc.
[0033] In addition to the above, the file viewing manager 116 also
presents file indexes to the user within the interface 300. In this
embodiment, the file viewing manager 116 analyzes a file to
determine if the file is associated with an index 114. This
analysis process can be performed when the file is created, stored,
presented within the interface 300, or at any other point in time.
A file itself can comprise the index 114, or a file can comprise a
flag and/or pointer that indicates the file is associated with an
index 114. The flag/pointer can identify the location of the index
144 as well. If the file includes the index 114, the index 114 can
be part of or separate from the metadata 112 of the file.
[0034] The file viewing manager 116, in one embodiment, maintains a
set of index tracking information 400 to track/record which files
are associated with an index 114, as shown in FIG. 4. For example,
FIG. 4 shows a table comprising a first column 402 entitled "File".
This column 402 comprises entries 404 identifying a given file. A
file can be identified by its file name, a file ID, or any other
form of identification. A second column 406, entitled "Index",
comprises entries 408 indicating whether the file is associated
with an index. A third column 410, entitled "Index Location",
comprises entries 412 identifying the location of the associated
index. For example, an entry under this column 410 can indicate
that the index is located within the file itself or at a given
location outside of the file (this location is stored within the
entry). It should be noted that the file viewing manager 116 is not
required to maintain the set of information 400 shown in FIG.
4.
[0035] In one embodiment, if a file is not associated with an index
114 the file viewing manager 116 can either create an index 114 for
the file or request that an index 114 be created (if possible). In
this embodiment, the file viewing manager 116 determines if the
file is of a type for which an index 114 can be generated. If so,
the file viewing manager 116 performs one or more indexing
operations on the file to generate an index 114. These indexing
operations, in one embodiment, identify the various parts/sections
of the file; extract and/or generate one or more identifiers
associated with these parts/sections; and optionally extract and/or
generate a description associated with these parts/sections. This
information is then stored as part of the index 114 associated with
the file. In another embodiment, the file viewing manager 116
requests that operating system or another application, such as an
indexing application or the application 108 associated with the
file, perform the indexing operations. This generated index 114 can
be stored as part of or separate from the file, as discussed
above.
[0036] The file presenter 124 indicates to the user which files are
associated with an index 114 via the interface 300 provided by the
file viewing manager 116. For example, the presenter 124 visually
changes the icon, symbol, and/or text representing the files
associated with an index. In another embodiment, the presenter 124
displays an index indicator 328, 330 (e.g., an icon/symbol)
associated with the files 302, 306 to indicate these files are
associated with an index, as shown in FIG. 3. The file presenter
124 identifies the 302, 306 associated with an index based off of
the index tracking information 400 discussed above. If the index
tracking information 400 is not being maintained by the file
viewing manager 116 the presenter 124 can determine if a file is
associated with an index 114 by analyzing the file itself.
[0037] The user is able to select the index indicator 328, 330 or
the representation of the file (e.g., icon, symbol, text, etc.) to
display the index 114 associated with the file. This allows the
user to view the indexed contents of the file without opening the
file 302, 306. The presenter 124 displays the index by analyzing
the index to identify each of the index components 202 to 216. The
presenter 124 associates each of these index components with its
file within the interface 300. When the user selects the index
indicator 328, 330 associated with the file, the viewing state of
File_A 202 is changed to an expanded state and the presenter 124
displays the index associated with the file.
[0038] FIG. 5 shows one example of the interface 300 presented by
the file viewing manager 116 after the user has selected the index
indicator 328 associated with File_A 302. In the example shown in
FIG. 5 the presenter 124 has expanded the view of File_A 302 to
present the index 200 of FIG. 2 to the user based on the user
selecting the index indicator 328. In one embodiment, the index 200
is presented within the interface 300 using a hierarchical
structure such as (but not limited to) a tree structure, where the
file 302 associated with the index 200 is a parent/root node and
the index components 202 to 216 are children/leaf nodes. Any
subcomponent of an index component is displayed as a leaf/child of
its parent component. For example, FIG. 5 shows that the index
component "Cover" 202 has a subcomponent "Copyright Page" 204,
which is displayed as a child/leaf of the "Cover" component
202.
[0039] The presenter 124 indicates to the user that an index
component comprises one or more subcomponents via a visual
indicator(s). For example, the presenter 124 can visually change
the icon, symbol, and/or text representing the index component to
indicate the index component comprises one or more sub-components.
In another example the file viewing manager 116 presents a
selectable visual indicator 502, 504 associated with an index
component to indicate one or more subcomponents are included within
the index component. When a user selects the visual indicator 502,
504 or the representation of the index component (e.g., icon,
symbol, text, etc.) the viewing state of the index component is
changed to an expanded state, which displays the sub-components to
the user. A subsequent selection of the visual indicator 502, 504
(or the representation of the index component) changes the viewing
state of the index component from an expanded viewing state to a
collapsed viewing state, which hides the sub-components from
view.
[0040] A user is able to select one or more of the displayed index
components 212 to 216 and have the file opened at a page (or
section) associated with the selected index component. For example,
when a user selects an index component 210 such as "Introduction",
the index analyzer 118 analyzes the index 200 and identifies a page
number(s) (e.g., page 16) associated with the index component 210.
The selection of the index component 210 invokes the application
1018 associated with the file 302. The file viewing manager 116
passes the identified page number(s) to the application 108, and
the application 108 opens the document at the page number (e.g.,
page 16). It should be noted that the page number(s) can be
identified by the index analyzer 118 prior to the user selecting
the index component 210. Also, instead of sending the page
number(s) to the application 108, the file viewing manager 116 can
send an identifier (or identifying information) associated with
selected index component 210 to the application. The application
108 uses this identifier (or identifying information) to determine
a page(s) associated with the selected index component 210, and
opens the file 302 at the given page. In another embodiment, the
file viewing manager 116 provides a of a selected index component
210 within the interface 300 based on an initial selection action.
A preview, for example, is a rendering of at least a portion of the
file contents associated with the selected index component 210. The
application 108 associated with the file 302 corresponding to the
selected index component 210 can then be invoked upon a subsequent
selection action performed on the index component 210.
[0041] Individual View Modes for Files and Folders
[0042] In addition to displaying indexes associated with files, the
file explorer 104 also provides an environment where a user is able
to select different viewing modes for different files/folders. FIG.
6 shows one example of a viewing mode being applied to all files
within a folder. In the example of FIG. 6, a user has selected the
folder "Folder 1" 602. Therefore, the presenter 124 displays one or
more of the files 604 to 616 being maintained within the folder 602
within a first portion 601 of the interface 600. At least a second
portion 603 of the interface 600 identifies the current folder 602
being viewed and provides at least a first viewing mode selection
area 618. A user is able to interact with the viewing mode
selection area 618 to select one or more viewing modes to be
applied to one or more of the displayed files 604 to 616. In the
example of FIG. 6 a "metadata" viewing mode has been applied to all
of the displayed files. This mode displays various metadata
associated with the files such as (but not limited to) the name
620, size 622, type 624, and modification information 626
associated with the files 604 to 616. Other examples of viewing
modes include (but are not limited to) a list mode, a thumbnail
mode, an icon mode, etc.
[0043] In one embodiment, the file viewing manager 116 maintains
viewing mode state information associated with each file of the
displayed files 604 to 616. For example, FIG. 7 shows one example
of viewing mode state information 700 for each of the files
displayed in FIG. 6. In particular, FIG. 7 shows a table comprising
a first column 702 entitled "File". This column 702 comprises
entries 704 identifying a given file currently presented (e.g.,
currently displayed, hidden, off-screen, etc.) within the interface
600. The files can be identified using any type of identification
mechanism such as (but not limited to) a file name, a file ID, or
any other form of identification. A second column 706, entitled
"Current Viewing State", comprises entries 708 identifying a
current viewing state associated with the presented files.
[0044] In one embodiment, the user is able to select different
viewing modes for different files. For example, FIG. 8 shows that
the user has selected three files File_C 608, File_D 610, and
File_E 612, as indicated by the dashed rectangle surrounding each
file. FIG. 8 also shows that the user has selected a "thumbnail"
viewing mode 802 for each of these selected files as indicated by
the dashed rectangle surrounding "thumbnail" in a second viewing
mode selection area 804. The file viewing manager 116 displays the
second viewing mode selection area 804 in response to an action
performed by the user. It should be noted that the user can also
utilize the first viewing mode selection area 618 to select a
viewing mode for the selected files 608, 610, 612.
[0045] The file interaction monitor 120 of the file viewing manager
116 monitors the user's selection of files and also the user's
selection of one or viewing modes. The file interaction monitor 120
updates the viewing mode state information 700 based on the user's
file selection and viewing mode selection. For example, FIG. 9
shows that the file interaction monitor 120 has updated the viewing
mode state information 700 to indicate that the viewing mode of
File_C 608, File_D 610, and File_E 612 is now associated with the
"thumbnail" viewing mode. Based on the user's selection, the
viewing mode applicator 122 applies the "thumbnail" viewing mode
only to File_C 608, File_D 610, and File_E 612. Stated differently,
the viewing mode state of only File_C 608, File_D 610, and File_E
612 is changed to the "thumbnail" view while the viewing mode state
of the remaining files 604, 606, 614, 616 is not changed.
Therefore, a first viewing mode is being applied to File_C 608,
File_D 610, and File_E 612 while at least a second and different
viewing mode is simultaneously being applied to the remaining files
604, 606, 614, 616.
[0046] For example, FIG. 10 shows the interface 600 after the
viewing state of only File_C 608, File_D 610, and File_E 612 has
been changed to a "thumbnail" mode. In this example, File_C 608,
File_D 610, and File_E 612 are images files. Therefore, thumbnails
(e.g., a reduced-size version of an image(s) 1002, 1004, 1006 for
each of these images have been displayed. FIG. 10 also shows that
the viewing states of remaining files 604, 606 that were not
selected by the user were not changed and remain in the "metadata"
mode.
[0047] Also, in one embodiment, default views can be associated
with a given folder 602. For example, a folder can be associated
with a default viewing state based on one or more thresholds. In
this example, the file viewing manager 116 compares metadata such
as (but not limited to) creation (or modification) date of each
file to a given threshold. Any files that have a creation date
prior to the threshold are presented in a first viewing mode (e.g.,
metadata mode) when the folder 602 is first opened by the user. Any
files that have a creation date after the threshold are presented
in a second viewing mode (e.g., thumbnail mode) when the folder 602
is first opened by the user. It should be noted that other metadata
and viewing modes are applicable as well.
[0048] It should also be noted that in a "thumbnail" view mode if a
file comprises contents requiring multiple thumbnails (e.g., a
document) the file viewing manager displays multiple thumbnails for
the file. FIG. 11 shows an example where multiple thumbnails 1102,
1104, 1106 are displayed within the interface 600 for a single file
606 selected by the user (as indicated by the dashed rectangle). In
this example, the file 606 associated with the thumbnails 1102,
1104, 1106 is a document comprising multiple pages (or sections as
identified by its index 114). In this embodiment, the file viewing
manager 116 analyzes the content set 110 of the file 606, and
separate thumbnail 1102, 1104, 1106 for two or more of these pages
or sections. The user is able to select one of these thumbnails and
have the file opened at the page/section corresponding to the
selected thumbnail, similar to that discussed above. If there are
more thumbnails than can be displayed in the interface 600 scroll
bars (not shown) can be presented within the interface 1000 to
scroll the view so that these additional thumbnails can be
seen.
[0049] Operational Flow Diagrams
[0050] FIGS. 12-13 illustrate operational flow diagrams for various
embodiments of the present invention. The methods depicted in FIGS.
12-13 may be embodied in a computer-readable medium containing
computer-readable code such that a series of steps are performed
when the computer-readable code is executed on a computing device.
In some implementations, certain steps of the methods may be
combined, performed simultaneously or in a different order, or
perhaps omitted, without deviating from the spirit and scope of the
embodiments. Thus, while the method steps are described and
illustrated in a particular sequence, use of a specific sequence of
steps is not meant to imply any limitations on the invention.
Changes may be made with regards to the sequence of steps without
departing from the spirit or scope of the present invention. Use of
a particular sequence is therefore, not to be taken in a limiting
sense, and the scope of the present invention is defined only by
the appended claims.
[0051] FIG. 12 is an operational flow diagram illustrating one
example of a process for presenting file indexes within a file
managing and navigation interface. The operational flow diagram of
FIG. 12 begins at step 1202 and flows directly to step 1204. The
file viewing manager 126, at step 1204, presents a set of files 106
within a user interface 400 of a file managing and navigation
application 104. The file viewing manager 126, at step 1206,
associates a visual indicator 328 with at least one file 302 in the
set of files 106. The visual indicator 328 indicates to a user that
the at least one file 302 is associated with an index 200. The
index 200 comprises a set of index components 202 to 216 associated
with a content set 120 of the at least one file 302. The file
viewing manager 126, at step 1208, receives a request from the user
to display the index 200. The file viewing manager 126, at step
1210, presents the index 200 to the user within the user interface
300 based on receiving the request. The control flow exits at step
1212.
[0052] FIG. 13 is an operational flow diagram illustrating one
example of a process for managing a viewing mode of a file managing
and navigation interface. The operational flow diagram of FIG. 13
begins at step 1302 and flows directly to step 1304. The file
viewing manager 116, at step 1304, presents a set of files 106
within a user interface 300 of a file managing and navigation
application 104. The set of files 106 are presented in a first
viewing mode. The file viewing manager 116, at step 1306, receives,
from a user, a selection of at least one file 606 in the set of
files 106. The file viewing manager 116, at step 1308, receives,
from the user, a selection of a second viewing mode associated with
the at least one file 606. The file viewing manager 116, at step
1310, changes a current viewing mode of the at least one file from
the first viewing mode to the second viewing mode. The current
viewing mode of each remaining file in the set of files 106 remains
unchanged. The control flow exits at step 1312.
[0053] Information Processing System
[0054] FIG. 14 illustrates one example of an information processing
system that can be utilized in embodiments of the present
invention. The information processing system 1402 is based upon a
suitably configured processing system configured to implement one
or more embodiments of the present invention (e.g., the information
processing system 102 of FIG. 1). Any suitably configured
processing system can be used as the information processing system
1402 in embodiments of the present invention. The components of the
information processing system 1402 can include, but are not limited
to, one or more processors or processing units 1404, a system
memory 1406, and a bus 1408 that couples various system components
including the system memory 1406 to the processor 1404.
[0055] The bus 1408 represents one or more of any of several types
of bus structures, including a memory bus or memory controller, a
peripheral bus, an accelerated graphics port, and a processor or
local bus using any of a variety of bus architectures. By way of
example, and not limitation, such architectures include Industry
Standard Architecture (ISA) bus, Micro Channel Architecture (MCA)
bus, Enhanced ISA (EISA) bus, Video Electronics Standards
Association (VESA) local bus, and Peripheral Component
Interconnects (PCI) bus.
[0056] Although not shown in FIG. 14, the main memory 1406 includes
the file explorer 104, the file viewing manager 116 and its
components, the files 106, the indices 114, index tracking
information 400, and the viewing mode state information 700. The
file explorer 104 and the file viewing manager 116 (and its
components) can also reside within the processor 1404, or be a
separate hardware component. The system memory 1406 can also
include computer system readable media in the form of volatile
memory, such as random access memory (RAM) 1410 and/or cache memory
1412. The information processing system 1402 can further include
other removable/non-removable, volatile/non-volatile computer
system storage media. By way of example only, a storage system 1414
can be provided for reading from and writing to a non-removable or
removable, non-volatile media such as one or more solid state disks
and/or magnetic media (typically called a "hard drive"). A magnetic
disk drive for reading from and writing to a removable,
non-volatile magnetic disk (e.g., a "floppy disk"), and an optical
disk drive for reading from or writing to a removable, non-volatile
optical disk such as a CD-ROM, DVD-ROM or other optical media can
be provided. In such instances, each can be connected to the bus
1408 by one or more data media interfaces. The memory 1406 can
include at least one program product having a set of program
modules that are configured to carry out the functions of an
embodiment of the present invention.
[0057] Program/utility 1416, having a set of program modules 1418,
may be stored in memory 1406 by way of example, and not limitation,
as well as an operating system, one or more application programs
(e.g., applications 108), other program modules, and program data.
Each of the operating system, one or more application programs,
other program modules, and program data or some combination
thereof, may include an implementation of a networking environment.
Program modules 1418 generally carry out the functions and/or
methodologies of embodiments of the present invention.
[0058] The information processing system 1402 can also communicate
with one or more external devices 1420 such as a keyboard, a
pointing device, a display 1422, etc.; one or more devices that
enable a user to interact with the information processing system
1402; and/or any devices (e.g., network card, modem, etc.) that
enable computer system/server 1402 to communicate with one or more
other computing devices. Such communication can occur via I/O
interfaces 1424. Still yet, the information processing system 1402
can communicate with one or more networks such as a local area
network (LAN), a general wide area network (WAN), and/or a public
network (e.g., the Internet) via network adapter 1426. As depicted,
the network adapter 1426 communicates with the other components of
information processing system 1402 via the bus 1408. Other hardware
and/or software components can also be used in conjunction with the
information processing system 1402. Examples include, but are not
limited to: microcode, device drivers, redundant processing units,
external disk drive arrays, RAID systems, tape drives, and data
archival storage systems.
Non-Limiting Examples
[0059] As will be appreciated by one skilled in the art, aspects of
the present invention may be embodied as a system, method, or
computer program product. Accordingly, aspects of the present
invention may take the form of an entirely hardware embodiment, an
entirely software embodiment (including firmware, resident
software, micro-code, etc.) or an embodiment combining software and
hardware aspects that may all generally be referred to herein as a
"circuit"," "module", or "system." Furthermore, aspects of the
present invention may take the form of a computer program product
embodied in one or more computer readable medium(s) having computer
readable program code embodied thereon.
[0060] Any combination of one or more computer readable medium(s)
may be utilized. The computer readable medium may be a computer
readable signal medium or a computer readable storage medium. A
computer readable storage medium may be, for example, but not
limited to, an electronic, magnetic, optical, electromagnetic,
infrared, or semiconductor system, apparatus, or device, or any
suitable combination of the foregoing. More specific examples (a
non-exhaustive list) of the computer readable storage medium would
include the following: an electrical connection having one or more
wires, a portable computer diskette, a hard disk, a random access
memory (RAM), a read-only memory (ROM), an erasable programmable
read-only memory (EPROM or Flash memory), an optical fiber, a
portable compact disc read-only memory (CD-ROM), an optical storage
device, a magnetic storage device, or any suitable combination of
the foregoing. In the context of this document, a computer readable
storage medium may be any tangible medium that can contain, or
store a program for use by or in connection with an instruction
execution system, apparatus, or device.
[0061] A computer readable signal medium may include a propagated
data signal with computer readable program code embodied therein,
for example, in baseband or as part of a carrier wave. Such a
propagated signal may take any of a variety of forms, including,
but not limited to, electro-magnetic, optical, or any suitable
combination thereof. A computer readable signal medium may be any
computer readable medium that is not a computer readable storage
medium and that can communicate, propagate, or transport a program
for use by or in connection with an instruction execution system,
apparatus, or device.
[0062] Program code embodied on a computer readable medium may be
transmitted using any appropriate medium, including but not limited
to wireless, wireline, optical fiber cable, RF, etc., or any
suitable combination of the foregoing.
[0063] Computer program code for carrying out operations for
aspects of the present invention may be written in any combination
of one or more programming languages, including an object oriented
programming language such as Java, Smalltalk, C++ or the like and
conventional procedural programming languages, such as the "C"
programming language or similar programming languages. The program
code may execute entirely on the user's computer, partly on the
user's computer, as a stand-alone software package, partly on the
user's computer and partly on a remote computer or entirely on the
remote computer or server. In the latter scenario, the remote
computer may be connected to the user's computer through any type
of network, including a local area network (LAN) or a wide area
network (WAN), or the connection may be made to an external
computer (for example, through the Internet using an Internet
Service Provider).
[0064] Aspects of the present invention have been discussed above
with reference to flowchart illustrations and/or block diagrams of
methods, apparatus (systems), and computer program products
according to various embodiments of the invention. It will be
understood that each block of the flowchart illustrations and/or
block diagrams, and combinations of blocks in the flowchart
illustrations and/or block diagrams, can be implemented by computer
program instructions. These computer program instructions may be
provided to a processor of a general purpose computer, special
purpose computer, or other programmable data processing apparatus
to produce a machine, such that the instructions, which execute via
the processor of the computer or other programmable data processing
apparatus, create means for implementing the functions/acts
specified in the flowchart and/or block diagram block or
blocks.
[0065] These computer program instructions may also be stored in a
computer readable medium that can direct a computer, other
programmable data processing apparatus, or other devices to
function in a particular manner, such that the instructions stored
in the computer readable medium produce an article of manufacture
including instructions which implement the function/act specified
in the flowchart and/or block diagram block or blocks.
[0066] The computer program instructions may also be loaded onto a
computer, other programmable data processing apparatus, or other
devices to cause a series of operational steps to be performed on
the computer, other programmable apparatus or other devices to
produce a computer implemented process such that the instructions
which execute on the computer or other programmable apparatus
provide processes for implementing the functions/acts specified in
the flowchart and/or block diagram block or blocks.
[0067] The terminology used herein is for the purpose of describing
particular embodiments only and is not intended to be limiting of
the invention. As used herein, the singular forms "a", "an" and
"the" are intended to include the plural forms as well, unless the
context clearly indicates otherwise. It will be further understood
that the terms "comprises" and/or "comprising," when used in this
specification, specify the presence of stated features, integers,
steps, operations, elements, and/or components, but do not preclude
the presence or addition of one or more other features, integers,
steps, operations, elements, components, and/or groups thereof.
[0068] The description of the present invention has been presented
for purposes of illustration and description, but is not intended
to be exhaustive or limited to the invention in the form disclosed.
Many modifications and variations will be apparent to those of
ordinary skill in the art without departing from the scope and
spirit of the invention. The embodiment was chosen and described in
order to best explain the principles of the invention and the
practical application, and to enable others of ordinary skill in
the art to understand the invention for various embodiments with
various modifications as are suited to the particular use
contemplated.
* * * * *