USER INTERFACES FOR DISPLAYING RELATIONSHIPS BETWEEN CELLS IN A GRID
User interfaces for displaying visual representations of relationships between cells in a grid. In one example embodiment, a user interface includes a grid including rows and columns, a viewport that displays only a portion of the grid, and a plurality of cells each having a specific position in one of the rows and one of the columns of the grid. A first one of the cells is related to a second one of the cells that is positioned in a different one of the rows and a different one of the columns of the grid from the first cell such that the first cell and the second cell are not capable of being displayed in the viewport at the same time. The viewport is configured to display, upon selection of the first cell displayed in the viewport, a completely visible visual representation in the viewport of the relationship between the first cell and the second cell.
Grid-based user interfaces often store content in rows and columns of cells. In general, cells in a row are related in some manner and/or cells in a column are also related in some manner. However, beyond simple relationships that are manifest by the row and/or column positioning of a cell, cells may have other relationships to cells that do not share the same row and/or the same column. Such relationships may not be perfectly linear as implied by the X-Y structure of a grid. Unfortunately, current grid-based user interfaces are not capable of establishing and displaying relationships between individual cells in a grid beyond basic row and/or column positioning of cells.
BRIEF SUMMARY OF SOME EXAMPLE EMBODIMENTSIn general, example embodiments of the invention relate to user interfaces for displaying relationships between cells in a grid. At least some of the example user interfaces disclosed herein enable relationships between individual cells in a grid to be established and displayed, upon selection of one of the related cells, in the user interface. These embodiments enable nonlinear relationships to be displayed outside of the normal parameters of the contiguous X-Y structure of the grid.
In one example embodiment, a non-transitory computer-readable medium stores a program configured to cause a processor to generate a user interface on a display device associated with the processor. The user interface includes a grid including rows and columns, a viewport that displays only a portion of the grid, and a plurality of cells each having a specific position in one of the rows and one of the columns of the grid. A first one of the cells is related to a second one of the cells that is positioned in a different one of the rows and a different one of the columns of the grid from the first cell such that the first cell and the second cell are not capable of being displayed in the viewport at the same time. The viewport is configured to display, upon selection of the first cell displayed in the viewport, a completely visible visual representation in the viewport of the relationship between the first cell and the second cell.
In another example embodiment, a non-transitory computer-readable medium stores a program configured to cause a processor to generate a user interface on a display device associated with the processor. The user interface includes a grid including rows and columns, a plurality of cells each having a specific position in one of the rows and one of the columns of the grid, with a first one of the cells being related to a second one of the cells that is positioned in a different one of the rows and a different one of the columns of the grid from the first cell, and a viewport that displays only a portion of the grid. The viewport is not capable of displaying the second cell simultaneously with the first cell because the specific position of the second cell in the grid is too far from the specific position of the first cell in the grid to be displayed in the viewport at the same time. The viewport is configured, upon selection of the first cell displayed in the viewport, to reposition a gathered version of the second cell out of its specific position in the grid and into a position within the viewport in order to display a completely visible visual representation of the relationship between the first cell and the gathered version of the second cell.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential characteristics of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
Additional features will be set forth in the description which follows or may be learned by the practice of the teachings herein. Features of the invention may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. Features of the present invention will become more fully apparent from the following description and appended claims, or may be learned by the practice of the invention as set forth hereinafter.
To further clarify certain aspects of the present invention, a more particular description of the invention will be rendered by reference to example embodiments thereof which are disclosed in the appended drawings. It is to be understood that the drawings are diagrammatic and schematic representations of such example embodiments, and are not limiting of the present invention, nor are they necessarily drawn to scale. Aspects of the invention will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:
Example embodiments of the present invention relate to user interfaces for displaying relationships between cells in a grid. At least some of the example user interfaces disclosed herein enable relationships between individual cells in a grid to be established and displayed, upon selection of one of the related cells, in the user interface. These embodiments enable nonlinear relationships to be displayed outside of the normal parameters of the contiguous X-Y structure of the grid.
As used herein, the term “grid” is not limited to a grid made up of rectangular cells organized into X-Y rows and columns. Therefore, although the grids of the example user interfaces disclosed herein are generally grids made up of rectangular cells organized into X-Y rows and columns, it is understood that the term “grid” can also encompass a grid with non-rectangular cells, such as a spherical grid, and/or a grid that does not have linear vertical and horizontal X-Y rows and columns, such as diagonal or curved rows and columns.
The user interface 200 also includes a viewport 208, a viewtracker 210, a search box 212, a target box 214, and a user options selector 216.
Since the grid 202 is too large to be displayed all at once, the viewport 208 displays only a portion of the grid 202. The user interface 200 enables a user to reposition the grid 202 within the viewport 208 to allow the user to navigate to any portion of the grid 202. This repositioning may be accomplished, for example, by dragging the grid using a mouse pointer on a non-touch display or using a finger on a touch display.
The viewtracker 210 includes a grid representation 218 of the grid 202 and a viewport representation 220 of the viewport 208. The viewport representation 220 is positioned within the grid representation 218 and overlays the grid representation 218. The viewport representation 220 visually conveys both the proportion of the grid 202 currently displayed in the viewport 208 as well as the position within the grid 202 of the portion of the grid 202 displayed in the viewport 208, thereby helping the user visualize where the user is in terms of either additional or total content to be viewed or progress along the progression of the grid 202. During scrolling within the viewport 208, the viewport representation 220 may also convey the rate of travel through the grid 202.
The search box 212 allows a user to search for a specific cell or a specific cell content within the grid 202. The target box 214 displays the target of the grid. The target of the grid 202 may be, for example, an individual, a group of individuals, an animal, a computer program, a project, a company, a car model, a series of paintings, or anything to which a range or value or rating or score can be determined or assigned, for which a sense of status change or progress can be represented or tracked. In
Additional details about cluster cells, header rows, and header columns, viewports, viewtrackers, and search boxes are disclosed in U.S. patent application Ser. No. 13/271,882.
Each of the cells disclosed in the grid 202 of
A relationship between cells may have one or more aspects. An aspect of a relationship may include, but is not limited to, the relationship's type, degree, weight, magnitude, order, or sequence. A relationship type may be, for example, a human relationship (e.g., parent/child, sibling, child/parent, or spouse), an organizational relationship (e.g., employer/employee, investor/board, or parent corporation/subsidiary), a logical relationship (e.g., related “see also” content or prerequisite), a conceptual relationship (e.g., a broader concept in one cell and a narrower concept in another cell), or a semantic relationship (e.g., the meaning of words in one cell being semantically related to the meaning of words in another cell). Other relationship aspects are also possible, and the term “aspect” is not limited to these examples.
The relationships between cells may be established manually by a user or automatically by the user interface 200 and these relationships may be viewed as nodes along a “relational thread”. For example, the user interface 200 may be configured to allow a user to specify the relationship and one or more aspects of the relationship between two or more cells. This may be accomplished using an options display (not shown) that is accessed by selecting the user options selector 216 of the user interface 200. As used herein, the term “user” includes not only an end user of the user interface 200, but any other user, such as a content author or an interface administrator. Also, the user interface 200 may be configured to allow a user to create and define custom relationships between cells by using any of various methods, for example, using a provided drawing palette provided within the user interface 200 that includes pre-defined relational data objects and drawing tools that the user may assign to cell pairs or groupings of cells. Similarly, the user interface 200 may automatically establish relationships between cells by, for example, matching cell content or tracking user interaction patterns with cells.
The user interface 200 may also be configured to display a related-cells indicator when a cell has related cells. For example, where a cell in the grid 202 has a certain number of related cells, that number may be displayed in the cell inside a circle as disclosed in
It is understood that although the user interface 200 is disclosed in
Although lines are used in
In particular,
Further, in other example embodiments, the selection of a single cell can result in the display of a web of relationships between cells that are even indirectly related to the selected cell. In these example embodiments, the entire web of cell may be gathered into the viewport 208 and possibly reduced in size to allow all cells in the web to fit in the viewport 208.
It is understood that while the lines, pop-up windows, and gathered cells with lines are disclosed herein as three example forms of a visual representation of relationships between cells, various other forms of a visual representation of relationships between cells are also possible. Therefore, the phrase “a visual representation of a relationship between cells,” or variations thereof, are not limited to one of these three example forms.
The embodiments described herein may include the use of a special purpose or general purpose computer including, but not limited to, a cell phone, smartphone, smart appliance, automobile, navigation system, tablet computer, laptop computer, desktop computer, media player, and the like that is equipped with a display, including various computer hardware or software modules, as discussed in greater detail below.
Embodiments described herein may be implemented using computer-readable media for carrying or having computer-executable instructions or data structures stored thereon. Such computer-readable media may be any available media that may be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such computer-readable media may include non-transitory computer-readable storage media including RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other storage medium which may be used to carry or store desired program code in the form of computer-executable instructions or data structures and which may be accessed by a general purpose or special purpose computer. Combinations of the above may also be included within the scope of computer-readable media.
Computer-executable instructions comprise, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing device to perform a certain function or group of functions. Although the subject matter has been described in language specific to structural features and/or methodological steps, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or steps described above. Rather, the specific features and steps described above are disclosed as example forms of implementing the claims.
As used herein, the term “module” may refer to software objects or routines that execute on a computing system. The different modules described herein may be implemented as objects or processes that execute on a computing system (e.g., as separate threads). While the system and methods described herein are preferably implemented in software, implementations in hardware or a combination of software and hardware are also possible and contemplated.
All examples and conditional language recited herein are intended for pedagogical objects to aid the reader in understanding the example embodiments and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically-recited examples and conditions.
Claims
1. A non-transitory computer-readable medium storing a program configured to cause a processor to generate a user interface on a display device associated with the processor, the user interface comprising:
- a grid including rows and columns;
- a viewport that displays only a portion of the grid; and
- a plurality of cells each having a specific position in one of the rows and one of the columns of the grid, a first one of the cells being related to a second one of the cells that is positioned in a different one of the rows and a different one of the columns of the grid from the first cell such that the first cell and the second cell are not capable of being displayed in the viewport at the same time, the viewport being configured to display, upon selection of the first cell displayed in the viewport, a completely visible visual representation in the viewport of the relationship between the first cell and the second cell.
2. The non-transitory computer-readable medium as recited in claim 1, wherein the relationship is a semantic relationship in which the meaning of words in first content of the first cell are semantically related to the meaning of words in second content of the second cell.
3. The non-transitory computer-readable medium as recited in claim 1, wherein one or more of the cells of the grid are non-rectangular cells.
4. The non-transitory computer-readable medium as recited in claim 1, wherein:
- the grid is configured to display, upon selection of a third one of the cells, a visual representation of a relationship between the second cell and the third cell and thereby also display a visual representation of an indirect relationship between the first cell and the third cell; and
- the relationship between the first and second cells has a different relationship type from the relationship between the second and third cells.
5. The non-transitory computer-readable medium as recited in claim 4, wherein:
- the relationship between the first and second cells is a “prerequisite” relationship; and
- the relationship between the second and third cells is a “see also” relationship.
6. The non-transitory computer-readable medium as recited in claim 1, wherein the viewport is further configured to reposition a gathered version of the second cell, which includes the second cell or a copy of the second cell, out of its original position in the grid and into the viewport in order to display the visual representation of the relationship between the first cell and the second cell.
7. The non-transitory computer-readable medium as recited in claim 6, wherein the viewport is further configured to modify the gathered version of the second cell in its size, shape, or other visual aspect of its appearance.
8. The non-transitory computer-readable medium as recited in claim 6, wherein the viewport is further configured to overlay the gathered version of the second cell on top of the grid.
9. The non-transitory computer-readable medium as recited in claim 8, wherein the viewport is further configured to gray out or otherwise diminish the grid when the gathered version of the second cell is overlaid on top of the grid.
10. The non-transitory computer-readable medium as recited in claim 1, wherein the relationship between the first cell and the second cell is configured to be defined by a user using a drawing palette included within the user interface that includes predefined relational data objects and drawing tools that the user may assign to cell pairs or groupings of cells.
11. The non-transitory computer-readable medium as recited in claim 1, wherein the relationship between the first cell and the second cell is a node along a relational thread.
12. The non-transitory computer-readable medium as recited in claim 1, wherein:
- the grid is configured to display the visual representation of the relationship using a line connecting the first cell to the second cell; and
- an aspect of the relationship is represented by the weight of the line.
13. The non-transitory computer-readable medium as recited in claim 1, wherein the grid is configured to display the visual representation of the relationship using a separate interface object that overlays one or more cells in the grid and that lists the relationship between the first cell and the second cell.
14. The non-transitory computer-readable medium as recited in claim 1, wherein the user interface is configured to allow a user to specify the relationship and one or more aspects of the relationship.
15. A non-transitory computer-readable medium storing a program configured to cause a processor to generate a user interface on a display device associated with the processor, the user interface comprising:
- a grid including rows and columns;
- a plurality of cells each having a specific position in one of the rows and one of the columns of the grid, a first one of the cells being related to a second one of the cells that is positioned in a different one of the rows and a different one of the columns of the grid from the first cell; and
- a viewport that displays only a portion of the grid, the viewport not being capable of displaying the second cell simultaneously with the first cell because the specific position of the second cell in the grid is too far from the specific position of the first cell in the grid to be displayed in the viewport at the same time, the viewport being configured, upon selection of the first cell displayed in the viewport, to reposition a gathered version of the second cell out of its specific position in the grid and into a position within the viewport in order to display a completely visible visual representation of the relationship between the first cell and the gathered version of the second cell.
16. The non-transitory computer-readable medium as recited in claim 15, wherein the viewport is further configured to modify the gathered version of the second cell in its size, shape, or other visual aspect of its appearance.
17. The non-transitory computer-readable medium as recited in claim 15, wherein the viewport is further configured to overlay the gathered version of the second cell on top of the grid.
18. The non-transitory computer-readable medium as recited in claim 15, wherein the relationship is a semantic relationship in which the meaning of words in first content of the first cell are semantically related to the meaning of words in second content of the second cell.
19. The non-transitory computer-readable medium as recited in claim 15, wherein the viewport is further configured to gray out or otherwise diminish the grid when the gathered version of the second cell is overlaid on top of the grid.
20. The non-transitory computer-readable medium as recited in claim 15, wherein the relationship between the first cell and the second cell is a node along a relational thread.
Type: Application
Filed: Apr 21, 2015
Publication Date: Dec 3, 2015
Inventor: Thomas D. Holt (Atherton, CA)
Application Number: 14/692,394