Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
84501959
V
vscode
项目概览
掘金者说
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
84501959
编写于
11月 29, 2018
作者:
J
Joao Moreno
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
tree: cleanup null vs undefined
上级
0c96049d
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
66 addition
and
64 deletion
+66
-64
src/vs/base/browser/ui/tree/abstractTree.ts
src/vs/base/browser/ui/tree/abstractTree.ts
+3
-3
src/vs/base/browser/ui/tree/indexTree.ts
src/vs/base/browser/ui/tree/indexTree.ts
+2
-1
src/vs/base/browser/ui/tree/indexTreeModel.ts
src/vs/base/browser/ui/tree/indexTreeModel.ts
+24
-23
src/vs/base/browser/ui/tree/objectTree.ts
src/vs/base/browser/ui/tree/objectTree.ts
+2
-2
src/vs/base/browser/ui/tree/objectTreeModel.ts
src/vs/base/browser/ui/tree/objectTreeModel.ts
+12
-12
src/vs/base/browser/ui/tree/tree.ts
src/vs/base/browser/ui/tree/tree.ts
+4
-4
src/vs/base/test/browser/ui/tree/indexTreeModel.test.ts
src/vs/base/test/browser/ui/tree/indexTreeModel.test.ts
+19
-19
未找到文件。
src/vs/base/browser/ui/tree/abstractTree.ts
浏览文件 @
84501959
...
...
@@ -288,15 +288,15 @@ export abstract class AbstractTree<T, TFilterData, TRef> implements IDisposable
// Tree navigation
getParentElement
(
location
:
TRef
|
null
=
null
):
T
|
null
{
getParentElement
(
location
:
TRef
):
T
{
return
this
.
model
.
getParentElement
(
location
);
}
getFirstElementChild
(
location
:
TRef
|
null
=
null
):
T
|
null
{
getFirstElementChild
(
location
:
TRef
):
T
|
undefined
{
return
this
.
model
.
getFirstElementChild
(
location
);
}
getLastElementAncestor
(
location
:
TRef
|
null
=
null
):
T
|
null
{
getLastElementAncestor
(
location
:
TRef
):
T
|
undefined
{
return
this
.
model
.
getLastElementAncestor
(
location
);
}
...
...
src/vs/base/browser/ui/tree/indexTree.ts
浏览文件 @
84501959
...
...
@@ -23,6 +23,7 @@ export class IndexTree<T, TFilterData = void> extends AbstractTree<T, TFilterDat
container
:
HTMLElement
,
delegate
:
IListVirtualDelegate
<
T
>
,
renderers
:
ITreeRenderer
<
any
/* TODO@joao */
,
TFilterData
,
any
>
[],
private
rootElement
:
T
,
options
:
IIndexTreeOptions
<
T
,
TFilterData
>
=
{}
)
{
super
(
container
,
delegate
,
renderers
,
options
);
...
...
@@ -33,6 +34,6 @@ export class IndexTree<T, TFilterData = void> extends AbstractTree<T, TFilterDat
}
protected
createModel
(
view
:
ISpliceable
<
ITreeNode
<
T
,
TFilterData
>>
,
options
:
IIndexTreeOptions
<
T
,
TFilterData
>
):
ITreeModel
<
T
,
TFilterData
,
number
[]
>
{
return
new
IndexTreeModel
(
view
,
options
);
return
new
IndexTreeModel
(
view
,
this
.
rootElement
,
options
);
}
}
\ No newline at end of file
src/vs/base/browser/ui/tree/indexTreeModel.ts
浏览文件 @
84501959
...
...
@@ -43,20 +43,9 @@ export interface IIndexTreeModelOptions<T, TFilterData> {
filter
?:
ITreeFilter
<
T
,
TFilterData
>
;
}
export
class
IndexTreeModel
<
T
,
TFilterData
=
void
>
implements
ITreeModel
<
T
,
TFilterData
,
number
[]
>
{
private
root
:
IMutableTreeNode
<
T
,
TFilterData
>
=
{
parent
:
undefined
,
element
:
undefined
!
,
children
:
[],
depth
:
0
,
collapsible
:
false
,
collapsed
:
false
,
renderNodeCount
:
0
,
visible
:
true
,
filterData
:
undefined
};
export
class
IndexTreeModel
<
T
extends
Exclude
<
any
,
undefined
>
,
TFilterData
=
void
>
implements
ITreeModel
<
T
,
TFilterData
,
number
[]
>
{
private
root
:
IMutableTreeNode
<
T
,
TFilterData
>
;
private
eventBufferer
=
new
EventBufferer
();
private
_onDidChangeCollapseState
=
new
Emitter
<
ITreeNode
<
T
,
TFilterData
>>
();
...
...
@@ -68,9 +57,21 @@ export class IndexTreeModel<T, TFilterData = void> implements ITreeModel<T, TFil
private
collapseByDefault
:
boolean
;
private
filter
?:
ITreeFilter
<
T
,
TFilterData
>
;
constructor
(
private
list
:
ISpliceable
<
ITreeNode
<
T
,
TFilterData
>>
,
options
:
IIndexTreeModelOptions
<
T
,
TFilterData
>
=
{})
{
constructor
(
private
list
:
ISpliceable
<
ITreeNode
<
T
,
TFilterData
>>
,
rootElement
:
T
,
options
:
IIndexTreeModelOptions
<
T
,
TFilterData
>
=
{})
{
this
.
collapseByDefault
=
typeof
options
.
collapseByDefault
===
'
undefined
'
?
false
:
options
.
collapseByDefault
;
this
.
filter
=
options
.
filter
;
this
.
root
=
{
parent
:
undefined
,
element
:
rootElement
,
children
:
[],
depth
:
0
,
collapsible
:
false
,
collapsed
:
false
,
renderNodeCount
:
0
,
visible
:
true
,
filterData
:
undefined
};
}
splice
(
...
...
@@ -353,7 +354,7 @@ export class IndexTreeModel<T, TFilterData = void> implements ITreeModel<T, TFil
}
// cheap
private
getTreeNode
(
location
:
number
[]
|
null
,
node
:
IMutableTreeNode
<
T
,
TFilterData
>
=
this
.
root
):
IMutableTreeNode
<
T
,
TFilterData
>
{
private
getTreeNode
(
location
:
number
[],
node
:
IMutableTreeNode
<
T
,
TFilterData
>
=
this
.
root
):
IMutableTreeNode
<
T
,
TFilterData
>
{
if
(
!
location
||
location
.
length
===
0
)
{
return
node
;
}
...
...
@@ -418,7 +419,7 @@ export class IndexTreeModel<T, TFilterData = void> implements ITreeModel<T, TFil
return
location
.
reverse
();
}
getParentNodeLocation
(
location
:
number
[]):
number
[]
|
null
{
getParentNodeLocation
(
location
:
number
[]):
number
[]
{
if
(
location
.
length
<=
1
)
{
return
[];
}
...
...
@@ -426,33 +427,33 @@ export class IndexTreeModel<T, TFilterData = void> implements ITreeModel<T, TFil
return
tail2
(
location
)[
0
];
}
getParentElement
(
location
:
number
[]):
T
|
null
{
getParentElement
(
location
:
number
[]):
T
{
const
parentLocation
=
this
.
getParentNodeLocation
(
location
);
const
node
=
this
.
getTreeNode
(
parentLocation
);
return
node
===
this
.
root
?
null
:
node
.
element
;
return
node
.
element
;
}
getFirstElementChild
(
location
:
number
[]):
T
|
null
{
getFirstElementChild
(
location
:
number
[]):
T
|
undefined
{
const
node
=
this
.
getTreeNode
(
location
);
if
(
node
.
children
.
length
===
0
)
{
return
null
;
return
undefined
;
}
return
node
.
children
[
0
].
element
;
}
getLastElementAncestor
(
location
:
number
[]):
T
|
null
{
getLastElementAncestor
(
location
:
number
[]):
T
|
undefined
{
const
node
=
this
.
getTreeNode
(
location
);
if
(
node
.
children
.
length
===
0
)
{
return
null
;
return
undefined
;
}
return
this
.
_getLastElementAncestor
(
node
);
}
private
_getLastElementAncestor
(
node
:
ITreeNode
<
T
,
TFilterData
>
):
T
|
null
{
private
_getLastElementAncestor
(
node
:
ITreeNode
<
T
,
TFilterData
>
):
T
{
if
(
node
.
children
.
length
===
0
)
{
return
node
.
element
;
}
...
...
src/vs/base/browser/ui/tree/objectTree.ts
浏览文件 @
84501959
...
...
@@ -32,11 +32,11 @@ export class ObjectTree<T extends NonNullable<any>, TFilterData = void> extends
children
?:
ISequence
<
ITreeElement
<
T
>>
,
onDidCreateNode
?:
(
node
:
ITreeNode
<
T
,
TFilterData
>
)
=>
void
,
onDidDeleteNode
?:
(
node
:
ITreeNode
<
T
,
TFilterData
>
)
=>
void
):
Iterator
<
ITreeElement
<
T
>>
{
):
Iterator
<
ITreeElement
<
T
|
null
>>
{
return
this
.
model
.
setChildren
(
element
,
children
,
onDidCreateNode
,
onDidDeleteNode
);
}
protected
createModel
(
view
:
ISpliceable
<
ITreeNode
<
T
,
TFilterData
>>
,
options
:
IObjectTreeOptions
<
T
,
TFilterData
>
):
ITreeModel
<
T
,
TFilterData
,
T
>
{
protected
createModel
(
view
:
ISpliceable
<
ITreeNode
<
T
,
TFilterData
>>
,
options
:
IObjectTreeOptions
<
T
,
TFilterData
>
):
ITreeModel
<
T
|
null
,
TFilterData
,
T
|
null
>
{
return
new
ObjectTreeModel
(
view
,
options
);
}
}
\ No newline at end of file
src/vs/base/browser/ui/tree/objectTreeModel.ts
浏览文件 @
84501959
...
...
@@ -11,10 +11,10 @@ import { ITreeModel, ITreeNode, ITreeElement } from 'vs/base/browser/ui/tree/tre
export
interface
IObjectTreeModelOptions
<
T
,
TFilterData
>
extends
IIndexTreeModelOptions
<
T
,
TFilterData
>
{
}
export
class
ObjectTreeModel
<
T
extends
NonNullable
<
any
>
,
TFilterData
=
void
>
implements
ITreeModel
<
T
,
TFilterData
,
T
>
{
export
class
ObjectTreeModel
<
T
extends
NonNullable
<
any
>
,
TFilterData
extends
NonNullable
<
any
>
=
void
>
implements
ITreeModel
<
T
|
null
,
TFilterData
,
T
|
null
>
{
private
model
:
IndexTreeModel
<
T
,
TFilterData
>
;
private
nodes
=
new
Map
<
T
,
ITreeNode
<
T
,
TFilterData
>>
();
private
model
:
IndexTreeModel
<
T
|
null
,
TFilterData
>
;
private
nodes
=
new
Map
<
T
|
null
,
ITreeNode
<
T
,
TFilterData
>>
();
readonly
onDidChangeCollapseState
:
Event
<
ITreeNode
<
T
,
TFilterData
>>
;
readonly
onDidChangeRenderNodeCount
:
Event
<
ITreeNode
<
T
,
TFilterData
>>
;
...
...
@@ -22,9 +22,9 @@ export class ObjectTreeModel<T extends NonNullable<any>, TFilterData = void> imp
get
size
():
number
{
return
this
.
nodes
.
size
;
}
constructor
(
list
:
ISpliceable
<
ITreeNode
<
T
,
TFilterData
>>
,
options
:
IObjectTreeModelOptions
<
T
,
TFilterData
>
=
{})
{
this
.
model
=
new
IndexTreeModel
(
list
,
options
);
this
.
onDidChangeCollapseState
=
this
.
model
.
onDidChangeCollapseState
;
this
.
onDidChangeRenderNodeCount
=
this
.
model
.
onDidChangeRenderNodeCount
;
this
.
model
=
new
IndexTreeModel
(
list
,
null
,
options
);
this
.
onDidChangeCollapseState
=
this
.
model
.
onDidChangeCollapseState
as
Event
<
ITreeNode
<
T
,
TFilterData
>>
;
this
.
onDidChangeRenderNodeCount
=
this
.
model
.
onDidChangeRenderNodeCount
as
Event
<
ITreeNode
<
T
,
TFilterData
>>
;
}
setChildren
(
...
...
@@ -32,9 +32,9 @@ export class ObjectTreeModel<T extends NonNullable<any>, TFilterData = void> imp
children
:
ISequence
<
ITreeElement
<
T
>>
|
undefined
,
onDidCreateNode
?:
(
node
:
ITreeNode
<
T
,
TFilterData
>
)
=>
void
,
onDidDeleteNode
?:
(
node
:
ITreeNode
<
T
,
TFilterData
>
)
=>
void
):
Iterator
<
ITreeElement
<
T
>>
{
):
Iterator
<
ITreeElement
<
T
|
null
>>
{
const
location
=
this
.
getElementLocation
(
element
);
const
insertedElements
=
new
Set
<
T
>
();
const
insertedElements
=
new
Set
<
T
|
null
>
();
const
_onDidCreateNode
=
(
node
:
ITreeNode
<
T
,
TFilterData
>
)
=>
{
insertedElements
.
add
(
node
.
element
);
...
...
@@ -64,7 +64,7 @@ export class ObjectTreeModel<T extends NonNullable<any>, TFilterData = void> imp
);
}
private
preserveCollapseState
(
elements
:
ISequence
<
ITreeElement
<
T
>>
|
undefined
):
ISequence
<
ITreeElement
<
T
>>
{
private
preserveCollapseState
(
elements
:
ISequence
<
ITreeElement
<
T
|
null
>>
|
undefined
):
ISequence
<
ITreeElement
<
T
|
null
>>
{
const
iterator
=
elements
?
getSequenceIterator
(
elements
)
:
Iterator
.
empty
<
ITreeElement
<
T
>>
();
return
Iterator
.
map
(
iterator
,
treeElement
=>
{
...
...
@@ -91,12 +91,12 @@ export class ObjectTreeModel<T extends NonNullable<any>, TFilterData = void> imp
return
this
.
model
.
getParentElement
(
location
);
}
getFirstElementChild
(
ref
:
T
|
null
=
null
):
T
|
null
{
getFirstElementChild
(
ref
:
T
|
null
=
null
):
T
|
null
|
undefined
{
const
location
=
this
.
getElementLocation
(
ref
);
return
this
.
model
.
getFirstElementChild
(
location
);
}
getLastElementAncestor
(
ref
:
T
|
null
=
null
):
T
|
null
{
getLastElementAncestor
(
ref
:
T
|
null
=
null
):
T
|
null
|
undefined
{
const
location
=
this
.
getElementLocation
(
ref
);
return
this
.
model
.
getLastElementAncestor
(
location
);
}
...
...
@@ -129,7 +129,7 @@ export class ObjectTreeModel<T extends NonNullable<any>, TFilterData = void> imp
this
.
model
.
refilter
();
}
getNode
(
element
:
T
|
null
=
null
):
ITreeNode
<
T
,
TFilterData
>
{
getNode
(
element
:
T
|
null
=
null
):
ITreeNode
<
T
|
null
,
TFilterData
>
{
const
location
=
this
.
getElementLocation
(
element
);
return
this
.
model
.
getNode
(
location
);
}
...
...
src/vs/base/browser/ui/tree/tree.ts
浏览文件 @
84501959
...
...
@@ -92,11 +92,11 @@ export interface ITreeModel<T, TFilterData, TRef> {
getListIndex
(
location
:
TRef
):
number
;
getNode
(
location
?:
TRef
):
ITreeNode
<
T
,
any
>
;
getNodeLocation
(
node
:
ITreeNode
<
T
,
any
>
):
TRef
;
getParentNodeLocation
(
location
:
TRef
):
TRef
|
null
;
getParentNodeLocation
(
location
:
TRef
):
TRef
;
getParentElement
(
location
:
TRef
|
null
):
T
|
null
;
getFirstElementChild
(
location
:
TRef
|
null
):
T
|
null
;
getLastElementAncestor
(
location
:
TRef
|
null
):
T
|
null
;
getParentElement
(
location
:
TRef
):
T
;
getFirstElementChild
(
location
:
TRef
):
T
|
undefined
;
getLastElementAncestor
(
location
:
TRef
):
T
|
undefined
;
isCollapsed
(
location
:
TRef
):
boolean
;
setCollapsed
(
location
:
TRef
,
collapsed
:
boolean
):
boolean
;
...
...
src/vs/base/test/browser/ui/tree/indexTreeModel.test.ts
浏览文件 @
84501959
...
...
@@ -25,14 +25,14 @@ suite('IndexTreeModel', function () {
test
(
'
ctor
'
,
()
=>
{
const
list
:
ITreeNode
<
number
>
[]
=
[];
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
));
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
)
,
-
1
);
assert
(
model
);
assert
.
equal
(
list
.
length
,
0
);
});
test
(
'
insert
'
,
()
=>
{
const
list
:
ITreeNode
<
number
>
[]
=
[];
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
));
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
)
,
-
1
);
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
element
:
0
},
...
...
@@ -54,7 +54,7 @@ suite('IndexTreeModel', function () {
test
(
'
deep insert
'
,
function
()
{
const
list
:
ITreeNode
<
number
>
[]
=
[];
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
));
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
)
,
-
1
);
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -91,7 +91,7 @@ suite('IndexTreeModel', function () {
test
(
'
deep insert collapsed
'
,
function
()
{
const
list
:
ITreeNode
<
number
>
[]
=
[];
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
));
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
)
,
-
1
);
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -119,7 +119,7 @@ suite('IndexTreeModel', function () {
test
(
'
delete
'
,
()
=>
{
const
list
:
ITreeNode
<
number
>
[]
=
[];
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
));
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
)
,
-
1
);
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
element
:
0
},
...
...
@@ -144,7 +144,7 @@ suite('IndexTreeModel', function () {
test
(
'
nested delete
'
,
function
()
{
const
list
:
ITreeNode
<
number
>
[]
=
[];
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
));
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
)
,
-
1
);
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -178,7 +178,7 @@ suite('IndexTreeModel', function () {
test
(
'
deep delete
'
,
function
()
{
const
list
:
ITreeNode
<
number
>
[]
=
[];
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
));
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
)
,
-
1
);
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -206,7 +206,7 @@ suite('IndexTreeModel', function () {
test
(
'
hidden delete
'
,
function
()
{
const
list
:
ITreeNode
<
number
>
[]
=
[];
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
));
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
)
,
-
1
);
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -231,7 +231,7 @@ suite('IndexTreeModel', function () {
test
(
'
collapse
'
,
()
=>
{
const
list
:
ITreeNode
<
number
>
[]
=
[];
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
));
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
)
,
-
1
);
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -262,7 +262,7 @@ suite('IndexTreeModel', function () {
test
(
'
expand
'
,
()
=>
{
const
list
:
ITreeNode
<
number
>
[]
=
[];
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
));
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
)
,
-
1
);
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -302,7 +302,7 @@ suite('IndexTreeModel', function () {
test
(
'
collapse should recursively adjust visible count
'
,
function
()
{
const
list
:
ITreeNode
<
number
>
[]
=
[];
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
));
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
)
,
-
1
);
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -341,7 +341,7 @@ suite('IndexTreeModel', function () {
}
};
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
),
{
filter
});
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
),
-
1
,
{
filter
});
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -375,7 +375,7 @@ suite('IndexTreeModel', function () {
}
};
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
),
{
filter
});
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
),
-
1
,
{
filter
});
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -398,7 +398,7 @@ suite('IndexTreeModel', function () {
}
};
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
),
{
filter
});
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
),
-
1
,
{
filter
});
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -437,7 +437,7 @@ suite('IndexTreeModel', function () {
}
};
const
model
=
new
IndexTreeModel
<
string
>
(
toSpliceable
(
list
),
{
filter
});
const
model
=
new
IndexTreeModel
<
string
>
(
toSpliceable
(
list
),
'
root
'
,
{
filter
});
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -483,7 +483,7 @@ suite('IndexTreeModel', function () {
}
};
const
model
=
new
IndexTreeModel
<
string
>
(
toSpliceable
(
list
),
{
filter
});
const
model
=
new
IndexTreeModel
<
string
>
(
toSpliceable
(
list
),
'
root
'
,
{
filter
});
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -529,7 +529,7 @@ suite('IndexTreeModel', function () {
}
};
const
model
=
new
IndexTreeModel
<
string
>
(
toSpliceable
(
list
),
{
filter
});
const
model
=
new
IndexTreeModel
<
string
>
(
toSpliceable
(
list
),
'
root
'
,
{
filter
});
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -577,7 +577,7 @@ suite('IndexTreeModel', function () {
test
(
'
simple
'
,
function
()
{
const
list
:
ITreeNode
<
number
>
[]
=
[];
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
));
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
)
,
-
1
);
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
@@ -607,7 +607,7 @@ suite('IndexTreeModel', function () {
}
};
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
),
{
filter
});
const
model
=
new
IndexTreeModel
<
number
>
(
toSpliceable
(
list
),
-
1
,
{
filter
});
model
.
splice
([
0
],
0
,
Iterator
.
fromArray
([
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录