public List<Integer> getOrderedLines(@NotNull Editor editor, @NotNull DataContext context, @NotNull CaretOrder caretOrder) { final ArrayList<Integer> lines = new ArrayList<>(editor.getCaretModel().getCaretCount()); for (Caret caret : EditorHelper.getOrderedCaretsList(editor, caretOrder)) { final int line = getLine(editor, caret, context); lines.add(line); } return lines; }
/** * @deprecated To move the caret, use {@link #moveCaretToLineStartSkipLeading(Editor, Caret)} */ public int moveCaretToLineStartSkipLeading(@NotNull Editor editor) { return moveCaretToLineStartSkipLeading(editor, editor.getCaretModel().getPrimaryCaret()); }
/** * @deprecated Use {@link #findNextParagraphLine(Editor, Caret, int, boolean)} */ public static int findNextSentenceStart(@NotNull Editor editor, int count, boolean countCurrent, boolean requireAll) { return findNextSentenceStart(editor, editor.getCaretModel().getPrimaryCaret(), count, countCurrent, requireAll); }
public boolean execute(@NotNull Editor editor, @NotNull DataContext context, int count, int rawCount, @Nullable Argument argument) throws ExecuteMethodNotOverriddenException { if (!myIsMulticaretChangeAction) { throw new ExecuteMethodNotOverriddenException(this.getClass()); } return execute(editor, editor.getCaretModel().getPrimaryCaret(), context, count, rawCount, argument); }
/** * This gets the last column the primary cursor was in for the editor. * * @param editor The editor to get the last column from * @return Returns the last column as set by {@link #setLastColumn} or the current primary cursor column * @deprecated Use {@link CaretData#getLastColumn(Caret)} to get the primary cursor last column */ public static int getLastColumn(@NotNull Editor editor) { return CaretData.getLastColumn(editor.getCaretModel().getPrimaryCaret()); }
@Override protected boolean isValidForFile(@NotNull Project project, @NotNull Editor editor, @NotNull PsiFile file) { GoLiveTemplateContextType.File fileContextType = TemplateContextType.EP_NAME.findExtension(GoLiveTemplateContextType.File.class); return fileContextType != null && fileContextType.isInContext(file, editor.getCaretModel().getOffset()); }
public int moveCaretGotoNextTab(@NotNull Editor editor, @NotNull DataContext context, int rawCount) { final boolean absolute = rawCount >= 1; switchEditorTab(EditorWindow.DATA_KEY.getData(context), absolute ? rawCount - 1 : 1, absolute); return editor.getCaretModel().getOffset(); }
private int getRelativeLineNumber(int line, @NotNull Editor editor) { final int visualLine = EditorHelper.logicalLineToVisualLine(editor, line); final int currentLine = editor.getCaretModel().getLogicalPosition().line; final int currentVisualLine = EditorHelper.logicalLineToVisualLine(editor, currentLine); return Math.abs(currentVisualLine - visualLine); }
/** * Clears all the keystrokes from the current insert command * * @param editor The editor to clear strokes from. */ private void clearStrokes(@NotNull Editor editor) { strokes.clear(); repeatCharsCount = 0; for (Caret caret : editor.getCaretModel().getAllCarets()) { CaretData.setInsertStart(caret, caret.getOffset()); } }
/** * Begin insert before the start of the current line * * @param editor The editor to insert into * @param context The data context */ public void insertLineStart(@NotNull Editor editor, @NotNull DataContext context) { for (Caret caret : editor.getCaretModel().getAllCarets()) { MotionGroup.moveCaret(editor, caret, VimPlugin.getMotion().moveCaretToLineStart(editor, caret)); } initInsert(editor, context, CommandState.Mode.INSERT); }
public boolean scrollColumn(@NotNull Editor editor, int columns) { int visualColumn = EditorHelper.getVisualColumnAtLeftOfScreen(editor); visualColumn = EditorHelper .normalizeVisualColumn(editor, editor.getCaretModel().getVisualPosition().line, visualColumn + columns, false); scrollColumnToLeftOfScreen(editor, visualColumn); moveCaretToView(editor); return true; }
@Override public boolean doEnter(PsiElement psiElement, PsiFile file, @NotNull Editor editor, boolean modified) { GoBlock block = findBlock(psiElement); if (block != null) { editor.getCaretModel().moveToOffset(block.getLbrace().getTextRange().getEndOffset()); } plainEnter(editor); return true; } }
private void initLineNumbers(@NotNull final Editor editor) { editor.getCaretModel().addCaretListener(myLineNumbersCaretListener); EditorData.setEditorGroup(editor, true); final EditorSettings settings = editor.getSettings(); EditorData.setLineNumbersShown(editor, settings.isLineNumbersShown()); updateLineNumbers(editor); }
@Nullable private static GoExpression findExpressionAtOffset(GoIntroduceOperation operation) { PsiFile file = operation.getFile(); int offset = operation.getEditor().getCaretModel().getOffset(); GoExpression expr = PsiTreeUtil.getNonStrictParentOfType(file.findElementAt(offset), GoExpression.class); GoExpression preExpr = PsiTreeUtil.getNonStrictParentOfType(file.findElementAt(offset - 1), GoExpression.class); if (expr == null || preExpr != null && PsiTreeUtil.isAncestor(expr, preExpr, false)) return preExpr; return expr; }
private void deinitLineNumbers(@NotNull Editor editor) { editor.getCaretModel().removeCaretListener(myLineNumbersCaretListener); EditorData.setEditorGroup(editor, false); editor.getGutter().closeAllAnnotations(); final Project project = editor.getProject(); if (project == null || project.isDisposed()) return; editor.getSettings().setLineNumbersShown(EditorData.isLineNumbersShown(editor)); }
public void assertOffset(int... expectedOffsets) { final List<Caret> carets = myFixture.getEditor().getCaretModel().getAllCarets(); assertEquals("Wrong amount of carets", expectedOffsets.length, carets.size()); for (int i = 0; i < expectedOffsets.length; i++) { assertEquals(expectedOffsets[i], carets.get(i).getOffset()); } }
public void testWrongYankRegisterMotion() { final Editor editor = typeTextInFile(parseKeys("y\"", "0"), "one <caret>two\n" + "three\n" + "four\n"); assertEquals(0, editor.getCaretModel().getOffset()); }
private <T extends GoExpression> void doTest(@NotNull String text, @NotNull Class<T> aClass, int expected) { myFixture.configureByText("a.go", text); PsiElement element = myFixture.getFile().findElementAt(myFixture.getEditor().getCaretModel().getOffset()); T callExpr = PsiTreeUtil.getParentOfType(element, aClass); assertEquals(expected, GoInspectionUtil.getExpressionResultCount(callExpr)); }
public void testUpDownMove() { final Editor editor = typeTextInFile(parseKeys("2j", "k"), "one\n" + "tw<caret>o\n" + "three\n" + "four\n"); final VisualPosition position = editor.getCaretModel().getVisualPosition(); assertEquals(new VisualPosition(2, 2), position); }
private void doTest(@NotNull String text, String expected) { myFixture.configureByText("a.go", "package a\n" + text); PsiElement element = myFixture.getFile().findElementAt(myFixture.getEditor().getCaretModel().getOffset()); GoType type = PsiTreeUtil.getParentOfType(element, GoType.class); assertNotNull(type); assertEquals(expected, type.getUnderlyingType().getText()); }