Method and apparatus for designing, rendering and programming a user interface
First Claim
Patent Images
1. A method of generating displayed elements in a user interface (UI) on a device selected from a plurality of devices, comprising:
- a) providing three conceptual components to represent said displayed elements in said UI, said three conceptual components comprisinga container component defining frame objects relating to parent objects in common frames in said UI and having a set of child conceptual components defining child elements in said common frames;
a control component defining control objects used to generate input selections relating to said displayed elements in said UI; and
a text component defining text entry objects used to process text entries relating to said displayed elements in said UI;
b) providing a first data structure as a tree providing a representation of said UI, where each node of said tree represents a part of said displayed elements and comprisesa second data structure for one of said three conceptual components;
a third data structure for labels used to identify said frame objects, said control objects and said text entry objects;
a vector parameter containing array data associating said labels to said frame objects, said control objects and said text entry objects;
a set of directions representing a layout of said displayed elements in said UI and being mapped to each dimension of said vector parameter; and
a fourth data structure comprising one of;
a set of child conceptual components if said node is said container component;
an input selection template, if said node is said control component, that allows a user to perform selections,comprising a label data structure providing selection domain and identifiers; and
a text field template, if said node is said text component, that allows text to be entered by a user for said element;
c) rendering said representation for said device to generate native controls used to display said displayed elements of said UI, utilizingsaid array data in said vector parameter to determinea size for said first data structure; and
a size for said frame objects, said control objects and said text entry objects, corresponding to a size of said frame objects of a parent of said container component, if said parent exists, and said vector parameter; and
in said each node in said tree, its vector parameter, the vector parameters of its parent nodes and its fourth data structure to render its element on said UI for said device; and
d) rendering said displayed elements on said device using said native controls.
2 Assignments
0 Petitions
Accused Products
Abstract
A method of displaying a user interface, comprising the steps of first obtaining a representation of the user interface. The representation includes conceptual components representing multi-dimensional arrays of elements of the user interface. The conceptual components include a vector parameter related to a multi-dimensional size of the array, and matrices having dimensions related to those of the array.
The method proceeds by executing a device-specific rendering algorithm on the representation of the user interface and displaying the user interface on the device.
93 Citations
35 Claims
-
1. A method of generating displayed elements in a user interface (UI) on a device selected from a plurality of devices, comprising:
-
a) providing three conceptual components to represent said displayed elements in said UI, said three conceptual components comprising a container component defining frame objects relating to parent objects in common frames in said UI and having a set of child conceptual components defining child elements in said common frames; a control component defining control objects used to generate input selections relating to said displayed elements in said UI; and a text component defining text entry objects used to process text entries relating to said displayed elements in said UI; b) providing a first data structure as a tree providing a representation of said UI, where each node of said tree represents a part of said displayed elements and comprises a second data structure for one of said three conceptual components; a third data structure for labels used to identify said frame objects, said control objects and said text entry objects; a vector parameter containing array data associating said labels to said frame objects, said control objects and said text entry objects; a set of directions representing a layout of said displayed elements in said UI and being mapped to each dimension of said vector parameter; and a fourth data structure comprising one of; a set of child conceptual components if said node is said container component; an input selection template, if said node is said control component, that allows a user to perform selections, comprising a label data structure providing selection domain and identifiers; and a text field template, if said node is said text component, that allows text to be entered by a user for said element; c) rendering said representation for said device to generate native controls used to display said displayed elements of said UI, utilizing said array data in said vector parameter to determine a size for said first data structure; and a size for said frame objects, said control objects and said text entry objects, corresponding to a size of said frame objects of a parent of said container component, if said parent exists, and said vector parameter; and in said each node in said tree, its vector parameter, the vector parameters of its parent nodes and its fourth data structure to render its element on said UI for said device; and d) rendering said displayed elements on said device using said native controls. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
-
-
34. A system for generating displayed elements in a user interface (UI) on a device, comprising:
-
electronic memory for storing and updating a plurality of data structures; a first data structure of said plurality of data structures, said first data structure being a tree providing a representation of said UI, where each node of said tree represents a part of said displayed elements and comprises a second data structure for one of said three conceptual components; a third data structure for labels used to identify said frame objects, said control objects and said text entry objects; a vector parameter containing array data associating said labels to said frame objects, said control objects and said text entry objects; a set of directions representing a layout of said displayed elements in said UI and being mapped to each dimension of said vector parameter; and a fourth data structure comprising one of; a set of child conceptual components if said node is said container component; an input selection template, if said node is said control component, that allows a user to perform selections, comprising a label data structure providing selection domain and identifiers; and a text field template, if said node is said text component, that allows text to be entered by a user for said element; a processor for accessing said electronic memory and executing instructions; a display; and a rendering engine providing instructions to said processor for rendering said representation for said device to generate native controls used to generate said displayed elements of said UI on said display, said rendering engine providing instructions to said processor to render said displayed elements on said display using said native controls, said rendering engine utilizing said array data in said vector parameter to determine a size for said first data structure; a size for said frame objects, said control objects and said text entry objects, corresponding to a size of said frame objects of a parent of said container component, if said parent exists, and said vector parameter; and
in said each node in said tree, its vector parameter, the vector parameters of its parent nodes and its fourth data structure to render its element on said UI for said device. - View Dependent Claims (35)
-
Specification