1 19 20 package org.netbeans.modules.websvc.editor.completion; 21 22 import javax.swing.text.Document ; 23 import javax.swing.text.JTextComponent ; 24 import org.netbeans.editor.Utilities; 25 import org.netbeans.spi.editor.completion.CompletionProvider; 28 import org.netbeans.spi.editor.completion.CompletionResultSet; 29 import org.netbeans.spi.editor.completion.CompletionTask; 30 import org.netbeans.spi.editor.completion.support.AsyncCompletionQuery; 31 import org.netbeans.spi.editor.completion.support.AsyncCompletionTask; 32 33 37 public class WSCompletionProvider implements CompletionProvider { 38 39 public int getAutoQueryTypes(JTextComponent component, String typedText) { 40 return 0; 41 } 42 43 public CompletionTask createTask(int queryType, JTextComponent component) { 44 if (queryType == CompletionProvider.COMPLETION_QUERY_TYPE) { 45 return new AsyncCompletionTask(new Query(component.getCaret().getDot()), component); 46 } 47 return null; 48 } 49 50 static final class Query extends AsyncCompletionQuery { 51 52 private JTextComponent component; 53 54 private int creationCaretOffset; 55 private int queryCaretOffset; 56 57 private int queryAnchorOffset; 58 59 private String filterPrefix; 60 61 Query(int caretOffset) { 62 this.creationCaretOffset = caretOffset; 63 } 64 65 protected void preQueryUpdate(JTextComponent component) { 66 } 77 78 protected void query(CompletionResultSet resultSet, Document doc, int caretOffset) { 79 resultSet.finish(); 94 } 95 96 protected void prepareQuery(JTextComponent component) { 97 this.component = component; 98 } 99 100 109 } 111 } 112 | Popular Tags |