Package org.eclipse.ui

# Interface IPerspectiveListener3

All Superinterfaces:
  `IPerspectiveListener`, `IPerspectiveListener2`

All Known Subinterfaces:
  `IPerspectiveListener4`

All Known Implementing Classes:
  `PerspectiveAdapter`

public interface IPerspectiveListener3 extends IPerspectiveListener2
Extension interface to `IPerspectiveListener` which adds support for listening to perspective open and close events.

This interface may be implemented by clients.

Since:
  3.1
See Also:
  - `IPageService.addPerspectiveListener(IPerspectiveListener)`
  - `PerspectiveAdapter`

## Method Summary

Modifier and Type
Method
Description
`void`
`perspectiveClosed(IWorkbenchPage page, IPerspectiveDescriptor perspective)`
Notifies this listener that a perspective in the given page has been closed.
`void`
`perspectiveDeactivated(IWorkbenchPage page, IPerspectiveDescriptor perspective)`
Notifies this listener that a perspective in the given page has been deactivated.
`void`
`perspectiveOpened(IWorkbenchPage page, IPerspectiveDescriptor perspective)`
Notifies this listener that a perspective in the given page has been opened.
`void`
`perspectiveSavedAs(IWorkbenchPage page, IPerspectiveDescriptor oldPerspective, IPerspectiveDescriptor newPerspective)`
Notifies this listener that a perspective in the given page has been saved as a new perspective with a different perspective descriptor.

### Methods inherited from interface org.eclipse.ui.IPerspectiveListener

`perspectiveActivated, perspectiveChanged`

### Methods inherited from interface org.eclipse.ui.IPerspectiveListener2

`perspectiveChanged`

## Method Details

### perspectiveOpened

void perspectiveOpened(IWorkbenchPage page, IPerspectiveDescriptor perspective)
Notifies this listener that a perspective in the given page has been opened.

Parameters:
  `page` - the page containing the opened perspective
  `perspective` - the perspective descriptor that was opened
See Also:
  - `IWorkbenchPage.setPerspective(IPerspectiveDescriptor)`

### perspectiveClosed

void perspectiveClosed(IWorkbenchPage page, IPerspectiveDescriptor perspective)
Notifies this listener that a perspective in the given page has been closed.

Parameters:
  `page` - the page containing the closed perspective
  `perspective` - the perspective descriptor that was closed
See Also:
  - `IWorkbenchPage.closePerspective(IPerspectiveDescriptor, boolean, boolean)`
  - `IWorkbenchPage.closeAllPerspectives(boolean, boolean)`

### perspectiveDeactivated

void perspectiveDeactivated(IWorkbenchPage page, IPerspectiveDescriptor perspective)
Notifies this listener that a perspective in the given page has been deactivated.

Parameters:
  `page` - the page containing the deactivated perspective
  `perspective` - the perspective descriptor that was deactivated
See Also:
  - `IWorkbenchPage.setPerspective(IPerspectiveDescriptor)`

### perspectiveSavedAs

void perspectiveSavedAs(IWorkbenchPage page, IPerspectiveDescriptor oldPerspective, IPerspectiveDescriptor newPerspective)
Notifies this listener that a perspective in the given page has been saved as a new perspective with a different perspective descriptor.

Parameters:
  `page` - the page containing the saved perspective
  `oldPerspective` - the old perspective descriptor
  `newPerspective` - the new perspective descriptor
See Also:
  - `IWorkbenchPage.savePerspectiveAs(IPerspectiveDescriptor)`