Package docking.options

# Interface OptionsService

All Known Implementing Classes:
  `OptionsManager`

public interface OptionsService
Provides a service interface that allows the user to get Options and to check for the existence of options.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Options[]`
  `getOptions()`
  Get the list of options for all categories.
  `ToolOptions`
  `getOptions(String category)`
  Get the options for the given category name.
  `boolean`
  `hasOptions(String category)`
  Return whether an Options object exists for the given category.
  `void`
  `showOptionsDialog(String category, String filterText)`
  Shows Options Dialog with the node denoted by "category" being displayed.

- ## Method Details

  - ### getOptions

    Options[] getOptions()
    Get the list of options for all categories.
    Returns:
      the list of options for all categories.

  - ### getOptions

    ToolOptions getOptions(String category)
    Get the options for the given category name. If no options exist with the given name, then a new options object is created.

    Note: the given name should not contains options path separator characters. Any sub-options needed must be retrieved from the ToolOptions object returned from this method.

    Parameters:
      `category` - name of category
    Returns:
      the options for the given category name.

  - ### hasOptions

    boolean hasOptions(String category)
    Return whether an Options object exists for the given category.
    Parameters:
      `category` - name of the category
    Returns:
      true if an Options object exists

  - ### showOptionsDialog

    void showOptionsDialog(String category, String filterText)
    Shows Options Dialog with the node denoted by "category" being displayed. The value is expected to be the name of a node in the options tree, residing under the root node. You may also provide the name of such a node, followed by the options delimiter, followed by the name of a child node under that node. For example, suppose in the options tree exists a node Root->Foo You may pass the value "Foo" to get that node. Or, suppose in the options tree exists a node Root->Foo->childNode1 In this case, you may pass the value "Foo.childNode1", where the '.' character is the delimiter of the `ToolOptions` class (this is the value at the time of writing this documentation).

    The filter text parameter is used to set the contents filter text of the options. You may use this parameter to filter the tree; for example, to show only the node in the tree that you want the user to see.

    Parameters:
      `category` - The category of options to have displayed
      `filterText` - An optional value used to filter the nodes visible in the options tree. You may pass `null` or the empty string `""` here if you do not desire filtering.
    Throws:
      `IllegalArgumentException` - if the given `category` value does not exist in the tree of options.