|Publication number||US7346850 B2|
|Application number||US 09/878,009|
|Publication date||Mar 18, 2008|
|Filing date||Jun 8, 2001|
|Priority date||Jun 12, 1998|
|Also published as||US20010028368|
|Publication number||09878009, 878009, US 7346850 B2, US 7346850B2, US-B2-7346850, US7346850 B2, US7346850B2|
|Inventors||Gregory J. Swartz, James B. Swartz, Christopher J. Danforth|
|Original Assignee||Cygnus Systems, Inc.|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (13), Referenced by (125), Classifications (12), Legal Events (7)|
|External Links: USPTO, USPTO Assignment, Espacenet|
This is a continuation of U.S. patent application Ser. No. 09/097,283, filed Jun. 12, 1998 now abandoned.
The present invention relates in general to systems and methods for managing files and documents in a computer system. More particularly, the present invention relates to graphical user interfaces for storing, navigating and retrieving files and documents in a computer system.
It is known to provide a graphical user interface (GUI) for application programs on a computer. Early GUIs were provided by applications such as word processors and spreadsheets. GUIs have since been incorporated into computer operating systems, and provide functions such as allowing an operator to access files and programs on the computer by using a mouse to select and activate icons that represent the files and programs. GUIs for accessing files and applications through icons are typically either part of or added to the underlying operating system that. manages storage of the files and execution of the applications. For example, the Windows™ operating systems from Microsoft Corporation, including Windows 3.X, Windows 95, and Windows NT, and the Macintosh™ operating systems from Apple Corporation all provide such GUIs.
Continual increases in the amount and complexity of information stored and manipulated by computer systems have required operators to interact with an increasing number of files and applications. The growth of computer networks and the corollary growth in shared data has also increased the amount of information accessible to the operator. Increases in the amount and complexity of information stored by computer systems and networks have also caused concomitant increases in the amount and complexity of the graphical information representing the underlying file system presented to the user by operating system GUIs.
According to aspects of the present invention, methods and systems are provided to allow a user to manage files for use by applications on a computer system while insulating the operator from the complexity of the underlying file system architecture of the computer operating system. The user can rely on the visual representations of the files without the need to recall or determine every directory path for every file's location. Visual cues are provided that eliminate the difficulties in retrieving documents based on file names and paths used in storage of files in multiple directories or on multiple computer systems.
The present invention provides an improved method and system for storing, navigating and retrieving files and documents in a computer system. A method by which this is accomplished includes the following: the use of graphical representations of the documents and applications as viewed on the screen at the time of ‘capture’, a Snapshot Navigator Menu that automatically appears when the mouse pointer is directed to the edge of the screen and disappears when the mouse leaves the visible area of the Snapshot Navigator Menu.
The present invention also provides an improved method and system for storing iconic interfaces to files and documents on the mass storage devices in a logical, organized fashion that eliminates the need for the user to memorize the exact or actual location of the files stored throughout the hierarchical directory structure employed by present day storage devices and operating systems.
The present invention further provides the user the capability to switch between applications, as well as documents that are currently open and/or open applications and documents, with one click of the mouse.
In addition, the present invention provides the user the ability to create ‘template’ documents for applications that may not support an internal ‘template’ format, by duplicating specific files and launching the template file and/or template file and application with a single click.
Additional features of the invention will become apparent to those skilled in the art upon consideration of the following detailed description of the preferred embodiment exemplifying the best mode of carrying out the invention as presently perceived.
The detailed description particularly refers to the accompanying figures in which:
A brief explanation of ‘window’, ‘handle’, ‘parent window’, and ‘child window’ is necessary to understand the references to them throughout the discussion of the present invention. In the preferred embodiment, a ‘window’ in its purest form is any graphical element that is displayed on the screen. A ‘handle’ is an object identifier in memory, which can be associated with windows, files, and other elements in memory. A window without a ‘parent window’ is a top level window, which is typically an application. An application typically has many ‘child windows’ which make up the graphical interface consisting of buttons, scroll bars, icons, text boxes, etc. Child windows can have multiple child windows which can also have child windows, thereby constructing a structure of parent-child relationships between the various graphical elements of an application or top-level window.
It is understood that multiple applications can be opened or active simultaneously, but only one application can be in the ‘foreground’ accepting input (keyboard, mouse, etc.) instructions from the user at any given time, with any other applications currently open being in the ‘background’. Likewise with MDI (multiple document interface) applications there can only be one document in the foreground accepting input (keyboard, mouse, etc.) instructions from the user at any given time and any other documents currently open within the application would be in the background. Document handles only exist with applications that support the MDI capability. Basically, MDI specifies whether or not an application can have multiple files open simultaneously to allow the user to switch between them during their editing process, and a non-MDI application would only support one file open at any give time. The term ‘document’ includes, but is not limited to, text files, graphic images, sound files, spreadsheets, databases, web pages with URL addresses, video clips, animations, compound documents which could include any the file formats mentioned, presentations, etc. A computer system includes storage devices that would store the application and document files in directories and sub-directories, such as a hard drive or floppy drive. In the preferred embodiment, applications and the operating system are provided with an implementation-independent Application Programming Interface (API) that provides a set of functions that are invoked by client and server applications to act upon particular objects.
‘Subclassing’ refers to the process of intercepting Windows messages that are sent to and from the operating system and ‘windows’ and forcing the operating system to call a function specified with the present invention before the operating systems calls the original function for that window. Windows messages are commands that are used by the operating system and the applications to communicate the need to perform specific functions. For example, the operating system will send a message to a window when the user has clicked on a button, in order to notify the application that it needs to perform the necessary functions associated with that button.
A ‘File System Hook’ is a function of the operating system that allows applications to monitor all activity within the file system to determine what files have been opened, saved, read, written, or deleted. The File System Hook actually intercepts the functions calls made to the operating system by any application currently open. The File System Hook has access to the following pieces of information: the process/application that requested the file access, the filename and path of the file that is being accessed, what type of access is being performed (save, open, read, etc.), whether or not the access was completed successfully, and other miscellaneous information.
With reference now to the figures and in particular
File Snapshot 305 includes a miniaturized graphical depiction of the screen at the time the document and/or application is open and was ‘captured’, using a screen capture of the active window, onto Snapshot Navigator Menu 301. Alternatively, File Snapshot 305 can be generated by constructing a graphical depiction based on the contents of the document without actually without actually creating a screen display. File Snapshot List 304 is a group of File Snapshots 305 that are saved/stored to the mass storage device with a filename that is typically representative to the collective content of the File Snapshots 305. An illustrative File Snapshot List 304 would be a group of File Snapshots 305 that would all pertain to a specific topic. An example of such a list would be text documents consisting of memos, letter, notes etc., as well as spreadsheet files, graphic files of mechanical drawings, etc. that collectively would be necessary for a person in management to prepare a budget for a department within a corporation.
An illustrative File Snapshot 305 includes the following information: graphic thumbnail image of the document at the point of capture, the document filename, the file object identifier, document handle (if applicable), the application filename, the application handle, and the application's MDI capabilities. The graphic thumbnail image illustratively is a screen capture of the document as displayed during manipulation by the application that has been scaled down to fit into one of the File Snapshot 305 positions on the Snapshot Navigator Menu 301. Tab strip 303 is used to switch between File Snapshots 305 and Template Snapshots (not shown) and Desktop Icons (not shown).
Template Snapshots are a miniaturized graphical depiction of the screen at the time the document was converted into a ‘template’, as well as the application filename and document filename. As discussed in more detail below, the ‘template’ is a duplicated copy of a File Snapshot 305 that allows users to open pre-formatted files within applications that may or may not inherently support a template format for its files.
Desktop Icons are graphical icons that are positioned onto the initial screen of the preferred embodiment and are easily accessible when applications are either not open or have been ‘minimized’. Minimized is a state when the application has been reduced to a small icon and is longer being displayed onto the main screen. The Desktop Icons feature allows Snapshot Navigator Menu 301 to display all of these icons at any time, whether applications are open and being displayed on the screen or not, making them easily accessible to the user.
Status bar 306 is used to display the current date and time as well as the number of File Snapshots 305 or Template Snapshots currently open and to display any other desired information during operation. Menu bar 302 is used to access the commands available for opening, saving, and printing of File Snapshot Lists 304, as well as exiting the program and accessing on-line help, configuration settings and other advanced features. The process of ‘capturing’, as described in more detail below, includes recording a graphical representation of the document as well as the document and application filenames, including the entire directory path, and placing the image representative of this information onto the Snapshot Navigator Menu 301. The process of ‘retrieving’, as described in more detail below, includes opening the application and document from their respective locations on the mass storage device, unless either the application or document is currently active (open in memory). If an application or document is already active, ‘focus’ is switched to that application and document. Focus indicates which window currently is receiving mouse and keyboard events.
Referring now to
Referring now to
Referring now to
In general, as illustrated in
In step 7004, the screen capture of the currently active file and its application are copied onto the topmost position of the Snapshot Navigator Menu 301 along with the corresponding application directory path and file path. Next in step 7005, the user places the mouse over the graphical representation of the file being manipulated and in step 7006, the user clicks the mouse button and the retrieve sequence is activated. The retrieve sequence is discussed in detail below in reference to
In step 8007, a search pointer is positioned at the top of a list of files that have been logged by the File Access Tracking Module to begin searching through the most recently logged files and applications. In step 8008, the search pointer is checked to see if it is at the bottom of the list, in which case control transfers to step 8013. If the search pointer is not at the bottom of the list, then in step 8009 the document handle from the log file 403 is retrieved for the instance of the current document handle obtained in 8004. This information is saved, the pointer is incremented and stored, and control then proceeds to step 8010. In step 8010, the document handle captured from step 8004 is compared to the retrieved document handle, and if they match then control proceeds to step 8011. If the document handles do not match then control returns to step 8008 to examine the next position in the list. In step 8011, the application handle in the list is compared to the application handle captured from step 8001 and if they match control proceeds to step 8012. If the application handles do not match then control returns to step 8008 to examine next position in the list.
In step 8012, the document filename is checked to see if it exists in the File Access Tracking Module's log file 403, and if so control proceeds to step 8014. If the document filename does not exist in the log then control proceeds to step 8013. In step 8013, if the current application handle or application filename could not be found in the log, then the application handle and application filename get added to the Snapshot Navigator Menu 301 with a ‘blank’ filename (blank actually consists of a filename “*No Filename Associated*”), and then control proceeds to step 8014. In step 8014, the File Snapshot List 304 is updated with this newly acquired information for the application handle, application filename, and document filename, document handle, where applicable, and then processing is return to the user.
In step 8015, the search pointer is positioned at the top of the list of files that have been logged by the File Access Tracking Module to begin searching through the most recently logged files and applications. In step 8016, the search pointer is checked to see if it is at the bottom of the list. If it is then control transfers to step 8020, and otherwise it continues to step 8017. In step 8017, the document handle from the log file 403 for the instance of the current document handle obtained in 8004 is retrieved. This information is saved, the pointer is incremented and stored, and control then proceeds to step 8018. In step 8018, the captured application handle from step 8001 is compared to the application handle in the list at this position. If the application handles match then a check is made to determine if the captured application filename from step 8002 matches the application filename in the list. If the filenames match then control proceeds to step 8019, otherwise control returns to step 8016.
In step 8019, the filename of the document is checked to see if it exists in the File Access Tracking Module log file 403. If it does then control transfers to step 8022, otherwise control proceeds to step 8020. In step 8020, the application handle and application filename are compared with all the File Snapshots 305 on the Snapshot Navigator Menu 301 to see if it has already been captured. If it has been captured then the document filename information is retrieved from the Snapshot Navigator Menu 301 and control transfers to step 8022, otherwise control proceeds to step 8021. In step 8021, if the current application handle or application filename could not be found in the log, then the application handle and application filename are added to the Snapshot Navigator Menu 301 with a ‘blank’ filename (blank actually consists of a filename “*No Filename Associated*”), and control proceeds to step 8022. In step 8022, the File Snapshot List 304 is updated with this newly acquired information for the application handle, application filename, and document filename, where applicable, and then processing is returned to the user.
Referring now to
In step 9006, the application handle is evaluated to determine if the application that owns the application handle corresponds to the application filename that is stored in the File Snapshot 305 that is being activated. If they correspond then control transfers to step 9011, otherwise it proceeds to step 9007. In step 9007, the application filename stored in the File Snapshot 305 is launched. In step 9008, the application handle is retrieved from the operating system and the application information for this File Snapshot 305 is updated. In step 9009, the filename is evaluated to see if it is a valid filename and if it exists on the designated mass storage device, in which case control proceeds to step 9010, otherwise it transfers to step 9012. In step 9010, the document is launched within the application and the document handle is retrieved from the operating system.
In step 9011, the application that is associated with the File Snapshot 305 that the user activated is brought to the foreground and made active. In step 9012, the document handle for this File Snapshot 305 is updated. In step 9013, the Snapshot Navigator Menu 301 information is updated and the File Snapshot 305 that was activated is moved to the topmost position and all the other File Snapshots 305 are moved down one position in the File Snapshot list 304, and processing is returned to the user.
Referring now to
In step 9018, the application handle for the application filename that was found is retrieved from the operating system and the application filename and application handle for the File Snapshot 305 is updated. In step 9019, the application is brought to the foreground and made active and control proceeds to step 9025.
In step 9016, the application handle is compared to the application filename to see if they correspond. If the application handle and filename correspond then control transfers to step 9019, otherwise it proceeds to step 9015. In step 9020, the document filename is evaluated to see if it is valid and exists on the mass storage device. If so, then control proceeds to step 9022, otherwise it proceeds to step 9021. In step 9021, only the application is launched and control proceeds to step 9023. In step 9022, the application and document are both launched and then control proceeds to step 9023.
In step 9023, processing pauses until the application is opened completely. The operating system is then queried to return application handle, and control proceeds to step 9024. In step 9024, the information for the File Snapshot 305 is updated with the new application handle and document handle. Control then proceeds to step 9038.
Referring now to
Referring now to
Referring now to
In step 9038, the application handle, application filename, document handle and document filename are checked to see if they exist in the File Access Tracking Module log file 403. If they do then control transfers to step 9043, otherwise it proceeds to 9041. In step 9041, the application handle, application filename, document handle and document filename are stored back into the File Access Tracking Module log file 403. Finally, in step 9043 the Snapshot Navigator Menu 301 information is updated and the File Snapshot 305 that was activated is moved to the topmost position and all the other File Snapshots 305 are moved down one position in the File Snapshot list 304. Processing is then returned to the user.
In step 10005, the document filename that triggered the notification is retrieved from the file system hook. In step 10006, the active application is then evaluated to determine the document handle, if one exists, for the file that triggered the notification. Next, in step 10007, the recently acquired application handle, application filename, document filename and document handle (if applicable) are compared to the entries in the File Access Tracking Module's log file 403 to see if there are any existing entries that contain this information. If a match for the recently accessed file match an entry in log file 403 then control transfers to step 10012, otherwise it continues to step 10008.
In step 10008, each entry in the File Access Tracking Module log file 403 is checked to see if the application and document handles have not yet been subclassed. If any entries have not been subclassed then they get subclassed, otherwise control proceeds directly to step 10009. In step 10009, the handles for the recently acquired application and document (where applicable) are subclassed. In step 10010, the application is evaluated to determine if it is an MDI-capable application. If it is a non-MDI-capable application then the File Access Tracking Module log file 403 is checked for any previous occurrence of both the application handle and application filename that match the recently acquired application filename and application handle. If such a previous occurrence is found, that specific entry is removed from log file 403. Next, in step 10011, the recently acquired application handle, application filename, document filename and document handle (if applicable) are added to log file 403. In step 10012, the File Access Tracking Module returns processing to the operating system and remains as a background task until triggered by another file system hook notification.
In step 11004, the handle is no longer subclassed by the File Access Tracking Module. Next, in step 11005, this recently closed window handle is checked to determine if it has a parent handle (which would indicate an MDI document). If a parent handle exists then control proceeds to step 11006 (indicating the recently closed window handle is a document handle), otherwise it proceeds to step 11008 (indicating the recently closed window handle is an application handle).
In step 11006, log file 403 is evaluated and any reference to this document filename and document handle are cleared, leaving the application handle and the application filename in log file 403. Next, in step 11007, the entire log file 403 is analyzed and any reference to the document filename, regardless of the document handle, is also cleared, and control proceeds to step 11010.
In step 11008, log file 403 is evaluated and any reference to this application handle is cleared, regardless of application filename and document information. Next, in step 11009, the entire log file 403 is analyzed and any reference to the application handle, regardless of the application filename, document filename or document handle, is also removed. Control then proceeds to step 11010.
In step 11010, each application handle in log file 403 is checked to see if it is valid in memory. Any handles that are no longer valid in memory are removed from log file 403. Next, in step 11011, processing is returned to the operating system and the File Access Tracking Module resumes as a background task until triggered by another file change notification.
Referring now to
In step 12001, the user has selected from the menu to convert a File Snapshot 305 to a ‘Template’. Next, in step 12002 the File Snapshot 305 information is duplicated into a specific data directory and a new Template File Snapshot (not shown) is added to the File Snapshot list 304 in the Templates section. In step 12003, the duplicated Template file is mark with a ‘READ-ONLY’ status to avoid accidental erasure and modifications.
In step 13001, the user has selected a Template File Snapshot. Next, in step 13002 the Template Snapshot information is passed to the document retrieve routine at step 9003 in
An aspect of the present invention is thus that a GUI object created from a screen capture of a document provides an iconic object that retains associated information such as the current active filename, filename path, file object identifier in memory, application, application path, application object identifier in memory, URL address if applicable, etc. Another aspect is provision for a background task that transparently tracks all opened files by filename, filename path, file object identifier in memory, application, application path, application object identifier in memory, URL address if applicable, etc.
Yet another aspect is the ability for the iconic object to bind associated documents automatically to the application which opened or edited the file, independent of the filename extension. It is understood, however, that software according to the present invention could associate a file with an application based on intrinsic file information, such as a file extension or application specific content of the file. Still another aspect is the capability for single click task switching and launching of a specific file within the application that last edited the file. Yet still another aspect is a drag and drop capable iconic desktop (GUI) interface on autohide slideout menu, which facilitates access to desktop icons.
Aspects of the present invention thus allow for re-categorizing files on a user defined relationship independent of the path, in chronological order, and associating them to a visual representation of the file itself, without duplicating or moving the files from their original location. Further aspects provide for gang printing and archiving all or selected files from a bound group by selecting them from the taskbar. Still further aspects provide for storing a listing of a user's files, with graphical thumbnails for quick access and better organization. With one click on a thumbnail, the application and file are launched,
The present invention provides still other features, such as the ability to create logical groupings of files based on project, subject matter, presentation, priority, chronological, client, etc., without altering or moving the files from their current location on a system. Files can be made into “template files” and used as a base for future use, providing a template feature for applications with no inherent support for such a feature.
Although the invention has been described in detail with reference to a certain preferred embodiments, variations and modifications exist within the scope and spirit of the invention as described and defined in the following claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US5375200||Nov 13, 1992||Dec 20, 1994||International Business Machines Corporation||Method and system for graphic interaction between data and applications within a data processing system|
|US5479599||Apr 26, 1993||Dec 26, 1995||International Business Machines Corporation||Computer console with group ICON control|
|US5581760||Jul 6, 1993||Dec 3, 1996||Microsoft Corporation||Method and system for referring to and binding to objects using identifier objects|
|US5675752 *||Sep 15, 1994||Oct 7, 1997||Sony Corporation||Interactive applications generator for an interactive presentation environment|
|US5682536||Jun 7, 1995||Oct 28, 1997||Microsoft Corporation||Method and system for referring to and binding to objects using identifier objects|
|US5689703||Jun 6, 1995||Nov 18, 1997||Microsoft Corporation||Method and system for referring to and binding to objects using identifier objects|
|US5717877||Jun 6, 1995||Feb 10, 1998||Object Licensing Licensing Corporation||Object-oriented data access framework system|
|US5751286 *||Jan 24, 1997||May 12, 1998||International Business Machines Corporation||Image query system and method|
|US5911139||Mar 28, 1997||Jun 8, 1999||Virage, Inc.||Visual image database search engine which allows for different schema|
|US5973692 *||Mar 10, 1997||Oct 26, 1999||Knowlton; Kenneth Charles||System for the capture and indexing of graphical representations of files, information sources and the like|
|US6002401||Jan 6, 1998||Dec 14, 1999||Baker; Michelle||User definable pictorial interface for accessing information in an electronic file system|
|US6026433 *||Mar 17, 1997||Feb 15, 2000||Silicon Graphics, Inc.||Method of creating and editing a web site in a client-server environment using customizable web site templates|
|US6052750 *||Jan 6, 1998||Apr 18, 2000||Sony Corporation Of Japan||Home audio/video network for generating default control parameters for devices coupled to the network, and replacing updated control parameters therewith|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US7617456 *||Nov 13, 2006||Nov 10, 2009||Nbor Corporation||Media and functional objects transmitted in dynamic picture files|
|US7844915||Jan 7, 2007||Nov 30, 2010||Apple Inc.||Application programming interfaces for scrolling operations|
|US7872652||Jan 7, 2007||Jan 18, 2011||Apple Inc.||Application programming interfaces for synchronization|
|US7895249 *||Aug 31, 2004||Feb 22, 2011||Microsoft Corporation||Selective file purging for delete or rename|
|US7903115||Jan 7, 2007||Mar 8, 2011||Apple Inc.||Animations|
|US8006192||Oct 4, 2000||Aug 23, 2011||Apple Inc.||Layered graphical user interface|
|US8010508||Jul 7, 2007||Aug 30, 2011||Maya-Systems Inc.||Information elements locating system and method|
|US8069404||Sep 13, 2007||Nov 29, 2011||Maya-Systems Inc.||Method of managing expected documents and system providing same|
|US8136030||Feb 20, 2008||Mar 13, 2012||Maya-Systems Inc.||Method and system for managing music files|
|US8151185||Jan 8, 2008||Apr 3, 2012||Maya-Systems Inc.||Multimedia interface|
|US8174502||Mar 4, 2008||May 8, 2012||Apple Inc.||Touch event processing for web pages|
|US8255815||Aug 4, 2006||Aug 28, 2012||Apple Inc.||Motion picture preview icons|
|US8261191||Aug 4, 2006||Sep 4, 2012||Apple Inc.||Multi-point representation|
|US8285499||Sep 24, 2009||Oct 9, 2012||Apple Inc.||Event recognition|
|US8316306||Mar 27, 2007||Nov 20, 2012||Maya-Systems Inc.||Method and system for sequentially navigating axes of elements|
|US8411061||May 4, 2012||Apr 2, 2013||Apple Inc.||Touch event processing for documents|
|US8416196||Mar 4, 2008||Apr 9, 2013||Apple Inc.||Touch event model programming interface|
|US8428893||Aug 30, 2011||Apr 23, 2013||Apple Inc.||Event recognition|
|US8429557||Aug 26, 2010||Apr 23, 2013||Apple Inc.||Application programming interfaces for scrolling operations|
|US8429562||Dec 8, 2006||Apr 23, 2013||Apple Inc.||Graphical user interface for computers having variable size icons|
|US8527882||Mar 17, 2008||Sep 3, 2013||Gregory J. Swartz||System and method for iconic software environment management|
|US8531465||Jan 14, 2011||Sep 10, 2013||Apple Inc.||Animations|
|US8552999||Sep 28, 2010||Oct 8, 2013||Apple Inc.||Control selection approximation|
|US8553038||Jan 14, 2011||Oct 8, 2013||Apple Inc.||Application programming interfaces for synchronization|
|US8560975||Nov 6, 2012||Oct 15, 2013||Apple Inc.||Touch event model|
|US8566044||Mar 31, 2011||Oct 22, 2013||Apple Inc.||Event recognition|
|US8566045||Mar 31, 2011||Oct 22, 2013||Apple Inc.||Event recognition|
|US8601392||May 22, 2008||Dec 3, 2013||9224-5489 Quebec Inc.||Timeline for presenting information|
|US8607155||Sep 14, 2009||Dec 10, 2013||9224-5489 Quebec Inc.||Method of managing groups of arrays of documents|
|US8645826||Aug 18, 2011||Feb 4, 2014||Apple Inc.||Graphical multidimensional file management system and method|
|US8645827||Mar 4, 2008||Feb 4, 2014||Apple Inc.||Touch event model|
|US8656311||Jan 7, 2007||Feb 18, 2014||Apple Inc.||Method and apparatus for compositing various types of content|
|US8661363||Apr 22, 2013||Feb 25, 2014||Apple Inc.||Application programming interfaces for scrolling operations|
|US8682602||Sep 14, 2012||Mar 25, 2014||Apple Inc.||Event recognition|
|US8701039||Jul 5, 2008||Apr 15, 2014||9224-5489 Quebec Inc.||Method and system for discriminating axes of user-selectable elements|
|US8717305||Mar 4, 2008||May 6, 2014||Apple Inc.||Touch event model for web pages|
|US8723822||Jun 17, 2011||May 13, 2014||Apple Inc.||Touch event model programming interface|
|US8739050||Mar 9, 2009||May 27, 2014||9224-5489 Quebec Inc.||Documents discrimination system and method thereof|
|US8788937||Nov 21, 2007||Jul 22, 2014||9224-5489 Quebec Inc.||Method and tool for classifying documents to allow a multi-dimensional graphical representation|
|US8813100||Jan 7, 2007||Aug 19, 2014||Apple Inc.||Memory management|
|US8826123||May 25, 2007||Sep 2, 2014||9224-5489 Quebec Inc.||Timescale for presenting information|
|US8836652||Jun 17, 2011||Sep 16, 2014||Apple Inc.||Touch event model programming interface|
|US8836707||Aug 26, 2013||Sep 16, 2014||Apple Inc.||Animations|
|US8893046||Jun 27, 2009||Nov 18, 2014||Apple Inc.||Method of managing user-selectable elements in a plurality of directions|
|US8904281||Jan 19, 2008||Dec 2, 2014||Apple Inc.||Method and system for managing multi-user user-selectable elements|
|US8954847||Dec 6, 2011||Feb 10, 2015||Apple Inc.||Displays of user select icons with an axes-based multimedia interface|
|US8984417||Jun 20, 2012||Mar 17, 2015||9224-5489 Quebec Inc.||Method of associating attributes with documents|
|US9037995||Feb 25, 2014||May 19, 2015||Apple Inc.||Application programming interfaces for scrolling operations|
|US9058093||Sep 25, 2011||Jun 16, 2015||9224-5489 Quebec Inc.||Active element|
|US9122374||Sep 25, 2011||Sep 1, 2015||9224-5489 Quebec Inc.||Expandable and collapsible arrays of documents|
|US9183661||Sep 6, 2013||Nov 10, 2015||Apple Inc.||Application programming interfaces for synchronization|
|US9189129||Sep 25, 2011||Nov 17, 2015||9224-5489 Quebec Inc.||Non-homogeneous objects magnification and reduction|
|US9251643||Dec 27, 2011||Feb 2, 2016||Apple Inc.||Multimedia interface progression bar|
|US9262381||Mar 13, 2013||Feb 16, 2016||9224-5489 Quebec Inc.||Array of documents with past, present and future portions thereof|
|US9285908||Feb 13, 2014||Mar 15, 2016||Apple Inc.||Event recognition|
|US9298363||Apr 11, 2011||Mar 29, 2016||Apple Inc.||Region activation for touch sensitive surface|
|US9311112||Mar 31, 2011||Apr 12, 2016||Apple Inc.||Event recognition|
|US9323335||Mar 8, 2013||Apr 26, 2016||Apple Inc.||Touch event model programming interface|
|US9348800||Feb 27, 2014||May 24, 2016||9224-5489 Quebec Inc.||Method of managing arrays of documents|
|US9360993||Dec 28, 2012||Jun 7, 2016||Facebook, Inc.||Display navigation|
|US9378577||Aug 19, 2014||Jun 28, 2016||Apple Inc.||Animations|
|US9389712||Feb 3, 2014||Jul 12, 2016||Apple Inc.||Touch event model|
|US9448712||May 14, 2015||Sep 20, 2016||Apple Inc.||Application programming interfaces for scrolling operations|
|US9454529||Nov 24, 2011||Sep 27, 2016||Apple Inc.||Method of improving a search|
|US9483121||Oct 1, 2013||Nov 1, 2016||Apple Inc.||Event recognition|
|US9519693||Mar 14, 2013||Dec 13, 2016||9224-5489 Quebec Inc.||Method and apparatus for displaying data element axes|
|US9529495||Mar 13, 2013||Dec 27, 2016||9224-5489 Quebec Inc.||Static and dynamic information elements selection|
|US9529519||Sep 30, 2011||Dec 27, 2016||Apple Inc.||Application programming interfaces for gesture operations|
|US9575648||Sep 30, 2011||Feb 21, 2017||Apple Inc.||Application programming interfaces for gesture operations|
|US9588646||Mar 13, 2013||Mar 7, 2017||9224-5489 Quebec Inc.||Selection and operations on axes of computer-readable files and groups of axes thereof|
|US9600352||Jul 11, 2014||Mar 21, 2017||Apple Inc.||Memory management|
|US9613167||Sep 25, 2012||Apr 4, 2017||9224-5489 Quebec Inc.||Method of inserting and removing information elements in ordered information element arrays|
|US9619132||Feb 17, 2015||Apr 11, 2017||Apple Inc.||Device, method and graphical user interface for zooming in on a touch-screen display|
|US9626073||Dec 31, 2012||Apr 18, 2017||Facebook, Inc.||Display navigation|
|US9639260||Sep 30, 2011||May 2, 2017||Apple Inc.||Application programming interfaces for gesture operations|
|US9646080||Mar 15, 2013||May 9, 2017||9224-5489 Quebec Inc.||Multi-functions axis-based interface|
|US9652438||Apr 14, 2014||May 16, 2017||9224-5489 Quebec Inc.||Method of distinguishing documents|
|US9665265||Aug 30, 2011||May 30, 2017||Apple Inc.||Application programming interfaces for gesture operations|
|US9678621||Dec 8, 2010||Jun 13, 2017||Facebook, Inc.||Constraining display motion in display navigation|
|US9684521||May 28, 2010||Jun 20, 2017||Apple Inc.||Systems having discrete and continuous gesture recognizers|
|US9690460||May 2, 2014||Jun 27, 2017||9224-5489 Quebec Inc.||Method and apparatus for identifying user-selectable elements having a commonality thereof|
|US9690481||Jun 29, 2016||Jun 27, 2017||Apple Inc.||Touch event model|
|US9720594||Aug 30, 2011||Aug 1, 2017||Apple Inc.||Touch event model|
|US9733716||May 29, 2014||Aug 15, 2017||Apple Inc.||Proxy gesture recognizer|
|US9733801||Jul 17, 2015||Aug 15, 2017||9224-5489 Quebec Inc.||Expandable and collapsible arrays of aligned documents|
|US9753606||Dec 31, 2012||Sep 5, 2017||Facebook, Inc.||Animated display navigation|
|US9760272||Sep 19, 2016||Sep 12, 2017||Apple Inc.||Application programming interfaces for scrolling operations|
|US20050027746 *||Aug 31, 2004||Feb 3, 2005||Microsoft Corporation||Selective file purging for delete or rename|
|US20070061737 *||Nov 13, 2006||Mar 15, 2007||Denny Jaeger||Media and functional objects transmitted in dynamic picture files|
|US20080034306 *||Aug 4, 2006||Feb 7, 2008||Bas Ording||Motion picture preview icons|
|US20080034325 *||Aug 4, 2006||Feb 7, 2008||Bas Ording||Multi-point representation|
|US20080134013 *||Jan 8, 2008||Jun 5, 2008||Mathieu Audet||Multimedia interface|
|US20080165161 *||Jan 7, 2007||Jul 10, 2008||Andrew Platzer||Application Programming Interfaces for Synchronization|
|US20080165210 *||Jan 7, 2007||Jul 10, 2008||Andrew Platzer||Animations|
|US20080168384 *||Jan 7, 2007||Jul 10, 2008||Andrew Platzer||Application Programming Interfaces for Scrolling Operations|
|US20080168402 *||Jan 7, 2007||Jul 10, 2008||Christopher Blumenberg||Application Programming Interfaces for Gesture Operations|
|US20080168478 *||Jan 7, 2007||Jul 10, 2008||Andrew Platzer||Application Programming Interfaces for Scrolling|
|US20080201307 *||Mar 17, 2008||Aug 21, 2008||Swartz Gregory J||System and method for iconic software environment management|
|US20080206327 *||Feb 21, 2008||Aug 28, 2008||Alpex Pharma S.A.||Solid dosage formulations containing weight-loss drugs|
|US20080295016 *||May 25, 2007||Nov 27, 2008||Mathieu Audet||Timescale for representing information|
|US20090024920 *||Jul 16, 2007||Jan 22, 2009||Narae Enterprises, Inc.||Apparatus and method for extracting and using images from on-line forum posts and other web pages|
|US20090044115 *||Aug 6, 2007||Feb 12, 2009||Jan-Hinnerk Helms||Previewing audio data|
|US20090055413 *||Nov 21, 2007||Feb 26, 2009||Mathieu Audet||Method and tool for classifying documents to allow a multi-dimensional graphical representation|
|US20090055729 *||Jul 5, 2008||Feb 26, 2009||Mathieu Audet||Array of documents management|
|US20090055763 *||May 22, 2008||Feb 26, 2009||Mathieu Audet||Timeline for presenting information|
|US20090055776 *||Aug 15, 2008||Feb 26, 2009||Mathieu Audet||Position based multi-dimensional locating system and method|
|US20090178006 *||Jan 6, 2008||Jul 9, 2009||Apple Inc.||Icon Creation on Mobile Device|
|US20090225037 *||Mar 4, 2008||Sep 10, 2009||Apple Inc.||Touch event model for web pages|
|US20090225038 *||Mar 4, 2008||Sep 10, 2009||Apple Inc.||Touch event processing for web pages|
|US20090225039 *||Mar 4, 2008||Sep 10, 2009||Apple Inc.||Touch event model programming interface|
|US20090228788 *||Mar 9, 2009||Sep 10, 2009||Mathieu Audet||Documents discrimination system and method thereof|
|US20090228901 *||Mar 4, 2008||Sep 10, 2009||Apple Inc.||Touch event model|
|US20090288006 *||Jun 27, 2009||Nov 19, 2009||Mathieu Audet||Multi-dimensional documents locating system and method|
|US20100169823 *||Sep 14, 2009||Jul 1, 2010||Mathieu Audet||Method of Managing Groups of Arrays of Documents|
|US20100235118 *||Sep 24, 2009||Sep 16, 2010||Bradford Allen Moore||Event Recognition|
|US20110109635 *||Jan 14, 2011||May 12, 2011||Andrew Platzer||Animations|
|US20110141120 *||Jan 14, 2011||Jun 16, 2011||Andrew Platzer||Application programming interfaces for synchronization|
|US20110179380 *||Mar 31, 2011||Jul 21, 2011||Shaffer Joshua L||Event Recognition|
|US20110179386 *||Mar 31, 2011||Jul 21, 2011||Shaffer Joshua L||Event Recognition|
|US20110179387 *||Mar 31, 2011||Jul 21, 2011||Shaffer Joshua L||Event Recognition|
|US20140181705 *||Dec 21, 2012||Jun 26, 2014||International Business Machines Corporation||Automated screen captures|
|USRE45559||Oct 8, 1998||Jun 9, 2015||Apple Inc.||Portable computers|
|USRE46548||Oct 8, 1998||Sep 12, 2017||Apple Inc.||Portable computers|
|CN102520938A *||Nov 30, 2011||Jun 27, 2012||福州福大自动化科技有限公司||Automatic navigation method for input and output element in control strategy configuration software|
|CN102520938B||Nov 30, 2011||Sep 24, 2014||福州福大自动化科技有限公司||Automatic navigation method for input and output element in control strategy configuration software|
|U.S. Classification||715/763, 715/765|
|International Classification||G06F3/048, G06F3/023, G06F15/00, G06F3/033, G06F13/00, G06F17/30|
|Cooperative Classification||G06F3/0481, G06F3/04817|
|European Classification||G06F3/0481, G06F3/0481H|
|Jun 8, 2001||AS||Assignment|
Owner name: CYGNUS SYSTEMS, INC., INDIANA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SWARTZ, GREGORY J.;SWARTZ, JAMES B.;DANFORTH, CHRISTOPHER J.;REEL/FRAME:011895/0219;SIGNING DATES FROM 19980603 TO 19980608
|Oct 31, 2011||REMI||Maintenance fee reminder mailed|
|Nov 14, 2011||SULP||Surcharge for late payment|
|Nov 14, 2011||FPAY||Fee payment|
Year of fee payment: 4
|Oct 30, 2015||REMI||Maintenance fee reminder mailed|
|Mar 15, 2016||SULP||Surcharge for late payment|
Year of fee payment: 7
|Mar 15, 2016||FPAY||Fee payment|
Year of fee payment: 8