This object is used to ensure Bi-Directional support (for languages with text flowing from right to left, like Arabic or Hebrew) including correct caret positioning, text selection mouse and keyboard arrows functioning

Constructors

Properties

bidiMap: {}
characterWidth: any
charWidths: any[]
contentWidth: number
currentRow: any
EOF: string
EOL: string
fontMetrics: any
isMoveLeftOperation: boolean
isRtlDir: boolean
line: string
RLE: string
rtlLineOffset: number
seenBidi: boolean
session: EditSession
showInvisibles: boolean
wrapIndent: number
wrapOffset: number

Methods

  • Returns offset of character at position defined by column.

    Parameters

    • col: number

      the screen column position

    Returns number

    horizontal pixel offset of given screen column

  • Returns 'selections' - array of objects defining set of selection rectangles

    Parameters

    • startCol: number

      the start column position

    • endCol: number

      the end column position

    Returns any[]

    Each object contains 'left' and 'width' values defining selection rectangle.

  • Returns 'true' if row contains Bidi characters, in such case creates Bidi map to be used in operations related to selection (keyboard arrays, mouse click, select)

    Parameters

    • screenRow: number

      the screen row to be checked

    • OptionaldocRow: number

      the document row to be checked [optional]

    • OptionalsplitIndex: number

      the wrapped screen line index [ optional]

    Returns any

  • Resets stored info related to current screen row

    Returns void

  • Converts character coordinates on the screen to respective document column number

    Parameters

    • posX: number

      character horizontal offset

    Returns number

    screen column number corresponding to given pixel offset

  • Parameters

    • editor: any
    • isRtlDir: any

    Returns void

  • Parameters

    • showInvisibles: any

    Returns void

  • Updates array of character widths

    Parameters

    • fontMetrics: any

      metrics

    Returns void

  • Parameters

    • docRow: any
    • splitIndex: any

    Returns void