Package com.orchestranetworks.userservice

# Interface UserServiceTabbedPane

All Superinterfaces:
  `UserServicePane`

All Known Subinterfaces:
  `UserServiceRootTabbedPane`

public interface UserServiceTabbedPane extends UserServicePane
This layout divides the pane into a set of `tabs`.

More features (like using a `documentation pane` in the title or `showing` a tab with JavaScript) are available using `UserServiceTab`.

Since:
  5.8.0
See Also:
  - `UserServiceTab`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addAllTabs(UserServiceTab... tabs)`
  Writes an array of tabs.
  `void`
  `addAllTabs(List<UserServiceTab> tabs)`
  Adds a list of tabs.
  `void`
  `addTab(UserServiceTab aTab)`
  Adds a tab.
  `String`
  `getId()`
  Get the id of the pane with tabs.
  `String`
  `getSelectedTabId()`
  Returns the selected tab id or `null` if none is selected.
  `UserServiceTab`
  `newTab(UserMessage aTitle, UserServicePane aPane)`
  Create a new tab.
  `UserServiceTab`
  `newTab(UIFormLabelSpec aTitle, UserServicePane aPane)`
  Create a new tab.
  `UserServiceTab`
  `newTab(ObjectKey anObjectKey, Path aPath)`
  Creates a new tab containing a standard pane representing `aPath` children.
  `UserServiceTab`
  `newTab(UserServicePane aPane)`
  Creates a new tab.
  `UserServiceTab`
  `newTab(String aTitle, UserServicePane aPane)`
  Creates a new tab.
  `List<UserServiceTab>`
  `newTabsFromPath(ObjectKey anObjectKey, Path aPath)`
  Iterates through a path and its children to create a tab for each path which should be displayed in the tab.
  `void`
  `selectTab(String aTabId)`
  Specifies the id of the tab to select when the page is displayed.

  ### Methods inherited from interface com.orchestranetworks.userservice.UserServicePane

  `isPaddingEnabled, writePane`

- ## Method Details

  - ### getId

    String getId()
    Get the id of the pane with tabs.
    Returns:
      the id

  - ### getSelectedTabId

    String getSelectedTabId()
    Returns the selected tab id or `null` if none is selected.
    Returns:
      the selected tab id or `null` if no tab is selected.
    See Also:
      - `selectTab(String)`

  - ### selectTab

    void selectTab(String aTabId)
    Specifies the id of the tab to select when the page is displayed.

    If no tab has this id, the default tab will be selected.

    The default tab can be the first one, if it is the first display of the form, or the last one selected by the user if form was already displayed.

    Parameters:
      `aTabId` - the id of the tab to select.
    See Also:
      - `getSelectedTabId()`

  - ### addTab

    void addTab(UserServiceTab aTab)
    Adds a tab.
    Parameters:
      `aTab` - the tab.

  - ### addAllTabs

    void addAllTabs(List<UserServiceTab> tabs)
    Adds a list of tabs.
    Parameters:
      `tabs` - A list of tabs.

  - ### addAllTabs

    void addAllTabs(UserServiceTab... tabs)
    Writes an array of tabs.
    Parameters:
      `tabs` - An array of tabs.

  - ### newTab

    UserServiceTab newTab(UserServicePane aPane)
    Creates a new tab. Title should be set using one of the UserServiceTab.setTitle(…) methods unless tab is used for a home tab.

    Tab should be added afterward to the tabbed pane thanks to `addTab(UserServiceTab)`.

    Parameters:
      `aPane` - the content of the tab.
    Returns:
      the new tab.

  - ### newTab

    UserServiceTab newTab(String aTitle, UserServicePane aPane)
    Creates a new tab.

    The tab should be added to the tabbed pane using method `addTab(UserServiceTab)`.

    Parameters:
      `aTitle` - the label of the tab.
      `aPane` - the content of the tab.
    Returns:
      the new tab.

  - ### newTab

    UserServiceTab newTab(UserMessage aTitle, UserServicePane aPane)
    Create a new tab.

    The tab should be added to the tabbed pane using method `addTab(UserServiceTab)`.

    Parameters:
      `aTitle` - the label of the tab.
      `aPane` - the content of the tab.
    Returns:
      the new Tab

  - ### newTab

    UserServiceTab newTab(UIFormLabelSpec aTitle, UserServicePane aPane)
    Create a new tab.

    The tab should be added to the tabbed pane using method `addTab(UserServiceTab)`.

    Parameters:
      `aTitle` - the label of the tab.
      `aPane` - the content of the tab.
    Returns:
      the new Tab.

  - ### newTabsFromPath

    List<UserServiceTab> newTabsFromPath(ObjectKey anObjectKey, Path aPath)
    Iterates through a path and its children to create a tab for each path which should be displayed in the tab.

    Root node at `aPath` is added in a tab only if it should be displayed in the tab.

    The tab should be added to the tabbed pane using method `addTab(UserServiceTab)` or `addAllTabs(List)`.

    Parameters:
      `anObjectKey` - the key of the object to display.
      `aPath` - a valid path relative to `anObjectKey`, must not be a terminal descendant node.
    Returns:
      the list of new tabs. May be empty.
    See Also:
      - `newTab(ObjectKey, Path)`

  - ### newTab

    UserServiceTab newTab(ObjectKey anObjectKey, Path aPath)
    Creates a new tab containing a standard pane representing `aPath` children. Children that should display is separate tabs are ignored.

    The tab should be added to the tabbed pane using method `addTab(UserServiceTab)`.

    Parameters:
      `anObjectKey` - the key of the object to display.
      `aPath` - a valid path relative to `anObjectKey`, must not be a terminal descendant node.
    Returns:
      a new tab.