我正在尝试为自定义框架开发JDT内容辅助,我实际上正在为JSDT编写插件,但即使我可以获得JDT的良好参考,我也可以与JSDT相关,到目前为止我能够得到我的类型提前内容的列表但不能根据用户输入的文本过滤掉例如 我在root上有一个名为" Object"因此,如果用户在空行上按 Control + Space ,则在键入" Object后,如果他执行了 Control + Space ,他将获得辅助文本中的唯一对象。 #34;它应该在" Object"中显示变量的实例。它可以是,Object.Name,Object.Feature。到目前为止,无论我输入的是什么,我都会获得所有列表,而且我不知道如何过滤它,然后在助手上放置帮助文本。
我的代码如下
public class CustomCompletionProposalComputer implements ICodeAssist,IJavaCompletionProposalComputer,
IJavadocCompletionProcessor,IQuickAssistProcessor,IQueryParticipant {
@Override
public void sessionStarted() {
}
@Override
public List computeCompletionProposals(ContentAssistInvocationContext context, IProgressMonitor monitor) {
ArrayList<CompletionProposal> proposals = new ArrayList<CompletionProposal>();
proposals.add(new CompletionProposal("Facade", context.getInvocationOffset(), 0, "Object".length()));
proposals.add(new CompletionProposal("vivek", context.getInvocationOffset(), 0, "Name".length()));
......
return proposals;
}
@Override
public List computeContextInformation(ContentAssistInvocationContext context, IProgressMonitor monitor) {
return null;
}
@Override
public String getErrorMessage() {
return null;
}
@Override
public void sessionEnded() {
}
我无法找到任何体面的例子,API doc没有多大帮助,任何参考或帮助都受到高度赞赏。