Files
azuredatastudio/src/sql/workbench/common/views.ts
Anthony Dresser 8cf82c1f8b Azure pane in connection dialog (#11736)
* azure pane in connection dialog

* fix layering

* fix issues

* fix test

* more test fixes

* add back double click to connect for non-contributed views
2020-08-13 17:02:42 -07:00

52 lines
1.6 KiB
TypeScript

/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the Source EULA. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { ITreeViewDataProvider, ITreeItem as vsITreeItem, IViewDescriptor, ITreeView as vsITreeView } from 'vs/workbench/common/views';
import { Event } from 'vs/base/common/event';
import { IConnectionProfile, NodeInfo } from 'azdata';
export enum NodeType {
Server = 'Server',
Database = 'Database'
}
export interface ITreeComponentItem extends vsITreeItem {
checked?: boolean;
enabled?: boolean;
onCheckedChanged?: (checked: boolean) => void;
children?: ITreeComponentItem[];
}
export interface IModelViewTreeViewDataProvider extends ITreeViewDataProvider {
refresh(itemsToRefreshByHandle: { [treeItemHandle: string]: ITreeComponentItem }): void;
}
export interface ITreeItem extends vsITreeItem {
providerHandle?: string;
childProvider?: string;
payload?: IConnectionProfile; // its possible we will want this to be more generic
sqlIcon?: string;
type?: NodeType;
nodeInfo?: NodeInfo
}
export interface ITreeView extends vsITreeView {
collapse(element: ITreeItem): boolean
readonly onDidChangeSelection: Event<ITreeItem[]>;
}
export type TreeViewItemHandleArg = {
$treeViewId: string,
$treeItemHandle: string,
$treeItem?: ITreeItem,
$treeContainerId?: string
};
export interface ICustomViewDescriptor extends IViewDescriptor {
readonly treeView: ITreeView;
}