UNPKG

sussudio

Version:

An unofficial VS Code Internal API

77 lines (76 loc) 3.02 kB
/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ import { IContextViewProvider } from "../contextview/contextview.mjs"; import { IListVirtualDelegate } from "../list/list.mjs"; import { ISelectBoxDelegate, ISelectBoxOptions, ISelectBoxStyles, ISelectData, ISelectOptionItem } from "./selectBox.mjs"; import { Event } from "../../../common/event.mjs"; import { Disposable } from "../../../common/lifecycle.mjs"; import "../../../../css!./selectBoxCustom.mjs"; export declare class SelectBoxList extends Disposable implements ISelectBoxDelegate, IListVirtualDelegate<ISelectOptionItem> { private static readonly DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN; private static readonly DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN; private static readonly DEFAULT_MINIMUM_VISIBLE_OPTIONS; private _isVisible; private selectBoxOptions; private selectElement; private container?; private options; private selected; private readonly _onDidSelect; private styles; private listRenderer; private contextViewProvider; private selectDropDownContainer; private styleElement; private selectList; private selectDropDownListContainer; private widthControlElement; private _currentSelection; private _dropDownPosition; private _hasDetails; private selectionDetailsPane; private _skipLayout; private _sticky; constructor(options: ISelectOptionItem[], selected: number, contextViewProvider: IContextViewProvider, styles: ISelectBoxStyles, selectBoxOptions?: ISelectBoxOptions); getHeight(): number; getTemplateId(): string; private constructSelectDropDown; private registerListeners; get onDidSelect(): Event<ISelectData>; setOptions(options: ISelectOptionItem[], selected?: number): void; private setOptionsList; select(index: number): void; setAriaLabel(label: string): void; focus(): void; blur(): void; setFocusable(focusable: boolean): void; render(container: HTMLElement): void; style(styles: ISelectBoxStyles): void; applyStyles(): void; private styleList; private createOption; private showSelectDropDown; private hideSelectDropDown; private renderSelectDropDown; private measureMaxDetailsHeight; private layoutSelectDropDown; private setWidthControlElement; private createSelectList; private onPointerUp; private onListBlur; private renderDescriptionMarkdown; private onListFocus; private updateDetail; private onEscape; private onEnter; private onDownArrow; private onUpArrow; private onPageUp; private onPageDown; private onHome; private onEnd; private onCharacter; dispose(): void; }