diff options
author | Doug Schaefer | 2005-07-06 19:53:48 +0000 |
---|---|---|
committer | Doug Schaefer | 2005-07-06 19:53:48 +0000 |
commit | e653b13ea5e808f289b5f02ceda2a089b830ae2c (patch) | |
tree | 648e8543070d276f899727148a0b4bafa70a1800 | |
parent | 46807db5b9101064b73f220b1c1d693d345add2a (diff) | |
download | org.eclipse.cdt-e653b13ea5e808f289b5f02ceda2a089b830ae2c.tar.gz org.eclipse.cdt-e653b13ea5e808f289b5f02ceda2a089b830ae2c.tar.xz org.eclipse.cdt-e653b13ea5e808f289b5f02ceda2a089b830ae2c.zip |
Bug 98881 - Added lots of goodies to the search completion to make it more usable. Put the void back in the DOM indexer/no params case. Really trying to remove duplicates more than anything which is 98765.
4 files changed, 32 insertions, 20 deletions
diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/DOMCompletionContributor.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/DOMCompletionContributor.java index 5ff561cf44f..3a2aeda6d45 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/DOMCompletionContributor.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/DOMCompletionContributor.java @@ -142,7 +142,10 @@ public class DOMCompletionContributor implements ICompletionContributor { } dispargs.append(" ..."); //$NON-NLS-1$ idargs.append(" ..."); //$NON-NLS-1$ - } + } else if (params.length == 0) { // force the void in + dispargs.append("void"); //$NON-NLS-1$ + idargs.append("void"); //$NON-NLS-1$ + } IType returnType = function.getType().getReturnType(); if (returnType != null) diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/SearchCompletionContributor.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/SearchCompletionContributor.java index edf6c7c3aa5..29040010928 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/SearchCompletionContributor.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/SearchCompletionContributor.java @@ -129,29 +129,31 @@ public class SearchCompletionContributor implements ICompletionContributor { if (params != null) for (int i = 0; i < params.length; ++i) { if (i > 0) - args.append(", "); //$NON-NLS-1$ + args.append(','); args.append(params[i]); } String returnType = match.getReturnType(); String argString = args.toString(); - StringBuffer descStringBuff = new StringBuffer(repStringBuff.toString()); - descStringBuff.append(argString); - descStringBuff.append(')'); - - if (returnType != null) { - descStringBuff.append(' '); - descStringBuff.append(returnType); - } - + StringBuffer dispStringBuff = new StringBuffer(repStringBuff.toString()); + dispStringBuff.append(argString); + dispStringBuff.append(')'); + repStringBuff.append(')'); String repString = repStringBuff.toString(); - String descString = descStringBuff.toString(); - + + String idString = null; + if (returnType != null) { + idString = dispStringBuff.toString(); + dispStringBuff.append(' '); + dispStringBuff.append(returnType); + } + String dispString = dispStringBuff.toString(); + int repLength = prefix.length(); int repOffset = offset - repLength; - CCompletionProposal proposal = new CCompletionProposal(repString, repOffset, repLength, image, descString, 1, viewer); + CCompletionProposal proposal = new CCompletionProposal(repString, repOffset, repLength, image, dispString, idString, 1, viewer); proposal.setCursorPosition(repString.length() - 1); if (argString.length() > 0) { @@ -159,6 +161,7 @@ public class SearchCompletionContributor implements ICompletionContributor { info.setContextInformationPosition(offset); proposal.setContextInformation(info); } + proposals.add(proposal); } } diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/template/TemplateEngine.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/template/TemplateEngine.java index 716094f70df..54e1497622a 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/template/TemplateEngine.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/template/TemplateEngine.java @@ -66,12 +66,10 @@ public class TemplateEngine implements ICompletionContributor { super(template, context, region, image, 90); } -// /* (non-Javadoc) -// * @see org.eclipse.cdt.ui.text.ICCompletionProposal#getRelevance() -// */ -// public int getRelevance() { -// return 90; -// } + public String getIdString() { + return getDisplayString(); + } + } /** * Creates the template engine for a particular context type. diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/ICCompletionProposal.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/ICCompletionProposal.java index 15b2a2e1ef6..500f8b5362a 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/ICCompletionProposal.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/ICCompletionProposal.java @@ -24,5 +24,13 @@ public interface ICCompletionProposal extends ICompletionProposal { */ int getRelevance(); + /** + * Returns an id string that uniquely identifies this proposal. For most things this is the + * same as the display name. For functions, this strips off the parameter names and the + * return type. + * + * @return the string that uniquely identifies this proposal + */ + String getIdString(); } |