Interface ISaveablePart

All Known Subinterfaces:
IDetailPane3, IEditorPart, IFormPage, IInPlaceEditor, IReusableEditor, ISaveablePart2, ISaveableWorkbenchPart, ITextEditor
All Known Implementing Classes:
AbstractDecoratedTextEditor, AbstractMultiEditor, AbstractTextEditor, CommonNavigator, CommonSourceNotFoundEditor, CompareEditor, EditorPart, ErrorEditorPart, FormEditor, FormPage, HistoryPageSaveablePart, MultiEditor, MultiPageEditorPart, PageSaveablePart, ParticipantPageSaveablePart, ProjectExplorer, SaveablePartAdapter, SharedHeaderFormEditor, StatusTextEditor, TextEditor

public interface ISaveablePart
Workbench parts implement or adapt to this interface to participate in the enablement and execution of the Save and Save As actions.
Since:
2.1
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    The property id for isDirty.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Saves the contents of this part.
    void
    Saves the contents of this part to another object.
    boolean
    Returns whether the contents of this part have changed since the last save operation.
    boolean
    Returns whether the "Save As" operation is supported by this part.
    boolean
    Returns whether the contents of this part should be saved when the part is closed.
  • Field Details

  • Method Details

    • doSave

      void doSave(IProgressMonitor monitor)
      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.

      Parameters:
      monitor - the progress monitor
    • doSaveAs

      void doSaveAs()
      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).

    • isDirty

      boolean isDirty()
      Returns whether the contents of this part have changed since the last save operation. If this value changes the part must fire a property listener event with PROP_DIRTY.

      Note: this method is called often on a part open or part activation switch, for example by actions to determine their enabled status.

      Returns:
      true if the contents have been modified and need saving, and false if they have not changed since the last save
    • isSaveAsAllowed

      boolean isSaveAsAllowed()
      Returns whether the "Save As" operation is supported by this part.
      Returns:
      true if "Save As" is supported, and false if not supported
    • isSaveOnCloseNeeded

      boolean isSaveOnCloseNeeded()
      Returns whether the contents of this part should be saved when the part is closed.
      Returns:
      true if the contents of the part should be saved on close, and false if the contents are expendable