Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
a4428ce8
V
vscode
项目概览
xxadev
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a4428ce8
编写于
5月 11, 2016
作者:
B
Benjamin Pasero
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
support group rename and events
上级
573ffec1
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
36 addition
and
2 deletion
+36
-2
src/vs/workbench/common/editor/editorStacksModel.ts
src/vs/workbench/common/editor/editorStacksModel.ts
+19
-1
src/vs/workbench/test/common/editor/editorStacksModel.test.ts
...vs/workbench/test/common/editor/editorStacksModel.test.ts
+17
-1
未找到文件。
src/vs/workbench/common/editor/editorStacksModel.ts
浏览文件 @
a4428ce8
...
@@ -53,6 +53,7 @@ export interface IEditorStacksModel {
...
@@ -53,6 +53,7 @@ export interface IEditorStacksModel {
onGroupClosed
:
Event
<
IEditorGroup
>
;
onGroupClosed
:
Event
<
IEditorGroup
>
;
onGroupActivated
:
Event
<
IEditorGroup
>
;
onGroupActivated
:
Event
<
IEditorGroup
>
;
onGroupMoved
:
Event
<
IEditorGroup
>
;
onGroupMoved
:
Event
<
IEditorGroup
>
;
onGroupRenamed
:
Event
<
IEditorGroup
>
;
groups
:
IEditorGroup
[];
groups
:
IEditorGroup
[];
activeGroup
:
IEditorGroup
;
activeGroup
:
IEditorGroup
;
...
@@ -63,6 +64,8 @@ export interface IEditorStacksModel {
...
@@ -63,6 +64,8 @@ export interface IEditorStacksModel {
// openGroup(label: string): IEditorGroup;
// openGroup(label: string): IEditorGroup;
// renameGroup(group: IEditorGroup, newLabel: string): void
// closeGroup(group: IEditorGroup): void;
// closeGroup(group: IEditorGroup): void;
// closeGroups(except?: IEditorGroup): void;
// closeGroups(except?: IEditorGroup): void;
...
@@ -157,6 +160,10 @@ export class EditorGroup implements IEditorGroup {
...
@@ -157,6 +160,10 @@ export class EditorGroup implements IEditorGroup {
return
this
.
_label
;
return
this
.
_label
;
}
}
public
set
label
(
label
:
string
)
{
this
.
_label
=
label
;
}
public
get
count
():
number
{
public
get
count
():
number
{
return
this
.
editors
.
length
;
return
this
.
editors
.
length
;
}
}
...
@@ -547,6 +554,7 @@ export class EditorStacksModel implements IEditorStacksModel {
...
@@ -547,6 +554,7 @@ export class EditorStacksModel implements IEditorStacksModel {
private
_onGroupClosed
:
Emitter
<
EditorGroup
>
;
private
_onGroupClosed
:
Emitter
<
EditorGroup
>
;
private
_onGroupMoved
:
Emitter
<
EditorGroup
>
;
private
_onGroupMoved
:
Emitter
<
EditorGroup
>
;
private
_onGroupActivated
:
Emitter
<
EditorGroup
>
;
private
_onGroupActivated
:
Emitter
<
EditorGroup
>
;
private
_onGroupRenamed
:
Emitter
<
EditorGroup
>
;
constructor
(
constructor
(
@
IStorageService
private
storageService
:
IStorageService
,
@
IStorageService
private
storageService
:
IStorageService
,
...
@@ -562,8 +570,9 @@ export class EditorStacksModel implements IEditorStacksModel {
...
@@ -562,8 +570,9 @@ export class EditorStacksModel implements IEditorStacksModel {
this
.
_onGroupClosed
=
new
Emitter
<
EditorGroup
>
();
this
.
_onGroupClosed
=
new
Emitter
<
EditorGroup
>
();
this
.
_onGroupActivated
=
new
Emitter
<
EditorGroup
>
();
this
.
_onGroupActivated
=
new
Emitter
<
EditorGroup
>
();
this
.
_onGroupMoved
=
new
Emitter
<
EditorGroup
>
();
this
.
_onGroupMoved
=
new
Emitter
<
EditorGroup
>
();
this
.
_onGroupRenamed
=
new
Emitter
<
EditorGroup
>
();
this
.
toDispose
.
push
(
this
.
_onGroupOpened
,
this
.
_onGroupClosed
,
this
.
_onGroupActivated
,
this
.
_onGroupMoved
);
this
.
toDispose
.
push
(
this
.
_onGroupOpened
,
this
.
_onGroupClosed
,
this
.
_onGroupActivated
,
this
.
_onGroupMoved
,
this
.
_onGroupRenamed
);
this
.
load
();
this
.
load
();
this
.
registerListeners
();
this
.
registerListeners
();
...
@@ -589,6 +598,10 @@ export class EditorStacksModel implements IEditorStacksModel {
...
@@ -589,6 +598,10 @@ export class EditorStacksModel implements IEditorStacksModel {
return
this
.
_onGroupMoved
.
event
;
return
this
.
_onGroupMoved
.
event
;
}
}
public
get
onGroupRenamed
():
Event
<
EditorGroup
>
{
return
this
.
_onGroupRenamed
.
event
;
}
public
get
groups
():
EditorGroup
[]
{
public
get
groups
():
EditorGroup
[]
{
return
this
.
_groups
.
slice
(
0
);
return
this
.
_groups
.
slice
(
0
);
}
}
...
@@ -625,6 +638,11 @@ export class EditorStacksModel implements IEditorStacksModel {
...
@@ -625,6 +638,11 @@ export class EditorStacksModel implements IEditorStacksModel {
return
group
;
return
group
;
}
}
public
renameGroup
(
group
:
EditorGroup
,
label
:
string
):
void
{
group
.
label
=
label
;
this
.
_onGroupRenamed
.
fire
(
group
);
}
public
closeGroup
(
group
:
EditorGroup
):
void
{
public
closeGroup
(
group
:
EditorGroup
):
void
{
const
index
=
this
.
indexOf
(
group
);
const
index
=
this
.
indexOf
(
group
);
if
(
index
<
0
)
{
if
(
index
<
0
)
{
...
...
src/vs/workbench/test/common/editor/editorStacksModel.test.ts
浏览文件 @
a4428ce8
...
@@ -32,6 +32,7 @@ interface ModelEvents {
...
@@ -32,6 +32,7 @@ interface ModelEvents {
activated
:
IEditorGroup
[];
activated
:
IEditorGroup
[];
closed
:
IEditorGroup
[];
closed
:
IEditorGroup
[];
moved
:
IEditorGroup
[];
moved
:
IEditorGroup
[];
renamed
:
IEditorGroup
[];
}
}
interface
GroupEvents
{
interface
GroupEvents
{
...
@@ -48,13 +49,15 @@ function modelListener(model: IEditorStacksModel): ModelEvents {
...
@@ -48,13 +49,15 @@ function modelListener(model: IEditorStacksModel): ModelEvents {
opened
:
[],
opened
:
[],
activated
:
[],
activated
:
[],
closed
:
[],
closed
:
[],
moved
:
[]
moved
:
[],
renamed
:
[]
};
};
model
.
onGroupOpened
(
g
=>
modelEvents
.
opened
.
push
(
g
));
model
.
onGroupOpened
(
g
=>
modelEvents
.
opened
.
push
(
g
));
model
.
onGroupActivated
(
g
=>
modelEvents
.
activated
.
push
(
g
));
model
.
onGroupActivated
(
g
=>
modelEvents
.
activated
.
push
(
g
));
model
.
onGroupClosed
(
g
=>
modelEvents
.
closed
.
push
(
g
));
model
.
onGroupClosed
(
g
=>
modelEvents
.
closed
.
push
(
g
));
model
.
onGroupMoved
(
g
=>
modelEvents
.
moved
.
push
(
g
));
model
.
onGroupMoved
(
g
=>
modelEvents
.
moved
.
push
(
g
));
model
.
onGroupRenamed
(
g
=>
modelEvents
.
renamed
.
push
(
g
));
return
modelEvents
;
return
modelEvents
;
}
}
...
@@ -203,6 +206,19 @@ suite('Editor Stacks Model', () => {
...
@@ -203,6 +206,19 @@ suite('Editor Stacks Model', () => {
const
model
=
create
();
const
model
=
create
();
const
events
=
modelListener
(
model
);
const
events
=
modelListener
(
model
);
model
.
openGroup
(
'
first
'
);
const
group2
=
model
.
openGroup
(
'
second
'
);
model
.
renameGroup
(
group2
,
'
renamed
'
);
assert
.
equal
(
group2
.
label
,
'
renamed
'
);
assert
.
equal
(
group2
,
events
.
renamed
[
0
]);
});
test
(
'
Groups - Rename Group
'
,
function
()
{
const
model
=
create
();
const
events
=
modelListener
(
model
);
const
group1
=
model
.
openGroup
(
'
first
'
);
const
group1
=
model
.
openGroup
(
'
first
'
);
const
group2
=
model
.
openGroup
(
'
second
'
);
const
group2
=
model
.
openGroup
(
'
second
'
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录