|
 |
|
|
org.eclipse.ui.ide
Class IDE
java.lang.Object
org.eclipse.ui.ide.IDE
-
public final class IDE
- extends
Object
Collection of IDE-specific APIs factored out of existing workbench. This
class cannot be instantiated; all functionality is provided by static methods
and fields.
-
Since:
- 3.0
Nested Class Summary
|
static interface
|
IDE.Preferences
Preferences defined by the IDE workbench. |
static interface
|
IDE.SharedImages
Standard shared images defined by the IDE. |
Field Summary
|
static
String
|
EDITOR_ID_ATTR
An optional attribute within a workspace marker (IMarker )
which identifies the preferred editor type to be opened. |
static
QualifiedName
|
EDITOR_KEY
The persistent property key used on IFile resources to contain the
preferred editor ID to use. |
static
String
|
RESOURCE_PERSPECTIVE_ID
The resource based perspective identifier. |
Method Summary
|
static
List
|
computeSelectedResources
(
IStructuredSelection originalSelection)
Extracts and returns the IResource s in the given
selection or the resource objects they adapts to. |
static
IContentType
|
getContentType
(
IFile file)
Return the content type for the given file. |
static
IEditorDescriptor
|
getDefaultEditor
(
IFile file)
Returns the default editor for a given file. |
static
IEditorDescriptor
|
getDefaultEditor
(
IFile file,
boolean determineContentType)
Returns the default editor for a given file. |
static
IEditorDescriptor
|
getEditorDescriptor
(
IFile file)
Returns an editor descriptor appropriate for opening the given file
resource. |
static
IEditorDescriptor
|
getEditorDescriptor
(
IFile file,
boolean determineContentType)
Returns an editor descriptor appropriate for opening the given file
resource. |
static
IEditorDescriptor
|
getEditorDescriptor
(
String name)
Returns an editor descriptor appropriate for opening a file resource with
the given name. |
static
IEditorDescriptor
|
getEditorDescriptor
(
String name,
boolean inferContentType)
Returns an editor descriptor appropriate for opening a file resource with
the given name. |
static
IMarkerHelpRegistry
|
getMarkerHelpRegistry
()
Returns the marker help registry for the workbench. |
static void
|
gotoMarker
(
IEditorPart editor,
IMarker marker)
Sets the cursor and selection state for the given editor to reveal the
position of the given marker. |
static
IContentType
|
guessContentType
(
IFile file)
Guess at the content type of the given file based on the filename. |
static
IEditorPart
|
openEditor
(
IWorkbenchPage page,
IEditorInput input,
String editorId)
Opens an editor on the given object. |
static
IEditorPart
|
openEditor
(
IWorkbenchPage page,
IEditorInput input,
String editorId,
boolean activate)
Opens an editor on the given object. |
static
IEditorPart
|
openEditor
(
IWorkbenchPage page,
IFile input)
Opens an editor on the given file resource. |
static
IEditorPart
|
openEditor
(
IWorkbenchPage page,
IFile input,
boolean activate)
Opens an editor on the given file resource. |
static
IEditorPart
|
openEditor
(
IWorkbenchPage page,
IFile input,
boolean activate,
boolean determineContentType)
Opens an editor on the given file resource. |
static
IEditorPart
|
openEditor
(
IWorkbenchPage page,
IFile input,
String editorId)
Opens an editor on the given file resource. |
static
IEditorPart
|
openEditor
(
IWorkbenchPage page,
IFile input,
String editorId,
boolean activate)
Opens an editor on the given file resource. |
static
IEditorPart
|
openEditor
(
IWorkbenchPage page,
IMarker marker)
Opens an editor on the file resource of the given marker. |
static
IEditorPart
|
openEditor
(
IWorkbenchPage page,
IMarker marker,
boolean activate)
Opens an editor on the file resource of the given marker. |
static
IEditorPart
|
openEditor
(
IWorkbenchPage page,
URI uri,
String editorId,
boolean activate)
Opens an editor on the given IFileStore object. |
static
IEditorPart
|
openEditorOnFileStore
(
IWorkbenchPage page,
IFileStore fileStore)
Opens an editor on the given IFileStore object. |
static
IEditorReference[]
|
openEditors
(
IWorkbenchPage page,
IFile[] inputs)
Opens editors on given file resources. |
static boolean
|
promptToConfirm
(
Shell shell,
String title,
String message,
IResourceDelta delta,
String[] ignoreModelProviderIds,
boolean syncExec)
Prompt the user to inform them of the possible side effects of an
operation on resources. |
static void
|
registerAdapters
()
Register workbench adapters programmatically. |
static boolean
|
saveAllEditors
(
IResource[] resourceRoots,
boolean confirm)
Save all dirty editors in the workbench whose editor input is a child
resource of one of the IResource 's provided. |
static void
|
setDefaultEditor
(
IFile file,
String editorID)
Sets the default editor id for a given file. |
Methods inherited from class java.lang.
Object
|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait
|
EDITOR_KEY
public static final
QualifiedName EDITOR_KEY
- The persistent property key used on IFile resources to contain the
preferred editor ID to use.
Example of retrieving the persisted editor id:
IFile file = ...
IEditorDescriptor editorDesc = null;
try {
String editorID = file.getPersistentProperty(EDITOR_KEY);
if (editorID != null) {
editorDesc = editorReg.findEditor(editorID);
}
} catch (CoreException e) {
// handle problem accessing persistent property here
}
Example of persisting the editor id:
IFile file = ...
try {
file.setPersistentProperty(EDITOR_KEY, editorDesc.getId());
} catch (CoreException e) {
// handle problem setting persistent property here
}
EDITOR_ID_ATTR
public static final
String EDITOR_ID_ATTR
- An optional attribute within a workspace marker (
IMarker )
which identifies the preferred editor type to be opened.
-
See Also:
-
Constant Field Values
RESOURCE_PERSPECTIVE_ID
public static final
String RESOURCE_PERSPECTIVE_ID
- The resource based perspective identifier.
-
See Also:
-
Constant Field Values
getMarkerHelpRegistry
public static
IMarkerHelpRegistry getMarkerHelpRegistry()
- Returns the marker help registry for the workbench.
-
-
Returns:
- the marker help registry
gotoMarker
public static void gotoMarker(
IEditorPart editor,
IMarker marker)
- Sets the cursor and selection state for the given editor to reveal the
position of the given marker. This is done on a best effort basis. If the
editor does not provide an
IGotoMarker interface (either
directly or via IAdaptable.getAdapter ), this has no
effect.
-
-
Parameters:
-
editor - the editor -
marker - the marker
openEditor
public static
IEditorPart openEditor(
IWorkbenchPage page,
IEditorInput input,
String editorId)
throws
PartInitException
- Opens an editor on the given object.
If the page already has an editor open on the target object then that
editor is brought to front; otherwise, a new editor is opened.
-
-
Parameters:
-
page - the page in which the editor will be opened -
input - the editor input -
editorId - the id of the editor extension to use
-
Returns:
- an open editor or
null if an external editor was
opened
-
Throws:
-
PartInitException
- if the editor could not be initialized -
See Also:
-
IWorkbenchPage.openEditor(IEditorInput, String)
openEditor
public static
IEditorPart openEditor(
IWorkbenchPage page,
URI uri,
String editorId,
boolean activate)
throws
PartInitException
- Opens an editor on the given IFileStore object.
Unlike the other openEditor methods, this one can be used
to open files that reside outside the workspace resource set.
If the page already has an editor open on the target object then that
editor is brought to front; otherwise, a new editor is opened.
-
-
Parameters:
-
page - the page in which the editor will be opened -
uri - the URI of the file store representing the file to open -
editorId - the id of the editor extension to use -
activate - if true the editor will be activated opened
-
Returns:
- an open editor or
null if an external editor was
-
Throws:
-
PartInitException
- if the editor could not be initialized -
Since:
- 3.3
-
See Also:
-
IWorkbenchPage.openEditor(IEditorInput, String) ,
EFS.getStore(URI)
openEditor
public static
IEditorPart openEditor(
IWorkbenchPage page,
IEditorInput input,
String editorId,
boolean activate)
throws
PartInitException
- Opens an editor on the given object.
If the page already has an editor open on the target object then that
editor is brought to front; otherwise, a new editor is opened. If
activate == true the editor will be activated.
-
-
Parameters:
-
page - the page in which the editor will be opened -
input - the editor input -
editorId - the id of the editor extension to use -
activate - if true the editor will be activated
-
Returns:
- an open editor or
null if an external editor was
opened
-
Throws:
-
PartInitException
- if the editor could not be initialized -
See Also:
-
IWorkbenchPage.openEditor(IEditorInput, String, boolean)
openEditor
public static
IEditorPart openEditor(
IWorkbenchPage page,
IFile input,
boolean activate)
throws
PartInitException
- Opens an editor on the given file resource. This method will attempt to
resolve the editor based on content-type bindings as well as traditional
name/extension bindings.
If the page already has an editor open on the target object then that
editor is brought to front; otherwise, a new editor is opened. If
activate == true the editor will be activated.
-
-
Parameters:
-
page - the page in which the editor will be opened -
input - the editor input -
activate - if true the editor will be activated
-
Returns:
- an open editor or
null if an external editor was
opened
-
Throws:
-
PartInitException
- if the editor could not be initialized -
See Also:
-
IWorkbenchPage.openEditor(org.eclipse.ui.IEditorInput, String, boolean)
openEditor
public static
IEditorPart openEditor(
IWorkbenchPage page,
IFile input,
boolean activate,
boolean determineContentType)
throws
PartInitException
- Opens an editor on the given file resource. This method will attempt to
resolve the editor based on content-type bindings as well as traditional
name/extension bindings if
determineContentType is
true .
If the page already has an editor open on the target object then that
editor is brought to front; otherwise, a new editor is opened. If
activate == true the editor will be activated.
-
-
Parameters:
-
page - the page in which the editor will be opened -
input - the editor input -
activate - if true the editor will be activated -
determineContentType - attempt to resolve the content type for this file
-
Returns:
- an open editor or
null if an external editor was
opened
-
Throws:
-
PartInitException
- if the editor could not be initialized -
Since:
- 3.1
-
See Also:
-
IWorkbenchPage.openEditor(org.eclipse.ui.IEditorInput, String, boolean)
openEditor
public static
IEditorPart openEditor(
IWorkbenchPage page,
IFile input)
throws
PartInitException
- Opens an editor on the given file resource. This method will attempt to
resolve the editor based on content-type bindings as well as traditional
name/extension bindings.
If the page already has an editor open on the target object then that
editor is brought to front; otherwise, a new editor is opened.
-
-
Parameters:
-
page - the page in which the editor will be opened -
input - the editor input
-
Returns:
- an open editor or
null if an external editor was
opened
-
Throws:
-
PartInitException
- if the editor could not be initialized -
See Also:
-
IWorkbenchPage.openEditor(IEditorInput, String)
openEditor
public static
IEditorPart openEditor(
IWorkbenchPage page,
IFile input,
String editorId)
throws
PartInitException
- Opens an editor on the given file resource.
If the page already has an editor open on the target object then that
editor is brought to front; otherwise, a new editor is opened.
-
-
Parameters:
-
page - the page in which the editor will be opened -
input - the editor input -
editorId - the id of the editor extension to use
-
Returns:
- an open editor or
null if an external editor was
opened
-
Throws:
-
PartInitException
- if the editor could not be initialized -
See Also:
-
IWorkbenchPage.openEditor(IEditorInput, String)
openEditor
public static
IEditorPart openEditor(
IWorkbenchPage page,
IFile input,
String editorId,
boolean activate)
throws
PartInitException
- Opens an editor on the given file resource.
If the page already has an editor open on the target object then that
editor is brought to front; otherwise, a new editor is opened. If
activate == true the editor will be activated.
-
-
Parameters:
-
page - the page in which the editor will be opened -
input - the editor input -
editorId - the id of the editor extension to use -
activate - if true the editor will be activated
-
Returns:
- an open editor or
null if an external editor was
opened
-
Throws:
-
PartInitException
- if the editor could not be initialized -
See Also:
-
IWorkbenchPage.openEditor(IEditorInput, String, boolean)
getEditorDescriptor
public static
IEditorDescriptor getEditorDescriptor(
IFile file)
throws
PartInitException
- Returns an editor descriptor appropriate for opening the given file
resource.
The editor descriptor is determined using a multi-step process. This
method will attempt to resolve the editor based on content-type bindings
as well as traditional name/extension bindings.
- The file is consulted for a persistent property named
IDE.EDITOR_KEY containing the preferred editor id to be
used.
- The workbench editor registry is consulted to determine if an editor
extension has been registered for the file type. If so, an instance of
the editor extension is opened on the file. See
IEditorRegistry.getDefaultEditor(String) .
- The operating system is consulted to determine if an in-place
component editor is available (e.g. OLE editor on Win32 platforms).
- The operating system is consulted to determine if an external editor
is available.
-
-
Parameters:
-
file - the file
-
Returns:
- an editor descriptor, appropriate for opening the file
-
Throws:
-
PartInitException
- if no editor can be found
getEditorDescriptor
public static
IEditorDescriptor getEditorDescriptor(
IFile file,
boolean determineContentType)
throws
PartInitException
- Returns an editor descriptor appropriate for opening the given file
resource.
The editor descriptor is determined using a multi-step process. This
method will attempt to resolve the editor based on content-type bindings
as well as traditional name/extension bindings if
determineContentType is true .
- The file is consulted for a persistent property named
IDE.EDITOR_KEY containing the preferred editor id to be
used.
- The workbench editor registry is consulted to determine if an editor
extension has been registered for the file type. If so, an instance of
the editor extension is opened on the file. See
IEditorRegistry.getDefaultEditor(String) .
- The operating system is consulted to determine if an in-place
component editor is available (e.g. OLE editor on Win32 platforms).
- The operating system is consulted to determine if an external editor
is available.
-
-
Parameters:
-
file - the file -
determineContentType - query the content type system for the content type of the file
-
Returns:
- an editor descriptor, appropriate for opening the file
-
Throws:
-
PartInitException
- if no editor can be found -
Since:
- 3.1
getEditorDescriptor
public static
IEditorDescriptor getEditorDescriptor(
String name)
throws
PartInitException
- Returns an editor descriptor appropriate for opening a file resource with
the given name.
The editor descriptor is determined using a multi-step process. This
method will attempt to infer content type from the file name.
- The file is consulted for a persistent property named
IDE.EDITOR_KEY containing the preferred editor id to be
used.
- The workbench editor registry is consulted to determine if an editor
extension has been registered for the file type. If so, an instance of
the editor extension is opened on the file. See
IEditorRegistry.getDefaultEditor(String) .
- The operating system is consulted to determine if an in-place
component editor is available (e.g. OLE editor on Win32 platforms).
- The operating system is consulted to determine if an external editor
is available.
-
-
Parameters:
-
name - the file name
-
Returns:
- an editor descriptor, appropriate for opening the file
-
Throws:
-
PartInitException
- if no editor can be found -
Since:
- 3.1
getEditorDescriptor
public static
IEditorDescriptor getEditorDescriptor(
String name,
boolean inferContentType)
throws
PartInitException
- Returns an editor descriptor appropriate for opening a file resource with
the given name.
The editor descriptor is determined using a multi-step process. This
method will attempt to infer the content type of the file if
inferContentType is true .
- The file is consulted for a persistent property named
IDE.EDITOR_KEY containing the preferred editor id to be
used.
- The workbench editor registry is consulted to determine if an editor
extension has been registered for the file type. If so, an instance of
the editor extension is opened on the file. See
IEditorRegistry.getDefaultEditor(String) .
- The operating system is consulted to determine if an in-place
component editor is available (e.g. OLE editor on Win32 platforms).
- The operating system is consulted to determine if an external editor
is available.
-
-
Parameters:
-
name - the file name -
inferContentType - attempt to infer the content type from the file name if this
is true
-
Returns:
- an editor descriptor, appropriate for opening the file
-
Throws:
-
PartInitException
- if no editor can be found -
Since:
- 3.1
openEditor
public static
IEditorPart openEditor(
IWorkbenchPage page,
IMarker marker)
throws
PartInitException
- Opens an editor on the file resource of the given marker.
If this page already has an editor open on the marker resource file that
editor is brought to front; otherwise, a new editor is opened.The cursor
and selection state of the editor are then updated from information
recorded in the marker.
If the marker contains an EDITOR_ID_ATTR attribute the
attribute value will be used to determine the editor type to be opened.
If not, the registered editor for the marker resource file will be used.
-
-
Parameters:
-
page - the workbench page to open the editor in -
marker - the marker to open
-
Returns:
- an open editor or
null not possible
-
Throws:
-
PartInitException
- if the editor could not be initialized -
See Also:
-
openEditor(org.eclipse.ui.IWorkbenchPage, org.eclipse.core.resources.IMarker, boolean)
openEditor
public static
IEditorPart openEditor(
IWorkbenchPage page,
IMarker marker,
boolean activate)
throws
PartInitException
- Opens an editor on the file resource of the given marker.
If this page already has an editor open on the marker resource file that
editor is brought to front; otherwise, a new editor is opened. If
activate == true the editor will be activated. The cursor
and selection state of the editor are then updated from information
recorded in the marker.
If the marker contains an EDITOR_ID_ATTR attribute the
attribute value will be used to determine the editor type to be opened.
If not, the registered editor for the marker resource file will be used.
-
-
Parameters:
-
page - the workbench page to open the editor in -
marker - the marker to open -
activate - if true the editor will be activated
-
Returns:
- an open editor or
null not possible
-
Throws:
-
PartInitException
- if the editor could not be initialized
openEditorOnFileStore
public static
IEditorPart openEditorOnFileStore(
IWorkbenchPage page,
IFileStore fileStore)
throws
PartInitException
- Opens an editor on the given IFileStore object.
Unlike the other openEditor methods, this one
can be used to open files that reside outside the workspace
resource set.
If the page already has an editor open on the target object then that
editor is brought to front; otherwise, a new editor is opened.
-
-
Parameters:
-
page - the page in which the editor will be opened -
fileStore - the IFileStore representing the file to open
-
Returns:
- an open editor or
null if an external editor was opened
-
Throws:
-
PartInitException
- if the editor could not be initialized -
Since:
- 3.3
-
See Also:
-
IWorkbenchPage.openEditor(IEditorInput, String)
saveAllEditors
public static boolean saveAllEditors(
IResource[] resourceRoots,
boolean confirm)
- Save all dirty editors in the workbench whose editor input is a child
resource of one of the
IResource 's provided. Opens a
dialog to prompt the user if confirm is true. Return true
if successful. Return false if the user has canceled the command.
-
-
Parameters:
-
resourceRoots - the resource roots under which editor input should
be saved, other will be left dirty -
confirm - true to ask the user before saving unsaved
changes (recommended), and false to save
unsaved changes without asking
-
Returns:
-
true if the command succeeded, and
false if the operation was canceled by the user or
an error occurred while saving -
Since:
- 3.0
setDefaultEditor
public static void setDefaultEditor(
IFile file,
String editorID)
- Sets the default editor id for a given file. This value will be used to
determine the default editor descriptor for the file in future calls to
getDefaultEditor(IFile) .
-
-
Parameters:
-
file - the file -
editorID - the editor id
getDefaultEditor
public static
IEditorDescriptor getDefaultEditor(
IFile file)
- Returns the default editor for a given file. This method will attempt to
resolve the editor based on content-type bindings as well as traditional
name/extension bindings.
A default editor id may be registered for a specific file using
setDefaultEditor . If the given file has a registered
default editor id the default editor will derived from it. If not, the
default editor is determined by taking the file name for the file and
obtaining the default editor for that name.
-
-
Parameters:
-
file - the file
-
Returns:
- the descriptor of the default editor, or
null if
not found
getDefaultEditor
public static
IEditorDescriptor getDefaultEditor(
IFile file,
boolean determineContentType)
- Returns the default editor for a given file. This method will attempt to
resolve the editor based on content-type bindings as well as traditional
name/extension bindings if
determineContentType is
true .
A default editor id may be registered for a specific file using
setDefaultEditor . If the given file has a registered
default editor id the default editor will derived from it. If not, the
default editor is determined by taking the file name for the file and
obtaining the default editor for that name.
-
-
Parameters:
-
file - the file -
determineContentType - determine the content type for the given file
-
Returns:
- the descriptor of the default editor, or
null if
not found -
Since:
- 3.1
computeSelectedResources
public static
List computeSelectedResources(
IStructuredSelection originalSelection)
- Extracts and returns the
IResource s in the given
selection or the resource objects they adapts to.
-
-
Parameters:
-
originalSelection - the original selection, possibly empty
-
Returns:
- list of resources (element type:
IResource ),
possibly empty
getContentType
public static
IContentType getContentType(
IFile file)
- Return the content type for the given file.
-
-
Parameters:
-
file - the file to test
-
Returns:
- the content type, or
null if it cannot be
determined. -
Since:
- 3.1
guessContentType
public static
IContentType guessContentType(
IFile file)
- Guess at the content type of the given file based on the filename.
-
-
Parameters:
-
file - the file to test
-
Returns:
- the content type, or
null if it cannot be
determined. -
Since:
- 3.2
promptToConfirm
public static boolean promptToConfirm(
Shell shell,
String title,
String message,
IResourceDelta delta,
String[] ignoreModelProviderIds,
boolean syncExec)
- Prompt the user to inform them of the possible side effects of an
operation on resources. Do not prompt for side effects from ignored model
providers. A model provider can be ignored if it is the client calling
this API. Any message from the provided model provider id or any model
providers it extends will be ignored.
-
-
Parameters:
-
shell - the shell to parent the prompt dialog -
title - the title of the dialog -
message - the message for the dialog -
delta - a delta built using an
IResourceChangeDescriptionFactory
-
ignoreModelProviderIds - model providers to be ignored -
syncExec - prompt in a sync exec (required when called from a non-UI
thread)
-
Returns:
- whether the user chose to continue
-
Since:
- 3.2
registerAdapters
public static void registerAdapters()
- Register workbench adapters programmatically. This is necessary to enable
certain types of content in the explorers.
Note: this method should only be called once, in your
application's WorkbenchAdvisor#initialize(IWorkbenchConfigurer) method.
-
-
Since:
- 3.5
openEditors
public static
IEditorReference[] openEditors(
IWorkbenchPage page,
IFile[] inputs)
throws
MultiPartInitException
- Opens editors on given file resources.
If the page already has an editor open on the target object then that
editor is brought to front; otherwise, a new editor is opened. The editor created
for the first input will be activated.
-
-
Parameters:
-
page - the page in which the editor will be opened -
inputs - the inputs for the editors
-
Returns:
- references to the editors opened; the corresponding editors might not be materialized
-
Throws:
-
MultiPartInitException
- if at least one of the editors could not be initialized -
Since:
- 3.5
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.
|
|
|