Bug 84998 [api] Make ResultCollector API
Eclipse 3.0.1 In our application we provide code assist to our own Java editor. In order to be consistent with the JDT Java editor we need to provide the same look and feel for code assist (icons, ordering, display string, etc...). Currently the only way we can get that to work is using the internal class ResultCollector. Since ResultCollector is basically an implementation of ICompletionRequestor, would it be possible to make it API or at least provide the functionality to people implementing code assist for Java-like editors?
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/java/ResultCollector.java
private void acceptMethodReference(CompletionProposal proposal) {
		IJavaCompletionProposal uiProposal= createMethodReferenceProposal(proposal);
		if (uiProposal != null)
			fMethods.add(uiProposal);
	}
	protected IJavaCompletionProposal createMethodReferenceProposal(CompletionProposal methodProposal) {
		Image image= getImage(fLabelProvider.createImageDescriptor(methodProposal));
		String displayName= fLabelProvider.createLabel(methodProposal);
		String completion= String.valueOf(methodProposal.getCompletion());
		int start= methodProposal.getReplaceStart();
		int end= methodProposal.getReplaceEnd();
		int relevance= methodProposal.getRelevance();
		
		JavaCompletionProposal proposal= new JavaCompletionProposal(completion, start, getLength(start, end), image, displayName, relevance, fTextViewer);
		
		proposal.setProposalInfo(new MethodProposalInfo(fJavaProject, methodProposal));
		char[] completionName= methodProposal.getCompletion();
		boolean hasParameters= Signature.getParameterCount(methodProposal.getSignature()) > 0;
		if (hasParameters) {
			ProposalContextInformation contextInformation= createContextInformation(methodProposal);
			proposal.setContextInformation(contextInformation);
		
			proposal.setTriggerCharacters(METHOD_WITH_ARGUMENTS_TRIGGERS);
			
			if (completionName.length > 0) {
				
				proposal.setCursorPosition(completionName.length - 1);
			}
		} else {
			proposal.setTriggerCharacters(METHOD_TRIGGERS);