private int computeCurrentLineNumber() { final int offset = getControl().getCaretOffset(); return getControl().getLineAtOffset(offset); }
private @NonNull LineRegion getLineRegion(TextSelection selection) { int firstLine = getControl().getLineAtOffset(selection.offset); int lastLine = getControl().getLineAtOffset(selection.offset + selection.length); int lastLineBegin = getControl().getOffsetAtLine(lastLine); // dont count the last line if the caret is at index 0 if (lastLineBegin == selection.offset + selection.length) { lastLine -= 1; } // limit lastLine = Math.min(getControl().getContent().getLineCount() - 1, lastLine); lastLine = Math.max(firstLine, lastLine); return new LineRegion(firstLine, lastLine); }
private boolean isMultilineSelection() { return getControl().getLineAtOffset(getControl().getSelection().offset) != getControl().getLineAtOffset(getControl().getSelection().offset + getControl().getSelection().length); }
final int selectionLength = getControl().getSelection().length; final int firstLine = getControl().getLineAtOffset(selectionOffset); int lastLine = getControl().getLineAtOffset(selectionOffset + selectionLength);
final int selectionLength = getControl().getSelection().length; final int firstLine = getControl().getLineAtOffset(selectionOffset); int lastLine = getControl().getLineAtOffset(selectionOffset + selectionLength);