public static void addPrioritizedServiceLookupElements(@NotNull CompletionParameters parameters, @NotNull CompletionResultSet resultSet, @NotNull PrioritizedLookupResult result) { // move known elements to top if(result.getTopStrings().size() > 0) { CompletionSorter completionSorter = CompletionService.getCompletionService() .defaultSorter(parameters, resultSet.getPrefixMatcher()) .weighBefore("priority", new MyLookupElementWeigher(result.getTopStrings())); resultSet = resultSet.withRelevanceSorter(completionSorter); } resultSet.addAllElements(result.getLookupElements()); }
public static CompletionService getCompletionService() { return CompletionService.getCompletionService(); } }
@Override public void addLookupAdvertisement(String text) { getCompletionService().setAdvertisementText(text); }
static CompletionResultSet createResultSet(final CompletionParameters parameters, final String userPrefix, final Consumer<CompletionResult> consumer, final CompletionContributor contributor) { final PsiElement position = parameters.getPosition(); final String prefix = userPrefix != null ? userPrefix : findPrefix(position, parameters.getOffset()); final int lengthOfTextBeforePosition = parameters.getOffset(); final CamelHumpMatcher matcher = new CamelHumpMatcher(prefix, false); final CompletionSorter sorter = CompletionService.getCompletionService().defaultSorter(parameters, matcher); return new CompletionResultSetImpl(consumer, lengthOfTextBeforePosition, matcher, contributor, parameters, sorter, null); }