Package org.eclipse.ui.forms.editor
Class SharedHeaderFormEditor
java.lang.Object
org.eclipse.core.commands.common.EventManager
org.eclipse.ui.part.WorkbenchPart
org.eclipse.ui.part.EditorPart
org.eclipse.ui.part.MultiPageEditorPart
org.eclipse.ui.forms.editor.FormEditor
org.eclipse.ui.forms.editor.SharedHeaderFormEditor
- All Implemented Interfaces:
IAdaptable
,IExecutableExtension
,IPageChangeProvider
,IEditorPart
,ISaveablePart
,IWorkbenchPart
,IWorkbenchPart2
,IWorkbenchPart3
,IWorkbenchPartOrientation
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
-
Field Summary
Fields inherited from class org.eclipse.ui.forms.editor.FormEditor
pages
Fields inherited from class org.eclipse.ui.part.MultiPageEditorPart
PAGE_CONTAINER_SITE
Fields inherited from interface org.eclipse.ui.IEditorPart
PROP_DIRTY, PROP_INPUT
Fields inherited from interface org.eclipse.ui.IWorkbenchPart
PROP_TITLE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
commitPages
(boolean onSave) Commits all dirty pages in the editor.protected void
createHeaderContents
(IManagedForm headerForm) Subclasses should extend this method to configure the form that owns the shared header.protected Composite
createPageContainer
(Composite parent) Overridessuper
to create a form in which to host the tab folder.protected void
Creates the common toolkit for this editor and adds pages to the editor.void
dispose()
Disposes the pages and the toolkit after disposing the editor itself.Returns the form that owns the shared header.boolean
isDirty()
Tests whether the editor is dirty by checking all the pages that implementIFormPage
.protected void
setActivePage
(int pageIndex) Sets the currently active page.void
setFocus()
TheMultiPageEditor
implementation of thisIWorkbenchPart
method sets focus on the active nested editor, if there is one.Methods inherited from class org.eclipse.ui.forms.editor.FormEditor
addPage, addPage, addPage, addPage, addPage, addPage, addPages, close, configurePage, createToolkit, editorDirtyStateChanged, findPage, getActiveEditor, getActivePageInstance, getCurrentPage, getSelectedPage, getToolkit, init, pageChange, removePage, selectReveal, setActivePage, setActivePage, updateActionBarContributor
Methods inherited from class org.eclipse.ui.part.MultiPageEditorPart
activateSite, addPageChangedListener, createContainer, createItem, createPartControl, createSite, deactivateSite, findEditors, getActivePage, getAdapter, getContainer, getControl, getEditor, getPageCount, getPageImage, getPageSite, getPageText, handlePropertyChange, initializePageSwitching, removePageChangedListener, setActiveEditor, setControl, setPageImage, setPageText
Methods inherited from class org.eclipse.ui.part.EditorPart
checkSite, doSave, doSaveAs, getEditorInput, getEditorSite, getTitleToolTip, isSaveAsAllowed, isSaveOnCloseNeeded, setContentDescription, setInitializationData, setInput, setInputWithNotify, setPartName
Methods inherited from class org.eclipse.ui.part.WorkbenchPart
addPartPropertyListener, addPropertyListener, firePartPropertyChanged, firePropertyChange, getConfigurationElement, getContentDescription, getDefaultImage, getOrientation, getPartName, getPartProperties, getPartProperty, getSite, getTitle, getTitleImage, removePartPropertyListener, removePropertyListener, setPartProperty, setSite, setTitle, setTitleImage, setTitleToolTip, showBusy
Methods inherited from class org.eclipse.core.commands.common.EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.eclipse.ui.IWorkbenchPart
addPropertyListener, getSite, getTitle, getTitleImage, removePropertyListener
-
Constructor Details
-
SharedHeaderFormEditor
public SharedHeaderFormEditor()The default constructor.
-
-
Method Details
-
createPageContainer
Overridessuper
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 classFormEditor
- Parameters:
parent
- the page container parent- Returns:
- the parent for this editor's container. Must not be
null
. - See Also:
-
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 classFormEditor
- See Also:
-
setActivePage
protected void setActivePage(int pageIndex) Description copied from class:MultiPageEditorPart
Sets the currently active page.- Overrides:
setActivePage
in classFormEditor
- 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
TheMultiPageEditor
implementation of thisIWorkbenchPart
method sets focus on the active nested editor, if there is one.Subclasses may extend or reimplement.
- Specified by:
setFocus
in interfaceIWorkbenchPart
- Overrides:
setFocus
in classMultiPageEditorPart
-
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 interfaceIWorkbenchPart
- Overrides:
dispose
in classFormEditor
-
isDirty
public boolean isDirty()Description copied from class:FormEditor
Tests whether the editor is dirty by checking all the pages that implementIFormPage
. If none of them is dirty, the method delegates further processing tosuper.isDirty()
.- Specified by:
isDirty
in interfaceISaveablePart
- Overrides:
isDirty
in classFormEditor
- 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 classFormEditor
- Parameters:
onSave
-true
if commit is performed as part of the 'save' operation,false
otherwise.
-
createHeaderContents
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:
-