Queries panel: Expand/collapse child nodes (#2419)

This commit is contained in:
Shati Patel
2023-05-16 16:45:59 +01:00
committed by GitHub
parent 1dc83c5628
commit 9ce95a3554
2 changed files with 13 additions and 7 deletions

View File

@@ -17,11 +17,13 @@ export class QueryTreeDataProvider
private createTree(): QueryTreeViewItem[] {
// Temporary mock data, just to populate the tree view.
return [
{
label: "name1",
tooltip: "path1",
children: [],
},
new QueryTreeViewItem("name1", "path1", []),
new QueryTreeViewItem("name2", "path2", [
new QueryTreeViewItem("name3", "path3", []),
new QueryTreeViewItem("name4", "path4", [
new QueryTreeViewItem("name5", "path5", []),
]),
]),
];
}
@@ -46,9 +48,9 @@ export class QueryTreeDataProvider
): vscode.ProviderResult<QueryTreeViewItem[]> {
if (!item) {
// We're at the root.
return Promise.resolve(this.queryTreeItems);
return this.queryTreeItems;
} else {
return Promise.resolve(item.children);
return item.children;
}
}
}

View File

@@ -1,11 +1,15 @@
import * as vscode from "vscode";
export class QueryTreeViewItem extends vscode.TreeItem {
public collapsibleState: vscode.TreeItemCollapsibleState;
constructor(
public readonly label: string,
public readonly tooltip: string | undefined,
public readonly children: QueryTreeViewItem[],
) {
super(label);
this.collapsibleState = this.children.length
? vscode.TreeItemCollapsibleState.Collapsed
: vscode.TreeItemCollapsibleState.None;
}
}