IEditorDescriptor desc = wb.getEditorRegistry().getDefaultEditor(file.getName());
try {
IEditorPart part = page.openEditor(new FileEditorInput(file), desc.getId());
ITextEditor editor = (ITextEditor) part.getAdapter(ITextEditor.class);
if(editor != null) {
Resource resource = ((ResourceEvent) ((IStructuredSelection) selection).getFirstElement()).getResource();
IDocumentProvider documentProvider = editor.getDocumentProvider();
IDocument document = documentProvider.getDocument(editor.getEditorInput());
int line = resource.getLine() - 1;
if(line < 0)
line = 0;
editor.selectAndReveal(document.getLineOffset(line), document.getLineLength(line));
}
}