Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## echopointng.ui.syncpeer
Class MenuItemPeer

    java.lang.Object
      echopointng.ui.syncpeer.AbstractEchoPointPeer
          echopointng.ui.syncpeer.AbstractEchoPointContainerPeer
              echopointng.ui.syncpeer.MenuItemPeer

All Implemented Interfaces:
  ActionProcessor, ComponentSynchronizePeer, DomUpdateSupport

Direct Known Subclasses:
  MenuPeer

    public class MenuItemPeer

extends AbstractEchoPointContainerPeer
implements ActionProcessor

`MenuItemPeer` is the peer for `MenuItem`

Field Summary
`static Service` | `MENU_ITEM_SERVICE` Service to provide supporting JavaScript library.

Fields inherited from class echopointng.ui.syncpeer.AbstractEchoPointPeer
`DEFAULT_CONTAINER_TAG, partialUpdateManager`

Fields inherited from interface nextapp.echo2.webcontainer.ActionProcessor
`ACTION_NAME, ACTION_VALUE`

Constructor Summary
`MenuItemPeer()`

Method Summary
`protected int` | `convertIconTextPositionToOrientation(Alignment alignment, Component component)` Converts Alignment values into TriCellTable values
`protected void` | `createMenuItemInitDirective(RenderingContext rc, Component component, Style fallbackStyle)` Renders a directive to the outgoing `ServerMessage` to initialize the state of a MenuItem, performing tasks such as registering event listeners on the client and creating the EPMI JS object.
`java.lang.String` | `getContainerId(Component child)` Returns an identifier in the form "parentId_contains_childId".
`void` | `processAction(ContainerInstance ci, Component component, org.w3c.dom.Element actionElement)` Notifies the `ComponentSynchronizePeer` that a client action has occurred.
`org.w3c.dom.Element` | `renderAsMenuItem(RenderingContext rc, Component component)` This will render a MenuItem as, well a MenuItem.
`protected void` | `renderCellIcon(TriCellTable tct, org.w3c.dom.Element iconElement, int cellIndex)` Renders the content of the `TriCellTable` cell which contains the menuItem's icon.
`protected void` | `renderCellText(RenderingContext rc, TriCellTable tct, org.w3c.dom.Text textNode, Component component, int cellIndex, Style fallbackStyle)` Renders the content of the `TriCellTable` cell which contains the menuItem's text.
`void` | `renderDispose(RenderContext rc, ServerComponentUpdate update, Component component)` Removes any render state that is associated with the component.
`protected void` | `renderDisposeDirective(ServerMessage serverMessage, java.lang.String elementId)` Renders a directive to the outgoing `ServerMessage` to dispose the state of a MenuItem, performing tasks such as deregistering event listeners on the client and deleting its JS object.
`void` | `renderHtml(RenderingContext rc, org.w3c.dom.Node parentNode, Component component)` This is the rendering method you must implement if you are to use `AbstractEchoPointPeer`.

Methods inherited from class echopointng.ui.syncpeer.AbstractEchoPointContainerPeer
`renderUpdate`

Methods inherited from class echopointng.ui.syncpeer.AbstractEchoPointPeer
`disposeRenderState, renderAdd, renderHtml, renderReplaceableChild, renderUpdateAddChildren, renderUpdateBaseImpl, renderUpdateRemoveChildren, retreiveRenderState, storeRenderState`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### MENU_ITEM_SERVICE

    public static final Service MENU_ITEM_SERVICE

  Service to provide supporting JavaScript library.

Constructor Detail

### MenuItemPeer

    public MenuItemPeer()

Method Detail

### getContainerId

    public java.lang.String getContainerId(Component child)

  Description copied from class: `AbstractEchoPointContainerPeer`
  Returns an identifier in the form "parentId_contains_childId".

  Specified by:
    `getContainerId` in interface `ComponentSynchronizePeer`
  Overrides:
    `getContainerId` in class `AbstractEchoPointContainerPeer`
  Parameters:
    `child` - a `Component` whose parent is of the type synchronized by this peer object.
  Returns:
    the id of the element which should contain the child component's rendered HTML.
  See Also:
    `nextapp.echo2.webcontainer.SynchronizePeer#getContainerId(nextapp.echo2.app.Component)`

### processAction

    public void processAction(ContainerInstance ci,
                              Component component,
                              org.w3c.dom.Element actionElement)

  Description copied from interface: `ActionProcessor`
  Notifies the `ComponentSynchronizePeer` that a client action has occurred.

  Specified by:
    `processAction` in interface `ActionProcessor`
  Parameters:
    `ci` - the relevant `ContainerInstance`
    `component` - the target `Component`
    `actionElement` - the XML element describing the action (the name and value of the action may be obtained by querying the `ACTION_NAME` and `ACTION_VALUE` attribute values.
  See Also:
    `ActionProcessor.processAction(nextapp.echo2.webcontainer.ContainerInstance, nextapp.echo2.app.Component, org.w3c.dom.Element)`

### renderDispose

    public void renderDispose(RenderContext rc,
                              ServerComponentUpdate update,
                              Component component)

  Description copied from class: `AbstractEchoPointPeer`
  Removes any render state that is associated with the component.

  Remember to call `super.renderDispose()` if you overrride this method.

  Specified by:
    `renderDispose` in interface `ComponentSynchronizePeer`
  Overrides:
    `renderDispose` in class `AbstractEchoPointPeer`
  Parameters:
    `rc` - the relevant `RenderContext`
    `update` - the `ServerComponentUpdate` for which this operation is being performed
  See Also:
    `AbstractEchoPointPeer.renderDispose(nextapp.echo2.webcontainer.RenderContext, nextapp.echo2.app.update.ServerComponentUpdate, nextapp.echo2.app.Component)`

### renderHtml

    public void renderHtml(RenderingContext rc,
                           org.w3c.dom.Node parentNode,
                           Component component)

  Description copied from class: `AbstractEchoPointPeer`
  This is the rendering method you must implement if you are to use `AbstractEchoPointPeer`.

  Its a simpler wrapper for the standard one but provides some neato setup services that would otherwise be repeated over and over again.

  Note the use of RenderingContext object instead of the standard Echo RenderContext as this provides more rich code facilities.

  Specified by:
    `renderHtml` in class `AbstractEchoPointPeer`
  Parameters:
    `rc` - - the RenderingContext to use
    `parentNode` - - the parent Node to put content into
    `component` - - the component in question
  See Also:
    `AbstractEchoPointPeer.renderHtml(echopointng.ui.util.RenderingContext, Node, nextapp.echo2.app.Component)`

### renderAsMenuItem

    public org.w3c.dom.Element renderAsMenuItem(RenderingContext rc,
                                                Component component)

  This will render a MenuItem as, well a MenuItem. It is designed to be called when rendering a Menu as well as a standard MenuItem.

  This returns the top level element that is rendered

### renderCellIcon

    protected void renderCellIcon(TriCellTable tct,
                                  org.w3c.dom.Element iconElement,
                                  int cellIndex)

  Renders the content of the `TriCellTable` cell which contains the menuItem's icon.

### renderCellText

    protected void renderCellText(RenderingContext rc,
                                  TriCellTable tct,
                                  org.w3c.dom.Text textNode,
                                  Component component,
                                  int cellIndex,
                                  Style fallbackStyle)

  Renders the content of the `TriCellTable` cell which contains the menuItem's text. Text is always rendered in cell #0 of the table.

### convertIconTextPositionToOrientation

    protected int convertIconTextPositionToOrientation(Alignment alignment,
                                                       Component component)

  Converts Alignment values into TriCellTable values

### createMenuItemInitDirective

    protected void createMenuItemInitDirective(RenderingContext rc,
                                               Component component,
                                               Style fallbackStyle)

  Renders a directive to the outgoing `ServerMessage` to initialize the state of a MenuItem, performing tasks such as registering event listeners on the client and creating the EPMI JS object.

### renderDisposeDirective

    protected void renderDisposeDirective(ServerMessage serverMessage,
                                          java.lang.String elementId)

  Renders a directive to the outgoing `ServerMessage` to dispose the state of a MenuItem, performing tasks such as deregistering event listeners on the client and deleting its JS object.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD