Class NativeDetails

All Implemented Interfaces:
AttachNotifier, ClickNotifier<NativeDetails>, DetachNotifier, HasElement, HasSize, HasStyle, Serializable

@Tag("details") public class NativeDetails extends HtmlComponent implements ClickNotifier<NativeDetails>
Component representing a <details> element.
Since:
Author:
Vaadin Ltd
See Also:
  • Constructor Details

    • NativeDetails

      public NativeDetails()
      Creates a new details with an empty summary.
    • NativeDetails

      public NativeDetails(String summary)
      Creates a new details with the given summary.
      Parameters:
      summary - the summary to set.
    • NativeDetails

      public NativeDetails(Component summaryContent)
      Creates a new details with the given content of the summary.
      Parameters:
      summaryContent - the summary content to set.
    • NativeDetails

      public NativeDetails(String summary, Component content)
      Creates a new details using the provided summary and content.
      Parameters:
      summary - the summary text to set.
      content - the content component to set.
    • NativeDetails

      public NativeDetails(Component summaryContent, Component content)
      Creates a new details using the provided summary content and content.
      Parameters:
      summaryContent - the summary content to set.
      content - the content component to set.
  • Method Details

    • getSummary

      public NativeDetails.Summary getSummary()
      Returns NativeDetails.Summary component associated with this details.
      Returns:
      the summary component
    • getSummaryText

      public String getSummaryText()
      Returns the textual summary of this details.
      Returns:
      the text content of the summary, not null
      See Also:
    • setSummaryText

      public void setSummaryText(String summary)
      Sets the text of the summary. Removes previously set components of the summary.
      Parameters:
      summary - the summary text to set.
      See Also:
    • setSummary

      public void setSummary(Component... summaryContent)
      Sets the components of the summary. Removes previously set text or components of the summary.
      Parameters:
      summaryContent - the summary content to set.
      See Also:
    • getContent

      public Component getContent()
      Returns the details content which was set via setContent(Component).
      Returns:
      the content of the details, can be null.
    • setContent

      public void setContent(Component content)
      Sets the details content and removes the previously set content.
      Parameters:
      content - the content of the details to set
      See Also:
    • isOpen

      @Synchronize(property="open", value="toggle") public boolean isOpen()
      Return whether or not the details is opened and the content is displayed.
      Returns:
      whether details are expanded or collapsed
    • setOpen

      public void setOpen(boolean open)
      Sets whether or not the details should be opened. true if the details should be opened and the content should be displayed, false to collapse it.
      Parameters:
      open - the boolean value to set
    • addToggleListener

      public Registration addToggleListener(ComponentEventListener<NativeDetails.ToggleEvent> listener)
      Adds a listener for toggle events fired by the details, which are dispatched to the details element whenever its state changes between open and closed.

      Note: This event is always triggered on client side. Resulting in isFromClient() to always return true.

      Parameters:
      listener - the listener
      Returns:
      a Registration for removing the event listener