Customizing Look-and-Feel (CLAF)

Oracle E-Business Suite applications are currently shipped with Oracle's corporate Browser Look-and-Feel (BLAF), which supplies a rich set of components for web-based applications. Although OA Personalization Framework provides you with the ability to change the look of a page by changing user interface (UI) component properties, adding UI components, and so on, it does not allow you to create and apply an entirely new Look-and-Feel to an application.

The Customizing Look-and-Feel (CLAF) feature addresses this issue by providing a self-service based UI to modify the Look-and-Feel of an application. The feature enhances OA Personalization Framework by allowing personalization administrators to:

UIX currently provides OA Framework with the following LAFs, which can be used directly in web applications:

You can build custom LAFs by extending Base LAF, Simple LAF, or another custom LAF.

Note: You cannot extend BLAF or MLAF.

Infrastructure of a Look-and-Feel

A Look-and-Feel is defined by three major components: style sheets (XSS), icons, and renderers.

Style Sheets

A style sheet document (.xss extension) lists the styles for the Look-and-Feel. Styles control the color and font of HTML components. For a complete discussion of style sheets and styles, please refer to the Style Sheets topic in this chapter. Style sheets are located in /OA_HTML/cabo/styles.

See also the list of global styles provided by UIX later in this chapter.

Icons

Some web beans are composed of one or more icons that control the web bean's Look-and-Feel. Icons are identified by a name. For example, the Hide/Show web bean consists of the "disclosed" icon. Icons are present in the LAF configuration file. For additional information, refer to the Icons topic in this chapter.

Renderers

A renderer controls how a web bean lays out its children and generates HTML. If the layout of the LAF you wish to create is different from the standard layout provided by Oracle, you will have to write new renderers for those components that differ in their layout. You define renderers declaratively as templates (.uit extension). Following is an example template definition for a sidebar component:

<!-- Template used by sample LAF for side bar. -->
<templateDefinition
      xmlns="http://xmlns.example.com/uix/ui"
      xmlns:ui="http://xmlns.example.com/uix/ui"
      xmlns:html="http://www.w3.org/TR/REC-html40"
      targetNamespace="http://www.example.org/demo/templates"
      localName="sidebar">
  <content>
  ...
  </content>
</templateDefinition>

You should have one template renderer for each component that has a custom layout. The section between the <content> and </content> tags contains the desired UI layout and any references to other UI components. The UI layout is represented in uiXML and HTML.

Attention: You can use a template renderer to customize the layout of some - but not all - components. Following is a list of the components with customizable layouts:

Look-and-Feel Extension (Custom Skins)

When you define a new Look-and-Feel, you can also alter the layout of its inherited Look-and-Feel, thereby creating what is called a custom skin. To complete the creation of a custom skin, you must register any custom renderers, custom facet renders, and custom icons for that skin, on your custom Look-and-Feel using the Customizing Look-and-Feel UI.

Note: A facet is an optimized variation of a LAF, usually created for a specific output medium. For example, a printable version of a page can be implemented as a facet by excluding superfluous navigation and personalization controls that are not necessary for printed output.

For more information, see Custom Renderer and Custom Icon Standards.

Example

The following code is an example of content in a LAF extension XML that defines a new skin. This example represents a LAF identified by a family called customlaf. Since it extends the simple.desktop LAF, it inherits all the styles from the UIX Simple Look-and-Feel (SLAF). This custom LAF overrides the renderer for page layout by providing its own template-based renderer for page layout. It also provides a custom printable facet page layout renderer (which is initiated to render the page when you run the page in printable page mode) and some custom icons.

<lookAndFeel xmlns="http://xmlns.example.com/uix/ui/laf"
             xmlns:ui="http://xmlns.example.com/uix/ui"
             id="customlaf.desktop"
             family="customlaf"
             extends="simple.desktop"
             styleSheetName="customlaf-desktop.xss">

  <!-- Custom Renderers -->
  <renderers>
    <!-- Register a custom pageLayout Renderer -->
    <renderer name="ui:pageLayout">
      <template name="pageLayout.uit"/>
    </renderer>
  </renderers>

  <!-- Facet custom Renderers -->
  <renderers facets="printable">
    <!-- Register a custom pageLayout Renderer -->
    <renderer name="ui:pageLayout">
      <template name="printablePageLayout.uit"/>
    </renderer>
  </renderers>

  <!-- Custom Icons -->
  <icons>
    <!-- Provide some icon -->
    <icon name="ui:tabBarStart">
    <contextImage uri="images/laf/customlaf/tbs.gif" 
      width="8" height="26"/>
    </icon>
  </icons>

Customizing Look-and-Feel (CLAF) User Interface

The Customizing Look-and-Feel feature provides a self-service user interface that allows you to create a new Look-and-Feel, as well as update an existing Look-and-Feel. It does not, however, provide a user interface to create custom template renderers. You must first create/write any custom template renderers that you require before you can create the look and feel.

Prerequisites

Accessing the CLAF UI

The Customizing Look-and-Feel user interface can be accessed in one of two ways:

When you select the Customize Look and Feel icon in the HGrid for a specific page element, you navigate to the second page of the CLAF UI (Customize Styles and Icons ) for that page element.

Creating a New LAF

Aside from creating custom template renderers yourself, the CLAF UI provides all the other features needed to create a new look and feel. The UI allows you to:

The following steps outline how to create a new custom LAF or skin using the CLAF user interface:

  1. Evaluate a good sampling of pages in the web site for which you want to create a new Look-and-Feel or skin. Determine whether the overall layout and component order as specified in BLAF is sufficient for the new skin. If it is, then you do not need to create a new LAF, but simply need to modify certain styles or icons. If it is not, that is, the layout and component order differs from that of BLAF, you will need to define renderers for each of those components.

  2. Log in as a user with access to the Customizing Look and Feel Administrator responsibility. Select the menu option Customizing Look and Feel Administrator to initiate the CLAF UI.

  3. In the Look and Feel Configuration page, select the Create Look and Feel radio button.

  4. Specify values for the following parameters, then select Next:

    Note: You cannot extend the Oracle corporate BLAF (Browser Look-and-Feel) or the MLAF (Minimal Look-and-Feel).

  5. In the Customize Styles and Icons page that appears, the set of global named styles is displayed by default. The Component poplist also displays global by default to indicate that the page is currently displaying the global named styles that affect more than one component. You can also choose the Selectors or Icons sub tabs to display any global selectors or global icons.

  6. Modify named styles or selectors - In the Named Styles or Selectors sub tabs, identify the style you want to change. Styles control color or font properties. You can add a new custom style by selecting Add Style or delete a custom style by selecting the Delete icon.

    Select Show to expand the detail region for a style or selector to make any of the following modifications:

    Note: You cannot directly update an included style. To replace an included style, delete the existing one, then add a new one using the Add Property button.

  7. Modify icons (icons may either be text-based or GIF image-based). Select the Icons sub-tab and identify the icon you want to modify. Select Show to expand the detail region for the icon to make any of the following modifications:

  8. If you wish to add or modify named styles, selectors or icons that are specific to a component, use the Component poplist to select the component you wish to customize. Once you select a component, the page refreshes with a preview of the component beneath the Component poplist.

    Repeat Step 6 if you wish to modify the component's named styles/selectors or Step 7 to modify the components named icons. Repeat this step for all the components you want to customize. Select Next when you are done.

    Note: Any custom template renderers you defined are registered here.

  9. In the Review and Submit page, select Go if you wish to preview your new custom LAF against the Toolbox Tutorial Home Page that is shipped with OA Framework.

    Alternatively, you may specify your own page to preview, using the format OA.jsp?param1=value1&param2=value2&... in the Page Preview URL field and selecting Go.

  10. If you are satisfied with the previewed changes, select Finish to save your changes and create/register your new custom LAF, otherwise select Back to return to the previous pages in the CLAF flow to make additional modifications.

  11. To run your Oracle E-Business Suite applications pages with your custom LAF, log in to the Oracle E-Business Suite and set the profile option Oracle Applications Look and Feel (APPS_LOOK_AND_FEEL) to the custom LAF that you created, as it appears in the poplist.

  12. Bounce your web server, then run your application pages to see the new LAF take effect.

Updating a LAF

You can also use the CLAF UI to update an existing Look-and-Feel. The UI allows you to:

The following steps outline how to update a LAF or skin using the CLAF user interface:

  1. Access the CLAF UI using one of these two methods:

  2. In the Look and Feel Configuration page, select the Update Look and Feel radio button.

  3. Specify the name of the Look-and-Feel that you want to update, then click Next.

  4. Refer to Steps 5 and on in the Creating a New LAF section for the remaining steps that are also common to updating a LAF.

Deleting a LAF

You can use the CLAF UI to delete an existing custom Look-and-Feel.

To delete a custom Look-and-Feel:

  1. Access the CLAF UI using one of the following methods:

  2. On the Look and Feel Configuration page, select the Delete Look and Feel radio button.

  3. Select the name of the custom Look-and-Feel that you want to delete, then click Delete.

  4. On the Confirmation page that appears, click OK.

Custom Renderer and Custom Icon Standards

The following naming and directory standards must be followed:

Global Styles

The following tables list description of the global styles that are provided by UIX.

Global alignment styles provided by UIX

Alignment Styles Description
CenterTextAlign Sets the text-align property to "center" regardless of the reading direction.
RightTextAlign Sets the text-align property to "right" regardless of the reading direction.
LeftTextAlign Sets the text-align property to "left" regardless of the reading direction.
EndTextAlign Sets the text-align property to "right" for left-to-right reading direction and "left" for right-to-left reading direction.
StartTextAlign Sets the text-align property to "left" for left-to-right reading direction and "right" for right-to-left reading direction.

Global color styles provided by UIX

Color Style Description
LightAccentBorder The lightest border color in the accent color ramp.
MediumAccentBorder A slightly lighter border color in the accent color ramp.
VeryDarkAccentBorder The darkest border color in the accent color ramp.
DarkAccentBorder The primary border color in the accent color ramp.
LightBorder The lightest border color in the core color ramp.
MediumBorder A slightly lighter border color in the core color ramp.
VeryDarkBorder The darkest border color in the core color ramp.
DarkBorder The primary border color in the core color ramp.
DisabledLinkForeground The default foreground color for disabled links.
VisitedLinkForeground The default foreground color for visited links.
ActiveLinkForeground The default foreground color for active links.
LinkForeground The default foreground color for inactive, unvisited links.
ErrorTextForeground The foreground color for error text (red).
SelectedTextForeground The foreground color for selected/highlighted text, or text which is drawn on a dark background.
TextForeground The default text foreground color (black). See the Color Styles section in the Style Sheets topic for more information.
LightAccentForeground The lightest foreground color in the accent color ramp. This value is computed relative to the DarkAccentForeground color.
MediumAccentForeground A slightly lighter foreground color in the accent color ramp. This value is computed relative to the DarkAccentForeground color.
VeryDarkAccentForeground The darkest foreground color in the accent color ramp. This value is computed relative to the DarkAccentForeground color.
DarkAccentForeground The primary foreground color in the accent color ramp.
LightForeground The lightest foreground color in the core color ramp. This value is computed relative to the DarkForeground color.
MediumForeground A slightly lighter foreground color in the core color ramp. This value is computed relative to the DarkForeground color.
VeryDarkForeground The darkest foreground color in the core color ramp. This value is computed relative to the DarkForeground color.
DarkForeground The primary foreground color in the core color ramp.
TextBackground The default text background color (white). See the Color Styles section in the Style Sheets topic for more information.
LightAccentBackground The lightest background color in the accent color ramp. This value is computed relative to the DarkAccentBackground color.
MediumAccentBackground A slightly lighter background color in the accent color ramp. This value is computed relative to the DarkAccentBackground color.
VeryDarkAccentBackground The darkest background color in the accent color ramp. This value is computed relative to the DarkAccentBackground color.
DarkAccentBackground The primary background color in the accent color ramp. Also known as the Accent background color. See the Color Styles section in the Style Sheets topic for more information.
LightBackground The lightest background color in the core color ramp. This value is computed relative to the DarkBackground color.
MediumBackground A slightly lighter background color in the core color ramp. This value is computed relative to the DarkBackground color.
VeryDarkBackground The darkest background color in the core color ramp. This value is computed relative to the DarkBackground color.
DarkBackground The primary background color in the core color ramp. Also known as the Core background color. See the Color Styles section in the Style Sheets topic for more information.

Global font styles provided by UIX

Font Style Description
VeryLargeFont A very large version of the default font.
See the Font Size Styles section and the Font Size Styles for Microsoft Internet Explorer section in the Style Sheets topic for more information.
LargeFont A large version of the default font.
See the Font Size Styles section and the Font Size Styles for Microsoft Internet Explorer section in the Style Sheets topic for more information.
MediumFont A version of the default font which is slightly larger than the default size. This is used for medium sized text, such as level 2 headers.
See the Font Size Styles section and the Font Size Styles for Microsoft Internet Explorer section in the Style Sheets topic for more information.
SmallFont A small version of the default font. This style is used for text which is slightly smaller than the default, such as breadCrumb links.
See the Font Size Styles section and the Font Size Styles for Microsoft Internet Explorer section in the Style Sheets topic for more information.
VerySmallFont A very small version of the default font. This style is used for very small text such as inline messages, and copyright and privacy messages.
See the Font Size Styles section and the Font Size Styles for Microsoft Internet Explorer section in the Style Sheets topic for more information.
DefaultBoldFont A bold version of the default font.
DefaultFont Specifies the default font for the Look-and-Feel. This style defines both the default font family (as specified by the DefaultFontFamily named style) and the default font size.
See the Font Size Styles section and the Font Size Styles for Microsoft Internet Explorer section in the Style Sheets topic for more information.
DefaultFontFamily Specifies the default font family list ("font-family" property) for the Look-and-Feel. See the Font Styles section in the Style Sheets topic for more information.

Customizable Components

The following is a list of components whose Look-and-Feel may be customized using the CLAF UI:

Note: If a side navigation menu is created by adding functions with prompts to an HTML Sub Tab menu instead of an HTML sideBar menu, any look-and-feel changes using the CLAF tool on the sideBar component will not be supported on the menu.

Known Issues

See a summary of key CLAF issues with suggested workarounds if available.

Personalization FAQ

The Personalization FAQ includes a number of entries that cover Customizing Look-and-Feel issues.