com.google.gwt.user.client.ui

## Class CellPanel

- java.lang.Object
- - com.google.gwt.user.client.ui.UIObject
  - - com.google.gwt.user.client.ui.Widget
    - - com.google.gwt.user.client.ui.Panel
      - - com.google.gwt.user.client.ui.ComplexPanel
        - - com.google.gwt.user.client.ui.CellPanel

- All Implemented Interfaces:
    HasAttachHandlers, HasHandlers, EventListener, HasVisibility, HasWidgets, HasWidgets.ForIsWidget, IndexedPanel, IndexedPanel.ForIsWidget, IsWidget, java.lang.Iterable<Widget>
  Direct Known Subclasses:
    DockPanel, HorizontalPanel, VerticalPanel

      public abstract class CellPanel
      extends ComplexPanel

  A panel whose child widgets are contained within the cells of a table. Each cell's size may be set independently. Each child widget can take up a subset of its cell and can be aligned within it.

  Note: This class is not related to the `Cell` based data presentation widgets such as `CellList` and `CellTable`.

  ### Use in UiBinder Templates

  When working with CellPanel subclasses in `UiBinder` templates, wrap child widgets in `<g:cell>` elements. (Note the lower case "c", meant to signal that the cell is not a runtime object, and so cannot have a `ui:field` attribute.) Cell elements can have attributes setting their height, width and alignment.

  #### <g:cell> attributes

  horizontalAlignment
    Interpreted as a static member of `HasHorizontalAlignment.HorizontalAlignmentConstant` and used as the `align` argument to `setCellHorizontalAlignment(com.google.gwt.user.client.ui.Widget, com.google.gwt.user.client.ui.HasHorizontalAlignment.HorizontalAlignmentConstant)`
  verticalAlignment
    Interpreted as a static member of `HasVerticalAlignment.VerticalAlignmentConstant` and used as the `align` argument to `setCellVerticalAlignment(com.google.gwt.user.client.ui.Widget, com.google.gwt.user.client.ui.HasVerticalAlignment.VerticalAlignmentConstant)`
  width
    Used as the `width` argument to `setCellWidth(com.google.gwt.user.client.ui.Widget, java.lang.String)`
  height
    Used as the `height` argument to `setCellHeight(com.google.gwt.user.client.ui.Widget, java.lang.String)`

  For example:

       <g:HorizontalPanel>
         <g:cell width='5em' horizontalAlignment='ALIGN_RIGHT'>
           <g:Label ui:field='leftSide' />
         </g:cell>
         <g:cell width='15em' horizontalAlignment='ALIGN_LEFT'>
           <g:Label ui:field='rightSide' />
         </g:cell>
       </g:HorizontalPanel>

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject

      `UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled`

    - ### Nested classes/interfaces inherited from interface com.google.gwt.user.client.ui.IndexedPanel

      `IndexedPanel.ForIsWidget`

    - ### Nested classes/interfaces inherited from interface com.google.gwt.user.client.ui.HasWidgets

      `HasWidgets.ForIsWidget`

  - ### Field Summary

    - ### Fields inherited from class com.google.gwt.user.client.ui.Widget

      `eventsToSink`

    - ### Fields inherited from class com.google.gwt.user.client.ui.UIObject

      `DEBUG_ID_PREFIX, MISSING_ELEMENT_ERROR, SETELEMENT_TWICE_ERROR`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `CellPanel()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected Element` | `getBody()`
    `int` | `getSpacing()` Gets the amount of spacing between this panel's cells.
    `protected Element` | `getTable()`
    `(package private) Element` | `getWidgetTd(Widget w)`
    `void` | `setBorderWidth(int width)` Sets the width of the border to be applied to all cells in this panel.
    `void` | `setCellHeight(IsWidget w, java.lang.String height)` Overloaded version for IsWidget.
    `void` | `setCellHeight(Widget w, java.lang.String height)` Sets the height of the cell associated with the given widget, related to the panel as a whole.
    `protected void` | `setCellHorizontalAlignment(Element td, HasHorizontalAlignment.HorizontalAlignmentConstant align)`
    `void` | `setCellHorizontalAlignment(IsWidget w, HasHorizontalAlignment.HorizontalAlignmentConstant align)` Overloaded version for IsWidget.
    `void` | `setCellHorizontalAlignment(Widget w, HasHorizontalAlignment.HorizontalAlignmentConstant align)` Sets the horizontal alignment of the given widget within its cell.
    `protected void` | `setCellVerticalAlignment(Element td, HasVerticalAlignment.VerticalAlignmentConstant align)`
    `void` | `setCellVerticalAlignment(IsWidget w, HasVerticalAlignment.VerticalAlignmentConstant align)` Overloaded version for IsWidget.
    `void` | `setCellVerticalAlignment(Widget w, HasVerticalAlignment.VerticalAlignmentConstant align)` Sets the vertical alignment of the given widget within its cell.
    `void` | `setCellWidth(IsWidget w, java.lang.String width)` Overloaded version for IsWidget.
    `void` | `setCellWidth(Widget w, java.lang.String width)` Sets the width of the cell associated with the given widget, related to the panel as a whole.
    `void` | `setSpacing(int spacing)` Sets the amount of spacing between this panel's cells.

    - ### Methods inherited from class com.google.gwt.user.client.ui.ComplexPanel

      `add, adjustIndex, checkIndexBoundsForAccess, checkIndexBoundsForInsertion, doLogicalClear, getChildren, getWidget, getWidgetCount, getWidgetIndex, getWidgetIndex, insert, insert, iterator, remove, remove`

    - ### Methods inherited from class com.google.gwt.user.client.ui.Panel

      `add, add, adopt, adopt, clear, disown, doAttachChildren, doDetachChildren, orphan, remove`

    - ### Methods inherited from class com.google.gwt.user.client.ui.Widget

      `addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, ensureHandlers, fireEvent, getHandlerCount, getHandlerManager, getLayoutData, getParent, isAttached, isOrWasAttached, onAttach, onBrowserEvent, onDetach, onLoad, onUnload, removeFromParent, replaceElement, setLayoutData, setParent, sinkEvents`

    - ### Methods inherited from class com.google.gwt.user.client.ui.UIObject

      `addStyleDependentName, addStyleName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getElement, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, getTitle, isVisible, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setElement, setHeight, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setTitle, setVisible, setVisible, setWidth, sinkBitlessEvent, toString, unsinkEvents`

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

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

- - ### Constructor Detail

    - #### CellPanel

          public CellPanel()

  - ### Method Detail

    - #### getSpacing

          public int getSpacing()

      Gets the amount of spacing between this panel's cells.
      Returns:
        the inter-cell spacing, in pixels

    - #### setBorderWidth

          public void setBorderWidth(int width)

      Sets the width of the border to be applied to all cells in this panel. This is particularly useful when debugging layouts, in that it allows you to see explicitly the cells that contain this panel's children.
      Parameters:
        `width` - the width of the panel's cell borders, in pixels

    - #### setCellHeight

          public void setCellHeight(Widget w,
                           java.lang.String height)

      Sets the height of the cell associated with the given widget, related to the panel as a whole.
      Parameters:
        `w` - the widget whose cell height is to be set
        `height` - the cell's height, in CSS units

    - #### setCellHeight

          public void setCellHeight(IsWidget w,
                           java.lang.String height)

      Overloaded version for IsWidget.
      See Also:
        `setCellHeight(Widget,String)`

    - #### setCellHorizontalAlignment

          public void setCellHorizontalAlignment(Widget w,
                                        HasHorizontalAlignment.HorizontalAlignmentConstant align)

      Sets the horizontal alignment of the given widget within its cell.
      Parameters:
        `w` - the widget whose horizontal alignment is to be set
        `align` - the widget's horizontal alignment, as defined in `HasHorizontalAlignment`.

    - #### setCellHorizontalAlignment

          public void setCellHorizontalAlignment(IsWidget w,
                                        HasHorizontalAlignment.HorizontalAlignmentConstant align)

      Overloaded version for IsWidget.
      See Also:
        `setCellHorizontalAlignment(Widget,HasHorizontalAlignment.HorizontalAlignmentConstant)`

    - #### setCellVerticalAlignment

          public void setCellVerticalAlignment(Widget w,
                                      HasVerticalAlignment.VerticalAlignmentConstant align)

      Sets the vertical alignment of the given widget within its cell.
      Parameters:
        `w` - the widget whose vertical alignment is to be set
        `align` - the widget's vertical alignment, as defined in `HasVerticalAlignment`.

    - #### setCellVerticalAlignment

          public void setCellVerticalAlignment(IsWidget w,
                                      HasVerticalAlignment.VerticalAlignmentConstant align)

      Overloaded version for IsWidget.
      See Also:
        `setCellVerticalAlignment(Widget,HasVerticalAlignment.VerticalAlignmentConstant)`

    - #### setCellWidth

          public void setCellWidth(Widget w,
                          java.lang.String width)

      Sets the width of the cell associated with the given widget, related to the panel as a whole.
      Parameters:
        `w` - the widget whose cell width is to be set
        `width` - the cell's width, in CSS units

    - #### setCellWidth

          public void setCellWidth(IsWidget w,
                          java.lang.String width)

      Overloaded version for IsWidget.
      See Also:
        `setCellWidth(Widget,String)`

    - #### setSpacing

          public void setSpacing(int spacing)

      Sets the amount of spacing between this panel's cells.
      Parameters:
        `spacing` - the inter-cell spacing, in pixels

    - #### getBody

          protected Element getBody()

    - #### getTable

          protected Element getTable()

    - #### setCellHorizontalAlignment

          protected void setCellHorizontalAlignment(Element td,
                                        HasHorizontalAlignment.HorizontalAlignmentConstant align)

    - #### setCellVerticalAlignment

          protected void setCellVerticalAlignment(Element td,
                                      HasVerticalAlignment.VerticalAlignmentConstant align)

    - #### getWidgetTd

          Element getWidgetTd(Widget w)