本文整理汇总了Java中org.eclipse.che.ide.api.editor.codeassist.Completion类的典型用法代码示例。如果您正苦于以下问题:Java Completion类的具体用法?Java Completion怎么用?Java Completion使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
Completion类属于org.eclipse.che.ide.api.editor.codeassist包,在下文中一共展示了Completion类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: applyCompletion
import org.eclipse.che.ide.api.editor.codeassist.Completion; //导入依赖的package包/类
private void applyCompletion(Completion completion) {
textEditor.setFocus();
UndoableEditor undoableEditor = textEditor;
HandlesUndoRedo undoRedo = undoableEditor.getUndoRedo();
try {
if (undoRedo != null) {
undoRedo.beginCompoundChange();
}
completion.apply(textEditor.getDocument());
final LinearRange selection = completion.getSelection(textEditor.getDocument());
if (selection != null) {
selectInEditor(selection);
}
} catch (final Exception e) {
Log.error(getClass(), e);
} finally {
if (undoRedo != null) {
undoRedo.endCompoundChange();
}
}
}
示例2: createItem
import org.eclipse.che.ide.api.editor.codeassist.Completion; //导入依赖的package包/类
public Element createItem(final CompletionProposal proposal) {
final Element element = Elements.createLiElement(popupResources.popupStyle().item());
final Element icon = Elements.createDivElement(popupResources.popupStyle().icon());
if (proposal.getIcon() != null && proposal.getIcon().getSVGImage() != null) {
icon.appendChild((Node) proposal.getIcon().getSVGImage().getElement());
} else if (proposal.getIcon() != null && proposal.getIcon().getImage() != null) {
icon.appendChild((Node) proposal.getIcon().getImage().getElement());
}
element.appendChild(icon);
final SpanElement label = Elements.createSpanElement(popupResources.popupStyle().label());
label.setInnerHTML(proposal.getDisplayString());
element.appendChild(label);
final EventListener validateListener =
new EventListener() {
@Override
public void handleEvent(final Event evt) {
proposal.getCompletion(
new CompletionProposal.CompletionCallback() {
@Override
public void onCompletion(final Completion completion) {
HandlesUndoRedo undoRedo = null;
if (textEditor instanceof UndoableEditor) {
UndoableEditor undoableEditor =
(UndoableEditor) QuickAssistWidget.this.textEditor;
undoRedo = undoableEditor.getUndoRedo();
}
try {
if (undoRedo != null) {
undoRedo.beginCompoundChange();
}
completion.apply(textEditor.getDocument());
final LinearRange selection =
completion.getSelection(textEditor.getDocument());
if (selection != null) {
textEditor.getDocument().setSelectedRange(selection, true);
}
} catch (final Exception e) {
Log.error(getClass(), e);
} finally {
if (undoRedo != null) {
undoRedo.endCompoundChange();
}
}
}
});
hide();
}
};
element.addEventListener(Event.DBLCLICK, validateListener, false);
element.addEventListener(CUSTOM_EVT_TYPE_VALIDATE, validateListener, false);
return element;
}
示例3: shouldUseInsertText
import org.eclipse.che.ide.api.editor.codeassist.Completion; //导入依赖的package包/类
@Test
public void shouldUseInsertText() throws Exception {
when(serverCapabilities.getCompletionProvider()).thenReturn(completionOptions);
when(completionOptions.getResolveProvider()).thenReturn(false);
when(document.getCursorPosition()).thenReturn(new TextPosition(0, 5));
when(completion.getInsertText()).thenReturn("foo");
Completion[] completions = new Completion[1];
proposal.getCompletion(completion -> completions[0] = completion);
completions[0].apply(document);
verify(document).getCursorPosition();
verify(document, times(1)).replace(eq(0), eq(5), eq(0), eq(5), eq("foo"));
verify(document, times(1)).replace(anyInt(), anyInt(), anyInt(), anyInt(), anyString());
}
示例4: shouldUseLabelIfInsertTextIsNull
import org.eclipse.che.ide.api.editor.codeassist.Completion; //导入依赖的package包/类
@Test
public void shouldUseLabelIfInsertTextIsNull() throws Exception {
when(serverCapabilities.getCompletionProvider()).thenReturn(completionOptions);
when(completionOptions.getResolveProvider()).thenReturn(false);
when(document.getCursorPosition()).thenReturn(new TextPosition(0, 5));
when(completion.getInsertText()).thenReturn(null);
when(completion.getLabel()).thenReturn("bar");
Completion[] completions = new Completion[1];
proposal.getCompletion(completion -> completions[0] = completion);
completions[0].apply(document);
verify(document).getCursorPosition();
verify(document, times(1)).replace(eq(0), eq(5), eq(0), eq(5), eq("bar"));
verify(document, times(1)).replace(anyInt(), anyInt(), anyInt(), anyInt(), anyString());
}
示例5: shouldPlaceCursorInRightPositionWithInsertedText
import org.eclipse.che.ide.api.editor.codeassist.Completion; //导入依赖的package包/类
@Test
public void shouldPlaceCursorInRightPositionWithInsertedText() throws Exception {
when(serverCapabilities.getCompletionProvider()).thenReturn(completionOptions);
when(completionOptions.getResolveProvider()).thenReturn(false);
when(document.getCursorPosition()).thenReturn(new TextPosition(0, 5));
when(completion.getInsertText()).thenReturn("foo");
when(document.getIndexFromPosition(any())).thenReturn(5);
Completion[] completions = new Completion[1];
proposal.getCompletion(completion -> completions[0] = completion);
completions[0].apply(document);
LinearRange selection = completions[0].getSelection(document);
assertEquals(8, selection.getStartOffset());
assertEquals(0, selection.getLength());
}
示例6: shouldReturnNotNullCompletion
import org.eclipse.che.ide.api.editor.codeassist.Completion; //导入依赖的package包/类
@Test
public void shouldReturnNotNullCompletion() throws Exception {
when(serverCapabilities.getCompletionProvider()).thenReturn(completionOptions);
when(completionOptions.getResolveProvider()).thenReturn(false);
Completion[] completions = new Completion[1];
proposal.getCompletion(completion -> completions[0] = completion);
assertNotNull(completions[0]);
}
示例7: shouldUseTextEditFirst
import org.eclipse.che.ide.api.editor.codeassist.Completion; //导入依赖的package包/类
@Test
public void shouldUseTextEditFirst() throws Exception {
TextEdit textEdit = mock(TextEdit.class);
Range range = mock(Range.class);
Position startPosition = mock(Position.class);
Position endPosition = mock(Position.class);
when(serverCapabilities.getCompletionProvider()).thenReturn(completionOptions);
when(completionOptions.getResolveProvider()).thenReturn(false);
when(document.getCursorPosition()).thenReturn(new TextPosition(0, 5));
when(completion.getInsertText()).thenReturn("foo");
when(completion.getLabel()).thenReturn("bar");
when(completion.getTextEdit()).thenReturn(textEdit);
when(textEdit.getRange()).thenReturn(range);
when(textEdit.getNewText()).thenReturn("fooBar");
when(range.getStart()).thenReturn(startPosition);
when(range.getEnd()).thenReturn(endPosition);
when(startPosition.getLine()).thenReturn(1);
when(startPosition.getCharacter()).thenReturn(5);
when(endPosition.getLine()).thenReturn(1);
when(endPosition.getCharacter()).thenReturn(5);
Completion[] completions = new Completion[1];
proposal.getCompletion(completion -> completions[0] = completion);
completions[0].apply(document);
verify(document, times(1)).replace(eq(1), eq(5), eq(1), eq(5), eq("fooBar"));
verify(document, times(1)).replace(anyInt(), anyInt(), anyInt(), anyInt(), anyString());
}
示例8: shouldPlaceCursorInRightPositionWithTextEdit
import org.eclipse.che.ide.api.editor.codeassist.Completion; //导入依赖的package包/类
@Test
public void shouldPlaceCursorInRightPositionWithTextEdit() throws Exception {
TextEdit textEdit = mock(TextEdit.class);
Range range = mock(Range.class);
Position startPosition = mock(Position.class);
Position endPosition = mock(Position.class);
when(serverCapabilities.getCompletionProvider()).thenReturn(completionOptions);
when(completionOptions.getResolveProvider()).thenReturn(false);
when(document.getCursorPosition()).thenReturn(new TextPosition(0, 5));
when(completion.getInsertText()).thenReturn("foo");
when(completion.getLabel()).thenReturn("bar");
when(completion.getTextEdit()).thenReturn(textEdit);
when(textEdit.getRange()).thenReturn(range);
when(textEdit.getNewText()).thenReturn("fooBar");
when(range.getStart()).thenReturn(startPosition);
when(range.getEnd()).thenReturn(endPosition);
when(startPosition.getLine()).thenReturn(1);
when(startPosition.getCharacter()).thenReturn(5);
when(endPosition.getLine()).thenReturn(1);
when(endPosition.getCharacter()).thenReturn(5);
when(document.getIndexFromPosition(any())).thenReturn(5);
Completion[] completions = new Completion[1];
proposal.getCompletion(completion -> completions[0] = completion);
completions[0].apply(document);
LinearRange selection = completions[0].getSelection(document);
assertEquals(11, selection.getStartOffset());
assertEquals(0, selection.getLength());
}