org.eclipse.eef.properties.ui.api

## Class EEFTabbedPropertySheetPage

- java.lang.Object
- - org.eclipse.ui.part.Page
  - - org.eclipse.eef.properties.ui.api.EEFTabbedPropertySheetPage

All Implemented Interfaces:
  java.util.EventListener, IEEFFormContainer, org.eclipse.ui.ISelectionListener, org.eclipse.ui.part.IPage, org.eclipse.ui.part.IPageBookViewPage, org.eclipse.ui.views.properties.IPropertySheetPage

Direct Known Subclasses:
  EEFLegacyTabbedPropertySheetPage

    public class EEFTabbedPropertySheetPage
    extends org.eclipse.ui.part.Page
    implements org.eclipse.ui.views.properties.IPropertySheetPage, IEEFFormContainer

A property sheet page that provides a tabbed UI.

Since:
  1.6.0

### Constructor Summary

Constructors
Constructor and Description
`EEFTabbedPropertySheetPage(IEEFTabbedPropertySheetPageContributor contributor)` The constructor.

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `addTabSelectionListener(IEEFTabSelectionListener listener)` Add a tab selection listener.
`void` `createControl(org.eclipse.swt.widgets.Composite parent)`
`void` `dispose()`
`protected void` `disposeTabs(java.util.Collection<EEFTabContents> tabs)` Disposes the TabContents objects passed to this method.
`java.util.List<IEEFTabDescriptor>` `getActiveTabs()` Returns the list of currently active tabs.
`IEEFTabbedPropertySheetPageContributor` `getContributor()` Return the contributor.
`org.eclipse.swt.widgets.Control` `getControl()`
`EEFTabContents` `getCurrentTab()` Return the currentTab.
`org.eclipse.ui.forms.widgets.Form` `getForm()` Return the form.
`IEEFTabDescriptor` `getSelectedTab()` Returns the currently selected tab.
`org.eclipse.swt.widgets.Shell` `getShell()` Returns the shell used by the container.
`EEFWidgetFactory` `getWidgetFactory()` Return the widgetFactory.
`boolean` `isRenderingInProgress()` Indicates whether or not we are inside the rendering/refresh pahse of the page's lifecycle.
`void` `refresh()` Refresh the currently active tab.
`void` `refreshPage()` Refresh the page.
`void` `removeTabSelectionListener(IEEFTabSelectionListener listener)` Remove a tab selection listener.
`void` `resizeScrolledComposite()` Resize the scrolled composite.
`void` `selectionChanged(org.eclipse.ui.IWorkbenchPart part, org.eclipse.jface.viewers.ISelection selection)`
`void` `setActionBars(org.eclipse.ui.IActionBars actionBars)`
`void` `setFocus()`
`void` `setSelectedTab(java.lang.String id)` Set the currently selected tab to be that of the provided tab id.
`protected void` `updateTabs(java.util.List<IEEFTabDescriptor> descriptors)` Update the current tabs to represent the given input object.

### Methods inherited from class org.eclipse.ui.part.Page

`getSite, init, makeContributions`

### Methods inherited from class java.lang.Object

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

### Constructor Detail

#### EEFTabbedPropertySheetPage

    public EEFTabbedPropertySheetPage(IEEFTabbedPropertySheetPageContributor contributor)

The constructor.

Parameters:
  `contributor` - the contributor.

### Method Detail

#### createControl

    public void createControl(org.eclipse.swt.widgets.Composite parent)

Specified by:
  `createControl` in interface `org.eclipse.ui.part.IPage`
Specified by:
  `createControl` in class `org.eclipse.ui.part.Page`
See Also:
  `IPage.createControl(org.eclipse.swt.widgets.Composite)`

#### selectionChanged

    public void selectionChanged(org.eclipse.ui.IWorkbenchPart part,
                                 org.eclipse.jface.viewers.ISelection selection)

Specified by:
  `selectionChanged` in interface `org.eclipse.ui.ISelectionListener`
See Also:
  `ISelectionListener.selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)`

#### refreshPage

    public void refreshPage()

Refresh the page.

Specified by:
  `refreshPage` in interface `IEEFFormContainer`
See Also:
  `IEEFFormContainer.refreshPage()`

#### isRenderingInProgress

    public boolean isRenderingInProgress()

Indicates whether or not we are inside the rendering/refresh pahse of the page's lifecycle.

Specified by:
  `isRenderingInProgress` in interface `IEEFFormContainer`
Returns:
  `true` if we are inside the rendering/refresh pahse of the page's lifecycle.

#### updateTabs

    protected void updateTabs(java.util.List<IEEFTabDescriptor> descriptors)

Update the current tabs to represent the given input object. When tabs apply for both the old and new input they are reused otherwise they are disposed. If the current visible tab will not be reused (i.e. will be disposed) we have to send it an aboutToBeHidden() message.

Parameters:
  `descriptors` - The tab descriptors.

#### disposeTabs

    protected void disposeTabs(java.util.Collection<EEFTabContents> tabs)

Disposes the TabContents objects passed to this method. If the 'currentTab' is going to be disposed, then the caller should call aboutToBeHidden() on the currentTab and set it to null before calling this method. Also, the caller needs to ensure that descriptorToTab map entries corresponding to the disposed TabContents objects are also removed.

Parameters:
  `tabs` - The list of tabs

#### addTabSelectionListener

    public void addTabSelectionListener(IEEFTabSelectionListener listener)

Add a tab selection listener.

Parameters:
  `listener` - a tab selection listener.

#### removeTabSelectionListener

    public void removeTabSelectionListener(IEEFTabSelectionListener listener)

Remove a tab selection listener.

Parameters:
  `listener` - a tab selection listener.

#### resizeScrolledComposite

    public void resizeScrolledComposite()

Resize the scrolled composite.

#### setSelectedTab

    public void setSelectedTab(java.lang.String id)

Set the currently selected tab to be that of the provided tab id.

Parameters:
  `id` - The string id of the tab to select.

#### dispose

    public void dispose()

Specified by:
  `dispose` in interface `org.eclipse.ui.part.IPage`
Overrides:
  `dispose` in class `org.eclipse.ui.part.Page`
See Also:
  `IPage.dispose()`

#### getActiveTabs

    public java.util.List<IEEFTabDescriptor> getActiveTabs()

Returns the list of currently active tabs.

Returns:
  the currently active tabs.

#### getControl

    public org.eclipse.swt.widgets.Control getControl()

Specified by:
  `getControl` in interface `org.eclipse.ui.part.IPage`
Specified by:
  `getControl` in class `org.eclipse.ui.part.Page`
See Also:
  `IPage.getControl()`

#### getCurrentTab

    public EEFTabContents getCurrentTab()

Return the currentTab.

Returns:
  the currentTab

#### getSelectedTab

    public IEEFTabDescriptor getSelectedTab()

Returns the currently selected tab.

Returns:
  the currently selected tab or `null` if there is no tab selected.

#### setActionBars

    public void setActionBars(org.eclipse.ui.IActionBars actionBars)

Specified by:
  `setActionBars` in interface `org.eclipse.ui.part.IPage`
Overrides:
  `setActionBars` in class `org.eclipse.ui.part.Page`
See Also:
  `IPage.setActionBars(org.eclipse.ui.IActionBars)`

#### setFocus

    public void setFocus()

Specified by:
  `setFocus` in interface `org.eclipse.ui.part.IPage`
Specified by:
  `setFocus` in class `org.eclipse.ui.part.Page`
See Also:
  `IPage.setFocus()`

#### getWidgetFactory

    public EEFWidgetFactory getWidgetFactory()

Return the widgetFactory.

Specified by:
  `getWidgetFactory` in interface `IEEFFormContainer`
Returns:
  the widgetFactory

#### refresh

    public void refresh()

Refresh the currently active tab.

#### getContributor

    public IEEFTabbedPropertySheetPageContributor getContributor()

Return the contributor.

Returns:
  the contributor

#### getForm

    public org.eclipse.ui.forms.widgets.Form getForm()

Return the form.

Specified by:
  `getForm` in interface `IEEFFormContainer`
Returns:
  the form

#### getShell

    public org.eclipse.swt.widgets.Shell getShell()

Returns the shell used by the container.

Specified by:
  `getShell` in interface `IEEFFormContainer`
Returns:
  The shell used by the container
See Also:
  `IEEFFormContainer.getShell()`