1- import path from 'path' ;
1+ import path from 'path' ;
22import * as vscode from 'vscode' ;
33import os from 'os' ;
44import fs from 'fs' ;
@@ -14,24 +14,24 @@ class CmdTreeDataProvider implements vscode.TreeDataProvider<vscode.TreeItem> {
1414 getChildren ( element ?: vscode . TreeItem ) : vscode . ProviderResult < vscode . TreeItem [ ] > {
1515 const isRTT = isRTThreadProject ( ) ;
1616 const isRTTWorksapce = isRTThreadWorksapce ( ) ;
17- if ( isRTT != true && isRTTWorksapce != true ) {
17+ if ( isRTT !== true && isRTTWorksapce != = true ) {
1818 console . log ( "not RT-Thread project or workspace, return empty tree item." ) ;
1919 }
2020
21- if ( isRTThreadProject ( ) != true && isRTThreadWorksapce ( ) != true ) {
21+ if ( isRTThreadProject ( ) !== true && isRTThreadWorksapce ( ) != = true ) {
2222 // only show Create Project and RT-Thread Setting command when not in RT-Thread project
23- let createProject = new vscode . TreeItem ( "create project " , vscode . TreeItemCollapsibleState . None ) ;
23+ let createProject = new vscode . TreeItem ( "Create Project " , vscode . TreeItemCollapsibleState . None ) ;
2424 createProject . iconPath = new vscode . ThemeIcon ( "new-folder" ) ;
25- createProject . label = "create project " ;
25+ createProject . label = "Create Project " ;
2626 createProject . command = {
2727 command : "extension.showCreateProject" ,
2828 title : "show create project page" ,
2929 arguments : [ ] ,
3030 } ;
3131
32- let rtSetting = new vscode . TreeItem ( "rt-thread setting " , vscode . TreeItemCollapsibleState . None ) ;
32+ let rtSetting = new vscode . TreeItem ( "RT-Thread Setting " , vscode . TreeItemCollapsibleState . None ) ;
3333 rtSetting . iconPath = new vscode . ThemeIcon ( "settings-gear" ) ;
34- rtSetting . label = "rt-thread setting " ;
34+ rtSetting . label = "RT-Thread Setting " ;
3535 rtSetting . command = {
3636 command : "extension.showSetting" ,
3737 title : "show rt-thread setting page" ,
@@ -45,7 +45,7 @@ class CmdTreeDataProvider implements vscode.TreeDataProvider<vscode.TreeItem> {
4545 command : "extension.showAbout" ,
4646 title : "show about page" ,
4747 arguments : [ ] ,
48- }
48+ } ;
4949
5050 return [ createProject , rtSetting , about ] ;
5151 }
@@ -54,19 +54,19 @@ class CmdTreeDataProvider implements vscode.TreeDataProvider<vscode.TreeItem> {
5454 let children = [ ] ;
5555
5656 // 添加创建工程项
57- let createProject = new vscode . TreeItem ( "create project " , vscode . TreeItemCollapsibleState . None ) ;
57+ let createProject = new vscode . TreeItem ( "Create Project " , vscode . TreeItemCollapsibleState . None ) ;
5858 createProject . iconPath = new vscode . ThemeIcon ( "new-folder" ) ;
59- createProject . label = "create project " ;
59+ createProject . label = "Create Project " ;
6060 createProject . command = {
6161 command : "extension.showCreateProject" ,
6262 title : "show create project page" ,
6363 arguments : [ ] ,
6464 } ;
6565 children . push ( createProject ) ;
6666
67- let rtSetting = new vscode . TreeItem ( "rt-thread setting " , vscode . TreeItemCollapsibleState . None ) ;
67+ let rtSetting = new vscode . TreeItem ( "RT-Thread Setting " , vscode . TreeItemCollapsibleState . None ) ;
6868 rtSetting . iconPath = new vscode . ThemeIcon ( "settings-gear" ) ;
69- rtSetting . label = "rt-thread setting " ;
69+ rtSetting . label = "RT-Thread Setting " ;
7070 rtSetting . command = {
7171 command : "extension.showSetting" ,
7272 title : "show rt-thread setting page" ,
@@ -82,32 +82,43 @@ class CmdTreeDataProvider implements vscode.TreeDataProvider<vscode.TreeItem> {
8282 children . push ( item ) ;
8383 } ;
8484
85+ let analyze = new vscode . TreeItem ( "Symbolic Analysis" , vscode . TreeItemCollapsibleState . None ) ;
86+ analyze . iconPath = new vscode . ThemeIcon ( "search-fuzzy" ) ;
87+ analyze . label = "Symbolic Analysis" ;
88+ analyze . command = {
89+ command : "extension.showAnalyze" ,
90+ title : "show symbolic analysis page" ,
91+ arguments : [ ] ,
92+ } ;
93+ children . push ( analyze ) ;
94+
8595 let about = new vscode . TreeItem ( "About" , vscode . TreeItemCollapsibleState . None ) ;
8696 about . iconPath = new vscode . ThemeIcon ( "info" ) ;
8797 about . label = "About" ;
8898 about . command = {
8999 command : "extension.showAbout" ,
90100 title : "show about page" ,
91101 arguments : [ ] ,
92- }
102+ } ;
93103 children . push ( about ) ;
94104
105+
95106 return children ;
96107 } else {
97108 let children :any = [ ] ;
98109
99110 const kconfig = vscode . extensions . getExtension ( 'rt-thread.rt-thread-kconfig' ) ;
100111
101112 for ( const [ key , value ] of Object . entries ( cmds ) ) {
102- if ( element . label == value . label ) {
113+ if ( element . label === value . label ) {
103114 for ( const cmdItem of value . subcmds ) {
104115 let item = new vscode . TreeItem ( cmdItem . name ) ;
105116 item . iconPath = new vscode . ThemeIcon ( cmdItem . iconId ) ;
106- if ( cmdItem . name == 'menuconfig' && kconfig != undefined ) {
117+ if ( cmdItem . name === 'menuconfig' && kconfig != = undefined ) {
107118 item . command = {
108119 command : "rt-thread-kconfig.menuconfig.windows" ,
109120 title : cmdItem . cmd . title
110- }
121+ } ;
111122 }
112123 else {
113124 item . command = {
@@ -184,11 +195,11 @@ class GroupsDataProvider implements vscode.TreeDataProvider<ProjectTreeItem> {
184195 if ( treeElement ) {
185196 if ( treeElement . length > 0 ) {
186197 }
187- else if ( element . contextType == "project_folder" ) {
198+ else if ( element . contextType === "project_folder" ) {
188199 listFolderTreeItem ( element ) ;
189200 }
190201 }
191- else if ( element . contextType == "project_folder" ) {
202+ else if ( element . contextType === "project_folder" ) {
192203 listFolderTreeItem ( element ) ;
193204 }
194205 children = element . children ;
@@ -235,11 +246,11 @@ class ProjectFilesDataProvider implements vscode.TreeDataProvider<ProjectTreeIte
235246 if ( treeElement ) {
236247 if ( treeElement . length > 0 ) {
237248 }
238- else if ( element . contextType == "project_folder" ) {
249+ else if ( element . contextType === "project_folder" ) {
239250 listFolderTreeItem ( element ) ;
240251 }
241252 }
242- else if ( element . contextType == "project_folder" ) {
253+ else if ( element . contextType === "project_folder" ) {
243254 listFolderTreeItem ( element ) ;
244255 }
245256 children = element . children ;
@@ -349,3 +360,4 @@ export function initDockView(context: vscode.ExtensionContext) {
349360 const treeDataprovider = new CmdTreeDataProvider ( ) ;
350361 context . subscriptions . push ( vscode . window . registerTreeDataProvider ( "treeId" , treeDataprovider ) ) ;
351362}
363+
0 commit comments