本文整理汇总了Java中com.intellij.javadoc.JavadocNavigationDelegate类的典型用法代码示例。如果您正苦于以下问题:Java JavadocNavigationDelegate类的具体用法?Java JavadocNavigationDelegate怎么用?Java JavadocNavigationDelegate使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
JavadocNavigationDelegate类属于com.intellij.javadoc包,在下文中一共展示了JavadocNavigationDelegate类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: locateCaret
import com.intellij.javadoc.JavadocNavigationDelegate; //导入依赖的package包/类
private static void locateCaret(@NotNull PsiDocComment comment, @NotNull Editor editor, @NotNull PsiFile file) {
Document document = editor.getDocument();
int lineToNavigate = -1;
for (PsiDocTag tag : comment.getTags()) {
PsiElement nameElement = tag.getNameElement();
if (nameElement == null || !CARET_ANCHOR_TAGS.contains(nameElement.getText())) {
continue;
}
boolean good = false;
PsiElement[] dataElements = tag.getDataElements();
if (dataElements != null) {
PsiDocTagValue valueElement = tag.getValueElement();
for (PsiElement element : dataElements) {
if (element == valueElement) {
continue;
}
if (!StringUtil.isEmptyOrSpaces(element.getText())) {
good = true;
break;
}
}
}
if (!good) {
int offset = tag.getTextRange().getEndOffset();
CharSequence text = document.getCharsSequence();
int i = CharArrayUtil.shiftBackward(text, offset - 1, " \t*");
if (i > 0 && text.charAt(i) == '\n') {
offset = i - 1;
}
lineToNavigate = document.getLineNumber(offset);
break;
}
}
if (lineToNavigate >= 0) {
editor.getCaretModel().moveToOffset(document.getLineEndOffset(lineToNavigate));
JavadocNavigationDelegate.navigateToLineEnd(editor, file);
}
}
示例2: locateCaret
import com.intellij.javadoc.JavadocNavigationDelegate; //导入依赖的package包/类
private static void locateCaret(@NotNull PsiDocComment comment, @NotNull Editor editor, @NotNull PsiFile file)
{
Document document = editor.getDocument();
int lineToNavigate = -1;
for(PsiDocTag tag : comment.getTags())
{
PsiElement nameElement = tag.getNameElement();
if(nameElement == null || !CARET_ANCHOR_TAGS.contains(nameElement.getText()))
{
continue;
}
boolean good = false;
PsiElement[] dataElements = tag.getDataElements();
if(dataElements != null)
{
PsiDocTagValue valueElement = tag.getValueElement();
for(PsiElement element : dataElements)
{
if(element == valueElement)
{
continue;
}
if(!StringUtil.isEmptyOrSpaces(element.getText()))
{
good = true;
break;
}
}
}
if(!good)
{
int offset = tag.getTextRange().getEndOffset();
CharSequence text = document.getCharsSequence();
int i = CharArrayUtil.shiftBackward(text, offset - 1, " \t*");
if(i > 0 && text.charAt(i) == '\n')
{
offset = i - 1;
}
lineToNavigate = document.getLineNumber(offset);
break;
}
}
if(lineToNavigate >= 0)
{
editor.getCaretModel().moveToOffset(document.getLineEndOffset(lineToNavigate));
JavadocNavigationDelegate.navigateToLineEnd(editor, file);
}
}