com.holonplatform.vaadin.components.builders

## Interface TabsBuilder<C extends com.vaadin.ui.TabSheet>

- Type Parameters:
    `C` - Actual tabs component type
  All Superinterfaces:
    ComponentBuilder<C,TabsBuilder<C>>, ComponentConfigurator<TabsBuilder<C>>

      public interface TabsBuilder<C extends com.vaadin.ui.TabSheet>
      extends ComponentBuilder<C,TabsBuilder<C>>

  Builder to create tabbed component instances.
  Since:
    5.0.5

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `TabsBuilder.TabBuilder<C extends com.vaadin.ui.TabSheet>` Tab builder.

    - ### Nested classes/interfaces inherited from interface com.holonplatform.vaadin.components.builders.ComponentConfigurator

      `ComponentConfigurator.BaseComponentConfigurator`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `TabsBuilder<C>` | `closeHandler(com.vaadin.ui.TabSheet.CloseHandler closeHandler)` Set a custom tab close handler to be invoked when a user clicks on a tabs close button.
    `TabsBuilder<C>` | `withSelectedTabChangeListener(com.vaadin.ui.TabSheet.SelectedTabChangeListener listener)` Add a `TabSheet.SelectedTabChangeListener`.
    `TabsBuilder.TabBuilder<C>` | `withTab(com.vaadin.ui.Component component)` Configure a new Tab to be added to the tabs component.
    `default TabsBuilder<C>` | `withTab(com.vaadin.ui.Component component, com.holonplatform.core.i18n.Localizable caption)` Convenience method to directly add a tab.
    `default TabsBuilder<C>` | `withTab(com.vaadin.ui.Component component, com.holonplatform.core.i18n.Localizable caption, com.vaadin.server.Resource icon)` Convenience method to directly add a tab.
    `default TabsBuilder<C>` | `withTab(com.vaadin.ui.Component component, String caption)` Convenience method to directly add a tab.
    `default TabsBuilder<C>` | `withTab(com.vaadin.ui.Component component, String caption, com.vaadin.server.Resource icon)` Convenience method to directly add a tab.

    - ### Methods inherited from interface com.holonplatform.vaadin.components.builders.ComponentBuilder

      `build, deferLocalization, dragSource, dropTarget`

    - ### Methods inherited from interface com.holonplatform.vaadin.components.builders.ComponentConfigurator

      `caption, caption, caption, captionAsHtml, description, description, description, disabled, errorHandler, fullHeight, fullSize, fullWidth, height, height, heightUndefined, hidden, icon, id, notVisible, primaryStyleName, replaceStyleName, responsive, sizeUndefined, styleName, width, width, widthUndefined, withAttachListener, withContextClickListener, withData, withDetachListener, withShortcutListener`

- - ### Method Detail

    - #### withTab

          TabsBuilder.TabBuilder<C> withTab(com.vaadin.ui.Component component)

      Configure a new Tab to be added to the tabs component.

      Use `TabsBuilder.TabBuilder.add()` to add the new tab.

      Parameters:
        `component` - the component to be added onto tab (not null)
      Returns:
        Tab builder

    - #### withTab

          default TabsBuilder<C> withTab(com.vaadin.ui.Component component,
                                         com.holonplatform.core.i18n.Localizable caption)

      Convenience method to directly add a tab.
      Parameters:
        `component` - the component to be added onto tab (not null)
        `caption` - Tab caption (not null)
      Returns:
        this

    - #### withTab

          default TabsBuilder<C> withTab(com.vaadin.ui.Component component,
                                         String caption)

      Convenience method to directly add a tab.
      Parameters:
        `component` - the component to be added onto tab (not null)
        `caption` - Tab caption
      Returns:
        this

    - #### withTab

          default TabsBuilder<C> withTab(com.vaadin.ui.Component component,
                                         com.holonplatform.core.i18n.Localizable caption,
                                         com.vaadin.server.Resource icon)

      Convenience method to directly add a tab.
      Parameters:
        `component` - the component to be added onto tab (not null)
        `caption` - Tab caption (not null)
        `icon` - Tab icon
      Returns:
        this

    - #### withTab

          default TabsBuilder<C> withTab(com.vaadin.ui.Component component,
                                         String caption,
                                         com.vaadin.server.Resource icon)

      Convenience method to directly add a tab.
      Parameters:
        `component` - the component to be added onto tab (not null)
        `caption` - Tab caption (not null)
        `icon` - Tab icon
      Returns:
        this

    - #### withSelectedTabChangeListener

          TabsBuilder<C> withSelectedTabChangeListener(com.vaadin.ui.TabSheet.SelectedTabChangeListener listener)

      Add a `TabSheet.SelectedTabChangeListener`.
      Parameters:
        `listener` - Listener to add (not null)
      Returns:
        this

    - #### closeHandler

          TabsBuilder<C> closeHandler(com.vaadin.ui.TabSheet.CloseHandler closeHandler)

      Set a custom tab close handler to be invoked when a user clicks on a tabs close button.
      Parameters:
        `closeHandler` - the close handler (not null)
      Returns:
        this

Copyright © 2019 The Holon Platform. All rights reserved.