irongit

A simpler way to view django projects

subitem example

huncholanehuncholaneauthored
parent aab99d0commit 7f173515746d2e680b394ab50bbc860629ee6414Browse files

1 file changed, +25 -16

+25-16src/providers/project.ts
@@ -1,27 +1,36 @@
11 import * as vscode from "vscode";
22
33 export default class ProjectDataProvider
4- implements vscode.TreeDataProvider<number>
4+ implements vscode.TreeDataProvider<vscode.TreeItem>
55 {
6- private _onDidChangeTreeData: vscode.EventEmitter<
7- number | undefined | null | void
8- > = new vscode.EventEmitter<number | undefined | null | void>();
9- readonly onDidChangeTreeData: vscode.Event<number | undefined | null | void> =
10- this._onDidChangeTreeData.event;
11-
12- getTreeItem(element: number): vscode.TreeItem {
13- return {
14- label: `Number: ${element}`,
15- iconPath: new vscode.ThemeIcon("gear"),
16- // collapsibleState: vscode.TreeItemCollapsibleState.Collapsed,
17- };
6+ getTreeItem(element: vscode.TreeItem): vscode.TreeItem {
7+ return element;
188 }
199
20- getChildren(element?: number): Thenable<number[]> {
10+ getChildren(element?: vscode.TreeItem): Thenable<vscode.TreeItem[]> {
2111 if (element === undefined) {
22- return Promise.resolve([1, 2, 3, 4, 5]);
12+ // Return the root items
13+ return Promise.resolve([
14+ new vscode.TreeItem(
15+ "Item 1",
16+ vscode.TreeItemCollapsibleState.Collapsed
17+ ),
18+ new vscode.TreeItem(
19+ "Item 2",
20+ vscode.TreeItemCollapsibleState.Collapsed
21+ ),
22+ new vscode.TreeItem(
23+ "Item 3",
24+ vscode.TreeItemCollapsibleState.Collapsed
25+ ),
26+ ]);
2327 } else {
24- return Promise.resolve([]);
28+ // Return the child items for the given parent item
29+ return Promise.resolve([
30+ new vscode.TreeItem("Subitem 1"),
31+ new vscode.TreeItem("Subitem 2"),
32+ new vscode.TreeItem("Subitem 3"),
33+ ]);
2534 }
2635 }
2736 }