List of usage examples for org.eclipse.jdt.core CompletionProposal setSignature
public void setSignature(char[] signature)
null
if none. From source file:de.ovgu.featureide.core.CorePlugin.java
License:Open Source License
public List<CompletionProposal> extendedModules_getCompl(IFeatureProject featureProject, String featureName) { final LinkedList<CompletionProposal> ret_List = new LinkedList<CompletionProposal>(); final ProjectSignatures signatures = featureProject.getProjectSignatures(); if (signatures != null) { SignatureIterator it = signatures.iterator(); it.addFilter(new ContextFilter(featureName, signatures)); while (it.hasNext()) { AbstractSignature curMember = it.next(); CompletionProposal pr = null; if (curMember instanceof AbstractMethodSignature) { pr = CompletionProposal.create(CompletionProposal.METHOD_REF, 0); final AbstractMethodSignature methSig = (AbstractMethodSignature) curMember; final List<String> sig = methSig.getParameterTypes(); //TODO differentiate between possible types char[][] c = new char[][] { {} }; if (sig.size() > 0) { c = new char[sig.size()][]; int i = 0; for (String parameterType : sig) { String parameterTypeToChar = "L" + parameterType + ";"; c[i++] = parameterTypeToChar.toCharArray(); }/* www . j a v a2 s . c om*/ } String returnType = "L" + methSig.getReturnType() + ";"; pr.setSignature(Signature.createMethodSignature(c, returnType.toCharArray())); String declType = "L" + methSig.getFullName().replaceAll("." + methSig.getName(), "") + ";"; pr.setDeclarationSignature(declType.toCharArray()); } else if (curMember instanceof AbstractFieldSignature) { pr = CompletionProposal.create(CompletionProposal.FIELD_REF, 0); } else if (curMember instanceof AbstractClassSignature) { pr = CompletionProposal.create(CompletionProposal.TYPE_REF, 0); pr.setSignature(Signature.createTypeSignature(curMember.getFullName(), true).toCharArray()); } if (pr != null) { pr.setFlags(getFlagOfSignature(curMember)); pr.setName(curMember.getName().toCharArray()); pr.setCompletion(curMember.getName().toCharArray()); ret_List.add(pr); } } } return ret_List; }
From source file:de.ovgu.featureide.core.mpl.MPLPlugin.java
License:Open Source License
public List<CompletionProposal> extendedModules_getCompl(IFeatureProject project, String featureName) { final LinkedList<CompletionProposal> ret_List = new LinkedList<CompletionProposal>(); InterfaceProject interfaceProject = getInterfaceProject(project.getProject()); if (interfaceProject != null) { final ProjectSignatures signatures = interfaceProject.getProjectSignatures(); if (signatures != null) { SignatureIterator it = signatures.createIterator(); it.addFilter(new ContextFilter(featureName, interfaceProject)); // Iterator<AbstractSignature> it = signatures.getIterator(new ContextFilter(featureName, interfaceProject)); while (it.hasNext()) { AbstractSignature curMember = it.next(); CompletionProposal pr = null; if (curMember instanceof AbstractMethodSignature) { pr = CompletionProposal.create(CompletionProposal.METHOD_REF, 0); pr.setSignature(Signature.createMethodSignature(new char[][] { {} }, new char[] {})); } else if (curMember instanceof AbstractFieldSignature) { pr = CompletionProposal.create(CompletionProposal.FIELD_REF, 0); // pr.setDeclarationSignature(Signature.createTypeSignature(cur.getSignature().getFullName(), true).toCharArray()); } else if (curMember instanceof AbstractClassSignature) { pr = CompletionProposal.create(CompletionProposal.TYPE_REF, 0); pr.setSignature(Signature.createTypeSignature(curMember.getFullName(), true).toCharArray()); }/*w w w . j a va2 s .com*/ if (pr != null) { // pr2.setDeclarationSignature(Signature.createTypeSignature(cur.getSignature().getFullName(), true).toCharArray()); pr.setFlags(Flags.AccPublic); pr.setName(curMember.getName().toCharArray()); pr.setCompletion(curMember.getName().toCharArray()); ret_List.add(pr); } } } else { interfaceProject.loadSignatures(false); } } return ret_List; }
From source file:org.bonitasoft.studio.groovy.ui.contentassist.VariablesCompletionProposalProvider.java
License:Open Source License
private JavaCompletionProposal getProposalFor(final ContentAssistInvocationContext context, final CompletionProposalLabelProvider fLabelProvider, final CharSequence prefix, final String name, final String typeName) { final CompletionProposal proposal = CompletionProposal.create(CompletionProposal.FIELD_REF, context.getInvocationOffset()); proposal.setCompletion(name.substring(prefix.length()).toCharArray()); proposal.setName(name.toCharArray()); proposal.setFlags(Flags.AccPublic);/* ww w . j a v a2s.c o m*/ proposal.setReplaceRange(context.getInvocationOffset(), context.getInvocationOffset()); // Class type = BonitaSyntaxHighlighting.getTypeForKeyWord(keyWord) ; if (typeName != null) { proposal.setSignature(Signature.createTypeSignature(typeName, true).toCharArray()); } String completion = String.valueOf(proposal.getCompletion()); int start = proposal.getReplaceStart(); int end = proposal.getReplaceEnd(); int length = end - start; StyledString label = fLabelProvider.createStyledLabel(proposal); final Image image = JavaPlugin.getImageDescriptorRegistry() .get(fLabelProvider.createImageDescriptor(proposal)); return new JavaCompletionProposal(completion, start, length, image, label, 100, false); // final CompletionProposal proposal = CompletionProposal.create(CompletionProposal.FIELD_REF, context.getInvocationOffset()); // proposal.setCompletion(name.toCharArray()); // proposal.setName(name.toCharArray()); // proposal.setFlags(Flags.AccPublic); // proposal.setReplaceRange(context.getInvocationOffset() - prefix.length(), context.getInvocationOffset() + name.length() - prefix.length()); // if (typeName != null) { // proposal.setSignature(Signature.createTypeSignature(typeName, true).toCharArray()); // } // final String completion = String.valueOf(proposal.getCompletion()); // final int start = proposal.getReplaceStart(); // final int end = proposal.getReplaceEnd(); // final int length = end - start; // // final StyledString label = fLabelProvider.createStyledLabel(proposal); // // final BonitaConstantsCompletionProposal javaProposal = new BonitaConstantsCompletionProposal( // ((JavaContentAssistInvocationContext) context).getCompilationUnit(), completion, start, length, image, label, 1000, false, // (JavaContentAssistInvocationContext) context); // return javaProposal; }
From source file:org.bonitasoft.studio.groovy.ui.contentassist.VariablesTypeCompletionProposal.java
License:Open Source License
@Override public List<ICompletionProposal> computeCompletionProposals(final ContentAssistInvocationContext context, final IProgressMonitor monitor) { final List<ICompletionProposal> list = new ArrayList<ICompletionProposal>(); if (context instanceof JavaContentAssistInvocationContext) { final ICompilationUnit unit = ((JavaContentAssistInvocationContext) context).getCompilationUnit(); if (unit instanceof GroovyCompilationUnit) { final ITextViewer viewer = context.getViewer(); final List<ScriptVariable> nodes = (List<ScriptVariable>) viewer.getTextWidget() .getData(GroovyViewer.PROCESS_VARIABLES_DATA_KEY); final List<String> keyWords = (List<String>) viewer.getTextWidget() .getData(GroovyViewer.BONITA_KEYWORDS_DATA_KEY); if (((GroovyCompilationUnit) unit).getModuleNode() == null) { return Collections.emptyList(); }//from www .ja v a 2s . com final ContentAssistContext assistContext = new GroovyCompletionProposalComputer() .createContentAssistContext((GroovyCompilationUnit) unit, context.getInvocationOffset(), context.getDocument()); CharSequence prefix = null; try { prefix = context.computeIdentifierPrefix(); } catch (final BadLocationException e) { BonitaStudioLog.error(e); } if (assistContext != null && assistContext.completionNode instanceof VariableExpression) { try { final VariableExpression expr = (VariableExpression) assistContext.completionNode; if (nodes != null) { for (final ScriptVariable f : nodes) { if (expr.getName().equals(f.getName())) { final IType type = javaProject.findType(f.getType()); for (final IMethod m : type.getMethods()) { if (m.getElementName().startsWith(prefix.toString())) { final CompletionProposal proposal = CompletionProposal.create( CompletionProposal.METHOD_REF, context.getInvocationOffset()); proposal.setName(m.getElementName().toCharArray()); proposal.setCompletion( m.getElementName().substring(prefix.length()).toCharArray()); proposal.setFlags(m.getFlags()); if (prefix.length() == m.getElementName().length()) { proposal.setReplaceRange(context.getInvocationOffset(), context.getInvocationOffset()); proposal.setReceiverRange(0, 0); } else { proposal.setReplaceRange( context.getInvocationOffset() - prefix.length(), context.getInvocationOffset()); proposal.setReceiverRange(prefix.length(), prefix.length()); } final char[][] parameters = new char[m.getParameterNames().length][256]; for (int i = 0; i < m.getParameterNames().length; i++) { parameters[i] = m.getParameterNames()[i].toCharArray(); } proposal.setParameterNames(parameters); proposal.setDeclarationSignature( Signature .createTypeSignature( m.getDeclaringType().getElementName(), true) .toCharArray()); proposal.setSignature(Signature .createMethodSignature(m.getParameterTypes(), m.getReturnType()) .toCharArray()); list.add(new JavaMethodCompletionProposal(proposal, (JavaContentAssistInvocationContext) context)); } } } } } if (keyWords != null) { for (final String keyWord : keyWords) { if (expr.getName().equals(keyWord)) { final IType type = javaProject.findType( BonitaSyntaxHighlighting.getTypeForKeyWord(keyWord).getName()); for (final IMethod m : type.getMethods()) { if (m.getElementName().startsWith(prefix.toString())) { final CompletionProposal proposal = CompletionProposal.create( CompletionProposal.METHOD_REF, context.getInvocationOffset()); proposal.setName(m.getElementName().toCharArray()); proposal.setCompletion( m.getElementName().substring(prefix.length()).toCharArray()); proposal.setFlags(m.getFlags()); proposal.getCompletion(); if (prefix.length() == m.getElementName().length()) { proposal.setReplaceRange(context.getInvocationOffset(), context.getInvocationOffset()); proposal.setReceiverRange(0, 0); } else { proposal.setReplaceRange( context.getInvocationOffset() - prefix.length(), context.getInvocationOffset()); proposal.setReceiverRange(prefix.length(), prefix.length()); } final char[][] parameters = new char[m.getParameterNames().length][256]; for (int i = 0; i < m.getParameterNames().length; i++) { parameters[i] = m.getParameterNames()[i].toCharArray(); } proposal.setParameterNames(parameters); proposal.setDeclarationSignature( Signature .createTypeSignature( m.getDeclaringType().getElementName(), true) .toCharArray()); proposal.setSignature(Signature .createMethodSignature(m.getParameterTypes(), m.getReturnType()) .toCharArray()); list.add(new JavaMethodCompletionProposal(proposal, (JavaContentAssistInvocationContext) context)); } } } } } } catch (final JavaModelException e) { BonitaStudioLog.error(e); } } } return list; } return Collections.emptyList(); }
From source file:org.codehaus.groovy.eclipse.codeassist.processors.LocalVariableCompletionProcessor.java
License:Apache License
/** * @param offset/*from w w w .java 2s. co m*/ * @param replaceLength * @param context * @param proposals * @param nameType */ private ICompletionProposal createProposal(String replaceName, ClassNode type) { CompletionProposal proposal = CompletionProposal.create(CompletionProposal.LOCAL_VARIABLE_REF, offset); proposal.setCompletion(replaceName.toCharArray()); proposal.setReplaceRange(offset - replaceLength, getContext().completionEnd); proposal.setSignature(ProposalUtils.createTypeSignature(type)); proposal.setRelevance(Relevance.HIGH.getRelavance()); LazyJavaCompletionProposal completion = new LazyJavaCompletionProposal(proposal, javaContext); completion.setRelevance(proposal.getRelevance()); return completion; }
From source file:org.eclipse.jst.jsp.ui.internal.contentassist.JavaTypeNameRequestor.java
License:Open Source License
private Image calculateImage(int modifiers) { CompletionProposal p = CompletionProposal.create(CompletionProposal.TYPE_REF, getJSPOffset()); p.setFlags(modifiers);/*from w w w . j av a 2 s .c o m*/ //https://bugs.eclipse.org/bugs/show_bug.cgi?id=102206 char[] sig = new char[] { Signature.C_UNRESOLVED }; p.setSignature(sig); ImageDescriptor descriptor = fLabelProvider.createImageDescriptor(p); Image image = JSPEditorPluginImageHelper.getInstance().getImage(descriptor); return image; }
From source file:org.python.pydev.editor.codecompletion.JavaElementToken.java
License:Open Source License
@Override public IImageHandle getImage() { if (this.image != null) { return this.image; }//from w w w . ja va 2s . c o m CompletionProposalLabelProvider provider = new CompletionProposalLabelProvider(); CompletionProposal generatedProposal = CompletionProposal.create(completionProposalKind, 0); generatedProposal.setFlags(completionProposalFlags); if (HAS_ADDITIONAL_FLAGS) { generatedProposal.setAdditionalFlags(completionProposalAdditionalFlags); } generatedProposal.setDeclarationSignature(completionPropsoalSignature); generatedProposal.setSignature(completionPropsoalSignature); //uses: kind, flags, signature to create an image. ImageDescriptor descriptor = provider.createImageDescriptor(generatedProposal); Image computed = descriptor.createImage(); return new IImageHandle() { @Override public Object getImageData() { return computed.getImageData(); } @Override public Object getImage() { return computed; } }; }
From source file:org.python.pydev.editor.codecompletion.revisited.javaintegration.JavaElementToken.java
License:Open Source License
@Override public Image getImage() { if (this.image != null) { return this.image; }//from w ww. j a v a2s .c o m CompletionProposalLabelProvider provider = new CompletionProposalLabelProvider(); CompletionProposal generatedProposal = CompletionProposal.create(completionProposalKind, 0); generatedProposal.setFlags(completionProposalFlags); if (HAS_ADDITIONAL_FLAGS) { generatedProposal.setAdditionalFlags(completionProposalAdditionalFlags); } generatedProposal.setDeclarationSignature(completionPropsoalSignature); generatedProposal.setSignature(completionPropsoalSignature); //uses: kind, flags, signature to create an image. ImageDescriptor descriptor = provider.createImageDescriptor(generatedProposal); return descriptor.createImage(); }
From source file:org.springframework.ide.eclipse.quickfix.jdt.computers.RequestMappingParamTypeProposalComputer.java
License:Open Source License
private List<ICompletionProposal> getProposals(MethodDeclaration methodDecl, String filter, int offset, ASTNode toBeRemoved, JavaContentAssistInvocationContext context) { List<ICompletionProposal> proposals = new ArrayList<ICompletionProposal>(); for (Class<?> paramType : PARAM_TYPE_CLASSES) { if (paramType.getSimpleName().toLowerCase().startsWith(filter.toLowerCase())) { // proposals // .add(new // RequestMappingParamTypeCompletionProposal(methodDecl, // paramType, toBeRemoved, context)); CompletionProposal proposal = CompletionProposal.create(CompletionProposal.TYPE_REF, context.getInvocationOffset()); proposal.setCompletion(paramType.getCanonicalName().toCharArray()); proposal.setDeclarationSignature(paramType.getPackage().getName().toCharArray()); proposal.setFlags(paramType.getModifiers()); proposal.setRelevance(Integer.MAX_VALUE); proposal.setReplaceRange(context.getInvocationOffset() - filter.length(), context.getInvocationOffset()); proposal.setSignature( Signature.createTypeSignature(paramType.getCanonicalName(), true).toCharArray()); LazyJavaTypeCompletionProposal typeProposal = new LazyJavaTypeCompletionProposal(proposal, context); typeProposal.setRelevance(Integer.MAX_VALUE); proposals.add(typeProposal); }//from ww w. j a v a2 s. c o m } return proposals; }
From source file:org.springsource.ide.eclipse.commons.completions.externaltype.ExternalTypesProposalComputer.java
License:Open Source License
@Override public List<ICompletionProposal> computeCompletionProposals(ContentAssistInvocationContext _context, IProgressMonitor monitor) {//from w w w .j av a 2 s.co m if (_context instanceof JavaContentAssistInvocationContext) { final JavaContentAssistInvocationContext context = (JavaContentAssistInvocationContext) _context; try { final String idPrefix = context.computeIdentifierPrefix().toString(); //System.out.println("IdPrefix = "+idPrefix); //Only compute proposals if we actually have something to look for. This avoids adding our suggestions // for completions like 'foo.^". if (idPrefix != null && !"".equals(idPrefix)) { final ArrayList<ICompletionProposal> completions = new ArrayList<ICompletionProposal>(); final ExternalTypeIndexer index = ExternalTypeIndexManager.indexFor(context.getProject()); index.getByPrefix(idPrefix, new Requestor<ExternalType>() { public boolean receive(ExternalType type) { //TODO: limit number of results. If there's too many user can't look // at all of them anyway. try { if (type.getName().startsWith(idPrefix)) { IJavaProject project = context.getProject(); if (project.findType(type.getFullyQualifiedName()) == null) { CompletionProposal proposal = CompletionProposal .create(CompletionProposal.TYPE_REF, context.getInvocationOffset()); proposal.setCompletion(type.getFullyQualifiedName().toCharArray()); proposal.setDeclarationSignature(type.getPackage().toCharArray()); proposal.setFlags(Flags.AccPublic); //TODO: This is some kind of bit mask and it should be derived from the type information. //proposal.setRelevance(relevance); proposal.setReplaceRange(context.getInvocationOffset() - idPrefix.length(), context.getInvocationOffset()); proposal.setSignature( Signature.createTypeSignature(type.getFullyQualifiedName(), true) .toCharArray()); completions.add( new ExternalTypeCompletionProposal(proposal, context, type, index)); } } } catch (Exception e) { CompletionsActivator.log(e); } return true; } }); return completions; } } catch (Exception e) { CompletionsActivator.log(e); } } return NO_PROPOSALS; }