@NotNull @Override public VisualPosition build(@NotNull EditorPosition position) { int diff = myTargetLogical.column - position.logicalColumn; position.logicalColumn += diff; position.visualColumn += diff; position.offset += diff; return position.buildVisualPosition(); }
@Override protected VisualPosition buildIfExceeds(EditorPosition context, TabData tabData) { if (context.logicalLine < myTargetLogical.line) { return null; } int diff = myTargetLogical.column - context.logicalColumn; if (diff >= tabData.widthInColumns) { return null; } context.logicalColumn += diff; context.visualColumn += diff; return context.buildVisualPosition(); }