Interface DocumentSelectionState

DocumentSelectionState is responsible for maintaining selection information for a document.

It is intended for use by AbstractTextEditor-based components for identifying the appropriate start/end positions to modify the DocumentContent, and for programmatically setting browser selection when components re-render.

interface DocumentSelectionState {
    new DocumentSelectionStatenew (anchor, focus): DocumentSelectionState;
    addListener(eventType, listener, context?): EmitterSubscription;
    blur(): void;
    constrainLength(maxLength): void;
    emit(eventType, ...params): void;
    focus(): void;
    getAnchorOffset(): number;
    getEndOffset(): number;
    getFocusOffset(): number;
    getStartOffset(): number;
    hasFocus(): boolean;
    isBackward(): boolean;
    isCollapsed(): boolean;
    listenerCount(eventType): number;
    overlaps(start, end): boolean;
    removeAllListeners(eventType?): void;
    update(anchor, focus): void;
}

Hierarchy (view full)

Constructors

Methods

  • Adds a listener to be invoked when events of the specified type are emitted. An optional calling context may be provided. The data arguments emitted will be passed to the listener function.

    Parameters

    • eventType: string

      Name of the event to listen to

    • listener: ((...args) => any)

      Function to invoke when the specified event is emitted

        • (...args): any
        • Parameters

          • Rest ...args: any[]

          Returns any

    • Optional context: any

      Optional context object to use when invoking the listener

    Returns EmitterSubscription

  • Returns void

  • Given a max text length, constrain our selection offsets to ensure that the selection remains strictly within the text range.

    Parameters

    • maxLength: number

    Returns void

  • Emits an event of the given type with the given data. All handlers of that particular type will be notified.

    Parameters

    • eventType: string

      Name of the event to emit

    • Rest ...params: any[]

    Returns void

    Example

    emitter.addListener('someEvent', function(message) {
    console.log(message);
    });

    emitter.emit('someEvent', 'abc'); // logs 'abc'
  • Returns void

  • Returns number

  • Returns number

  • Returns number

  • Returns number

  • Returns boolean

  • Returns boolean

  • Returns boolean

  • Returns the number of listeners that are currently registered for the given event.

    Parameters

    • eventType: string

      Name of the event to query

    Returns number

  • Parameters

    • start: number
    • end: number

    Returns boolean

  • Removes all of the registered listeners, including those registered as listener maps.

    Parameters

    • Optional eventType: string

      Optional name of the event whose registered listeners to remove

    Returns void

  • Apply an update to the state. If either offset value has changed, set the values and emit the change event. Otherwise no-op.

    Parameters

    • anchor: number
    • focus: number

    Returns void