Class FilePropSaveable
- All Implemented Interfaces:
- IAdaptable,- ISaveablesSource
- Author:
- Christopher Mindus
- Field SummaryFields
- Method SummaryModifier and TypeMethodDescription- void- doSave- (IProgressMonitor monitor) Saves the contents of this saveable.- booleanClients must implement equals and hashCode as defined in- Object.equals(Object)and- Object.hashCode().- Saveable[]Returns the saveables currently active in the workbench part.- <T> T- getAdapter- (Class<T> adapter) This implementation of- IAdaptable.getAdapter(Class)returns- null.Returns the image descriptor for this saveable.- getName()Returns the name of this saveable for display purposes.- Saveable[]Returns the saveables presented by the workbench part.Returns the tool tip text for this saveable.- int- hashCode()Clients must implement equals and hashCode as defined in- Object.equals(Object)and- Object.hashCode().- boolean- isDirty()Returns whether the contents of this saveable have changed since the last save operation.- boolean- isSaving()Flag for saving.- voidThe Editor has had its dirty state changed: verify and inform.- boolean- show- (IWorkbenchPage page) Attempts to show this saveable in the given page and returns- trueon success.- showEditor- (IWorkbenchPage page) Attempts to show this saveable in the given page and returns the editor started or shown.
- Field Details- EMPTYThis saveable in a single array.
 
- Method Details- showAttempts to show this saveable in the given page and returns- trueon success.
- showEditorAttempts to show this saveable in the given page and returns the editor started or shown.- Parameters:
- page- The workbench page in which to show this saveable.
- Returns:
- The editor part, or null for none.
 
- getNameReturns the name of this saveable for display purposes.
- getToolTipTextReturns the tool tip text for this saveable. This text is used to differentiate between two inputs with the same name.- Specified by:
- getToolTipTextin class- Saveable
- Returns:
- the tool tip text; never null.
 
- getImageDescriptorReturns the image descriptor for this saveable.- Specified by:
- getImageDescriptorin class- Saveable
- Returns:
- The image descriptor for this model.
 
- isSavingpublic boolean isSaving()Flag for saving.
- doSaveSaves the contents of this saveable.- If the save is cancelled through user action, or for any other reason, the part should invoke - setCancelledon the- IProgressMonitorto inform the caller.- This method is long-running; progress and cancellation are provided by the given progress monitor. - Specified by:
- doSavein class- Saveable
- Parameters:
- monitor- The progress monitor.
- Throws:
- CoreException- If the save fails; it is the caller's responsibility to report the failure to the user.
 
- isDirtypublic boolean isDirty()Returns whether the contents of this saveable have changed since the last save operation.- Note: this method is called frequently, for example by actions to determine their enabled status. 
- onDirtyChangedpublic void onDirtyChanged()The Editor has had its dirty state changed: verify and inform.
- equalsClients must implement equals and hashCode as defined in- Object.equals(Object)and- Object.hashCode(). Two saveables should be equal if their dirty state is shared, and saving one will save the other. If two saveables are equal, their names, tooltips, and images should be the same because only one of them will be shown when prompting the user to save.
- hashCodepublic int hashCode()Clients must implement equals and hashCode as defined in- Object.equals(Object)and- Object.hashCode(). Two saveables should be equal if their dirty state is shared, and saving one will save the other. If two saveables are equal, their hash codes MUST be the same, and their names, tooltips, and images should be the same because only one of them will be shown when prompting the user to save.- IMPORTANT: Implementers should ensure that the hashCode returned is sufficiently unique so as not to collide with hashCodes returned by other implementations. It is suggested that the defining plug-in's ID be used as part of the returned hashCode, as in the following example: - int PRIME = 31; int hash = ...; // compute the "normal" hash code, e.g. based on some identifier unique within the defining plug-in return hash * PRIME + MY_PLUGIN_ID.hashCode();
- getAdapterThis implementation of- IAdaptable.getAdapter(Class)returns- null. Subclasses may override. This allows two unrelated subclasses of Saveable to implement- equals(Object)and- hashCode()based on an underlying implementation class that is shared by both Saveable subclasses.- Specified by:
- getAdapterin interface- IAdaptable
- Overrides:
- getAdapterin class- Saveable
- Returns:
- This implementation always returns null.
 
- getSaveablesReturns the saveables presented by the workbench part. If the return value of this method changes during the lifetime of this part (i.e. after initialization and control creation but before disposal) the part must notify an implicit listener using- ISaveablesLifecycleListener.handleLifecycleEvent(SaveablesLifecycleEvent).- Additions of saveables to the list of saveables of this part are announced using an event of type - SaveablesLifecycleEvent.POST_OPEN. Removals are announced in a two-stage process, first using an event of type- SaveablesLifecycleEvent.PRE_CLOSEfollowed by an event of type- SaveablesLifecycleEvent.POST_CLOSE. Since firing the- PRE_CLOSEevent may trigger prompts to save dirty saveables, the cancellation status of the event must be checked by the part after the notification. When removing only non-dirty saveables,- POST_CLOSEnotification is sufficient.- The listener is obtained from the part site by calling - partSite.getService(ISaveablesLifecycleListener.class).- The part must not notify from its initialization methods (e.g. - initor- createPartControl), or from its dispose method. Parts that implement- IReusableEditormust notify when their input is changed through- IReusableEditor.setInput(IEditorInput).- Specified by:
- getSaveablesin interface- ISaveablesSource
- Returns:
- The saveables presented by the workbench part.
- See Also:
 
- getActiveSaveablesReturns the saveables currently active in the workbench part.- Certain workbench actions, such as Save, target only the active saveables in the active part. For example, the active saveables could be determined based on the current selection in the part. - Specified by:
- getActiveSaveablesin interface- ISaveablesSource
- Returns:
- The saveables currently active in the workbench part.