UNPKG

@theia/core

Version:

Theia is a cloud & desktop IDE framework implemented in TypeScript.

77 lines 3.84 kB
import { TabBar, Widget, DockPanel, Title } from '@lumino/widgets'; import { Signal } from '@lumino/signaling'; import { DisposableCollection } from '../../common/disposable'; import { CorePreferences } from '../../common/core-preferences'; import { Emitter, Event } from '../../common'; export declare const ACTIVE_TABBAR_CLASS = "theia-tabBar-active"; export declare const MAIN_AREA_ID = "theia-main-content-panel"; export declare const BOTTOM_AREA_ID = "theia-bottom-content-panel"; /** * This specialization of DockPanel adds various events that are used for implementing the * side panels of the application shell. */ export declare class TheiaDockPanel extends DockPanel { protected readonly preferences?: CorePreferences | undefined; protected readonly maximizeCallback?: ((area: TheiaDockPanel) => void) | undefined; /** * Emitted when a widget is added to the panel. */ readonly widgetAdded: Signal<this, Widget>; /** * Emitted when a widget is activated by calling `activateWidget`. */ readonly widgetActivated: Signal<this, Widget>; /** * Emitted when a widget is removed from the panel. */ readonly widgetRemoved: Signal<this, Widget>; protected readonly onDidChangeCurrentEmitter: Emitter<Title<Widget> | undefined>; protected disableDND: boolean | undefined; protected tabWithDNDDisabledStyling?: HTMLElement; get onDidChangeCurrent(): Event<Title<Widget> | undefined>; constructor(options?: DockPanel.IOptions, preferences?: CorePreferences | undefined, maximizeCallback?: ((area: TheiaDockPanel) => void) | undefined); protected onTabDetachRequestedWithDisabledDND(sender: TabBar<Widget>, args: TabBar.ITabDetachRequestedArgs<Widget>): void; protected onNullTabDragDataWithDisabledDND(): void; handleEvent(event: globalThis.Event): void; toggleMaximized(): void; isElectron(): boolean; protected _currentTitle: Title<Widget> | undefined; get currentTitle(): Title<Widget> | undefined; get currentTabBar(): TabBar<Widget> | undefined; findTabBar(title: Title<Widget>): TabBar<Widget> | undefined; protected readonly toDisposeOnMarkAsCurrent: DisposableCollection; markAsCurrent(title: Title<Widget> | undefined): void; markActiveTabBar(title?: Title<Widget>): void; addWidget(widget: Widget, options?: TheiaDockPanel.AddOptions): void; activateWidget(widget: Widget): void; protected onChildRemoved(msg: Widget.ChildMessage): void; nextTabBarWidget(widget: Widget): Widget | undefined; nextTabBarInPanel(tabBar: TabBar<Widget>): TabBar<Widget> | undefined; previousTabBarWidget(widget: Widget): Widget | undefined; previousTabBarInPanel(tabBar: TabBar<Widget>): TabBar<Widget> | undefined; dispose(): void; } export declare namespace TheiaDockPanel { const Factory: unique symbol; interface Factory { (options?: DockPanel.IOptions | TheiaDockPanel.IOptions, maximizeCallback?: (area: TheiaDockPanel) => void): TheiaDockPanel; } interface IOptions extends DockPanel.IOptions { /** whether drag and drop for tabs should be disabled */ disableDragAndDrop?: boolean; /** * @param sender the tab bar * @param args the widget (title) * @returns true if the request was handled by this handler, false if the tabbar should handle the request */ closeHandler?: (sender: TabBar<Widget>, args: TabBar.ITabCloseRequestedArgs<Widget>) => boolean; } function isTheiaDockPanelIOptions(options: DockPanel.IOptions | undefined): options is IOptions; interface AddOptions extends DockPanel.IAddOptions { /** * Whether to also close the widget referenced by `ref`. */ closeRef?: boolean; } } //# sourceMappingURL=theia-dock-panel.d.ts.map