打印到控制台会删除已创建的超链接

时间:2017-11-06 15:40:25

标签: eclipse eclipse-plugin eclipse-rcp

我正在尝试创建一个功能,以便在添加信息时在控制台中创建超链接 在调试时,我注意到第一个超链接是成功创建的,但是当下一行打印到控制台时,超链接会消失。

我用来创建超链接的代码是:

String hyperLinkText = "test";
myConsole.printToConsole(test);

String myFile = new File("D:/Test/testFile.txt");
URI location = myFile.toURI();

IFile[] files = project.getWorkspace().getRoot().findFilesForLocationURI(location);

HyperlinkInformation hyperlinkInformation = new HyperlinkInformation(myConsole, myConsole.getDocument().get().length(), hyperLinkText.length());

FileHyperlink fileHyperlink = new FileHyperlink(hyperlinkInformation,
            files[0], 1);

try {
    hyperlinkInformation.getConsole().addHyperlink(fileHyperlink,
    fileHyperlink.getOffset(), fileHyperlink.getLength());
} catch (BadLocationException e) {
   //
}

函数addHyperlink

public void addHyperlink(IHyperlink hyperlink, int offset, int length) throws BadLocationException {
IDocument document = getDocument();
ConsoleHyperlinkPosition hyperlinkPosition = new ConsoleHyperlinkPosition(hyperlink, offset, length);
try {
    document.addPosition(ConsoleHyperlinkPosition.HYPER_LINK_CATEGORY, hyperlinkPosition);
    fConsoleManager.refresh(this);
} catch (BadPositionCategoryException e) {
    ConsolePlugin.log(e);
}

}

这是正常行为还是我错过了什么?

0 个答案:

没有答案