Source code semantic zoom and spatial layout
First Claim
1. A system having a processor comprising:
- at least one artifact comprising data relating to entities and relationships between the entities;
a diagramming surface to represent the entities and the relationships between the entities;
the processor to render views of data relating to the entities and the relationships between the entities on the diagramming surface,a real-time viewer operably coupled to the diagramming surface, the real time viewer comprising;
(a) at least one retrieval module to retrieve data from the at least one artifact comprising the data and the relationships to be rendered by the rendering engine, and(b) a plurality of controls to proportionally manipulate views of the data and the relationships to be rendered by the rendering engine, at least one of the controls comprising an in-place editor and at least one of the controls comprising a panning and zooming control, in which the proportionally manipulating comprises proportionally shrinking the data with the relationships, wherein the zooming control proportionally manipulates the views among a plurality of layers of abstraction of source code including an intermediate level view with details of object attributes and the source code reduced in size such that the source code is not shown.
2 Assignments
0 Petitions
Accused Products
Abstract
The present disclosure describes an apparatus and a method for contemporaneously viewing code structure in a diagram as well as source code facilitated by a semantic zoom and pan feature and enabled via use of advanced rendering engines. The apparatus and method support in-place editing where edits are represented on the diagram in real-time. One example system includes a diagramming surface, an advanced rendering engine, viewers with controls and data retrieval modules, a data store with data loaded from source code well as external sources, and workers possibly implemented as background threads to monitor changes. One example method enables layers where a subset of data is viewed and a corresponding control is used to manipulate the data. An advanced rendering engine enables a wide range of user interface techniques, including but not limited to semantic zoom and pan and in-place editing.
46 Citations
20 Claims
-
1. A system having a processor comprising:
-
at least one artifact comprising data relating to entities and relationships between the entities; a diagramming surface to represent the entities and the relationships between the entities; the processor to render views of data relating to the entities and the relationships between the entities on the diagramming surface, a real-time viewer operably coupled to the diagramming surface, the real time viewer comprising; (a) at least one retrieval module to retrieve data from the at least one artifact comprising the data and the relationships to be rendered by the rendering engine, and (b) a plurality of controls to proportionally manipulate views of the data and the relationships to be rendered by the rendering engine, at least one of the controls comprising an in-place editor and at least one of the controls comprising a panning and zooming control, in which the proportionally manipulating comprises proportionally shrinking the data with the relationships, wherein the zooming control proportionally manipulates the views among a plurality of layers of abstraction of source code including an intermediate level view with details of object attributes and the source code reduced in size such that the source code is not shown. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method to manipulate a representation of entities and relationships between entities and session state information of the representation in a computer user interface, the method comprising:
-
retrieving data relating to entities and relationships between entities from at least one artifact comprising data relating to entities and relationships between entities; storing user interface session state information of the representation comprising navigation and rendering information specific to a session; rendering the data relating to the entities and the relationships between entities on a diagramming surface comprising a representation of entities and relationships between entities; manipulating data relating to entities and relationships between entities and user interface session state information of the representation by; (a) panning across the representation of entities and relationships between entities, and (b) zooming in or out of the representation of entities and relationships between entities, in which the zooming proportionally manipulates the data among a plurality of layers of abstraction of source code including an intermediate level view with details of entity attributes and the source code reduced in size such that the source code is not shown, wherein the zooming out comprises proportionally shrinking a structure of the source code with the source code. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer readable memory comprising instructions operable for a computer to perform a method, the method comprising:
-
retrieving data relating to entities and relationships between entities from at least one artifact comprising data relating to entities and relationships between entities; storing user interface session state information of the representation comprising navigation and rendering information specific to a session; rendering the data relating to the entities and the relationships between entities on a diagramming surface comprising a representation of entities and relationships between entities; manipulating data relating to entities and relationships between entities and user interface session state information of the representation by; (a) panning across the representation of entities and relationships between entities, and (b) zooming in or out of the representation of entities and relationships between entities, in which the zooming control proportionally manipulates the data among a plurality of layers of abstraction of source code including an intermediate level view with details of entity attributes and the source code reduced in size such that the source code is not shown, wherein the zooming out comprises proportionally shrinking the source code with a structure of the source code.
-
Specification