List of usage examples for org.eclipse.jdt.core CompletionProposal create
public static CompletionProposal create(int kind, int completionOffset)
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(); }// w w w . jav a 2s . c o m } 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()); }/*from w w w .j a va 2s . c o m*/ 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:de.ovgu.featureide.ui.editors.AnnoCompletion.java
License:Open Source License
public List<CompletionProposal> getCompl(final IFeatureProject featureProject, final CharSequence prefix) { final LinkedList<CompletionProposal> ret_List = new LinkedList<CompletionProposal>(); final Iterable<String> featureNames = FeatureUtils .getConcreteFeatureNames(featureProject.getFeatureModel()); for (final String string : featureNames) { CompletionProposal pr = null;/*from w ww.j av a 2 s. com*/ pr = CompletionProposal.create(CompletionProposal.LABEL_REF, prefix.length()); pr.setName(string.toCharArray()); pr.setCompletion(string.toCharArray()); if (string.startsWith(prefix.toString())) { ret_List.add(pr); } } return ret_List; }
From source file:org.bonitasoft.studio.contract.ui.property.constraint.edit.editor.contentassist.ContractInputProposalsCodeVisitorSupport.java
License:Open Source License
private ICompletionProposal createProposalFor(final ContentAssistInvocationContext context, final CharSequence prefix, final ContractInput input) { final String name = input.getName(); 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);/*w w w .ja va2 s .c om*/ proposal.setReplaceRange(context.getInvocationOffset(), context.getInvocationOffset()); final String completion = String.valueOf(proposal.getCompletion()); final int start = proposal.getReplaceStart(); final int end = proposal.getReplaceEnd(); final int length = end - start; final ContractInputLabelProvider labelProvider = new ContractInputLabelProvider(); final Image image = labelProvider.getImage(input); return new JavaCompletionProposal(completion, start, length, image, labelProvider.getStyledString(input), 100, false); }
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);// w w w . j a va 2s .co 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 ww w .j a v a2 s . c o m 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 . jav a2s . 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.codehaus.groovy.eclipse.codeassist.proposals.GroovyFieldProposal.java
License:Apache License
private CompletionProposal createProposal(ContentAssistContext context) { InternalCompletionProposal proposal = (InternalCompletionProposal) CompletionProposal .create(CompletionProposal.FIELD_REF, context.completionLocation); proposal.setFlags(field.getModifiers()); proposal.setName(field.getName().toCharArray()); proposal.setCompletion(proposal.getName()); proposal.setSignature(ProposalUtils.createTypeSignature(field.getType())); proposal.setDeclarationSignature(ProposalUtils.createTypeSignature(field.getDeclaringClass())); proposal.setRelevance(computeRelevance()); int startIndex = context.completionLocation - context.completionExpression.length(); proposal.setReplaceRange(startIndex, context.completionEnd); return proposal; }
From source file:org.codehaus.groovy.eclipse.codeassist.proposals.GroovyPropertyProposal.java
License:Apache License
private CompletionProposal createProposal(ContentAssistContext context) { InternalCompletionProposal proposal = (InternalCompletionProposal) CompletionProposal .create(CompletionProposal.FIELD_REF, context.completionLocation); proposal.setFlags(property.getModifiers()); proposal.setName(property.getName().toCharArray()); proposal.setCompletion(proposal.getName()); proposal.setSignature(ProposalUtils.createTypeSignature(property.getType())); proposal.setDeclarationSignature(ProposalUtils.createTypeSignature(property.getDeclaringClass())); proposal.setRelevance(computeRelevance()); int startIndex = context.completionLocation - context.completionExpression.length(); proposal.setReplaceRange(startIndex, context.completionEnd); return proposal; }
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);/* w w w.j ava2s. co 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; }