org.richfaces.component

## Class AbstractPanelMenu

- java.lang.Object
- - javax.faces.component.UIComponent
  - - javax.faces.component.UIComponentBase
    - - javax.faces.component.UIOutput
      - - org.richfaces.component.AbstractPanelMenu

- All Implemented Interfaces:
    EventListener, javax.faces.component.PartialStateHolder, javax.faces.component.StateHolder, javax.faces.component.TransientStateHolder, javax.faces.component.ValueHolder, javax.faces.event.ComponentSystemEventListener, javax.faces.event.FacesListener, javax.faces.event.SystemEventListenerHolder, DisabledProps, EventsMouseProps, ImmediateProps, StyleClassProps, StyleProps, ItemChangeSource
  Direct Known Subclasses:
    UIPanelMenu

      public abstract class AbstractPanelMenu
      extends javax.faces.component.UIOutput
      implements ItemChangeSource, DisabledProps, EventsMouseProps, ImmediateProps, StyleProps, StyleClassProps

  The <rich:panelMenu> component is used in conjunction with <rich:panelMenuItem> and <rich:panelMenuGroup> to create an expanding, hierarchical menu. The <rich:panelMenu> component's appearance can be highly customized, and the hierarchy can stretch to any number of sub-levels.

  Author:
    akolonitsky

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `COMPONENT_FAMILY`
    `static String` | `COMPONENT_TYPE`

    - ### Fields inherited from class javax.faces.component.UIComponent

      `ATTRS_WITH_DECLARED_DEFAULT_VALUES, BEANINFO_KEY, bindings, COMPOSITE_COMPONENT_TYPE_KEY, COMPOSITE_FACET_NAME, CURRENT_COMPONENT, CURRENT_COMPOSITE_COMPONENT, FACETS_KEY, HONOR_CURRENT_COMPONENT_ATTRIBUTES_PARAM_NAME, VIEW_LOCATION_KEY`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `AbstractPanelMenu()`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addItemChangeListener(ItemChangeListener listener)` Add a new `ItemChangeListener` to the set of listeners interested in being notified when `ItemChangeEvent`s occur.
    `void` | `broadcast(javax.faces.event.FacesEvent event)`
    `String` | `getActiveItem()` Holds the active panel name.
    `abstract String` | `getCollapseEvent()` The mouse event used for collapsing.
    `abstract String` | `getExpandEvent()` The mouse event used for expansion.
    `String` | `getFamily()`
    `abstract String` | `getGroupClass()` Space-separated list of CSS style class(es) to be applied to panel menu groups
    `String` | `getGroupCollapsedLeftIcon()` The left icon for collapsed panel menu groups
    `String` | `getGroupCollapsedRightIcon()` The right icon for collapsed panel menu groups
    `abstract String` | `getGroupDisabledClass()` Space-separated list of CSS style class(es) to be applied to disabled panel menu groups
    `String` | `getGroupDisabledLeftIcon()` The left icon for disabled panel menu groups
    `String` | `getGroupDisabledRightIcon()` The right icon for disabled panel menu groups
    `String` | `getGroupExpandedLeftIcon()` The left icon for expanded panel menu groups
    `String` | `getGroupExpandedRightIcon()` The right icon for expanded panel menu groups
    `abstract PanelMenuMode` | `getGroupMode()` Mode used for expanding/collapsing groups: client (default), ajax, server
    `AbstractPanelMenuItem` | `getItem(String itemName)`
    `abstract javax.el.MethodExpression` | `getItemChangeListener()` Method expression referencing a method that will be called when an ItemChangeEvent has been broadcast for the listener.
    `ItemChangeListener[]` | `getItemChangeListeners()` Return the set of registered `ItemChangeListener`s for this instance.
    `abstract String` | `getItemClass()` Space-separated list of CSS style class(es) to be applied to the panel menu items.
    `abstract String` | `getItemDisabledClass()` Space-separated list of CSS style class(es) to be applied to disables panel menu items.
    `String` | `getItemDisabledLeftIcon()` The left icon for disabled panel menu items
    `String` | `getItemDisabledRightIcon()` The right icon for panel menu items
    `String` | `getItemLeftIcon()` The left icon for panel menu items
    `abstract PanelMenuMode` | `getItemMode()` The mode user for selecting items: client, ajax (default), server
    `String` | `getItemRightIcon()` The left icon for right menu items
    `String` | `getSubmittedActiveItem()`
    `abstract String` | `getTopGroupClass()` Space-separated list of CSS style class(es) to be applied to top-level panel menu groups
    `String` | `getTopGroupCollapsedLeftIcon()` The left icon for collapsed top-level panel menu groups
    `String` | `getTopGroupCollapsedRightIcon()` The right icon for collapsed top-level panel menu groups
    `abstract String` | `getTopGroupDisabledClass()` Space-separated list of CSS style class(es) to be applied to disabled top-level panel menu groups
    `String` | `getTopGroupDisabledLeftIcon()` The left icon for disabled top-level panel menu groups
    `String` | `getTopGroupDisabledRightIcon()` The right icon for disabled top-level panel menu groups
    `String` | `getTopGroupExpandedLeftIcon()` The left icon for expanded top-level panel menu groups
    `String` | `getTopGroupExpandedRightIcon()` The right icon for expanded top-level panel menu groups
    `abstract String` | `getTopItemClass()` Space-separated list of CSS style class(es) to be applied to top-level panel menu items
    `abstract String` | `getTopItemDisabledClass()` Space-separated list of CSS style class(es) to be applied to disabled top-level panel menu items
    `String` | `getTopItemDisabledLeftIcon()` The left icon for disabled top-level panel menu items
    `String` | `getTopItemDisabledRightIcon()` The right icon for disabled top-level panel menu items
    `String` | `getTopItemLeftIcon()` The left icon for top-level panel menu items
    `String` | `getTopItemRightIcon()` The right icon for top-level panel menu items
    `Object` | `getValue()`
    `abstract String` | `getWidth()` The width of the panel menu in pixels.
    `abstract boolean` | `isBubbleSelection()` If true (default), selection of any item of group will cause selection of groups - predecessors - in the hierarchy.
    `abstract boolean` | `isExpandSingle()` If true (default), only one group can be expanded at the time.
    `boolean` | `isImmediate()` Flag indicating that, if this component is activated by the user, notifications should be delivered to interested listeners and actions immediately (that is, during Apply Request Values phase) rather than waiting until the Invoke Application phase.
    `void` | `processDecodes(javax.faces.context.FacesContext context)`
    `void` | `queueEvent(javax.faces.event.FacesEvent event)`
    `void` | `removeItemChangeListener(ItemChangeListener listener)` Remove an existing `ItemChangeListener` (if any) from the set of listeners interested in being notified when `ItemChangeEvent`s occur.
    `void` | `setActiveItem(String value)`
    `void` | `setEventPhase(javax.faces.event.FacesEvent event)`
    `void` | `setGroupCollapsedLeftIcon(String groupCollapsedLeftIcon)`
    `void` | `setGroupCollapsedRightIcon(String groupCollapsedRightIcon)`
    `void` | `setGroupDisabledLeftIcon(String groupDisabledLeftIcon)`
    `void` | `setGroupDisabledRightIcon(String groupDisabledRightIcon)`
    `void` | `setGroupExpandedLeftIcon(String groupExpandedLeftIcon)`
    `void` | `setGroupExpandedRightIcon(String groupExpandedRightIcon)`
    `void` | `setImmediate(boolean immediate)`
    `void` | `setItemDisabledLeftIcon(String itemDisabledLeftIcon)`
    `void` | `setItemDisabledRightIcon(String itemDisabledRightIcon)`
    `void` | `setItemLeftIcon(String itemLeftIcon)`
    `void` | `setItemRightIcon(String itemRightIcon)`
    `void` | `setSubmittedActiveItem(String submittedValue)`
    `void` | `setTopGroupCollapsedLeftIcon(String topGroupCollapsedLeftIcon)`
    `void` | `setTopGroupCollapsedRightIcon(String topGroupCollapsedRightIcon)`
    `void` | `setTopGroupDisabledLeftIcon(String topGroupDisabledLeftIcon)`
    `void` | `setTopGroupDisabledRightIcon(String topGroupDisabledRightIcon)`
    `void` | `setTopGroupExpandedLeftIcon(String topGroupExpandedLeftIcon)`
    `void` | `setTopGroupExpandedRightIcon(String topGroupExpandedRightIcon)`
    `void` | `setTopItemDisabledLeftIcon(String topItemDisabledLeftIcon)`
    `void` | `setTopItemDisabledRightIcon(String topItemDisabledRightIcon)`
    `void` | `setTopItemLeftIcon(String topItemLeftIcon)`
    `void` | `setTopItemRightIcon(String topItemRightIcon)`
    `void` | `setValue(Object value)`
    `void` | `setValueExpression(String name, javax.el.ValueExpression binding)`

    - ### Methods inherited from class javax.faces.component.UIOutput

      `clearInitialState, getConverter, getLocalValue, markInitialState, restoreState, saveState, setConverter`

    - ### Methods inherited from class javax.faces.component.UIComponentBase

      `addClientBehavior, addFacesListener, decode, encodeBegin, encodeChildren, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientBehaviors, getClientId, getDefaultEventName, getEventNames, getFacesContext, getFacesListeners, getFacet, getFacetCount, getFacets, getFacetsAndChildren, getId, getListenersForEventClass, getParent, getRenderer, getRendererType, getRendersChildren, getValueBinding, invokeOnComponent, isRendered, isTransient, processRestoreState, processSaveState, processUpdates, processValidators, removeFacesListener, restoreAttachedState, saveAttachedState, setId, setParent, setRendered, setRendererType, setTransient, setValueBinding, subscribeToEvent, unsubscribeFromEvent`

    - ### Methods inherited from class javax.faces.component.UIComponent

      `encodeAll, getClientId, getCompositeComponentParent, getContainerClientId, getCurrentComponent, getCurrentCompositeComponent, getNamingContainer, getResourceBundleMap, getStateHelper, getStateHelper, getTransientStateHelper, getTransientStateHelper, getValueExpression, initialStateMarked, isCompositeComponent, isInView, isVisitable, popComponentFromEL, processEvent, pushComponentToEL, restoreTransientState, saveTransientState, setInView, visitTree`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.richfaces.component.attribute.DisabledProps

      `isDisabled`

    - ### Methods inherited from interface org.richfaces.component.attribute.EventsMouseProps

      `getOnclick, getOndblclick, getOnmousedown, getOnmousemove, getOnmouseout, getOnmouseover, getOnmouseup`

    - ### Methods inherited from interface org.richfaces.component.attribute.StyleProps

      `getStyle`

    - ### Methods inherited from interface org.richfaces.component.attribute.StyleClassProps

      `getStyleClass`

- - ### Field Detail

    - #### COMPONENT_TYPE

          public static final String COMPONENT_TYPE

      See Also:
        Constant Field Values

    - #### COMPONENT_FAMILY

          public static final String COMPONENT_FAMILY

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### AbstractPanelMenu

          protected AbstractPanelMenu()

  - ### Method Detail

    - #### processDecodes

          public void processDecodes(javax.faces.context.FacesContext context)

      Overrides:
        `processDecodes` in class `javax.faces.component.UIComponentBase`

    - #### queueEvent

          public void queueEvent(javax.faces.event.FacesEvent event)

      Overrides:
        `queueEvent` in class `javax.faces.component.UIComponentBase`

    - #### setEventPhase

          public void setEventPhase(javax.faces.event.FacesEvent event)

    - #### broadcast

          public void broadcast(javax.faces.event.FacesEvent event)
                         throws javax.faces.event.AbortProcessingException

      Overrides:
        `broadcast` in class `javax.faces.component.UIComponentBase`
      Throws:
        `javax.faces.event.AbortProcessingException`

    - #### getSubmittedActiveItem

          public String getSubmittedActiveItem()

    - #### setSubmittedActiveItem

          public void setSubmittedActiveItem(String submittedValue)

    - #### getActiveItem

          public String getActiveItem()

      Holds the active panel name. This name is a reference to the name identifier of the active child <rich:panelMenuItem> or <rich:panelMenuGroup> component.

    - #### setActiveItem

          public void setActiveItem(String value)

    - #### setValueExpression

          public void setValueExpression(String name,
                                         javax.el.ValueExpression binding)

      Overrides:
        `setValueExpression` in class `javax.faces.component.UIComponent`

    - #### isImmediate

          public boolean isImmediate()

      Description copied from interface: `ImmediateProps`
      Flag indicating that, if this component is activated by the user, notifications should be delivered to interested listeners and actions immediately (that is, during Apply Request Values phase) rather than waiting until the Invoke Application phase.
      Specified by:
        `isImmediate` in interface `ImmediateProps`

    - #### setImmediate

          public void setImmediate(boolean immediate)

    - #### getFamily

          public String getFamily()

      Overrides:
        `getFamily` in class `javax.faces.component.UIOutput`

    - #### getExpandEvent

          public abstract String getExpandEvent()

      The mouse event used for expansion.

    - #### getCollapseEvent

          public abstract String getCollapseEvent()

      The mouse event used for collapsing.

    - #### getGroupMode

          public abstract PanelMenuMode getGroupMode()

      Mode used for expanding/collapsing groups: client (default), ajax, server

    - #### isExpandSingle

          public abstract boolean isExpandSingle()

      If true (default), only one group can be expanded at the time. If false, many groups can be expanded.

    - #### getItemMode

          public abstract PanelMenuMode getItemMode()

      The mode user for selecting items: client, ajax (default), server

    - #### isBubbleSelection

          public abstract boolean isBubbleSelection()

      If true (default), selection of any item of group will cause selection of groups - predecessors - in the hierarchy. If false, only given item is selected.

    - #### getItemChangeListener

          public abstract javax.el.MethodExpression getItemChangeListener()

      Method expression referencing a method that will be called when an ItemChangeEvent has been broadcast for the listener.

    - #### getWidth

          public abstract String getWidth()

      The width of the panel menu in pixels.

    - #### getItemClass

          public abstract String getItemClass()

      Space-separated list of CSS style class(es) to be applied to the panel menu items.

    - #### getItemDisabledClass

          public abstract String getItemDisabledClass()

      Space-separated list of CSS style class(es) to be applied to disables panel menu items.

    - #### getItemLeftIcon

          public String getItemLeftIcon()

      The left icon for panel menu items

    - #### setItemLeftIcon

          public void setItemLeftIcon(String itemLeftIcon)

    - #### getItemRightIcon

          public String getItemRightIcon()

      The left icon for right menu items

    - #### setItemRightIcon

          public void setItemRightIcon(String itemRightIcon)

    - #### getItemDisabledLeftIcon

          public String getItemDisabledLeftIcon()

      The left icon for disabled panel menu items

    - #### setItemDisabledLeftIcon

          public void setItemDisabledLeftIcon(String itemDisabledLeftIcon)

    - #### getItemDisabledRightIcon

          public String getItemDisabledRightIcon()

      The right icon for panel menu items

    - #### setItemDisabledRightIcon

          public void setItemDisabledRightIcon(String itemDisabledRightIcon)

    - #### getTopItemClass

          public abstract String getTopItemClass()

      Space-separated list of CSS style class(es) to be applied to top-level panel menu items

    - #### getTopItemDisabledClass

          public abstract String getTopItemDisabledClass()

      Space-separated list of CSS style class(es) to be applied to disabled top-level panel menu items

    - #### getTopItemLeftIcon

          public String getTopItemLeftIcon()

      The left icon for top-level panel menu items

    - #### setTopItemLeftIcon

          public void setTopItemLeftIcon(String topItemLeftIcon)

    - #### getTopItemRightIcon

          public String getTopItemRightIcon()

      The right icon for top-level panel menu items

    - #### setTopItemRightIcon

          public void setTopItemRightIcon(String topItemRightIcon)

    - #### getTopItemDisabledLeftIcon

          public String getTopItemDisabledLeftIcon()

      The left icon for disabled top-level panel menu items

    - #### setTopItemDisabledLeftIcon

          public void setTopItemDisabledLeftIcon(String topItemDisabledLeftIcon)

    - #### getTopItemDisabledRightIcon

          public String getTopItemDisabledRightIcon()

      The right icon for disabled top-level panel menu items

    - #### setTopItemDisabledRightIcon

          public void setTopItemDisabledRightIcon(String topItemDisabledRightIcon)

    - #### getGroupClass

          public abstract String getGroupClass()

      Space-separated list of CSS style class(es) to be applied to panel menu groups

    - #### getGroupDisabledClass

          public abstract String getGroupDisabledClass()

      Space-separated list of CSS style class(es) to be applied to disabled panel menu groups

    - #### getGroupExpandedLeftIcon

          public String getGroupExpandedLeftIcon()

      The left icon for expanded panel menu groups

    - #### setGroupExpandedLeftIcon

          public void setGroupExpandedLeftIcon(String groupExpandedLeftIcon)

    - #### getGroupExpandedRightIcon

          public String getGroupExpandedRightIcon()

      The right icon for expanded panel menu groups

    - #### setGroupExpandedRightIcon

          public void setGroupExpandedRightIcon(String groupExpandedRightIcon)

    - #### getGroupCollapsedLeftIcon

          public String getGroupCollapsedLeftIcon()

      The left icon for collapsed panel menu groups

    - #### setGroupCollapsedLeftIcon

          public void setGroupCollapsedLeftIcon(String groupCollapsedLeftIcon)

    - #### getGroupCollapsedRightIcon

          public String getGroupCollapsedRightIcon()

      The right icon for collapsed panel menu groups

    - #### setGroupCollapsedRightIcon

          public void setGroupCollapsedRightIcon(String groupCollapsedRightIcon)

    - #### getGroupDisabledLeftIcon

          public String getGroupDisabledLeftIcon()

      The left icon for disabled panel menu groups

    - #### setGroupDisabledLeftIcon

          public void setGroupDisabledLeftIcon(String groupDisabledLeftIcon)

    - #### getGroupDisabledRightIcon

          public String getGroupDisabledRightIcon()

      The right icon for disabled panel menu groups

    - #### setGroupDisabledRightIcon

          public void setGroupDisabledRightIcon(String groupDisabledRightIcon)

    - #### getTopGroupClass

          public abstract String getTopGroupClass()

      Space-separated list of CSS style class(es) to be applied to top-level panel menu groups

    - #### getTopGroupDisabledClass

          public abstract String getTopGroupDisabledClass()

      Space-separated list of CSS style class(es) to be applied to disabled top-level panel menu groups

    - #### getTopGroupExpandedLeftIcon

          public String getTopGroupExpandedLeftIcon()

      The left icon for expanded top-level panel menu groups

    - #### setTopGroupExpandedLeftIcon

          public void setTopGroupExpandedLeftIcon(String topGroupExpandedLeftIcon)

    - #### getTopGroupExpandedRightIcon

          public String getTopGroupExpandedRightIcon()

      The right icon for expanded top-level panel menu groups

    - #### setTopGroupExpandedRightIcon

          public void setTopGroupExpandedRightIcon(String topGroupExpandedRightIcon)

    - #### getTopGroupCollapsedLeftIcon

          public String getTopGroupCollapsedLeftIcon()

      The left icon for collapsed top-level panel menu groups

    - #### setTopGroupCollapsedLeftIcon

          public void setTopGroupCollapsedLeftIcon(String topGroupCollapsedLeftIcon)

    - #### getTopGroupCollapsedRightIcon

          public String getTopGroupCollapsedRightIcon()

      The right icon for collapsed top-level panel menu groups

    - #### setTopGroupCollapsedRightIcon

          public void setTopGroupCollapsedRightIcon(String topGroupCollapsedRightIcon)

    - #### getTopGroupDisabledLeftIcon

          public String getTopGroupDisabledLeftIcon()

      The left icon for disabled top-level panel menu groups

    - #### setTopGroupDisabledLeftIcon

          public void setTopGroupDisabledLeftIcon(String topGroupDisabledLeftIcon)

    - #### getTopGroupDisabledRightIcon

          public String getTopGroupDisabledRightIcon()

      The right icon for disabled top-level panel menu groups

    - #### setTopGroupDisabledRightIcon

          public void setTopGroupDisabledRightIcon(String topGroupDisabledRightIcon)

    - #### getItem

          public AbstractPanelMenuItem getItem(String itemName)

    - #### addItemChangeListener

          public void addItemChangeListener(ItemChangeListener listener)

      Description copied from interface: `ItemChangeSource`

      Add a new `ItemChangeListener` to the set of listeners interested in being notified when `ItemChangeEvent`s occur.

      Specified by:
        `addItemChangeListener` in interface `ItemChangeSource`
      Parameters:
        `listener` - The `ItemChangeListener` to be added

    - #### getItemChangeListeners

          public ItemChangeListener[] getItemChangeListeners()

      Description copied from interface: `ItemChangeSource`

      Return the set of registered `ItemChangeListener`s for this instance. If there are no registered listeners, a zero-length array is returned.

      Specified by:
        `getItemChangeListeners` in interface `ItemChangeSource`

    - #### removeItemChangeListener

          public void removeItemChangeListener(ItemChangeListener listener)

      Description copied from interface: `ItemChangeSource`

      Remove an existing `ItemChangeListener` (if any) from the set of listeners interested in being notified when `ItemChangeEvent`s occur.

      Specified by:
        `removeItemChangeListener` in interface `ItemChangeSource`
      Parameters:
        `listener` - The `ItemChangeListener` to be removed

    - #### getValue

          public Object getValue()

      Specified by:
        `getValue` in interface `javax.faces.component.ValueHolder`
      Overrides:
        `getValue` in class `javax.faces.component.UIOutput`

    - #### setValue

          public void setValue(Object value)

      Specified by:
        `setValue` in interface `javax.faces.component.ValueHolder`
      Overrides:
        `setValue` in class `javax.faces.component.UIOutput`

Copyright © 2015 JBoss by Red Hat. All Rights Reserved.