Options
All
  • Public
  • Public/Protected
  • All
Menu

Class WidgetOpenHandler<W>

Generic base class for OpenHandlers that are opening a widget for a given URI.

Type parameters

Hierarchy

Implements

Index

Properties

Readonly Abstract id

id: string

The widget open handler id.

Implementation

  • A widget factory for this id should be registered.
  • Subclasses should not implement WidgetFactory to avoid exposing capabilities to create a widget outside of WidgetManager.

Readonly onCreated

onCreated: Event<W> = this.onCreatedEmitter.event

Emit when a new widget is created.

Protected Readonly onCreatedEmitter

onCreatedEmitter: Emitter<W> = new Emitter<W>()

Protected Readonly shell

Protected Readonly widgetManager

widgetManager: WidgetManager

Accessors

all

  • get all(): W[]

Methods

Abstract canHandle

closeAll

  • Closes all widgets that have been opened by this open handler.

    Parameters

    • Optional options: CloseOptions

      the close options that should be applied to all widgets.

    Returns Promise<W[]>

    a promise of all closed widgets that resolves after they have been closed.

Protected Abstract createWidgetOptions

Protected doOpen

getByUri

  • getByUri(uri: URI): Promise<W | undefined>
  • Tries to get an existing widget for the given uri.

    Parameters

    • uri: URI

      the uri of the widget.

    Returns Promise<W | undefined>

    a promise that resolves to the existing widget or undefined if no widget for the given uri exists.

getOrCreateByUri

  • getOrCreateByUri(uri: URI): Promise<W>
  • Return an existing widget for the given uri or creates a new one.

    It does not open a widget, use {@link WidgetOpenHandler#open} instead.

    Parameters

    • uri: URI

      uri of the widget.

    Returns Promise<W>

    a promise of the existing or newly created widget.

Protected getOrCreateWidget

Protected getWidget

Protected init

  • init(): void

open

  • Open a widget for the given uri and options. Reject if the given options are not widget options or a widget cannot be opened.

    Parameters

    • uri: URI

      the uri of the resource that should be opened.

    • Optional options: WidgetOpenerOptions

      the widget opener options.

    Returns Promise<W>

    promise of the widget that resolves when the widget has been opened.