Methods and systems for creating and using skins
First Claim
1. A computer-implemented method of providing a skin comprising:
- providing multiple skin elements that comprise part of a user interface; and
synchronizing a property of at least a first of the skin elements with a property of a second of the skin elements such that a change in the property of the second of the elements causes a change in the property of the first of the elements.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and systems for creating and rendering skins are described. In one described embodiment skins can be defined as sets of script files, art files, media files, and text files. These files can be used to create new and different skin appearances, layouts and functionalities. The files are organized for use using a hierarchical tag-based data structure, an example of which is an XML data structure. The data structure is processed to provide an object model. The object model can be a scriptable object model that enables script to execute to provide an interactive, dynamic skin that can respond to internal and external events. In one embodiment, a computer architecture used for rendering the skin includes a layout manager that processes an intermediate representation of the XML data structure to provide the scriptable object model. Various components of the scriptable object model can include a script engine for receiving and executing script, and one or more rendering elements. Each rendering element represents a different skin element and can be individually configured to respond to script via the script engine. The inventive systems and techniques can provide a robust, dynamic skin that can be rendered and re-rendered at runtime. In other embodiments, properties associated with a skin'"'"'s elements can be synchronized with other skin element properties or state that is associated with a software application. Synchronization can take place through the use of keywords that can be used in connection with the XML data structure. Synchronizations can be one- or two-way synchronizations.
62 Citations
41 Claims
-
1. A computer-implemented method of providing a skin comprising:
-
providing multiple skin elements that comprise part of a user interface; and
synchronizing a property of at least a first of the skin elements with a property of a second of the skin elements such that a change in the property of the second of the elements causes a change in the property of the first of the elements. - View Dependent Claims (2, 3)
-
-
4. One or more computer-readable media having computer-readable instructions thereon which, when executed by a computer, cause the computer to:
-
provide multiple skin elements that comprise part of a user interface; and
synchronize a property of at least a first of the skin elements with a property of a second of the skin elements such that a change in the property of the second of the elements causes a change in the property of the first of the elements.
-
-
5. One or more computer-readable media embodying a skin, the skin comprising:
-
a first skin element having at least one property; and
a second skin element having at least one property, the first skin element'"'"'s property being synchronized with the second element'"'"'s property independent of a script-enabled, event-response paradigm comprising a part of either skin element. - View Dependent Claims (6, 7)
-
-
8. One or more computer-readable media embodying a skin, the skin comprising:
-
at least a first skin element having at least one property;
at least a second skin element having at least one property; and
a hierarchical tag-based data structure configured to establish a synchronization between said at least one property of said first skin element and said at least one property of the second skin element. - View Dependent Claims (9)
-
-
10. A computer-implemented method of providing a skin comprising:
-
providing multiple skin elements that comprise part of a user interface that is executing under the influence of a software application;
synchronizing a property of at least one of the skin elements with a state associated with the software application such that a change in the state of the software application causes a change in the property of the one skin element. - View Dependent Claims (11, 12, 13, 14)
-
-
15. One or more computer-readable media embodying a computer architecture configured to render a skin, the architecture comprising:
-
a first object model component having at least one property;
a second object model component having at least one property that is to be synchronized to the one property of the first object model component;
a central processing object associated with the first and second object model components;
the first object model component being configured to generate a notification responsive to the one property being changed; and
the central processing object being configured to receive the notification and route a property change value to the second object model component so that its one property can be synchronized with the one property of the first object model component. - View Dependent Claims (16, 17, 18)
-
-
19. One or more computer-readable media embodying a computer architecture configured to render a skin, the architecture comprising:
-
multiple object model components having properties and being configured to have one or more of their properties synchronized with either or both of (1) properties of other object model components and (2) a state associated with a software application of which they comprise a part;
an event manager configured to receive and route notifications pertaining to object model property changes and state changes; and
a property registrar configured to receive notifications from the event manager and route property values associated with such notifications to appropriate object model components so that their associated properties can be synchronized. - View Dependent Claims (20, 21, 22, 23)
-
-
24. One or more computer-readable media embodying a computer architecture configured to render a skin, the architecture comprising:
-
multiple object model components having properties and being configured to have one or more of their properties synchronized one or more properties of other object model components;
an event manager configured to receive and route notifications pertaining to property changes, the event manager comprising multiple synchronization objects, individual synchronization objects being associated with and receiving and routing notifications from individual respective object model components; and
a property registrar having multiple registrar objects, each registrar object being associated with a different property and being configured to receive notifications from one or more synchronization objects and route values associated with such notifications to appropriate object model components that are interested in having one or more of their properties synchronized. - View Dependent Claims (25)
-
-
26. A computer-implemented method of providing a skin comprising:
-
providing multiple object model components each of which having one or more properties;
generating, with an object model component, a notification when one or more of its properties changes;
receiving the notification with an event manager;
routing, with the event manager, the notification to a property registrar;
routing, with the property registrar, one or more values associated with the notification to one or more object model components that have properties that are to be synchronized with the one or more properties of the object model component that generated the notification. - View Dependent Claims (27, 28)
-
-
29. One or more computer-readable media having computer-readable instructions thereon which, when executed by a computer, cause the computer to:
-
provide multiple object model components each of which having one or more properties;
generate, with an object model component, a notification when one or more of its properties changes;
receive the notification with an event manager comprising multiple synchronization objects, one for each object model component, each synchronization object receiving notifications from their associated object model component;
route, with at least one synchronization object, the notification to a property registrar comprising a registrar object for each property to which synchronization is desired, each registrar object being configured to route values to object model components that are listeners of the particular registrar object; and
route, with the property registrar objects, one or more values associated with the notification to one or more object model components that have properties that are to be synchronized with the one or more properties of the object model component that generated the notification.
-
-
30. A computer-implemented method of providing a skin comprising:
-
receiving one or more notifications that pertain to a property or state change associated with a skin;
determining whether any object model components associated with the skin are interested in the property or state change;
responsive to determining that one or more object model components are interested in the property or state change, notifying the one or more object model components so that one or more of their properties can be synchronized relative to the property or state change. - View Dependent Claims (31)
-
-
32. One or more computer-readable media having computer-readable instructions thereon which, when executed by a computer, cause the computer to:
-
receive one or more notifications that pertain to a property or state change associated with a skin;
determine whether any object model components associated with the skin are interested in the property or state change;
responsive to one or more object model components being interested in the property or state change, notify the one or more object model components so that one or more of their properties can be synchronized relative to the property or state change.
-
-
33. A computer-implemented method of providing a skin comprising:
-
providing multiple skin elements that comprise part of a user interface; and
synchronizing, using a hierarchical tag-based data structure, a property of at least a first of the skin elements with a property of a second of the skin elements such that a change in the property of the second of the elements causes a change in the property of the first of the elements. - View Dependent Claims (34, 35, 36, 37, 39, 40)
-
-
38. A computing device comprising:
-
code means for providing multiple skin elements that comprise part of a user interface; and
code means for synchronizing, using a hierarchical tag-based data structure, a property of at least a first of the skin elements with a property of a second of the skin elements such that a change in the property of the second of the elements causes a change in the property of the first of the elements.
-
-
41. A computer-implemented method of providing a skin comprising:
-
providing multiple skin elements that comprise part of a user interface that is executing under the influence of a software application;
synchronizing, using a hierarchical tag-based data structure, a property of at least one of the skin elements with a state associated with the software application such that a change in the state of the software application causes a change in the property of the one skin element.
-
Specification