com.google.gwt.user.client.ui

## Class HTMLPanel

- 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.HTMLPanel

- All Implemented Interfaces:
    HasAttachHandlers, HasHandlers, EventListener, HasVisibility, HasWidgets, HasWidgets.ForIsWidget, IndexedPanel, IndexedPanel.ForIsWidget, IsWidget, java.lang.Iterable<Widget>

      public class HTMLPanel
      extends ComplexPanel

  A panel that contains HTML, and which can attach child widgets to identified elements within that HTML.

- - ### 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
    `HTMLPanel(SafeHtml safeHtml)` Initializes the panel's HTML from a given `SafeHtml` object.
    `HTMLPanel(java.lang.String html)` Creates an HTML panel with the specified HTML contents inside a DIV element.
    `HTMLPanel(java.lang.String tag, java.lang.String html)` Creates an HTML panel whose root element has the given tag, and with the specified HTML contents.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `add(Widget widget)` Adds a child widget to the panel.
    `void` | `add(Widget widget, Element elem)` Adds a child widget to the panel, contained within an HTML element.
    `void` | `add(Widget widget, java.lang.String id)` Adds a child widget to the panel, contained within the HTML element specified by a given id.
    `void` | `addAndReplaceElement(IsWidget widget, Element toReplace)` Deprecated. use `addAndReplaceElement(IsWidget, Element)`
    `void` | `addAndReplaceElement(IsWidget widget, Element toReplace)` Overloaded version for IsWidget.
    `void` | `addAndReplaceElement(IsWidget widget, java.lang.String id)` Overloaded version for IsWidget.
    `void` | `addAndReplaceElement(Widget widget, Element toReplace)` Adds a child widget to the panel, replacing the HTML element.
    `void` | `addAndReplaceElement(Widget widget, Element toReplace)` Deprecated. use `addAndReplaceElement(Widget, Element)`
    `void` | `addAndReplaceElement(Widget widget, java.lang.String id)` Adds a child widget to the panel, replacing the HTML element specified by a given id.
    `static java.lang.String` | `createUniqueId()` A helper method for creating unique IDs for elements within dynamically- generated HTML.
    `Element` | `getElementById(java.lang.String id)` Finds an `element` within this panel by its id.
    `static HTMLPanel` | `wrap(Element element)` Creates an HTML panel that wraps an existing element.

    - ### 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, 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

    - #### HTMLPanel

          public HTMLPanel(java.lang.String html)

      Creates an HTML panel with the specified HTML contents inside a DIV element. Any element within this HTML that has a specified id can contain a child widget.
      Parameters:
        `html` - the panel's HTML

    - #### HTMLPanel

          public HTMLPanel(SafeHtml safeHtml)

      Initializes the panel's HTML from a given `SafeHtml` object. Similar to `HTMLPanel(String)`
      Parameters:
        `safeHtml` - the html to set.

    - #### HTMLPanel

          public HTMLPanel(java.lang.String tag,
                   java.lang.String html)

      Creates an HTML panel whose root element has the given tag, and with the specified HTML contents. Any element within this HTML that has a specified id can contain a child widget.
      Parameters:
        `tag` - the tag of the root element
        `html` - the panel's HTML

  - ### Method Detail

    - #### createUniqueId

          public static java.lang.String createUniqueId()

      A helper method for creating unique IDs for elements within dynamically- generated HTML. This is important because no two elements in a document should have the same id.
      Returns:
        a new unique identifier

    - #### wrap

          public static HTMLPanel wrap(Element element)

      Creates an HTML panel that wraps an existing element. This element must already be attached to the document. If the element is removed from the document, you must call `RootPanel.detachNow(Widget)`.
      Parameters:
        `element` - the element to be wrapped

    - #### add

          public void add(Widget widget)

      Adds a child widget to the panel.
      Specified by:
        `add` in interface `HasWidgets`
      Overrides:
        `add` in class `Panel`
      Parameters:
        `widget` - the widget to be added
      See Also:
        `HasWidgets.add(Widget)`

    - #### add

          public void add(Widget widget,
                 java.lang.String id)

      Adds a child widget to the panel, contained within the HTML element specified by a given id.
      Parameters:
        `widget` - the widget to be added
        `id` - the id of the element within which it will be contained

    - #### add

          public void add(Widget widget,
                 Element elem)

      Adds a child widget to the panel, contained within an HTML element. It is up to the caller to ensure that the given element is a child of this panel's root element.
      Parameters:
        `widget` - the widget to be added
        `elem` - the element within which it will be contained

    - #### addAndReplaceElement

          public final void addAndReplaceElement(Widget widget,
                                  Element toReplace)

      Adds a child widget to the panel, replacing the HTML element.
      Parameters:
        `widget` - the widget to be added
        `toReplace` - the element to be replaced by the widget

    - #### addAndReplaceElement

          @Deprecated
          public void addAndReplaceElement(Widget widget,
                                             Element toReplace)

      Deprecated. use `addAndReplaceElement(Widget, Element)`
      Adds a child widget to the panel, replacing the HTML element.
      Parameters:
        `widget` - the widget to be added
        `toReplace` - the element to be replaced by the widget

    - #### addAndReplaceElement

          @Deprecated
          public void addAndReplaceElement(IsWidget widget,
                                             Element toReplace)

      Deprecated. use `addAndReplaceElement(IsWidget, Element)`
      Overloaded version for IsWidget.
      See Also:
        `addAndReplaceElement(Widget,Element)`

    - #### addAndReplaceElement

          public void addAndReplaceElement(IsWidget widget,
                                  Element toReplace)

      Overloaded version for IsWidget.
      See Also:
        `addAndReplaceElement(Widget,Element)`

    - #### addAndReplaceElement

          public void addAndReplaceElement(Widget widget,
                                  java.lang.String id)

      Adds a child widget to the panel, replacing the HTML element specified by a given id.
      Parameters:
        `widget` - the widget to be added
        `id` - the id of the element to be replaced by the widget

    - #### addAndReplaceElement

          public void addAndReplaceElement(IsWidget widget,
                                  java.lang.String id)

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

    - #### getElementById

          public Element getElementById(java.lang.String id)

      Finds an `element` within this panel by its id. This method uses `Document.getElementById(String)`, so the id must still be unique within the document.
      Parameters:
        `id` - the id of the element to be found
      Returns:
        the element with the given id, or `null` if none is found