|
From: <caw...@us...> - 2007-03-22 15:32:22
|
Revision: 2209
http://svn.sourceforge.net/rubyeclipse/?rev=2209&view=rev
Author: cawilliams
Date: 2007-03-22 08:32:20 -0700 (Thu, 22 Mar 2007)
Log Message:
-----------
ugly hacks to make closer parents in inheritance hierarchy more relevant for method suggestions. Aslo when sorting proposals, sort by relevance, then by name.
Modified Paths:
--------------
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/CompletionEngine.java
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/CompletionProposalComparator.java
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/CompletionEngine.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/CompletionEngine.java 2007-03-22 15:06:49 UTC (rev 2208)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/CompletionEngine.java 2007-03-22 15:32:20 UTC (rev 2209)
@@ -180,8 +180,8 @@
proposals.put(proposal.getName(), proposal); // If a method name matches an existing suggestion (i.e. its overriden in the subclass), don't suggest it again!
}
}
- proposals.putAll(addModuleMethods(confidence, type));
- if (!type.isModule()) proposals.putAll(addSuperClassMethods(confidence, type));
+ proposals.putAll(addModuleMethods(confidence - 1, type)); // Decrement confidence by one as a hack to make sure as we move up the inheritance chain we suggest "closer" parents methods first
+ if (!type.isModule()) proposals.putAll(addSuperClassMethods(confidence - 1, type));
return proposals;
}
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/CompletionProposalComparator.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/CompletionProposalComparator.java 2007-03-22 15:06:49 UTC (rev 2208)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/CompletionProposalComparator.java 2007-03-22 15:32:20 UTC (rev 2209)
@@ -7,7 +7,10 @@
public class CompletionProposalComparator implements Comparator<CompletionProposal> {
public int compare(CompletionProposal o1, CompletionProposal o2) {
- return o1.getName().compareTo(o2.getName());
+ if (o1.getRelevance() == o2.getRelevance())
+ return o1.getName().compareTo(o2.getName());
+ else
+ return o2.getRelevance() - o1.getRelevance();
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|