mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-17 02:51:36 -05:00
Added feature to disable checkbox of checkboxTreeNode (#2942)
This commit is contained in:
@@ -71,6 +71,13 @@ export class TreeDataTemplate extends Disposable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public set enableCheckbox(value: boolean) {
|
||||||
|
if (value === undefined) {
|
||||||
|
value = true;
|
||||||
|
}
|
||||||
|
this._checkbox.disabled = !value;
|
||||||
|
}
|
||||||
|
|
||||||
public get checkbox(): HTMLInputElement {
|
public get checkbox(): HTMLInputElement {
|
||||||
return this._checkbox;
|
return this._checkbox;
|
||||||
}
|
}
|
||||||
@@ -155,6 +162,7 @@ export class TreeComponentRenderer extends Disposable implements IRenderer {
|
|||||||
templateData.label.textContent = label;
|
templateData.label.textContent = label;
|
||||||
templateData.root.title = label;
|
templateData.root.title = label;
|
||||||
templateData.checkboxState = this.getCheckboxState(treeNode);
|
templateData.checkboxState = this.getCheckboxState(treeNode);
|
||||||
|
templateData.enableCheckbox = treeNode.enabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
private getCheckboxState(treeNode: ITreeComponentItem): TreeCheckboxState {
|
private getCheckboxState(treeNode: ITreeComponentItem): TreeCheckboxState {
|
||||||
|
|||||||
1
src/sql/sqlops.proposed.d.ts
vendored
1
src/sql/sqlops.proposed.d.ts
vendored
@@ -58,6 +58,7 @@ declare module 'sqlops' {
|
|||||||
|
|
||||||
export class TreeComponentItem extends vscode.TreeItem {
|
export class TreeComponentItem extends vscode.TreeItem {
|
||||||
checked?: boolean;
|
checked?: boolean;
|
||||||
|
enabled?: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface ComponentBuilder<T extends Component> {
|
export interface ComponentBuilder<T extends Component> {
|
||||||
|
|||||||
@@ -164,7 +164,7 @@ export class ExtHostTreeView<T> extends vsTreeExt.ExtHostTreeView<T> {
|
|||||||
|
|
||||||
protected createTreeItem(element: T, extensionTreeItem: sqlops.TreeComponentItem, parent?: vsTreeExt.TreeNode): ITreeComponentItem {
|
protected createTreeItem(element: T, extensionTreeItem: sqlops.TreeComponentItem, parent?: vsTreeExt.TreeNode): ITreeComponentItem {
|
||||||
let item = super.createTreeItem(element, extensionTreeItem, parent);
|
let item = super.createTreeItem(element, extensionTreeItem, parent);
|
||||||
item = Object.assign({}, item, { checked: extensionTreeItem.checked });
|
item = Object.assign({}, item, { checked: extensionTreeItem.checked, enabled: extensionTreeItem.enabled });
|
||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -7,6 +7,7 @@ import { ITreeViewDataProvider, ITreeItem } from 'vs/workbench/common/views';
|
|||||||
|
|
||||||
export interface ITreeComponentItem extends ITreeItem {
|
export interface ITreeComponentItem extends ITreeItem {
|
||||||
checked?: boolean;
|
checked?: boolean;
|
||||||
|
enabled?: boolean;
|
||||||
onCheckedChanged?: (checked: boolean) => void;
|
onCheckedChanged?: (checked: boolean) => void;
|
||||||
children?: ITreeComponentItem[];
|
children?: ITreeComponentItem[];
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user