Composer Library - Panel Customizable Component

Use the Panel Customizable component to include a container for page content that must be customizable at run time. By adding content inside Panel Customizable components, you can enable users to move components from one Panel Customizable to another at runtime. More

Use this component only if you want to enable runtime customization of child components. If you just want a container to arrange components, then it is recommended that you use an ADF Faces container like Panel Group Layout.

When you add Show Detail Frame components inside a Panel Customizable component, the Show Detail Frame components provide options for moving, sequencing, and deleting components on the page.

When a Panel Customizable is added inside a Page Customizable component, it acts as a container into which users can add content at runtime. You can edit properties of a Panel Customizable component at runtime.

Example

<cust:panelCustomizable id="pc1"
                        layout="scroll"
  <cust:showDetailFrame text="Product Data" 
                        id="sdf1" 
                        shortDesc="Product Data"
    . . . 
 
  </cust:showDetailFrame>
  <f:facet name="separator">
    <af:spacer width="3" height="3"/>
  </f:facet>
</cust:panelCustomizable>

Common Attributes

Element Description

id

Specifies a unique identifier for the component on the page. This attribute is populated with a unique value by default when you add the component.
  • The identifier must follow a subset of the syntax allowed in HTML:

  • Must not be a zero-length String.

  • First character must be an ASCII letter (A-Za-z) or an underscore ('_').

  • Subsequent characters must be an ASCII letter or digit (A-Za-z0-9), an underscore ('_'), or a dash ('-').

rendered

Specifies whether the component is rendered. When set to false, no output will be delivered for this component (the component will not in any way be rendered, and cannot be made visible on the client). The default value is true.

halign

Specifies the horizontal alignment of child components. You can set horizontal alignment on child components only if the Panel Customizable component has a horizontal or vertical layout. Available values are center, end, left, right, and start. Default value is start.

valign

Specifies the vertical alignment of child components. You can set vertical alignment on child components only if the Panel Customizable component has a horizontal layout. Available values are baseline, bottom, middle, and top. Default value is top.

layout

Specifies how the child components of the Panel Customizable must be laid out. The default layout is vertical.
  • If you select vertical, the child components are displayed one below the other and can be moved either up or down within the layout.

  • If you select horizontal, the child components are displayed adjacent to each other and can be moved either to the left or right within the layout.

  • If you select scroll, the child components are displayed one below the other within a fixed height. A scroll bar is displayed if content overflows.

  • If you select stretch, then the first child component is stretched to fill up available space in the Panel Customizable component. Subsequent child components are ignored. However, they are not removed from the page.

  • If you select auto, the child component is stretched only if the Panel Customizable stretches it. If not, the child component displays a scroll bar.


Style Attributes

Element Description

styleClass

A CSS style class to use for this component. The style class can be defined in your JSPX page or in a skinning CSS file, for example.

inlineStyle

The CSS styles to use for this component. This is intended for basic style changes. The inlineStyle is a set of CSS styles that are applied to the root DOM element of the component. If the inlineStyle's CSS properties do not affect the DOM element you want affected, then you will have to create a skin and use the skinning keys which are meant to target particular DOM elements, like ::label or ::icon-style.

Behavior Attributes

Element Description

allowAction

Determines whether the Panel Customizable component allows the following actions at runtime:
  • Addition of child components

  • Addition of Panel Customizable components at the same level as the selected component

  • Moving child components in and out of it

  • Rearranging child components

Available values for this attribute are all and none. The default value is all.

Note: You can also set this attribute while defining component security in the application's adf-config.xml file.

showEditAction

n Edit mode of a page, renders the Edit icon on the Panel Customizable header that enables users to edit component properties at runtime. Available values are true and false. Default value is true. This is relevant only in a Composer-enabled page, that is, if the Panel Customizable component is nested within a Page Customizable component.

showSplitAction

In Edit mode of a page, renders the Add Box icons on the Panel Customizable header that enable users to add Box components above, below, to the left, or right of the selected component. Available values are true and false. Default value is true.

This is relevant only in a Composer-enabled page, that is, if the Panel Customizable component is nested within a Page Customizable component.

showTabAction

In Edit mode of a page, renders the Add a Tab Set or a Tab icon on the Panel Customizable header that enables users to add a tab to the page. Available values are true and false. Default value is false.

This is relevant only in a Composer-enabled page, that is, if the Panel Customizable component is nested within a Page Customizable component.


Advanced Attribute

Element Description

binding

An EL reference that will store the component instance on a bean. This can be used to give programmatic access to a component from a backing bean, or to move creation of the component to a backing bean.

Customization Attributes

Element Description

customizationAllowed

Specifies whether customizations are allowed on this component. Available values are true and false. The default value is true.

customizationAllowedBy

Specifies the roles for which customization is enabled.

Note: To display all relevant roles in this drop-down list, you must ensure that the roles are specified in the MDS customization policy.

The Expression Builder option available when setting these attributes allows you to bind the attribute to a managed bean.


Other

Element Description

customizationId

This attribute is deprecated. It will be removed in the next release. Use the id attribute.

Supported Facets

The Panel Customizable component supports a separator facet, which can be used to render content once between each of its child components.

Related Topics

"Adding Custom Actions to Components" in Developing WebCenter Portal Assets and Custom Components with Oracle JDeveloper