org.eclipse.ui.IEditorDescriptor#getId ( )源码实例Demo

下面列出了org.eclipse.ui.IEditorDescriptor#getId ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

private void updateDefaultEditorMappingIfAbsent() {
	final EditorRegistry registry = (EditorRegistry) WorkbenchPlugin.getDefault().getEditorRegistry();
	for (final IFileEditorMapping editorMapping : registry.getFileEditorMappings()) {
		final IEditorDescriptor defaultEditor = editorMapping.getDefaultEditor();
		if (null == defaultEditor) {

			final String extension = editorMapping.getExtension();
			LOGGER.info("No default editor is associated with files with extension: '." + extension + "'.");
			final IEditorDescriptor defaultTextEditor = registry.findEditor(DEFAULT_TEXT_EDITOR_ID);
			if (null != defaultTextEditor) {
				((FileEditorMapping) editorMapping).setDefaultEditor(defaultTextEditor);
				String editorName = defaultTextEditor.getLabel();
				if (null == editorName) {
					editorName = defaultTextEditor.getId();
				}
				if (null != editorName) {
					LOGGER.info("Associated files with extension " + extension + " with '" + editorName + "'.");
				}
			}
		}
	}
	registry.saveAssociations();
	PrefUtil.savePrefs();
}
 
源代码2 项目: typescript.java   文件: EditorOpener.java
public IEditorPart openAndSelect(IWorkbenchPage wbPage, IFile file, int offset, int length, boolean activate) throws PartInitException {
	String editorId= null;
	IEditorDescriptor desc= IDE.getEditorDescriptor(file);
	if (desc == null || !desc.isInternal()) {
		editorId= "org.eclipse.ui.DefaultTextEditor"; //$NON-NLS-1$
	} else {
		editorId= desc.getId();
	}

	IEditorPart editor;
	if (NewSearchUI.reuseEditor()) {
		editor= showWithReuse(file, wbPage, editorId, activate);
	} else {
		editor= showWithoutReuse(file, wbPage, editorId, activate);
	}

	if (editor instanceof ITextEditor) {
		ITextEditor textEditor= (ITextEditor) editor;
		textEditor.selectAndReveal(offset, length);
	} else if (editor != null) {
		showWithMarker(editor, file, offset, length);
	}
	return editor;
}
 
源代码3 项目: APICloud-Studio   文件: SVNConflictResolver.java
private String getEditorId(IFileStore file) {
	IWorkbench workbench = PlatformUI.getWorkbench();
	IEditorRegistry editorRegistry= workbench.getEditorRegistry();
	IEditorDescriptor descriptor= editorRegistry.getDefaultEditor(file.getName(), getContentType(file));

	// check the OS for in-place editor (OLE on Win32)
	if (descriptor == null && editorRegistry.isSystemInPlaceEditorAvailable(file.getName()))
		descriptor= editorRegistry.findEditor(IEditorRegistry.SYSTEM_INPLACE_EDITOR_ID);
	
	// check the OS for external editor
	if (descriptor == null && editorRegistry.isSystemExternalEditorAvailable(file.getName()))
		descriptor= editorRegistry.findEditor(IEditorRegistry.SYSTEM_EXTERNAL_EDITOR_ID);
	
	if (descriptor != null)
		return descriptor.getId();
	
	return EditorsUI.DEFAULT_TEXT_EDITOR_ID;
}
 
源代码4 项目: APICloud-Studio   文件: EditorUtil.java
/**
 * Open a file in an editor and return the opened editor part.<br>
 * This method will try to open the file in an internal editor, unless there is no editor descriptor assigned to
 * that file type.
 * 
 * @param file
 * @return The {@link IEditorPart} that was created when the file was opened; Return null in case of an error
 */
public static IEditorPart openInEditor(File file)
{
	// NOTE: Moved from PHP's EditorUtils
	if (file == null)
	{
		IdeLog.logError(CommonEditorPlugin.getDefault(),
				"Error open a file in the editor", new IllegalArgumentException("file is null")); //$NON-NLS-1$ //$NON-NLS-2$
		return null;
	}
	try
	{
		URI uri = file.toURI();
		IEditorDescriptor desc = getEditorDescriptor(uri);
		String editorId = (desc == null) ? IEditorRegistry.SYSTEM_EXTERNAL_EDITOR_ID : desc.getId();
		IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();

		return IDE.openEditor(page, uri, editorId, true);
	}
	catch (Exception e)
	{
		IdeLog.logError(CommonEditorPlugin.getDefault(), "Error open a file in the editor", e); //$NON-NLS-1$
	}
	return null;
}
 
源代码5 项目: birt   文件: OpenJavaSourceAction.java
private String getEditorId( IFileStore file )
{
	IWorkbench workbench = window.getWorkbench( );
	IEditorRegistry editorRegistry = workbench.getEditorRegistry( );
	IEditorDescriptor descriptor = editorRegistry.getDefaultEditor( file.getName( ),
			getContentType( file ) );

	// check the OS for in-place editor (OLE on Win32)
	if ( descriptor == null
			&& editorRegistry.isSystemInPlaceEditorAvailable( file.getName( ) ) )
	{
		descriptor = editorRegistry.findEditor( IEditorRegistry.SYSTEM_INPLACE_EDITOR_ID );
	}

	// check the OS for external editor
	if ( descriptor == null
			&& editorRegistry.isSystemExternalEditorAvailable( file.getName( ) ) )
	{
		descriptor = editorRegistry.findEditor( IEditorRegistry.SYSTEM_EXTERNAL_EDITOR_ID );
	}

	return ( descriptor == null ) ? "" : descriptor.getId( ); //$NON-NLS-1$
}
 
源代码6 项目: Pydev   文件: EditorOpener.java
public IEditorPart openAndSelect(IWorkbenchPage wbPage, IFile file, int offset, int length, boolean activate)
        throws PartInitException {
    String editorId = null;
    IEditorDescriptor desc = IDE.getEditorDescriptor(file);
    if (desc == null || !desc.isInternal()) {
        editorId = "org.eclipse.ui.DefaultTextEditor"; //$NON-NLS-1$
    } else {
        editorId = desc.getId();
    }

    IEditorPart editor;
    if (NewSearchUI.reuseEditor()) {
        editor = showWithReuse(file, wbPage, editorId, activate);
    } else {
        editor = showWithoutReuse(file, wbPage, editorId, activate);
    }

    if (editor instanceof ITextEditor) {
        ITextEditor textEditor = (ITextEditor) editor;
        textEditor.selectAndReveal(offset, length);
    } else if (editor != null) {
        showWithMarker(editor, file, offset, length);
    }
    return editor;
}
 
源代码7 项目: ADT_Frontend   文件: AbapGitStagingService.java
private String getEditorId(String fileName) {
	if (fileName.endsWith("xml")) { //$NON-NLS-1$
		//if file type is .xml, return the associated XML editor
		IEditorRegistry editorReg = PlatformUI.getWorkbench().getEditorRegistry();
		IEditorDescriptor desc = editorReg.getDefaultEditor(fileName, Platform.getContentTypeManager().findContentTypeFor(fileName));
		if (desc != null) {
			return desc.getId();
		}
	}
	//use eclipse default text editor for all other files
	return IDEWorkbenchPlugin.DEFAULT_TEXT_EDITOR_ID;
}
 
源代码8 项目: xds-ide   文件: CoreEditorUtils.java
public static String getEditorID(IEditorInput input) throws PartInitException {
    Assert.isNotNull(input);
    IEditorDescriptor editorDescriptor;
    if (input instanceof IFileEditorInput)
        editorDescriptor= IDE.getEditorDescriptor(((IFileEditorInput)input).getFile());
    else {
        editorDescriptor= IDE.getEditorDescriptor(input.getName());
    }
    return editorDescriptor.getId();
}
 
源代码9 项目: spotbugs   文件: OpenXMLResultsAction.java
private static String getEditorId(File file) {
    IWorkbench workbench = PlatformUI.getWorkbench();
    IEditorRegistry editorRegistry = workbench.getEditorRegistry();
    IEditorDescriptor descriptor = editorRegistry.getDefaultEditor(file.getName(), getContentType(file));
    if (descriptor != null) {
        return descriptor.getId();
    }
    return EditorsUI.DEFAULT_TEXT_EDITOR_ID;
}
 
@Override
public String getEditorId(IEditorInput input, Object inputObject) {
  IFileEditorInput fileEditorInput = AdapterUtilities.getAdapter(input,
      IFileEditorInput.class);
  if (fileEditorInput != null) {
    IEditorDescriptor editor = IDE.getDefaultEditor(fileEditorInput.getFile());
    if (editor != null) {
      return editor.getId();
    }
  }

  // If editor input isn't pointing to a file, we can't properly determine
  // the content type so delegate to the default implementation.
  return super.getEditorId(input, inputObject);
}
 
源代码11 项目: APICloud-Studio   文件: ViewLogCommandHandler.java
/**
 * @param filePath
 *            TODO: we should really make this into a utility function, and have the Ruble::Editor.open method use
 *            it. But I am giving up for now because Eclipse plugin dependencies drive me crazy!
 */
private void openEditorForFile(String filePath)
{
	File file = new File(filePath);
	// Process an existing file.
	if (file.exists() && file.isFile())
	{
		Path path = new Path(filePath);
		IFile fileForLocation = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(path);
		IEditorRegistry editorRegistry = PlatformUI.getWorkbench().getEditorRegistry();
		IEditorDescriptor editorDescriptor = null;
		if (fileForLocation == null)
		{
			IContentType contentType = Platform.getContentTypeManager().findContentTypeFor(filePath);
			editorDescriptor = editorRegistry.getDefaultEditor(filePath, contentType);
		}
		else
		{
			editorDescriptor = editorRegistry.getDefaultEditor(filePath);
		}
		String editorId = (editorDescriptor == null) ? "com.aptana.editor.text" : editorDescriptor.getId(); //$NON-NLS-1$
		try
		{
			IDE.openEditor(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(), file.toURI(),
					editorId, true);
		}
		catch (PartInitException e)
		{
			IdeLog.logError(UIPlugin.getDefault(), e);
		}
	}
}
 
源代码12 项目: Pydev   文件: EditorOpener.java
private String getEditorID(IFile file) throws PartInitException {
    IEditorDescriptor desc = IDE.getEditorDescriptor(file);
    if (desc == null) {
        return PydevPlugin.getDefault().getWorkbench().getEditorRegistry()
                .findEditor(IEditorRegistry.SYSTEM_EXTERNAL_EDITOR_ID).getId();
    }
    return desc.getId();
}
 
源代码13 项目: typescript.java   文件: EditorOpener.java
private String getEditorID(IFile file) throws PartInitException {
	IEditorDescriptor desc= IDE.getEditorDescriptor(file);
	if (desc == null)
		return SearchPlugin.getDefault().getWorkbench().getEditorRegistry().findEditor(IEditorRegistry.SYSTEM_EXTERNAL_EDITOR_ID).getId();
	return desc.getId();
}