Class SharedHeaderFormEditor

All Implemented Interfaces:
IAdaptable, IExecutableExtension, IPageChangeProvider, IEditorPart, ISaveablePart, IWorkbenchPart, IWorkbenchPart2, IWorkbenchPart3, IWorkbenchPartOrientation

public abstract class SharedHeaderFormEditor extends FormEditor
A variation of FormEditor, this editor has a stable header that does not change when pages are switched. Pages that are added to this editor should not have the title or image set.
Since:
3.3
  • Constructor Details

    • SharedHeaderFormEditor

      public SharedHeaderFormEditor()
      The default constructor.
  • Method Details

    • createPageContainer

      protected Composite createPageContainer(Composite parent)
      Overrides super to create a form in which to host the tab folder. This form will be responsible for creating a common form header. Child pages should not have a header of their own.
      Overrides:
      createPageContainer in class FormEditor
      Parameters:
      parent - the page container parent
      Returns:
      the parent for this editor's container. Must not be null.
      See Also:
    • getHeaderForm

      public IManagedForm getHeaderForm()
      Returns the form that owns the shared header.
      Returns:
      the shared header
    • createPages

      protected void createPages()
      Description copied from class: FormEditor
      Creates the common toolkit for this editor and adds pages to the editor.
      Overrides:
      createPages in class FormEditor
      See Also:
    • setActivePage

      protected void setActivePage(int pageIndex)
      Description copied from class: MultiPageEditorPart
      Sets the currently active page.
      Overrides:
      setActivePage in class FormEditor
      Parameters:
      pageIndex - the index of the page to be activated; the index must be valid
      See Also:
    • setFocus

      public void setFocus()
      Description copied from class: MultiPageEditorPart
      The MultiPageEditor implementation of this IWorkbenchPart method sets focus on the active nested editor, if there is one.

      Subclasses may extend or reimplement.

      Specified by:
      setFocus in interface IWorkbenchPart
      Overrides:
      setFocus in class MultiPageEditorPart
    • dispose

      public void dispose()
      Description copied from class: FormEditor
      Disposes the pages and the toolkit after disposing the editor itself. Subclasses must call 'super' when reimplementing the method.
      Specified by:
      dispose in interface IWorkbenchPart
      Overrides:
      dispose in class FormEditor
    • isDirty

      public boolean isDirty()
      Description copied from class: FormEditor
      Tests whether the editor is dirty by checking all the pages that implement IFormPage. If none of them is dirty, the method delegates further processing to super.isDirty().
      Specified by:
      isDirty in interface ISaveablePart
      Overrides:
      isDirty in class FormEditor
      Returns:
      true if any of the pages in the editor are dirty, false otherwise.
    • commitPages

      protected void commitPages(boolean onSave)
      Description copied from class: FormEditor
      Commits all dirty pages in the editor. This method should be called as a first step of a 'save' operation.
      Overrides:
      commitPages in class FormEditor
      Parameters:
      onSave - true if commit is performed as part of the 'save' operation, false otherwise.
    • createHeaderContents

      protected void createHeaderContents(IManagedForm headerForm)
      Subclasses should extend this method to configure the form that owns the shared header. If the header form will contain controls that can change the state of the editor, they should be wrapped in an IFormPart so that they can participate in the life cycle event management.
      Parameters:
      headerForm - the form that owns the shared header
      See Also: