# Class PageBookView.SelectionProvider

java.lang.Object
org.eclipse.ui.part.PageBookView.SelectionProvider

All Implemented Interfaces:
  `IPostSelectionProvider, ISelectionProvider`

Enclosing class:
  `PageBookView`

protected class PageBookView.SelectionProvider extends Object implements IPostSelectionProvider
A selection provider/listener for this view. It is a selection provider for this view's site.

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`SelectionProvider()`

## Method Summary

Modifier and Type
Method
Description
`void`
`addPostSelectionChangedListener(ISelectionChangedListener listener)`
Adds a listener for post selection changes in this selection provider.
`void`
`addSelectionChangedListener(ISelectionChangedListener listener)`
Adds a listener for selection changes in this selection provider.
`ISelection`
`getSelection()`
Returns the current selection for this provider.
`void`
`postSelectionChanged(SelectionChangedEvent event)`
The selection has changed, so notify any post-selection listeners.
`void`
`removePostSelectionChangedListener(ISelectionChangedListener listener)`
Removes the given listener for post selection changes from this selection provider.
`void`
`removeSelectionChangedListener(ISelectionChangedListener listener)`
Removes the given selection change listener from this selection provider.
`void`
`selectionChanged(SelectionChangedEvent event)`
The selection has changed.
`void`
`setSelection(ISelection selection)`
Sets the current selection for this selection provider.

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### SelectionProvider

protected SelectionProvider()

## Method Details

### addSelectionChangedListener

public void addSelectionChangedListener(ISelectionChangedListener listener)
Description copied from interface: `ISelectionProvider`
Adds a listener for selection changes in this selection provider. Has no effect if an identical listener is already registered.

Specified by:
  `addSelectionChangedListener` in interface `ISelectionProvider`
Parameters:
  `listener` - a selection changed listener

### getSelection

public ISelection getSelection()
Description copied from interface: `ISelectionProvider`
Returns the current selection for this provider.

Specified by:
  `getSelection` in interface `ISelectionProvider`
Returns:
  the current selection

### removeSelectionChangedListener

public void removeSelectionChangedListener(ISelectionChangedListener listener)
Description copied from interface: `ISelectionProvider`
Removes the given selection change listener from this selection provider. Has no effect if an identical listener is not registered.

Specified by:
  `removeSelectionChangedListener` in interface `ISelectionProvider`
Parameters:
  `listener` - a selection changed listener

### selectionChanged

public void selectionChanged(SelectionChangedEvent event)
The selection has changed. Process the event, notifying selection listeners and post selection listeners.

Parameters:
  `event` - the change

### postSelectionChanged

public void postSelectionChanged(SelectionChangedEvent event)
The selection has changed, so notify any post-selection listeners.

Parameters:
  `event` - the change

### setSelection

public void setSelection(ISelection selection)
Description copied from interface: `ISelectionProvider`
Sets the current selection for this selection provider.

Specified by:
  `setSelection` in interface `ISelectionProvider`
Parameters:
  `selection` - the new selection

### addPostSelectionChangedListener

public void addPostSelectionChangedListener(ISelectionChangedListener listener)
Description copied from interface: `IPostSelectionProvider`
Adds a listener for post selection changes in this selection provider. Has no effect if an identical listener is already registered.

Specified by:
  `addPostSelectionChangedListener` in interface `IPostSelectionProvider`
Parameters:
  `listener` - a selection changed listener

### removePostSelectionChangedListener

public void removePostSelectionChangedListener(ISelectionChangedListener listener)
Description copied from interface: `IPostSelectionProvider`
Removes the given listener for post selection changes from this selection provider. Has no effect if an identical listener is not registered.

Specified by:
  `removePostSelectionChangedListener` in interface `IPostSelectionProvider`
Parameters:
  `listener` - a selection changed listener