mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-06-07 17:56:01 +02:00
- fixed bug in openInEditor method
This commit is contained in:
parent
2d499636f4
commit
e67a019e83
1 changed files with 18 additions and 13 deletions
|
@ -17,7 +17,7 @@
|
||||||
/*
|
/*
|
||||||
* Created by: Elena Laskavaia
|
* Created by: Elena Laskavaia
|
||||||
* Created on: 2010-05-05
|
* Created on: 2010-05-05
|
||||||
* Last modified by: $Author$
|
* Last modified by: $Author: elaskavaia $
|
||||||
*/
|
*/
|
||||||
package org.eclipse.cdt.codan.ui;
|
package org.eclipse.cdt.codan.ui;
|
||||||
|
|
||||||
|
@ -43,9 +43,9 @@ public class CodanEditorUtility {
|
||||||
* @throws PartInitException
|
* @throws PartInitException
|
||||||
* @throws BadLocationException
|
* @throws BadLocationException
|
||||||
*/
|
*/
|
||||||
public static void openFileURL(String fileUrl, IResource markerResource) throws PartInitException, BadLocationException {
|
public static void openFileURL(String fileUrl, IResource markerResource)
|
||||||
|
throws PartInitException, BadLocationException {
|
||||||
String file = getFileFromURL(fileUrl);
|
String file = getFileFromURL(fileUrl);
|
||||||
|
|
||||||
IEditorPart part = openInEditor(file, markerResource);
|
IEditorPart part = openInEditor(file, markerResource);
|
||||||
int line = getLineFromURL(fileUrl);
|
int line = getLineFromURL(fileUrl);
|
||||||
revealLine(part, line);
|
revealLine(part, line);
|
||||||
|
@ -53,6 +53,7 @@ public class CodanEditorUtility {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Line is the part the follows # in this URL
|
* Line is the part the follows # in this URL
|
||||||
|
*
|
||||||
* @return -1 if not line found in URL, and line number if there is
|
* @return -1 if not line found in URL, and line number if there is
|
||||||
*/
|
*/
|
||||||
public static int getLineFromURL(String fileUrl) {
|
public static int getLineFromURL(String fileUrl) {
|
||||||
|
@ -72,27 +73,31 @@ public class CodanEditorUtility {
|
||||||
return file;
|
return file;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void revealLine(IEditorPart part, int line) throws BadLocationException {
|
public static void revealLine(IEditorPart part, int line)
|
||||||
|
throws BadLocationException {
|
||||||
if (line > 0) {
|
if (line > 0) {
|
||||||
if (part instanceof ITextEditor) {
|
if (part instanceof ITextEditor) {
|
||||||
ITextEditor textEditor = (ITextEditor) part;
|
ITextEditor textEditor = (ITextEditor) part;
|
||||||
IDocument document = textEditor.getDocumentProvider().getDocument(part.getEditorInput());
|
IDocument document = textEditor.getDocumentProvider()
|
||||||
|
.getDocument(part.getEditorInput());
|
||||||
textEditor.selectAndReveal(document.getLineOffset(line - 1), 0);
|
textEditor.selectAndReveal(document.getLineOffset(line - 1), 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("restriction")
|
@SuppressWarnings("restriction")
|
||||||
public static IEditorPart openInEditor(String file, IResource markerResource) throws PartInitException {
|
public static IEditorPart openInEditor(String file, IResource markerResource)
|
||||||
|
throws PartInitException {
|
||||||
IPath pfile = new Path(file);
|
IPath pfile = new Path(file);
|
||||||
ICElement element = null;
|
ICElement element = null;
|
||||||
if (markerResource != null)
|
if (markerResource != null)
|
||||||
CoreModel.getDefault().create(markerResource);
|
element = CoreModel.getDefault().create(markerResource);
|
||||||
IEditorPart part = EditorUtility.openInEditor(pfile, element);
|
IEditorPart part = EditorUtility.openInEditor(pfile, element);
|
||||||
return part;
|
return part;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IEditorPart openInEditor(IMarker marker) throws PartInitException {
|
public static IEditorPart openInEditor(IMarker marker)
|
||||||
|
throws PartInitException {
|
||||||
String href = getLocationHRef(marker);
|
String href = getLocationHRef(marker);
|
||||||
String file = getFileFromURL(href);
|
String file = getFileFromURL(href);
|
||||||
return openInEditor(file, marker.getResource());
|
return openInEditor(file, marker.getResource());
|
||||||
|
|
Loading…
Add table
Reference in a new issue