[autocomplete] 24/143: Fixed bug in SyntaxScheme.toCommaSeparatedString() parsing. Added utility methods to Token class. Improved documentation of getAlreadyEnteredText() for CompletionProviders.
Benjamin Mesing
ben at alioth.debian.org
Sat Oct 19 12:53:11 UTC 2013
This is an automated email from the git hooks/post-receive script.
ben pushed a commit to branch master
in repository autocomplete.
commit 30c718f4a9fda32c98cbb6733bdea5e56c25068a
Author: bobbylight <robert at fifesoft.com>
Date: Sat Oct 10 20:34:33 2009 +0000
Fixed bug in SyntaxScheme.toCommaSeparatedString() parsing.
Added utility methods to Token class.
Improved documentation of getAlreadyEnteredText() for CompletionProviders.
---
.../autocomplete/AbstractCompletionProvider.java | 26 +++++++++++---------
.../fife/ui/autocomplete/CompletionProvider.java | 5 +++-
.../ui/autocomplete/DefaultCompletionProvider.java | 5 ++--
3 files changed, 21 insertions(+), 15 deletions(-)
diff --git a/src/org/fife/ui/autocomplete/AbstractCompletionProvider.java b/src/org/fife/ui/autocomplete/AbstractCompletionProvider.java
index 24b098e..20fd031 100644
--- a/src/org/fife/ui/autocomplete/AbstractCompletionProvider.java
+++ b/src/org/fife/ui/autocomplete/AbstractCompletionProvider.java
@@ -177,20 +177,24 @@ public abstract class AbstractCompletionProvider
List retVal = new ArrayList();
String text = getAlreadyEnteredText(comp);
- int index = Collections.binarySearch(completions, text, comparator);
- if (index<0) {
- index = -index - 1;
- }
+ if (text!=null) {
- while (index<completions.size()) {
- Completion c = (Completion)completions.get(index);
- if (startsWithIgnoreCase(c.getInputText(), text)) {
- retVal.add(c);
- index++;
+ int index = Collections.binarySearch(completions, text, comparator);
+ if (index<0) {
+ index = -index - 1;
}
- else {
- break;
+
+ while (index<completions.size()) {
+ Completion c = (Completion)completions.get(index);
+ if (startsWithIgnoreCase(c.getInputText(), text)) {
+ retVal.add(c);
+ index++;
+ }
+ else {
+ break;
+ }
}
+
}
return retVal;
diff --git a/src/org/fife/ui/autocomplete/CompletionProvider.java b/src/org/fife/ui/autocomplete/CompletionProvider.java
index 0e9d69b..7bea05c 100644
--- a/src/org/fife/ui/autocomplete/CompletionProvider.java
+++ b/src/org/fife/ui/autocomplete/CompletionProvider.java
@@ -58,7 +58,10 @@ public interface CompletionProvider {
* the start of something auto-completable.
*
* @param comp The text component.
- * @return The text.
+ * @return The text. A return value of <code>null</code> means nothing
+ * should be auto-completed; a value of an empty string
+ * (<code>""</code>) means auto-completion should still be
+ * considered (i.e., all possible choices are valid).
*/
public String getAlreadyEnteredText(JTextComponent comp);
diff --git a/src/org/fife/ui/autocomplete/DefaultCompletionProvider.java b/src/org/fife/ui/autocomplete/DefaultCompletionProvider.java
index d701689..3f6e5e7 100644
--- a/src/org/fife/ui/autocomplete/DefaultCompletionProvider.java
+++ b/src/org/fife/ui/autocomplete/DefaultCompletionProvider.java
@@ -99,8 +99,7 @@ public class DefaultCompletionProvider extends AbstractCompletionProvider {
* This method returns all characters before the caret that are matched
* by {@link #isValidChar(char)}.
*
- * @param comp The text component.
- * @return The text.
+ * {@inheritDoc}
*/
public String getAlreadyEnteredText(JTextComponent comp) {
@@ -162,7 +161,7 @@ public class DefaultCompletionProvider extends AbstractCompletionProvider {
}
// Get the valid chars at and after the specified offset.
- int endOffs = s.offset;
+ int endOffs = s.offset + (offset-start);
while (endOffs<s.offset+s.count && isValidChar(s.array[endOffs])) {
endOffs++;
}
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/autocomplete.git
More information about the pkg-java-commits
mailing list