RELATED APPLICATION This application claims priority to U.S. Provisional application No. 60/818,731 filed Jul. 6, 2006.
COPYRIGHT STATEMENT A portion of the disclosure of this patent document contains material to which a claim of copyright protection is made. 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 files or records, but reserves all other copyrights whatsoever.
FIELD The present invention relates to data storage systems, and more particularly, to a method and system for displaying, locating and browsing a large number of data files on display screens.
BACKGROUND Continuously increasing memory capacity on storage systems, (for example computers, digital video recorders, personal device assistants, smart phones, cellular phones, file management systems, operating systems and the like) have allowed users to use their storage systems as the primary location to store many types of data files. These various storage systems has become a common source for centrally maintaining all audio, video and photo files for many users. While this trend has the advantage of centralizing all this information in one device, it has become increasingly difficult to (i) view and (ii) locate the many different files now being stored.
For viewing data files, conventional computer display screens (15 inch screens) allow a user to view about 30-60 objects (files) at a time on one screen without having to scroll down the screen of the display monitor. For mobile devices or other smaller screens, the number of objects is even less, in the range of 10-20 objects. In addition, with the current “table views” used in most computer systems, very limited information describing the file (date, file size, etc.) can be shown on one screen. So while the file name, date of creation/modification, file size, file type and label for each data file may be of interest to a viewer, typically only one or two of these fields can be seen on a standard display screen. Some proposed solutions to fit more files on a screen have been to make the file images smaller and then use a “table lens” feature to enlarge files as a user scrolls a pointer over that file. With this table lens solution, however, there are still many files embedded in sub-files or sub-folders that may not be located even with a lens view of a higher level of folders.
For locating data files, a conventional search result or sort result can end up displaying more files than can be viewed on a single screen. Also, conventional sort and search tools may not show all the files that are sub-files of folders contained grouped files. Thus, while folders may be shown on the screen, many files deep in the folder may not be shown or located if the search is not performed properly. In addition, sorting an entire memory of a device for certain files takes an inconvenient amount of time. Also, hidden files are too often misplaced. Still further, a user may not remember the name of the file and therefore the search or sort terms to locate the files are futile.
SUMMARY An embodiment of the present invention is directed to a computer-implemented user interface that comprises a display window that displays a plurality of data files. Each of the plurality of data files has associated therewith a data file descriptor. The data file descriptor describes at least one of a data file size, a data file date, a data file name, a data file type and other metadata. The computer-implemented user interface also includes a slider bar that controls the data files displayed in the display window. Movement of the slider bar displays a greater number of the plurality of data files and the data file descriptors than displayed without movement of the slider bar.
In a further embodiment, the computer-implemented user interface comprises a display window that displays a plurality of data files where each of the plurality of data files has a data file descriptor that comprises a data file size. The data file size is represented by a graphical image that comprises a graphical image size in proportion to the size of the data file.
In a still further embodiment of the present invention, a computer-implemented user interface is described that comprises a display window displaying a plurality of data files where each of the plurality of data files comprises a data file descriptor comprising a data file date. The data file date is represented by a graphical image placed along a chronological timeline relative to the data file date of each of the other plurality of data files.
In a still further embodiment of the present invention, a computer-implemented user interface is disclosed that comprises a display window displaying a plurality of data files. Each of the plurality of data files comprising a data file descriptor, comprising a data file size, a data file date, a data file name and a data file type. Each of these data file descriptors are displayed in the display window.
BRIEF DESCRIPTION OF DRAWINGS A more complex appreciation of the invention and many of the advantages thereof will be readily obtained as the same becomes better understood by references to the detailed description when considered in connection with the accompanying drawings, wherein:
FIG. 1 is a front view of an embodiment of a user interface display window of the present invention;
FIG. 2 is a front view of a user interface display window in a further embodiment of the present invention;
FIG. 3 is a front view of a user interface display window in a further embodiment of the present invention;
FIG. 4 is a block diagram view of a computer system implementing the user interface of the present invention;
FIG. 5 is a front view of a user interface display window in a further embodiment of the present invention;
FIG. 6 is a front view of a user interface display window in a further embodiment of the present invention;
FIG. 7 is a front view of a user interface display window in a further embodiment of the present invention;
FIG. 8 is a front view of a user interface display window in a further embodiment of the present invention;
FIG. 9 is a front view of a user interface display window in a further embodiment of the present invention;
FIG. 10 is a front view of a user interface display window in a further embodiment of the present invention;
FIG. 11 is a front view of a user interface display window in a further embodiment of the present invention;
FIG. 12 is a front view of a user interface display window in a further embodiment of the present invention;
FIG. 13 is a front view of a user interface display window in a further embodiment of the present invention; and
FIG. 14 is a front view of a user interface display window in a further embodiment of the present invention.
DETAILED DESCRIPTION Overview
Embodiments of the present invention are described below as relating to user interfaces implemented on a computer system or other data systems that are implemented in software, firmware, logic circuits or other processor-implemented methodology. Some portions of the detailed descriptions which follow are described in terms of procedures, steps, logic blocks, processing, and other symbolic representations of operations on data bits that can be performed on computer memory. These descriptions and representations are used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. A procedure, computer executed step, logic block, process, etc., is here, and generally, understood to be a self-consistent sequence of steps or instructions leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical (digital or analog equivalent) or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated in a computer system. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as data, bits, values, elements, symbols, characters, terms, numbers, or the like.
All of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following description, it is appreciated that throughout the present invention, descriptions utilizing terms such as “indexing” or “processing” or “computing” or “translating” or “calculating” or “determining” or “scrolling” or “displaying” or “recognizing” or “generating” or “selecting” or “displaying” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
While the primary embodiment described herein is in a computer system environment, it is understood that other embodiments may include the system and method of the present invention. In one embodiment, the user interface of the present invention may be used on any data management system where data files must be viewed or located. In alternative embodiments, the user interface of the present invention may be implemented in any display for any data device, including, for example, digital video recorders, personal device assistants, smart phones, cellular phones, file management systems, operating systems and the like. Further embodiments include methodologies for using the user interface and systems incorporating the user interface.
Display Window With Slider Bar and Data File Descriptors
FIG. 1 is a front view of a display window in an embodiment of the present invention. Thedisplay window10 can be displayed on any display screen that displays data files, for example on a computer display screen. The display screen may be part of any computer system, handheld device (for example, a cellular phone, smart phone, personal digital assistant, or any combination thereof). In addition, thedisplay window10 can be viewed on any type of data storage device including any digital video recorder, television screen, or other television receiver that is capable of data storage. Thedisplay window10 may be shown on any type of display screen including a LCD, CRT, portable device screen, television, cellular phone screen or other screen that displays data files. Thedisplay window10 containsfolders15 and data files20 shown below thefolders15. Associated with each data file20 is adata file descriptor25 that takes the form of a dot or bubble in this embodiment. It is understood that in alternative embodiments, thedata file descriptors25 may take the form of any graphical or other type of image to represent the data files20. Each of thedata file descriptors25 has a data file size that corresponds directly to the size of the data file20. Thus, for example, the larger the data file20, the larger the physical size of the data file descriptor25 (i.e. a larger bubble in this embodiment). In addition to showing the size of the data file20 by the size of the data filedescriptor25, the creation/modification date of the data file20 is represented by the location of the data filedescriptor25 along achronological timeline30. That is, as thedata descriptor25 is created/modified, that date is placed along the chronological timeline30 (along an x-axis) relative to the creation/modification date of theother data descriptors25. In this way, a viewer that reviews thedisplay window10 can see from viewing all of thedata descriptors25 which data descriptor has the earlier or later creation/modification date. A benefit of this embodiment of the present invention is the simplicity of being able to view a substantial amount of information on thesingle display window10. By simply viewing thedata descriptors25, a viewer can view the relative creation/modification date and the data file size immediately. In addition, a viewer can also tell the data file name since the data files20 are listed in alphabetical order, in one embodiment. In this way, one view of the display window can give a substantial amount of information concerning the data files20 that a viewer is looking at. It is very helpful to have thesevarious data descriptors25 associated with the data files20 since a viewer may not remember any particular one of thedata descriptors25, for any one particular data file20, but using thedata file size25, the data file date, thechronological timeline30 or a data file name (alphabetically), a viewer may be able to locate the data file20 quickly. While this embodiment uses the y-axis (alphabetical order) for the file name, the x-axis for the creation/modification date and the size of the graphical image of the data descriptor, it is understood that any visual parameters (e.g. color, shape, textures, etc.) may be used to represent any data file. In an alternative embodiment, the metadata, as is known in the art, associated with a file can also be represented by a data descriptor. A benefit of this embodiment of the present invention is that all the data files and the data file descriptors can be shown in one view that includes the folder hierarchy. That is, all the folders, sub-folders and data files can be viewed all at the same time with the data descriptors. This provides the advantage of viewing the entire hierarchical structure of the data files along with the data file descriptors that enables quick and easy locating and browsing of the data files.
In a further embodiment of the present invention, the hierarchical structure of the data files may be temporarily “flattened” to remove all sub-folders under the primary folder and only reveal the actual data files themselves. In this embodiment, a viewer can activate this flatten feature by clicking a button or pressing certain key strokes on a keyboard to activate the flatten feature. In one embodiment, the viewer holds the COMMAND key on a keyboard down and then presses the cursor over the file folder arrow located next to a file folder. The file folder arrow will then be shown as an “empty” arrow with no color within the arrow, in this embodiment. Other embodiments may display any type of symbol to signify that this flatten feature is activated. After activation, the file folder selected will only show the data files under that folder (including, in one embodiment, all the data files in subfolders under that folder), removing all the sub-folders under that file folder. This has the advantage of allowing the viewer to quickly locate the data files located deep within a folder and sub-folders that would take continuous opening of sub-folders to locate.
Also shown inFIG. 1 is atable lens35 that expands the files as a mouse cursor moves over the files to enable the files to be read. In one embodiment, thetable lens35 may be enlarged by setting the width of the table lens so that a viewer can see several enlarged data files. Thetable lens35 is synchronized with thedata descriptors25 so that as thetable lens35 scrolls over a data file, the data file label is enlarged and distance between data files is increased to allow for easier viewing of data files. Aslider bar40 is shown on the right side of the display window in this embodiment. A slider bar is a feature of the user interface indisplay window10 that allows the data files20 andcorresponding data descriptors25 to be condensed into thedisplay window10 in order to view more files in the samesized display window10. Theslider bar40 is therefore able to control the data files displayed in thedisplay window10. It is understood that while the slider bar is shown as having a vertical movement along thedisplay window10, other embodiments may have a slider bar in any configuration where the movement or other use (for example, pressing a button or otherwise movement of a feature on the display window10) would display a greater number of the data files20 than when theslider bar40 is not moved or activated. Theslider bar40, in this embodiment, may move in a vertical direction where movement in one direction will place more data files on thedisplay window10 and the movement in another direction will show fewer data files20 in thedisplay window10, but allow those data files20 to be viewed in a larger size. Thetable lens35 would have a greater use when the slider bar is moved in a direction to show more data files20 in thedisplay window10. A search button45 (also called a “filter”) shown on thedisplay window10 may be pressed by a mouse or other activation device in order for a filter (also called a “drawer”) window (FIG. 2) to be displayed.
It is understood that the display window and all of the features shown as part of the display windows are generated using conventional software applications, for example, C, C++, Visual Basic, Java or other programming languages. This software may be run on a variety of operating system platforms including the MacIntosh platform of Apple Computer, Inc., the Windows platform of Microsoft Corporation, the Palm operating system of Palm, Inc., or any other operating system for any computer, handheld device, PDA or television, or television-related device.
In operation, a viewer that is browsing or searching for a file would open the file folder of, for example, “FilmeF828” shown aselement50. Here it is seen thatelement50 has 122 (element55) files within that folder. Those 122 files in the folder are viewed by looking at thedata descriptors25 showing the relative data file size and along thechronological timeline30. This way, a viewer looking for a file, for example, a file beginning with the letter “M” would look to the middle of that file knowing that the file is listed alphabetically. In an alternative embodiment, a small alphabetical index can be provided. If a viewer does not know the file name, the user may know the relative size of the file and may look for a larger or smaller data descriptor25 to locate the file. Alternatively, if the viewer does not know the file name or the file size, the viewer may know the date in which the file was created or modified and may therefore look for a file along thechronological timeline30. It is understood that a viewer many times does not “know” for certainty the particular creation date, file size or other data descriptor. However, the viewer can use the data descriptor and location along the chronological timeline to use a combination of these data descriptors to browse the data files more efficiently. With all of these data descriptors available to a viewer in one single view, the benefit of the embodiment of the present invention is apparent in that a viewer may quickly browse or locate a data file.
Locating A Data File
FIG. 2 is a front view of an embodiment of the user interface display window of the present invention. InFIG. 2, adisplay window100 is shown with the data files20 and thedata descriptors25 shown. In this view, asearch button45 has been pressed resulting in asearch window110 displayed from thedisplay window100. In thefilter window110, a viewer may search for files in thefilter box115 by typing in the full name (or partial name) of the data file being searched. The search function of this embodiment is a real-time search function in that, unlike prior art systems where the search terms are searched throughout the entire memory taking a long amount of time until all the memory is searched, thesearch filer110 immediately shows the results of each search even as each letter or character is entered into thesearch window115. Thus, for example, if a movie titled “Ballet” is searched, the viewer begins by typing “ba” and immediately all files that begin with “ba” or have “ba” in the file name are shown. One benefit of the filtering function is that the visualization on the screen remains the same after filtering, except that the data files that have been filtered are removed. Unlike prior art systems that merely provide the search result without providing the hierarchy of the data file, the embodiment of the present invention preserves the hierarchy. A viewer conducting a search using the embodiment of the present invention will have the display window maintain the hierarchy of the data files, but have the filter remove those files that are not within the searched terms. Another difference are the features that the search filter can search in different search modes, including a (1) universal mode that has the computer search all data files, (2) a selection mode that has the computer search a selected (e.g. highlighted) subset of data files, and (3) a visible search that has the computer search those data files that are visible in the display window. In this manner, the viewer has significant control of the files to be searched. This real-time feature enables quick access to files.
In operation, a viewer activates thefilter window110 by pressing a mouse or equivalent activation key to thesearch button45. When thefilter window110 is opened, the viewer may then type in the first few letters of the desired search word. At this time, the data files that have these letters in their file name are generated in real-time. There are a number of benefits with this filter window. First, the results are generated in real-time, quicker than prior art systems that take more time for the memory of the storage system to locate. Second, the filtering does not destroy the file structures (hierarchy) when filtering. That is, in prior filter methods, the computer system would list a table of search results without showing the hierarchical structure of the data file. In the embodiment of the present invention, the search result maintains the hierarchical structure in the result. This provides a consistent view of the data files in their order. While thefilter window110 provides the search capability, the display window is also shown on the screen that provides full visualization of the files being searched in real-time. Third, the display screen has an automatic size correction feature that automatically enlarges data files depending on the number of files generated by the search. Should a search result in a large number of data files, the size of the files are smaller on the display screen and is shown real-time so a viewer can see the search result as it occurs. The data files are enlarged to fit the screen (in one embodiment, up to an 11 point font) when there is enough space in the display window to show the search result. As the number of search results increase, the size of each data file is automatically decreased. When a desired maximum size is reached (e.g. 11 point font), the data file sizes will no longer be increased. When the filter window is closed, the display window will return to the slider bar setting and the data files will be shown in their previous state.
FIG. 3 is a front view of an embodiment of the user interface display window of the present invention. InFIG. 3, adisplay window200 shows once again the data files20 withdata descriptors25 scattered throughout thedisplay window200. In this embodiment, the data files20 are shown in a pure table view, rather than a “tree” view where folders are shown with files within the folders.
FIG. 5 is a front view of a user interface display window in a further embodiment of the present invention. InFIG. 5, additional features of thedisplay window500 are shown. A shortcut button is shown in thedisplay window500 that allows a viewer to view previous searches performed and saved. These saved searches that are viewed when the shortcut button is activated show not only the data files, but the data descriptors, such as the data file size representations and the chronological timeline. Also shown inFIG. 5 is atransparent scroll bar510. Thetransparent scroll bar510 gives a visual representation of all the files to view in thedisplay window500, with the current view shown having a highlightedportion515. The embodiment ofFIG. 5 further allows a viewer to select certain data descriptors, such as a group of data file size images or a portion of the chronological time line. By selecting these groups or portions, a viewer is able to view the data file and data file descriptors for those groups or portions selected.
FIGS. 6-14 are front views of further embodiments of a user interface display window of the present invention.
Computer System
FIG. 4 is a block diagram view of an embodiment of a computer system used in conjunction with the inkjet printing system of the present invention.
Thecomputer system400 is, in one embodiment, the host system of the present invention. Thecomputer system400 includes aprocessor405 for executing program instructions stored in amemory410. In some embodiments,processor405 includes a single microprocessor, while in others,processor405 includes a plurality of microprocessors to define a multi-processor system. Thememory410 stores instructions and data for execution byprocessor405, including instructions and data for performing the methods described above. Depending on the extent of software implementation incomputer system400, thememory410 stores executable code when in operation (e.g., the high-level code). Thememory410 includes, for example, banks of read-only memory (ROM), dynamic random access memory (DRAM) as well as high-speed cache memory. Still inFIG. 4, withincomputer system400, an operating system comprises program instruction sequences that provide services for accessing, communicating with, and controlling auctionserver computer system400. The operating system provides a software platform upon which application programs may execute, in a manner readily understood by those skilled in the art. The computer system300 further comprises one or more applications having program instruction sequences for providing a reward for displaying content over a data network. Further inFIG. 4, thecomputer system400 incorporates any combination of additional devices. These include, but are not limited to, amass storage device415, one or moreperipheral devices420, an audio means425, one ormore input devices430, one or more portable storage medium drives435, agraphics subsystem440, adisplay445, and one ormore output devices450. The various components are connected via anappropriate bus455 as known by those skilled in the art. In alternative embodiments, the components are connected through other communications media known in the art. In one example,processor405 andmemory410 are connected via a local microprocessor bus; whilemass storage device415,peripheral devices420, portable storage medium drives435, and graphics subsystem440 are connected via one or more input/output buses.
Continuing inFIG. 4,mass storage device415 is implemented as fixed and/or removable medium, for example, as a magnetic, optical, or magneto-optical disk drive. The drive is preferably a non-volatile storage device for storing data and instructions for use byprocessor405. In some embodiments,mass storage device415 stores client and server information, code for carrying out methods in accordance with exemplary embodiments of the invention, and computer instructions forprocessor405. In other embodiments, computer instructions for performing methods in accordance with exemplary embodiments of the invention also are stored inprocessor405. The computer instructions are programmed in a suitable language such as Java, C, Visual or C++. InFIG. 4, the portablestorage medium drive435, in some embodiments, operates in conjunction with a portable non-volatile storage medium, such as a floppy disk, CD-ROM, or other computer-readable medium, to input and output data and code to and from thecomputer system400. In some embodiments, methods performed in accordance with exemplary embodiments of the invention are implemented using computer instructions that are stored on such a portable medium and input to thecomputer system400 via portablestorage medium drive435. InFIG. 4, theperipheral devices420 include any type of computer support device, such as an input/output (I/O) interface, to add functionality tocomputer system400. The peripheral devices also include input devices to provide a portion of a user interface and may include an alphanumeric keypad or a pointing device such as a mouse, a trackball, a stylus, or cursor direction keys. The I/O interface comprises conventional circuitry for controlling input devices and performing particular signal conversions upon I/O data. The I/O interface may include, for example, a keyboard controller, a serial port controller, and/or digital signal processing circuitry. InFIG. 4, thegraphics subsystem440 and the display345 provide output alternatives of the system. Thegraphics subsystem440 anddisplay445 include conventional circuitry for operating upon and outputting data to be displayed, where such circuitry preferably includes a graphics processor, a frame buffer, and display driving circuitry. Thedisplay445 may include a cathode ray tube (CRT) display, a liquid crystal display (LCD), or other suitable devices. Thedisplay445 preferably can display at least 253 colors. The graphics subsystem340 receives textual and graphical information and processes the information for output to thedisplay445. In one embodiment, the display would be used to display the GUI ofFIG. 4. A video card in the computer system300 also comprises a part of graphics subsystem340 and also preferably supports at least 253 colors. For optimal results in viewing digital images, the user should use a video card and monitor that can display the True Color (24 bit color) setting. This setting enables the user to view digital images with photographic image quality.
InFIG. 4, audio means425 preferably includes a sound card that receives audio signals from a peripheral microphone. In addition, audio means425 may include a processor for processing sound. The signals can be processed by the processor in audio means425 ofcomputer system400 and passed to other devices as, for example, streaming audio signals. In some embodiments, programs for performing methods in accordance with exemplary embodiments of the invention are embodied as computer program products. These generally include a storage medium or medium having instructions stored thereon used to program a computer to perform the methods described above. Examples of suitable storage medium or media include any type of disk including floppy disks, optical disks, DVDs, CD ROMs, magnetic optical disks, RAMs, EPROMs, EEPROMs, magnetic or optical cards, hard disk, flash card, smart card, and other medium. Stored on one or more of the computer readable medium, the program includes software for controlling both the hardware of a general purpose or specialized computer or microprocessor. This software also enables the computer or microprocessor to interact with a human or other mechanism utilizing the results of exemplary embodiments of the invention. Such software includes, but is not limited to, device drivers, operating systems and user applications. Preferably, such computer readable medium further include software for performing the methods described above. In certain other embodiments, a program for performing an exemplary method of the invention or an aspect thereof is situated on a carrier wave such as an electronic signal transferred over a data network. Suitable networks include the Internet, a frame relay network, an ATM network, a wide area network (WAN), or a local area network (LAN). Those skilled in the art will recognize that merely transferring the program over the network, rather than executing the program on a computer system or other device, does not avoid the scope of the invention. It will be understood that the above-described apparatus and method are merely illustrative of applications of the principles of this invention and many other embodiments and modifications may be made without departing from the spirit and scope of the invention as defined in the claims.