List of usage examples for org.eclipse.jdt.core CompletionProposal FIELD_REF
int FIELD_REF
To view the source code for org.eclipse.jdt.core CompletionProposal FIELD_REF.
Click Source Link
From source file:at.bestsolution.fxide.jdt.editor.JDTJavaDocSupport.java
License:Open Source License
public static HtmlString toHtml(CompletionProposal proposal, IJavaProject jProject) throws JavaModelException { String content = null;//from w ww. ja va 2 s . co m if (proposal.getKind() == org.eclipse.jdt.core.CompletionProposal.FIELD_REF) { IType jType = getOwnerType(proposal, jProject); if (jType != null) { IField field = jType.getField(String.valueOf(proposal.getName())); if (field != null && field.exists()) { try { content = JavadocContentAccess2.getHTMLContent(field, true); } catch (CoreException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } else if (proposal.getKind() == org.eclipse.jdt.core.CompletionProposal.METHOD_REF) { IType jType = getOwnerType(proposal, jProject); if (jType != null) { MethodUtil m = new MethodUtil(proposal, jType); IMethod method = m.resolve(); if (method != null && method.exists()) { try { content = JavadocContentAccess2.getHTMLContent(method, true); if (content != null) { content = content.replace("<pre><code>", "<pre class=\"prettyprint\"><code class=\"language-java\">"); } } catch (CoreException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } if (content != null) { return new HtmlString("<html><header><style>" + ("theme.dark".equals(themeMgr.getCurrentTheme().getId()) ? darkCSS : defaultCSS) + "</style><script>" + prettifyJS + "\n</script></header><body onload='PR.prettyPrint();'>" + content + "</body></html>"); } return null; }
From source file:at.bestsolution.javafx.ide.jdt.internal.JavaEditor.java
License:Open Source License
@Inject public JavaEditor(BorderPane pane, IEditorInput input) { editor = new SourceEditor(); pane.setCenter(editor);/*ww w. j a va 2 s . c om*/ IResourceFileInput fsInput = (IResourceFileInput) input; try { unit = ((ICompilationUnit) JavaCore.create(fsInput.getFile())) .getWorkingCopy(new FXWorkingCopyOwner(new IProblemRequestor() { private List<ProblemMarker> l = new ArrayList<>(); @Override public boolean isActive() { // TODO Auto-generated method stub return true; } @Override public void endReporting() { setMarkers(l); } @Override public void beginReporting() { l.clear(); } @Override public void acceptProblem(IProblem problem) { int linenumber = problem.getSourceLineNumber(); int startCol = problem.getSourceStart(); int endCol = problem.getSourceEnd(); if (endCol == startCol) { endCol++; } String description = problem.getMessage(); ProblemMarker marker = new ProblemMarker( problem.isError() ? at.bestsolution.javafx.ide.editor.ProblemMarker.Type.ERROR : at.bestsolution.javafx.ide.editor.ProblemMarker.Type.WARNING, linenumber, startCol, endCol, description); l.add(marker); } }), new NullProgressMonitor()); } catch (JavaModelException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } final Document doc = createDocument(unit); editor.setDocument(doc); editor.setContentProposalComputer(new ContentProposalComputer() { @Override public List<Proposal> computeProposals(String line, String prefix, int offset) { final List<Proposal> l = new ArrayList<ContentProposalComputer.Proposal>(); try { unit.codeComplete(offset, new CompletionRequestor() { @Override public void accept(CompletionProposal proposal) { String completion = new String(proposal.getCompletion()); if (!Flags.isPublic(proposal.getFlags())) { return; } if (proposal.getKind() == CompletionProposal.METHOD_REF) { String sig = Signature.toString(new String(proposal.getSignature()), new String(proposal.getName()), null, false, false); StyledString s = new StyledString(sig + " : " + Signature.getSimpleName(Signature .toString(Signature.getReturnType(new String(proposal.getSignature()))))); s.appendString( " - " + Signature.getSignatureSimpleName( new String(proposal.getDeclarationSignature())), Style.colored("#AAAAAA")); l.add(new Proposal(Type.METHOD, completion, s)); } else if (proposal.getKind() == CompletionProposal.FIELD_REF) { StyledString s = new StyledString( completion + " : " + (proposal.getSignature() != null ? Signature.getSignatureSimpleName( new String(proposal.getSignature())) : "<unknown>")); s.appendString( " - " + (proposal.getDeclarationSignature() != null ? Signature.getSignatureSimpleName( new String(proposal.getDeclarationSignature())) : "<unknown>"), Style.colored("#AAAAAA")); l.add(new Proposal(Type.FIELD, completion, s)); } else if (proposal.getKind() == CompletionProposal.TYPE_REF) { if (proposal.getAccessibility() == IAccessRule.K_NON_ACCESSIBLE) { return; } StyledString s = new StyledString( Signature.getSignatureSimpleName(new String(proposal.getSignature()))); s.appendString(" - " + new String(proposal.getDeclarationSignature()), Style.colored("#AAAAAA")); l.add(new Proposal(Type.TYPE, new String(proposal.getCompletion()), s)); } else { System.err.println(proposal); } } }); } catch (JavaModelException e) { // TODO Auto-generated catch block e.printStackTrace(); } return l; } }); editor.setSaveCallback(new Runnable() { @Override public void run() { try { unit.commitWorkingCopy(true, null); } catch (JavaModelException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }); try { unit.reconcile(ICompilationUnit.NO_AST, true, null, null); } catch (JavaModelException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
From source file:com.google.gwt.eclipse.core.editors.java.contentassist.JsniCompletionProposal.java
License:Open Source License
/** * Return proposals only for references to a package, type, field, method or * constructor (and nothing else).// w w w . jav a2s . co m */ public static IJavaCompletionProposal create(IJavaCompletionProposal jdtProposal, CompletionProposal wrappedProposal, IJavaProject javaProject, int replaceOffset, int replaceLength) { switch (wrappedProposal.getKind()) { case CompletionProposal.PACKAGE_REF: case CompletionProposal.TYPE_REF: case CompletionProposal.FIELD_REF: case CompletionProposal.METHOD_REF: return new JsniCompletionProposal(jdtProposal, wrappedProposal, javaProject, replaceOffset, replaceLength); default: return null; } }
From source file:com.google.gwt.eclipse.core.editors.java.contentassist.JsniCompletionProposal.java
License:Open Source License
private String createReplaceString() { switch (wrappedProposal.getKind()) { case CompletionProposal.PACKAGE_REF: return computePackageCompletion(); case CompletionProposal.TYPE_REF: return computeTypeCompletion(); case CompletionProposal.FIELD_REF: return computeFieldCompletion(); case CompletionProposal.METHOD_REF: if (wrappedProposal.isConstructor()) { return computeCtorCompletion(); } else {/* w w w .ja va2 s . c o m*/ return computeMethodCompletion(); } default: return ""; } }
From source file:com.google.gwt.eclipse.core.editors.java.contentassist.JsniCompletionProposalCollector.java
License:Open Source License
public static CompletionProposalCollector createPackageAndTypeProposalCollector(ICompilationUnit cu, int refOffset, int refLength) { CompletionProposalCollector collector = new JsniCompletionProposalCollector(cu, refOffset, refLength); collector.setIgnored(CompletionProposal.METHOD_REF, true); collector.setIgnored(CompletionProposal.FIELD_REF, true); return collector; }
From source file:com.google.gwt.eclipse.core.editors.java.contentassist.JsniCompletionProposalCollector.java
License:Open Source License
@Override protected IJavaCompletionProposal createJavaCompletionProposal(CompletionProposal proposal) { IJavaCompletionProposal defaultProposal = super.createJavaCompletionProposal(proposal); // For members of inner classes, there's a bug in the JDT which results in // the declaration signature of the proposal missing the outer classes, so // we have to manually set the signature instead. if (proposal.getKind() == CompletionProposal.METHOD_REF || proposal.getKind() == CompletionProposal.FIELD_REF) { char[] typeSignature = Signature.createTypeSignature(qualifiedTypeName, true).toCharArray(); proposal.setDeclarationSignature(typeSignature); }//from w w w . j a v a2s. c om return JsniCompletionProposal.create(defaultProposal, proposal, getCompilationUnit().getJavaProject(), refOffset, refLength); }
From source file:com.google.gwt.eclipse.core.uibinder.contentassist.computers.ProposalComputerFactory.java
License:Open Source License
/** * Creates a proposal computer for autocompleting the java classes for the * <ui:import field="___" />/*from ww w. j av a 2s . com*/ */ public static IProposalComputer newUiImportFieldProposalComputer(ContentAssistRequest contentAssistRequest, IJavaProject javaProject, String packageName) { IDOMAttr attribute = XmlContentAssistUtilities.getAttribute(contentAssistRequest); if (attribute == null || attribute.getOwnerElement() == null) { return null; } // Ensure we are autocompleting an 'ui:import' element attribute if (!UiBinderConstants.UI_BINDER_IMPORT_ELEMENT_NAME.equals(attribute.getOwnerElement().getLocalName())) { return null; } // Ensure we are autocompleting the 'field' attribute if (!attribute.equals(UiBinderXmlModelUtilities.getFieldAttribute(attribute.getOwnerElement()))) { return null; } String attrValue = XmlContentAssistUtilities.getAttributeValueUsingMatchString(contentAssistRequest); CodeCompleteProposalComputer ccpc = new CodeCompleteProposalComputer( new int[] { CompletionProposal.TYPE_REF, CompletionProposal.PACKAGE_REF, CompletionProposal.FIELD_IMPORT, CompletionProposal.FIELD_REF }, javaProject, attrValue, XmlContentAssistUtilities.getAttributeValueOffset(contentAssistRequest), attrValue.length(), packageName, true); return ccpc; }
From source file:com.google.gwt.eclipse.core.uibinder.contentassist.computers.ProposalGeneratingCompletionRequestor.java
License:Open Source License
protected ICompletionProposal createProposal(CompletionProposal javaProposal) { String completion = String.valueOf(javaProposal.getCompletion()); int kind = javaProposal.getKind(); if (kind == CompletionProposal.TYPE_REF) { // Make sure it is fully qualified completion = JavaContentAssistUtilities.getFullyQualifiedTypeName(javaProposal); }// ww w. j a va2s . c om if (forceFullyQualifiedFieldNames && (kind == CompletionProposal.FIELD_IMPORT || kind == CompletionProposal.FIELD_REF)) { char[] decSig = javaProposal.getDeclarationSignature(); if (decSig != null && decSig.length > 2) { // declaration signatures for objects are like Ljava.lang.String;, so lop off first // and last chars completion = new String(decSig, 1, decSig.length - 2) + "." + new String(javaProposal.getCompletion()); completion = completion.replace('$', '.'); } } ICompletionProposal jdtCompletionProposal = JavaContentAssistUtilities .getJavaCompletionProposal(javaProposal, context, javaProject); return ReplacementCompletionProposal.fromExistingCompletionProposal(completion, replaceOffset, replaceLength, jdtCompletionProposal); }
From source file:com.google.gwt.eclipse.core.uibinder.contentassist.computers.ProposalGeneratingCompletionRequestor.java
License:Open Source License
private void ignoreAll() { int[] ignoredKinds = new int[] { CompletionProposal.ANONYMOUS_CLASS_DECLARATION, CompletionProposal.FIELD_REF, CompletionProposal.KEYWORD, CompletionProposal.LABEL_REF, CompletionProposal.LOCAL_VARIABLE_REF, CompletionProposal.METHOD_REF, CompletionProposal.METHOD_DECLARATION, CompletionProposal.PACKAGE_REF, CompletionProposal.TYPE_REF, CompletionProposal.VARIABLE_DECLARATION, CompletionProposal.POTENTIAL_METHOD_DECLARATION, CompletionProposal.METHOD_NAME_REFERENCE, CompletionProposal.ANNOTATION_ATTRIBUTE_REF, CompletionProposal.JAVADOC_FIELD_REF, CompletionProposal.JAVADOC_METHOD_REF, CompletionProposal.JAVADOC_TYPE_REF, CompletionProposal.JAVADOC_VALUE_REF, CompletionProposal.JAVADOC_PARAM_REF, CompletionProposal.JAVADOC_BLOCK_TAG, CompletionProposal.JAVADOC_INLINE_TAG, CompletionProposal.FIELD_IMPORT, CompletionProposal.METHOD_IMPORT, CompletionProposal.TYPE_IMPORT }; for (int kind : ignoredKinds) { setIgnored(kind, true);//from w ww .j a va 2s . co m } }
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(); }// ww w . j a v a 2s . com } 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; }