Developers can manage themes directly or through the use of theme subscriptions.
When an application subscribes to a master theme only the default templates can be changed. All theme attributes, subscribed template options, and subscribed templates are set to read-only. Additionally, developers cannot modify the theme or template metadata when they access it from the theme or template edit pages. Another advantage of theme subscriptions is that master themes can be upgraded during future Oracle Application Express releases.
Topics:
This section describes theme subscriptions.
Topics:
Developers subscribe to a theme when:
Running the Create Application Wizard.
When a developer select a built-in theme when running the Create Application Wizard, the theme is automatically subscribed to a master theme. As an alternative to using a built-in theme, the Create Application Wizard provides the option to copy a theme from an existing application. When copying a theme from an existing applications, developers can choose if they wish to have this theme be subscribed to. See "Using the Create Application Wizard."
Creating a new theme from the Theme repository. When you create a new theme the associated application automatically subscribes to it. See "Creating a Theme."
When an application subscribes to a master theme, all theme attributes, subscribed template options, and subscribed templates are set to read-only. In other words, only the default templates can be changed. The advantage of subscribing to a master theme is that the theme can be upgraded during future Oracle Application Express releases. When a theme is subscribed to, developers cannot modify the theme or template metadata when they access it from the theme or template edit pages.
To modify a template without breaking a subscription to the master theme, a developer can create a local copy of the template in their workspace. Local template copies are not subscribed to and are therefore editable. You can take the same approach with theme styles. You can create a local copy of a theme style and then add it to a subscribed theme. Theme styles created locally are editable but will be excluded from theme refreshes.
See Also:
The Verify Theme Subscription Wizard reviews all theme attributes, templates, and template options in the subscribing theme and raises errors for those that are not in sync with the master theme. The wizard also highlights any templates that are defined in the master theme but not yet published to the subscribing theme.
To run the Verify Theme Subscription Wizard:
Note:
Unsubscribing to a theme prevents future theme updates. Be aware that re-subscribing to a theme is multiple step process that involves copying and switching themes. To learn more, see "Re-subscribing to a Built-in Theme."
Unsubscribing a theme also removes the subscription from all templates, styles, files and so on that are part of the theme.
To unsubscribe to a theme:
Only themes currently associated with an application display on the Themes page. To access other themes, you must run the Create Theme Wizard. Once you create a theme, you can access it on the Themes page. You can create a theme from scratch or select an existing theme from the repository.
Tip:
When you create a new theme, the associated application automatically subscribes to it. See "Managing Themes and Subscriptions."
To create a theme:
See Also:
This section describes how to change the active theme for an application.
Topics:
When you switch to a theme, all components with assigned templates are assigned to a corresponding template in the theme. App Builder accomplishes template mapping through the assignment of template class identifiers.
When switching an active theme, remember:
You can only switch to a theme if the theme exists. For example, before you can switch to a theme available in the repository, you must first create it. See "Creating a Theme".
If the wizard locates multiple matches (that is, when several templates share the same template type and templates class), the wizard defaults to a template matching type, class, and name. If no match is found, you must select another template with the same type and class.
If no matching template is found (that is, no template with the same type and class exists) then you are prompted to select a template with the same type but with a different class. Then, a warning displays explaining this issue might lead to problems with page functionality, or issues with the page display.When no template of the same template type exists, then the theme cannot be switched. You are blocked from switching themes.
When compared to themes provided with previous releases of Oracle Application Express, the Universal Theme has a number of new features, improvements, and optimizations. Additionally, Universal Theme utilizes several key UI features of Oracle Application Express release 5 and provides a number of new templates and template options that greatly expand the ability to customize of your application's UI. To learn more about the advantages of the Universal Theme and how to switch to it see the Migration Guide - Transitioning to Universal Theme application:
Each theme has an identification number (ID). You can use the Change Theme ID utility to change a theme ID to another identification number. Changing a theme ID is useful when you want to export a theme with a different number and then import it into another application.
To change a theme identification number:
Each theme is identified by a numeric identification number (ID). When you copy a theme, you specify a theme ID. Copying a theme is useful when experimenting with editing a theme or to export a theme with a different ID.
To copy a theme:
See Also:
You can only delete inactive themes. When you delete a theme, App Builder only removes inactive templates.
Tip:
Themes are tied to an application. If you modify a theme, those changes only apply to the application being edited. If you delete a theme, any template modifications are lost. To keep template modifications, you must export the theme. See "Exporting Themes."
To delete a theme:
Developers can create a master theme application. As a best practice, Oracle recommends starting with an existing packaged application that uses Universal Theme - 42 (for example, Sample Database Application).
Topics:
To create a master theme application by creating a new application:
To create a master theme application from an existing application:
Workspace administrators manage the theme repository for a workspace. Workspace administrators can add a theme to the repository, making it available to all developers within a workspace, or delete it.
Topics:
See Also:
"Managing Public Themes" in Oracle Application Express Administration Guide
You cannot edit a workspace theme directly. To modify a workspace theme, you must create an application using the theme, modify it, and then manually add it to the workspace theme repository.
To modify a workspace theme:
You export a theme in the same way you export any related application files. Exporting a workspace theme involves the following steps:
Instance administrators manage the theme repository for an entire Oracle Application Express instance. Only an Instance administrators can add or delete a theme from the repository.
See Also:
"Managing Public Themes" in Oracle Application Express Administration Guide
You export a theme in the same way you export any related application files. Exporting a theme from one development instance to another involves the following steps:
This section describes several reports designed to help you manage themes and templates.
Topics:
The Theme Template Count report lists which template classes currently have templates created for them.
To view the Theme Template Count report:
Navigate to the Themes page. See "Accessing the Themes Page."
Click Reports.
On the Theme Reports page:
Report - Select Theme Template Counts.
Theme - Select a theme or select All Themes.
Click Go.
If you are using custom classifications, select Show Custom and click Go.
The File References report displays a list of all files associated with templates, shared components, or page components in the current application.
To view the File References report:
Accessing the Class References report displays a list of classes associated with templates, shared components, or page components in the current application.
To view the Class References report: