com.brightcove.player.mediacontroller

## Interface PreviewThumbnailView

- All Known Implementing Classes:
    BrightcovePreviewSeekBar

      public interface PreviewThumbnailView

  The representation for the Preview Thumbnail View which contains all the components needed for drawing thumbnail images according to the progress changes.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `PreviewThumbnailView.OnPreviewChangeListener` This `PreviewThumbnailView`'s listener

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addOnPreviewChangeListener(PreviewThumbnailView.OnPreviewChangeListener listener)` Adds a `PreviewThumbnailView.OnPreviewChangeListener`
    `void` | `attachPreviewFrameLayout(android.widget.FrameLayout parentFrameLayout, BrightcoveControlBar brightcoveControlBar)` Attaches the this view's `ThumbnailView` to the parent frame layout.
    `int` | `getMax()` Returns the maximum possible progress for this PreviewThumbnailView
    `int` | `getProgress()` Get the PreviewThumbnailView's current level of progress.
    `ThumbnailView` | `getThumbnailView()` Returns the `ThumbnailView` where the thumbnail images will be drawn into.
    `int` | `getThumbOffset()` Returns the offset, in pixels, of the thumb/scrubber.
    `void` | `hidePreview()` Hides the Preview Thumbnail View
    `boolean` | `isPreviewEnabled()` Returns true if the Preview Thumbnail is enabled, or false otherwise.
    `boolean` | `isShowingPreview()` Returns true if the Preview Thumbnail is currently being shown, or false otherwise
    `void` | `removeOnPreviewChangeListener(PreviewThumbnailView.OnPreviewChangeListener listener)` Removes a `PreviewThumbnailView.OnPreviewChangeListener`
    `void` | `reset()` Resets its components to its initial state
    `void` | `setPreviewEnabled(boolean previewEnabled)` Enables or disables the `PreviewThumbnailView`
    `void` | `setPreviewLoader(PreviewLoader previewLoader)` Sets the `PreviewLoader`
    `void` | `showPreview()` Shows the Preview Thumbnail View

- - ### Method Detail

    - #### getThumbnailView

          @NonNull
          ThumbnailView getThumbnailView()

      Returns the `ThumbnailView` where the thumbnail images will be drawn into.

    - #### getProgress

          int getProgress()

      Get the PreviewThumbnailView's current level of progress. Return 0 when the PreviewThumbnailView is in indeterminate mode.

    - #### getMax

          int getMax()

      Returns the maximum possible progress for this PreviewThumbnailView

    - #### getThumbOffset

          int getThumbOffset()

      Returns the offset, in pixels, of the thumb/scrubber. This value is used to draw the `ThumbnailView` aligned with the thumb/scrubber.

    - #### isShowingPreview

          boolean isShowingPreview()

      Returns true if the Preview Thumbnail is currently being shown, or false otherwise

    - #### isPreviewEnabled

          boolean isPreviewEnabled()

      Returns true if the Preview Thumbnail is enabled, or false otherwise.

    - #### showPreview

          void showPreview()

      Shows the Preview Thumbnail View

    - #### hidePreview

          void hidePreview()

      Hides the Preview Thumbnail View

    - #### setPreviewEnabled

          void setPreviewEnabled(boolean previewEnabled)

      Enables or disables the `PreviewThumbnailView`
      Parameters:
        `previewEnabled` - true to enable

    - #### setPreviewLoader

          void setPreviewLoader(@NonNull
                                PreviewLoader previewLoader)

      Sets the `PreviewLoader`
      Parameters:
        `previewLoader` - the preview thumbnail loader
      See Also:
        `PreviewLoader`

    - #### attachPreviewFrameLayout

          void attachPreviewFrameLayout(@NonNull
                                        android.widget.FrameLayout parentFrameLayout,
                                        @NonNull
                                        BrightcoveControlBar brightcoveControlBar)

      Attaches the this view's `ThumbnailView` to the parent frame layout.
      Parameters:
        `parentFrameLayout` - the parent frame layout where the ThumbnailView will be added
        `brightcoveControlBar` - the brightcove control bar

    - #### addOnPreviewChangeListener

          void addOnPreviewChangeListener(@NonNull
                                          PreviewThumbnailView.OnPreviewChangeListener listener)

      Adds a `PreviewThumbnailView.OnPreviewChangeListener`

    - #### removeOnPreviewChangeListener

          void removeOnPreviewChangeListener(@NonNull
                                             PreviewThumbnailView.OnPreviewChangeListener listener)

      Removes a `PreviewThumbnailView.OnPreviewChangeListener`

    - #### reset

          void reset()

      Resets its components to its initial state