Skip to content

Commit df88049

Browse files
committed
Add icons and main badge
1 parent bd6a7b2 commit df88049

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

extensions/ql-vscode/src/data-extensions-editor/model-details/model-details-data-provider.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import {
22
Event,
33
EventEmitter,
4+
ThemeColor,
5+
ThemeIcon,
46
TreeDataProvider,
57
TreeItem,
68
TreeItemCollapsibleState,
@@ -38,6 +40,7 @@ export class ModelDetailsDataProvider
3840
return {
3941
label: item.signature,
4042
collapsibleState: TreeItemCollapsibleState.Collapsed,
43+
iconPath: new ThemeIcon("symbol-method"),
4144
};
4245
} else {
4346
return {
@@ -48,6 +51,7 @@ export class ModelDetailsDataProvider
4851
command: "codeQLDataExtensionsEditor.jumpToUsageLocation",
4952
arguments: [item, this.databaseItem],
5053
},
54+
iconPath: new ThemeIcon("error", new ThemeColor("errorForeground")),
5155
};
5256
}
5357
}
Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,32 @@
1-
import { window } from "vscode";
1+
import { TreeView, window } from "vscode";
22
import { DisposableObject } from "../../common/disposable-object";
33
import { ModelDetailsDataProvider } from "./model-details-data-provider";
4-
import { ExternalApiUsage } from "../external-api-usage";
54
import { DatabaseItem } from "../../databases/local-databases";
5+
import { ExternalApiUsage, Usage } from "../external-api-usage";
66

77
export class ModelDetailsPanel extends DisposableObject {
88
private readonly dataProvider: ModelDetailsDataProvider;
9+
private readonly treeView: TreeView<ExternalApiUsage | Usage>;
910

1011
public constructor() {
1112
super();
1213

1314
this.dataProvider = new ModelDetailsDataProvider();
1415

15-
const treeView = window.createTreeView("codeQLModelDetails", {
16+
this.treeView = window.createTreeView("codeQLModelDetails", {
1617
treeDataProvider: this.dataProvider,
1718
});
18-
this.push(treeView);
19+
this.push(this.treeView);
1920
}
2021

2122
public setState(
2223
externalApiUsages: ExternalApiUsage[],
2324
databaseItem: DatabaseItem,
2425
): void {
2526
this.dataProvider.setState(externalApiUsages, databaseItem);
27+
this.treeView.badge = {
28+
value: externalApiUsages.length,
29+
tooltip: "Number of unmodeled external APIs",
30+
};
2631
}
2732
}

0 commit comments

Comments
 (0)