Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.ui.forms.editor
Class FormPage

    java.lang.Object
      org.eclipse.ui.part.WorkbenchPart
          org.eclipse.ui.part.EditorPart
              org.eclipse.ui.forms.editor.FormPage

All Implemented Interfaces:
  IAdaptable, IEditorPart, IExecutableExtension, IFormPage, ISaveablePart, IWorkbenchPart, IWorkbenchPart2

public class FormPage
extends EditorPart
implements IFormPage

A base class that all pages that should be added to FormEditor must subclass. Form page has an instance of PageForm that extends managed form. Subclasses should override method 'createFormContent(ManagedForm)' to fill the form with content. Note that page itself can be loaded lazily (on first open). Consequently, the call to create the form content can come after the editor has been opened for a while (in fact, it is possible to open and close the editor and never create the form because no attempt has been made to show the page).

Since:
  3.0

Field Summary

Fields inherited from interface org.eclipse.ui.IEditorPart
`PROP_DIRTY, PROP_INPUT`

Fields inherited from interface org.eclipse.ui.IWorkbenchPart
`PROP_TITLE`

Constructor Summary
`FormPage(FormEditor editor, String id, String title)` A constructor that creates the page and initializes it with the editor.
`FormPage(String id, String title)` The constructor.

Method Summary
`boolean` | `canLeaveThePage()` By default, editor will be allowed to flip the page.
`protected void` | `createFormContent(IManagedForm managedForm)` Subclasses should override this method to create content in the form hosted in this page.
`void` | `createPartControl(Composite parent)` Creates the part control by creating the managed form using the parent editor's toolkit.
`void` | `dispose()` Disposes the managed form.
`void` | `doSave(IProgressMonitor monitor)` Saves the contents of this part.
`void` | `doSaveAs()` Saves the contents of this part to another object.
`FormEditor` | `getEditor()` Returns the parent editor.
`String` | `getId()` Returns the unique identifier that can be used to reference this page.
`int` | `getIndex()` Returns the saved page index.
`IManagedForm` | `getManagedForm()` Returns the managed form owned by this page.
`Control` | `getPartControl()` Returns the form page control.
`String` | `getTitle()` Returns the page title.
`Image` | `getTitleImage()` Returns `null`- form page has no title image.
`void` | `init(IEditorSite site, IEditorInput input)` Initializes the form page.
`void` | `initialize(FormEditor editor)` Primes the form page with the parent editor instance.
`boolean` | `isActive()` Tests if the page is active by asking the parent editor if this page is the currently active page.
`boolean` | `isDirty()` Implemented by testing if the managed form is dirty.
`boolean` | `isEditor()` Form pages are not editors.
`boolean` | `isSaveAsAllowed()` Returns whether the "Save As" operation is supported by this part.
`boolean` | `selectReveal(Object object)` Attempts to select and reveal the given object by passing the request to the managed form.
`void` | `setActive(boolean active)` Implements the required method by refreshing the form when set active.
`void` | `setFocus()` Sets the focus by delegating to the managed form.
`void` | `setIndex(int index)` Preserves the page index.

Methods inherited from class org.eclipse.ui.part.EditorPart
`getEditorInput, getEditorSite, getTitleToolTip, isSaveOnCloseNeeded, setContentDescription, setInitializationData, setInput, setPartName`

Methods inherited from class org.eclipse.ui.part.WorkbenchPart
`addPropertyListener, firePropertyChange, getAdapter, getConfigurationElement, getContentDescription, getDefaultImage, getPartName, getSite, removePropertyListener, setSite, setTitle, setTitleImage, setTitleToolTip, showBusy`

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.IEditorPart
`getEditorInput, getEditorSite`

Methods inherited from interface org.eclipse.ui.IWorkbenchPart
`addPropertyListener, getSite, getTitleToolTip, removePropertyListener`

Methods inherited from interface org.eclipse.core.runtime.IAdaptable
`getAdapter`

Methods inherited from interface org.eclipse.ui.ISaveablePart
`isSaveOnCloseNeeded`

Constructor Detail

### FormPage

    public FormPage(FormEditor editor,
                    String id,
                    String title)

  A constructor that creates the page and initializes it with the editor.

Parameters:
  `editor` - the parent editor
  `id` - the unique identifier
  `title` - the page title

### FormPage

    public FormPage(String id,
                    String title)

  The constructor. The parent editor need to be passed in the `initialize` method if this constructor is used.

Parameters:
  `id` - a unique page identifier
  `title` - a user-friendly page title

Method Detail

### init

    public void init(IEditorSite site,
                     IEditorInput input)

  Initializes the form page.

  Specified by:
    `init` in interface `IEditorPart`
  Specified by:
    `init` in class `EditorPart`
  See Also:
    `IEditorPart.init(org.eclipse.ui.IEditorSite, org.eclipse.ui.IEditorInput)`

### initialize

    public void initialize(FormEditor editor)

  Primes the form page with the parent editor instance.

  Specified by:
    `initialize` in interface `IFormPage`
  Parameters:
    `editor` - the parent editor

### getEditor

    public FormEditor getEditor()

  Returns the parent editor.

  Specified by:
    `getEditor` in interface `IFormPage`
  Returns:
    parent editor instance

### getManagedForm

    public IManagedForm getManagedForm()

  Returns the managed form owned by this page.

  Specified by:
    `getManagedForm` in interface `IFormPage`
  Returns:
    the managed form

### setActive

    public void setActive(boolean active)

  Implements the required method by refreshing the form when set active. Subclasses must call super when overriding this method.

  Specified by:
    `setActive` in interface `IFormPage`
  Parameters:
    `active` - `true` if page should be visible, `false` otherwise.

### isActive

    public boolean isActive()

  Tests if the page is active by asking the parent editor if this page is the currently active page.

  Specified by:
    `isActive` in interface `IFormPage`
  Returns:
    `true` if the page is currently active, `false` otherwise.

### createPartControl

    public void createPartControl(Composite parent)

  Creates the part control by creating the managed form using the parent editor's toolkit. Subclasses should override `createFormContent(IManagedForm)` to populate the form with content.

  Specified by:
    `createPartControl` in interface `IWorkbenchPart`
  Specified by:
    `createPartControl` in class `WorkbenchPart`
  Parameters:
    `parent` - the page parent composite

### createFormContent

    protected void createFormContent(IManagedForm managedForm)

  Subclasses should override this method to create content in the form hosted in this page.

  Parameters:
    `managedForm` - the form hosted in this page.

### getPartControl

    public Control getPartControl()

  Returns the form page control.

  Specified by:
    `getPartControl` in interface `IFormPage`
  Returns:
    managed form's control

### dispose

    public void dispose()

  Disposes the managed form.

  Specified by:
    `dispose` in interface `IWorkbenchPart`
  Overrides:
    `dispose` in class `WorkbenchPart`

### getId

    public String getId()

  Returns the unique identifier that can be used to reference this page.

  Specified by:
    `getId` in interface `IFormPage`
  Returns:
    the unique page identifier

### getTitle

    public String getTitle()

  Returns the page title.

  Specified by:
    `getTitle` in interface `IWorkbenchPart`
  Overrides:
    `getTitle` in class `WorkbenchPart`
  Returns:
    page title

### getTitleImage

    public Image getTitleImage()

  Returns `null`- form page has no title image. Subclasses may override.

  Specified by:
    `getTitleImage` in interface `IWorkbenchPart`
  Overrides:
    `getTitleImage` in class `WorkbenchPart`

### setFocus

    public void setFocus()

  Sets the focus by delegating to the managed form.

  Specified by:
    `setFocus` in interface `IWorkbenchPart`
  Specified by:
    `setFocus` in class `WorkbenchPart`

### doSave

    public void doSave(IProgressMonitor monitor)

  Description copied from interface: `ISaveablePart`
  Saves the contents of this part.

  If the save is successful, the part should fire a property changed event reflecting the new dirty state (`PROP_DIRTY` property).

  If the save is cancelled through user action, or for any other reason, the part should invoke `setCancelled` on the `IProgressMonitor` to inform the caller.

  This method is long-running; progress and cancellation are provided by the given progress monitor.

  Specified by:
    `doSave` in interface `ISaveablePart`
  Specified by:
    `doSave` in class `EditorPart`
  See Also:
    `ISaveablePart.doSave(org.eclipse.core.runtime.IProgressMonitor)`

### doSaveAs

    public void doSaveAs()

  Description copied from interface: `ISaveablePart`
  Saves the contents of this part to another object.

  Implementors are expected to open a "Save As" dialog where the user will be able to select a new name for the contents. After the selection is made, the contents should be saved to that new name. During this operation a `IProgressMonitor` should be used to indicate progress.

  If the save is successful, the part fires a property changed event reflecting the new dirty state (`PROP_DIRTY` property).

  Specified by:
    `doSaveAs` in interface `ISaveablePart`
  Specified by:
    `doSaveAs` in class `EditorPart`
  See Also:
    `ISaveablePart.doSaveAs()`

### isSaveAsAllowed

    public boolean isSaveAsAllowed()

  Description copied from interface: `ISaveablePart`
  Returns whether the "Save As" operation is supported by this part.

  Specified by:
    `isSaveAsAllowed` in interface `ISaveablePart`
  Specified by:
    `isSaveAsAllowed` in class `EditorPart`
  See Also:
    `ISaveablePart.isSaveAsAllowed()`

### isDirty

    public boolean isDirty()

  Implemented by testing if the managed form is dirty.

  Specified by:
    `isDirty` in interface `ISaveablePart`
  Specified by:
    `isDirty` in class `EditorPart`
  Returns:
    `true` if the managed form is dirty, `false` otherwise.
  See Also:
    `ISaveablePart.isDirty()`

### setIndex

    public void setIndex(int index)

  Preserves the page index.

  Specified by:
    `setIndex` in interface `IFormPage`
  Parameters:
    `index` - the assigned page index

### getIndex

    public int getIndex()

  Returns the saved page index.

  Specified by:
    `getIndex` in interface `IFormPage`
  Returns:
    the page index

### isEditor

    public boolean isEditor()

  Form pages are not editors.

  Specified by:
    `isEditor` in interface `IFormPage`
  Returns:
    `false`

### selectReveal

    public boolean selectReveal(Object object)

  Attempts to select and reveal the given object by passing the request to the managed form.

  Specified by:
    `selectReveal` in interface `IFormPage`
  Parameters:
    `object` - the object to select and reveal in the page if possible.
  Returns:
    `true` if the page has been successfully selected and revealed by one of the managed form parts, `false` otherwise.

### canLeaveThePage

    public boolean canLeaveThePage()

  By default, editor will be allowed to flip the page.

  Specified by:
    `canLeaveThePage` in interface `IFormPage`
  Returns:
    `true`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.