Binary cache file format for themeing the visual appearance of a computer system
First Claim
1. A computer system configured for providing themes for graphical components, the computer system having memory, the computer system comprising:
- a selecting module receiving a user request for a selected theme having an associated non-binary theme file with theme properties;
a converting module converting the associated non-binary theme file into a binary theme file to facilitate retrieval of theme properties; and
a loading module loading the binary theme file into the memory so that themes can be applied to the graphical components.
2 Assignments
0 Petitions
Accused Products
Abstract
A binary theme file format provides optimized access to retrieve graphical component theme property data. The binary format includes data structures storing a set of defined visual characteristics for graphical component classes, parts, and states. The data structure includes a hierarchy of theme data. A theme manager quickly retrieves theme property data by indexing into the binary file with a unique theme handle. The theme manager accesses state, part, class, and global property sections to retrieve theme data. Jump tables and jump-to-parent references allow for quickly traversing property data sections. Packed data sections have packed objects having the necessary property data for frequently used graphical components. A custom image region data section provides border data for nontransparent image borders. A sampled colors section facilitates rendering of images with solid sections. The binary file format can be constructed using a text theme file and is loaded into shared process memory.
44 Citations
47 Claims
-
1. A computer system configured for providing themes for graphical components, the computer system having memory, the computer system comprising:
-
a selecting module receiving a user request for a selected theme having an associated non-binary theme file with theme properties;
a converting module converting the associated non-binary theme file into a binary theme file to facilitate retrieval of theme properties; and
a loading module loading the binary theme file into the memory so that themes can be applied to the graphical components. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for creating a visual style for a set of graphical components for use on a computer system having a graphical operating environment and processes with shared memory, the method comprising:
-
selecting graphical components from a schema file of graphical components, that are desired to have a defined visual style, each component being defined by a unique class name;
assigning properties to the selected components according to the defined visual style so that each selected component has assigned properties;
grouping the pairs of selected graphical components and corresponding assigned properties for the defined visual style together in a class data file;
converting the class data file into a binary theme file having a class data section having class names and assigned properties in a binary format; and
loading the binary theme file into the shared memory so that a visual style can be used to render graphical components. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 18, 19, 20)
-
-
16. A method of applying a theme in a computer system having a graphical operating system and applications running thereon comprising:
-
receiving a user request to use a user selected theme defined by a text theme file;
creating a binary file from the text theme file;
loading the binary file into a shared memory area, capable of being shared by all applications;
notifying running applications that there is a new theme;
receiving a handle update request from a running application, the request having an application name;
searching for the application name in the binary file;
determining if the application name is in the binary file;
locating a theme handle in the binary file if the application name exists in the binary file; and
returning the located theme handle to the requesting application whereby theme properties can be applied to the application.
-
-
17. A method of retrieving graphical component theme property data on a computer system having a graphical operating system and processes, the method comprising:
-
receiving a rendering request from a graphical component, the request having a theme handle and a component state;
accessing a binary theme file to retrieve theme property data for the requesting process; and
retrieving graphical component theme property data from the binary theme file.
-
-
21. A computer program product readable by a computing system and encoding a computer program of instructions for executing a computer process for creating a visual style for a set of graphical components for use on a computer system having a graphical operating environment and processes with shared memory, said computer process comprising:
-
selecting graphical components from a schema file of graphical components, that are desired to have a defined visual style, each component being defined by a unique class name;
assigning properties to the selected components according to the defined visual style so that each selected component has assigned properties;
grouping the pairs of selected graphical components and corresponding assigned properties for the defined visual style together in a class data file;
converting the class data file into a binary theme file having a class data section having class names and assigned properties in a binary format; and
loading the binary theme file into the shared memory so that a visual style can be used to render graphical components. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28)
-
-
29. A computer program product readable by a computing system and encoding a computer program of instructions for executing a computer process for applying a theme in a computer system having a graphical operating system and applications running thereon comprising:
-
receiving a user request to use a user selected theme defined by a text theme file;
creating a binary file from the text theme file;
loading the binary file into a shared memory area, capable of being shared by all applications;
notifying running applications that there is a new theme;
receiving a handle update request from a running application, the request having an application name;
searching for the application name in the binary file;
determining if the application name is in the binary file;
locating a theme handle in the binary file if the application name exists in the binary file; and
returning the located theme handle to the requesting application whereby theme properties can be applied to the application.
-
-
30. A computer program product readable by a computing system and encoding a computer program of instructions for executing a computer process for retrieving graphical component theme property data on a computer system having a graphical operating system and processes, the method comprising:
-
receiving a rendering request from a graphical component, the request having a theme handle and a component state;
accessing a binary theme file to retrieve theme property data for the requesting process; and
retrieving graphical component theme property data from the binary theme file. - View Dependent Claims (31, 32, 33, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47)
-
-
34. A computer-readable medium having a data structure stored thereon with one or more theme data sections for providing a theme property for a graphical component in a themeable windows environment of a computer system, the graphical component being associaed with a target class comprising:
-
a class data section having one or more first theme properties, each first theme property being associated with a class of a component;
a global data section having one or more second theme properties, each second theme property being associated with any class of graphical component; and
a jump-to-parent entry storing a reference into the global data section to provide access to a second theme property if a first theme property for a target class does not exist in the class data section.
-
Specification