Graphical user interface navigation method
First Claim
1. A method for navigating a graphical user interface (GUI) having at least one page, comprising:
- providing a first booklet, wherein user interaction with the first booklet can cause the GUI to navigate to a new page;
providing a request based on user interaction with the first booklet;
mapping the request to a control tree factory;
generating a control tree from the factory based on the request wherein the control tree includes a booklet control corresponding to the first booklet;
advancing the control tree through at least one lifecycle stage based on the request;
creating a metadata representation of a control tree;
generating a class to construct the control tree based on the metadata representation; and
generating a response wherein the response can be used to render the new page;
wherein the at least one lifecycle stage includes an event lifecycle stage where at least one control of the control tree raise events to communicate with another control of the control tree;
wherein the event stage occurs before a render lifecycle stage and wherein in the render stage the controls of the control tree create their own GUI representation; and
wherein a pre-render lifecycle stage occurs between the event lifecycle stage and the render lifecycle stage and wherein an additional control is dynamically added to the control tree at a stage before the pre-render lifecycle stage and wherein when the additional control is added to the control tree dynamically, a lifecycle catch-up process drives the additional control through lifecycle stages until the additional control catches-up to a current stage;
wherein when current stage is at a pre-render stage or later, the additional control is driven through at least an “
init”
, “
load” and
“
raise events”
lifecycle stage so that the additional control catches up to the current state;
wherein the controls of the control tree include a number of classes including a base control class;
the base control class defines a set of services available to all controls,wherein the lifecycles are defined by a set of methods representing stages in the lifecycle, a control can override methods of the lifecycle, at least one lifecycle stage can comprise two methods that are called by lifecycle driver;
wherein a Lifecycle class defines methods called during the control'"'"'s lifecycle;
lifecycle events can have two methods, a base method to provide the lifecycle service for the control, and a method called to raise an event;
wherein the controls have three types of names;
a user assigned value that is unique within a name scope,a generated name that is unique within a scope, anda globally unique name of the control;
wherein the naming scope provides support foruniquely naming a control within a tree;
unique names are used for state management.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for navigating a graphical user interface (GUI) having at least one page, comprising providing a first booklet, wherein user interaction with the first booklet can cause the GUI to navigate to a new page; providing a request based on user interaction with the first booklet; mapping the request to a control tree factory; generating a control tree from the factory based on the request wherein the control tree includes a booklet control corresponding to the first booklet; advancing the control tree through at least one lifecycle stage based on the request; and generating a response wherein the response can be used to render the new page.
52 Citations
44 Claims
-
1. A method for navigating a graphical user interface (GUI) having at least one page, comprising:
-
providing a first booklet, wherein user interaction with the first booklet can cause the GUI to navigate to a new page; providing a request based on user interaction with the first booklet; mapping the request to a control tree factory; generating a control tree from the factory based on the request wherein the control tree includes a booklet control corresponding to the first booklet; advancing the control tree through at least one lifecycle stage based on the request; creating a metadata representation of a control tree; generating a class to construct the control tree based on the metadata representation; and generating a response wherein the response can be used to render the new page; wherein the at least one lifecycle stage includes an event lifecycle stage where at least one control of the control tree raise events to communicate with another control of the control tree;
wherein the event stage occurs before a render lifecycle stage and wherein in the render stage the controls of the control tree create their own GUI representation; andwherein a pre-render lifecycle stage occurs between the event lifecycle stage and the render lifecycle stage and wherein an additional control is dynamically added to the control tree at a stage before the pre-render lifecycle stage and wherein when the additional control is added to the control tree dynamically, a lifecycle catch-up process drives the additional control through lifecycle stages until the additional control catches-up to a current stage; wherein when current stage is at a pre-render stage or later, the additional control is driven through at least an “
init”
, “
load” and
“
raise events”
lifecycle stage so that the additional control catches up to the current state;wherein the controls of the control tree include a number of classes including a base control class;
the base control class defines a set of services available to all controls,wherein the lifecycles are defined by a set of methods representing stages in the lifecycle, a control can override methods of the lifecycle, at least one lifecycle stage can comprise two methods that are called by lifecycle driver; wherein a Lifecycle class defines methods called during the control'"'"'s lifecycle; lifecycle events can have two methods, a base method to provide the lifecycle service for the control, and a method called to raise an event; wherein the controls have three types of names; a user assigned value that is unique within a name scope, a generated name that is unique within a scope, and a globally unique name of the control; wherein the naming scope provides support for uniquely naming a control within a tree; unique names are used for state management. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 43, 44)
-
-
14. A method for navigating a portal graphical user interface (GUI) having at least one page, comprising:
-
providing a first booklet, wherein user interaction with the first booklet can cause the GUI to navigate to a new portal page; providing a request based on user interaction with the first booklet; mapping the request to a control tree factory; generating a control tree from the factory based on the request wherein the control tree includes a booklet control corresponding to the first booklet; advancing the control tree through at least one lifecycle stage based on the request; generating a response wherein the response can be used to render the new portal page; and wherein the new page can be a second booklet; wherein the at least one lifecycle stage includes an event lifecycle stage where at least one control of the control tree raise events to communicate with another control of the control tree;
wherein the event lifecycle stage occurs before a render lifecycle stage and wherein in the render stage, the controls of the control tree create their own GUI representation; andwherein a pre-render lifecycle stage occurs between the event lifecycle stage and the render lifecycle stage; and wherein an additional control is dynamically added to the control tree at a stage before the pre-render lifecycle stage; and wherein when the additional control is added to the control tree dynamically, a lifecycle catch-up process drives the additional control through lifecycle stages until the additional control catches-up to a current stage; wherein when current stage is at a pre-render stage or later, the additional control is driven through at least an “
init”
, “
load” and
“
raise events”
lifecycle stage so that the additional control catches up to the current state;wherein when current stage is at a pre-render stage or later, the additional control is driven through at least an “
init”
, “
load” and
“
raise events”
lifecycle stage so that the additional control catches up to the current state.
-
-
15. A method for navigating a portal graphical user interface (GUI) having at least one page, comprising:
-
providing a first booklet, wherein user interaction with the first booklet can cause the GUI to navigate to a new portal page; providing a request based on user interaction with the first booklet; mapping the request to a control tree factory; generating a control tree from the factory based on the request wherein the control tree includes a booklet control corresponding to the first booklet; advancing the control tree through at least one lifecycle stage based on the request; creating a metadata representation of a control tree; generating a class to construct the control tree based on the metadata representation; generating a response wherein the response can be used to render the new portal page; and wherein the new page can be a second booklet; wherein the at least one lifecycle stage includes an event lifecycle stage where at least one control of the control tree raise events to communicate with another control of the control tree;
wherein the event lifecycle stage occurs before a render lifecycle stage and wherein in the render stage, the controls of the control tree create their own GUI representation; andwherein a pre-render lifecycle stage occurs between the event lifecycle stage and the render lifecycle stage; and wherein an additional control is dynamically added to the control tree at a stage before the pre-render lifecycle stage; and wherein when the additional control is added to the control tree dynamically, a lifecycle catch-up process drives the additional control through lifecycle stages until the additional control catches-up to a current stage; wherein when current stage is at a pre-render stage or later, the additional control is driven through at least an “
init”
, “
load” and
“
raise events”
lifecycle stage so that the additional control catches up to the current state;wherein the controls of the control tree include a number of classes including a base control class;
the base control class defines a set of services available to all controls,wherein the lifecycles are defined by a set of methods representing stages in the lifecycle, a control can override methods of the lifecycle, at least one lifecycle stage can comprise two methods that are called by lifecycle driver; wherein a Lifecycle class defines methods called during the control'"'"'s lifecycle;
lifecycle events can have two methods, a base method to provide the lifecycle service for the control, and a method called to raise an event;wherein the controls have three types of names; a user assigned value that is unique within a name scope, a generated name that is unique within a scope, and a globally unique name of the control; wherein the naming score provides support for uniquely naming a control within a tree; unique names are used for state management. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A machine readable storage medium having instructions stored thereon that when executed by a processor cause a system to:
-
provide a first booklet, wherein user interaction with the first booklet can cause a graphical user interface (GUI) to navigate to a new page; provide a request based on user interaction with the first booklet; map the request to a control tree factory; generate a control tree from the factory based on the request wherein the control tree includes a booklet control corresponding to the first booklet; advance the control tree through at least one lifecycle stages based on the request; create a metadata representation of a control tree; generate a class to construct the control tree based on the metadata representation; and generate a response wherein the response can be used to render the new page; wherein the at least one lifecycle stage includes an event lifecycle stage where at least one control of the control tree raise events to communicate with another control of the control tree;
wherein the event lifecycle stage occurs before a render lifecycle stage and wherein in the render stage, the controls of the control tree create their own GUI representation; andwherein a pre-render lifecycle stage occurs between the event lifecycle stage and the render lifecycle stage and wherein an additional control is dynamically added to the control tree at a stage before the pre-render lifecycle stage and wherein when the additional control is added to the control tree dynamically, a lifecycle catch-up process drives the additional control through lifecycle stages until the additional control catches- up to a current stage; wherein when current stage is at a pre-render stage or later, the additional control is driven through at least an “
init”
, “
load” and
“
raise events”
lifecycle stage so that the additional control catches up to the current state;wherein the controls of the control tree include a number of classes including a base control class;
the base control class defines a set of services available to all controls,wherein the lifecycles are defined by a set of methods representing stages in the lifecycle, a control can override methods of the lifecycle, at least one lifecycle stage can comprise two methods that are called by lifecycle driver; wherein a Lifecycle class defines methods called during the control'"'"'s lifecycle;
lifecycle events can have two methods, a base method to provide the lifecycle service for the control, and a method called to raise an event;wherein the controls have three types of names; a user assigned value that is unique within a name scope, a generated name that is unique within a scope, and a globally unique name of the control; wherein the naming score provides support for uniquely naming a control within a tree; unique names are used for state management. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41)
-
-
42. A computer readable storage medium, comprising:
-
a code segment including instructions to provide a first booklet, wherein user interaction with the first booklet can cause a graphical user interface (GUI) to navigate to a new page; a code segment including instructions to provide a request based on user interaction with the first booklet; a code segment including instructions to map the request to a control tree factory; a code segment including instructions to generate a control tree from the factory based on the request wherein the control tree includes a booklet control corresponding to the first booklet; a code segment including instructions to advance the control tree through at least one lifecycle stage based on the request; a code segment including instructions to create a metadata representation of a control tree; a code segment including instructions to generate a class to construct the control tree based on the metadata representation; and a code segment including instructions to generate a response wherein the response can be used to render the new page; wherein the at least one lifecycle stage includes an event lifecycle stage where at least one control of the control tree raise events to communicate with another control of the control tree;
wherein the event lifecycle stage occurs before a render lifecycle stage and wherein in the render stage, the controls of the control tree create their own GUI representation; andwherein a pre-render lifecycle stage occurs between the event lifecycle stage and the render lifecycle stage and wherein an additional control is dynamically added to the control tree at a stage before the pre-render lifecycle stage and wherein when the additional control is added to the control tree dynamically, a lifecycle catch-up process drives the additional control through lifecycle stages until the additional control catches- up to a current stage; wherein when current stage is at a pre-render stage or later, the additional control is driven through at least an “
init”
, “
load” and
“
raise events”
lifecycle stage so that the additional control catches up to the current state;wherein the controls of the control tree include a number of classes including a base control class;
the base control class defines a set of services available to all controls,wherein the lifecycles are defined by a set of methods representing stages in the lifecycle, a control can override methods of the lifecycle, at least one lifecycle stage can comprise two methods that are called by lifecycle driver; wherein a Lifecycle class defines methods called during the control'"'"'s lifecycle; lifecycle events can have two methods, a base method to provide the lifecycle service for the control, and a method called to raise an event; wherein the controls have three types of names; a user assigned value that is unique within a name scope, a generated name that is unique within a scope, and a globally unique name of the control; wherein the naming score provides support for uniquely naming a control within a tree; unique names are used for state management.
-
Specification