Interface IEditorRegistry
An editor can be created in one of two ways:
- An editor can be defined by an extension to the workbench.
- The user manually associates an editor with a given resource extension type. This will override any default workbench or platform association.
The registry does not keep track of editors that are "implicitly" determined.
For example a bitmap (.bmp
) file will typically not have a
registered editor. Instead, when no registered editor is found, the
underlying OS is consulted.
This interface is not intended to be implemented by clients.
- See Also:
- Restriction:
- This interface is not intended to be implemented by clients.
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addPropertyListener
(IPropertyListener listener) Adds a listener for changes to properties of this registry.findEditor
(String editorId) Finds and returns the descriptor of the editor with the given editor id.Deprecated.The system external editor is the default editor.getDefaultEditor
(String fileName) Returns the default editor for a given file name.getDefaultEditor
(String fileName, IContentType contentType) Returns the default editor for a given file name and with the given content type.getEditors
(String fileName) Returns the list of file editors registered to work against the file with the given file name.getEditors
(String fileName, IContentType contentType) Returns the list of file editors registered to work against the file with the given file name and with the given content type.Returns a list of mappings from file type to editor.getImageDescriptor
(String filename) Returns the image descriptor associated with a given file.getImageDescriptor
(String filename, IContentType contentType) Returns the image descriptor associated with a given file.getSystemExternalEditorImageDescriptor
(String filename) Returns the image descriptor associated with the system editor that would be used to edit this file externally.boolean
isSystemExternalEditorAvailable
(String filename) Returns whether the system has an editor that could handle a file with the given name.boolean
isSystemInPlaceEditorAvailable
(String filename) Returns whether there is an in-place editor that could handle a file with the given name.void
removePropertyListener
(IPropertyListener listener) Removes the given property listener from this registry.void
setDefaultEditor
(String fileNameOrExtension, String editorId) Sets the default editor id for the files that match that specified file name or extension.
-
Field Details
-
PROP_CONTENTS
static final int PROP_CONTENTSThe property identifier for the contents of this registry.- See Also:
-
SYSTEM_EXTERNAL_EDITOR_ID
The identifier for the system external editor descriptor. This descriptor is always present in the registry on all platforms. This editor requires an input which implementsIPathEditorInput
. UsefindEditor
to access the editor descriptor for this identifier.- Since:
- 3.0
- See Also:
-
SYSTEM_INPLACE_EDITOR_ID
The identifier for the system in-place editor descriptor. This descriptor is only present in the registry on platforms that support in-place editing (for example Win32). This editor requires an input which implementsIInPlaceEditorInput
. UsefindEditor
to access the editor descriptor for this identifier.- Since:
- 3.0
- See Also:
-
-
Method Details
-
addPropertyListener
Adds a listener for changes to properties of this registry. Has no effect if an identical listener is already registered.The properties ids are as follows:
PROP_CONTENTS
: Triggered when the file editor mappings in the editor registry change.
- Parameters:
listener
- a property listener
-
findEditor
Finds and returns the descriptor of the editor with the given editor id.- Parameters:
editorId
- the editor id- Returns:
- the editor descriptor with the given id, or
null
if not found
-
getDefaultEditor
Deprecated.The system external editor is the default editor. UsefindEditor(IEditorRegistry.SYSTEM_EXTERNAL_EDITOR_ID)
instead.Returns the default editor. The default editor always exist.- Returns:
- the descriptor of the default editor
-
getDefaultEditor
Returns the default editor for a given file name. This method assumes an unknown content type for the given file.The default editor is determined by taking the file extension for the file and obtaining the default editor for that extension.
- Parameters:
fileName
- the file name in the system- Returns:
- the descriptor of the default editor, or
null
if not found
-
getDefaultEditor
Returns the default editor for a given file name and with the given content type.The default editor is determined by taking the file extension for the file and obtaining the default editor for that extension.
- Parameters:
fileName
- the file name in the systemcontentType
- the content type ornull
for the unknown content type- Returns:
- the descriptor of the default editor, or
null
if not found - Since:
- 3.1
-
getEditors
Returns the list of file editors registered to work against the file with the given file name. This method assumes an unknown content type for the given file.Note: Use
getDefaultEditor(String)
if you only the need the default editor rather than all candidate editors.- Parameters:
fileName
- the file name in the system- Returns:
- a list of editor descriptors
-
getEditors
Returns the list of file editors registered to work against the file with the given file name and with the given content type.Note: Use
getDefaultEditor(String)
if you only the need the default editor rather than all candidate editors.- Parameters:
fileName
- the file name in the systemcontentType
- the content type ornull
for the unknown content type- Returns:
- a list of editor descriptors
- Since:
- 3.1
-
getFileEditorMappings
IFileEditorMapping[] getFileEditorMappings()Returns a list of mappings from file type to editor. The resulting list is sorted in ascending order by file extension.Each mapping defines an extension and the set of editors that are available for that type. The set of editors includes those registered via plug-ins and those explicitly associated with a type by the user in the workbench preference pages.
- Returns:
- a list of mappings sorted alphabetically by extension
-
getImageDescriptor
Returns the image descriptor associated with a given file. This image is usually displayed next to the given file. This method assumes an unknown content type for the given file.The image is determined by taking the file extension of the file and obtaining the image for the default editor associated with that extension. A default image is returned if no default editor is available.
- Parameters:
filename
- the file name in the system- Returns:
- the descriptor of the image to display next to the file
-
getImageDescriptor
Returns the image descriptor associated with a given file. This image is usually displayed next to the given file.The image is determined by taking the file extension of the file and obtaining the image for the default editor associated with that extension. A default image is returned if no default editor is available.
- Parameters:
filename
- the file name in the systemcontentType
- the content type of the file ornull
for the unknown content type- Returns:
- the descriptor of the image to display next to the file
- Since:
- 3.1
-
removePropertyListener
Removes the given property listener from this registry. Has no effect if an identical listener is not registered.- Parameters:
listener
- a property listener
-
setDefaultEditor
Sets the default editor id for the files that match that specified file name or extension. The specified editor must be defined as an editor for that file name or extension.- Parameters:
fileNameOrExtension
- the file name or extension pattern (e.g. "*.xml");editorId
- the editor id ornull
for no default
-
isSystemInPlaceEditorAvailable
Returns whether there is an in-place editor that could handle a file with the given name.- Parameters:
filename
- the file name- Returns:
true
if an in-place editor is available, andfalse
otherwise- Since:
- 3.0
-
isSystemExternalEditorAvailable
Returns whether the system has an editor that could handle a file with the given name.- Parameters:
filename
- the file name- Returns:
true
if an external editor available, andfalse
otherwise- Since:
- 3.0
-
getSystemExternalEditorImageDescriptor
Returns the image descriptor associated with the system editor that would be used to edit this file externally.- Parameters:
filename
- the file name- Returns:
- the descriptor of the external editor image, or
null
if none - Since:
- 3.0
-