protected void validateState(IEditorInput input) { IDocumentProvider provider = getDocumentProvider(); if (!(provider instanceof IDocumentProviderExtension)) return; IDocumentProviderExtension extension = (IDocumentProviderExtension) provider; try { extension.validateState(input, getSite().getShell()); } catch (CoreException x) { IStatus status = x.getStatus(); if (status == null || status.getSeverity() != IStatus.CANCEL) { Bundle bundle = Platform.getBundle(PlatformUI.PLUGIN_ID); ILog log = Platform.getLog(bundle); log.log(x.getStatus()); Shell shell = getSite().getShell(); String title = "EditorMessages.Editor_error_validateEdit_title"; String msg = "EditorMessages.Editor_error_validateEdit_message"; ErrorDialog.openError(shell, title, msg, x.getStatus()); } return; } if (fSourceViewer != null) fSourceViewer.setEditable(isEditable()); }
public boolean isEditable() { IDocumentProvider provider = getDocumentProvider(); if (provider instanceof IDocumentProviderExtension) { IDocumentProviderExtension extension = (IDocumentProviderExtension) provider; return extension.isModifiable(getEditorInput()); } return false; }
protected void updateState(IEditorInput input) { IDocumentProvider provider = getDocumentProvider(); if (provider instanceof IDocumentProviderExtension) { IDocumentProviderExtension extension = (IDocumentProviderExtension) provider; try { extension.updateStateCache(input); if (fSourceViewer != null) fSourceViewer.setEditable(isEditable()); } catch (CoreException e) { Activator.log(e); } } }