Package-level declarations

The IviThemeRegistry aggregates, from all configured IviThemeRegistrySources, the available IviThemeComponents and provides access to the selected IviThemeComponents as provided by the configured IviThemeComponentSelectors.

The IviThemeRegistrySource implementations are included in the IVI application at build-time. Two types of IviThemeRegistrySource implementations exist:

  1. IviThemeRegistrySource.Components. Implementations of this type can:

  • Register IviThemeCategorys.

  • Add IviThemeComponents to any IviThemeCategorys.

  • Add Android styleable resources to any IviThemeCategory.

  • Associate the Android style resources to any IviThemeComponents with style Android styleables.

  1. IviThemeRegistrySource.Selectors. Implementation of this type can register IviThemeComponentSelectors. Each IviThemeComponentSelector can select an active IviThemeComponent per IviThemeCategorys.

Each IviThemeRegistrySource must be constructed by an IviThemeRegistrySourceBuilder. The builder needs to be registered at build time.

Types

Link copied to clipboard
annotation class IviThemeDslMarker

Marks the annotated type as DSL language.

Link copied to clipboard
@IviExperimental(reasons = [])
class IviThemeRegistry

Aggregates, from all configured IviThemeRegistrySources, the available IviThemeComponents and provides access to the selected IviThemeComponents as provided by the configured IviThemeComponentSelectors through componentSelection. Access to the styles that should be applied for a given selection can be obtained with getStylesForSelection.

Link copied to clipboard

Context for the IviThemeRegistry.

Link copied to clipboard
@IviExperimental(reasons = [])
sealed class IviThemeRegistrySource

A source of the IviThemeRegistry.

Link copied to clipboard

Builder class for IviThemeRegistrySources.

Link copied to clipboard
Link copied to clipboard

Identifies an IviThemeRegistrySource instance.