Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
40eb4cfa
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,发现更多精彩内容 >>
提交
40eb4cfa
编写于
2月 16, 2016
作者:
I
isidor
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
errorList: minor polish
上级
fbc63d1b
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
26 addition
and
40 deletion
+26
-40
src/vs/workbench/parts/errorList/browser/errorList.contribution.ts
...rkbench/parts/errorList/browser/errorList.contribution.ts
+8
-9
src/vs/workbench/parts/errorList/browser/errorList.ts
src/vs/workbench/parts/errorList/browser/errorList.ts
+18
-31
未找到文件。
src/vs/workbench/parts/errorList/browser/errorList.contribution.ts
浏览文件 @
40eb4cfa
...
...
@@ -4,16 +4,16 @@
*--------------------------------------------------------------------------------------------*/
import
nls
=
require
(
'
vs/nls
'
);
import
{
Action
}
from
'
vs/base/common/actions
'
;
import
{
TPromise
}
from
'
vs/base/common/winjs.base
'
;
import
{
KeyMod
,
KeyCode
}
from
'
vs/base/common/keyCodes
'
;
import
platform
=
require
(
'
vs/platform/platform
'
);
import
{
SyncActionDescriptor
}
from
'
vs/platform/actions/common/actions
'
;
import
{
IWorkbenchActionRegistry
,
Extensions
as
ActionExtensions
}
from
'
vs/workbench/common/actionRegistry
'
;
import
panel
=
require
(
'
vs/workbench/browser/panel
'
);
import
{
ERROR_LIST_PANEL_ID
}
from
'
vs/workbench/parts/errorList/browser/errorListConstants
'
;
import
{
Action
}
from
'
vs/base/common/actions
'
;
import
{
IPartService
}
from
'
vs/workbench/services/part/common/partService
'
;
import
{
IPanelService
}
from
'
vs/workbench/services/panel/common/panelService
'
;
import
{
TPromise
}
from
'
vs/base/common/winjs.base
'
;
import
{
IWorkbenchActionRegistry
,
Extensions
as
ActionExtensions
}
from
'
vs/workbench/common/actionRegistry
'
;
import
{
SyncActionDescriptor
}
from
'
vs/platform/actions/common/actions
'
;
import
{
KeyMod
,
KeyCode
}
from
'
vs/base/common/keyCodes
'
;
import
{
ERROR_LIST_PANEL_ID
}
from
'
vs/workbench/parts/errorList/browser/errorListConstants
'
;
import
{
IPartService
}
from
'
vs/workbench/services/part/common/partService
'
;
import
{
IPanelService
}
from
'
vs/workbench/services/panel/common/panelService
'
;
class
ToggleErrorListAction
extends
Action
{
...
...
@@ -37,7 +37,6 @@ class ToggleErrorListAction extends Action {
return
this
.
panelService
.
openPanel
(
ERROR_LIST_PANEL_ID
,
true
);
}
}
// register panel
...
...
src/vs/workbench/parts/errorList/browser/errorList.ts
浏览文件 @
40eb4cfa
...
...
@@ -5,33 +5,28 @@
import
'
vs/css!./media/errorList
'
;
import
{
TPromise
}
from
'
vs/base/common/winjs.base
'
;
import
*
as
errors
from
'
vs/base/common/errors
'
;
import
*
as
paths
from
'
vs/base/common/paths
'
;
import
lifecycle
=
require
(
'
vs/base/common/lifecycle
'
);
import
{
Panel
}
from
'
vs/workbench/browser/panel
'
;
import
{
ITelemetryService
}
from
'
vs/platform/telemetry/common/telemetry
'
;
import
Severity
from
'
vs/base/common/severity
'
;
import
builder
=
require
(
'
vs/base/browser/builder
'
);
import
{
ERROR_LIST_PANEL_ID
}
from
'
vs/workbench/parts/errorList/browser/errorListConstants
'
;
import
{
IMarkerService
,
IMarker
}
from
'
vs/platform/markers/common/markers
'
;
import
{
append
,
addClass
,
emmet
as
$
}
from
'
vs/base/browser/dom
'
;
import
{
List
}
from
'
vs/base/browser/ui/list/listWidget
'
;
import
{
IRenderer
,
IDelegate
}
from
'
vs/base/browser/ui/list/list
'
;
import
{
append
,
addClass
,
emmet
as
$
}
from
'
vs/base/browser/dom
'
;
import
Severity
from
'
vs/base/common/severit
y
'
;
import
{
IWorkbenchEditorService
}
from
'
vs/workbench/services/editor/common/editorService
'
;
import
*
as
errors
from
'
vs/base/common/error
s
'
;
import
*
as
paths
from
'
vs/base/common/paths
'
;
import
{
IMarkerService
,
IMarker
}
from
'
vs/platform/markers/common/markers
'
;
import
{
ITelemetryService
}
from
'
vs/platform/telemetry/common/telemetr
y
'
;
import
{
Panel
}
from
'
vs/workbench/browser/panel
'
;
import
{
ERROR_LIST_PANEL_ID
}
from
'
vs/workbench/parts/errorList/browser/errorListConstant
s
'
;
import
{
IWorkbenchEditorService
}
from
'
vs/workbench/services/editor/common/editorService
'
;
interface
IMarkerTemplateData
{
icon
:
HTMLElement
;
label
:
HTMLElement
;
location
:
HTMLElement
;
}
class
Renderer
implements
IRenderer
<
IMarker
,
IMarkerTemplateData
>
{
constructor
()
{
}
get
templateId
():
string
{
return
'
errorListItem
'
;
}
...
...
@@ -41,7 +36,6 @@ class Renderer implements IRenderer<IMarker, IMarkerTemplateData> {
data
.
icon
=
append
(
container
,
$
(
'
.icon
'
));
data
.
label
=
append
(
container
,
$
(
'
span.label
'
));
data
.
location
=
append
(
container
,
$
(
'
.location
'
));
return
data
;
...
...
@@ -54,8 +48,7 @@ class Renderer implements IRenderer<IMarker, IMarkerTemplateData> {
renderElement
(
element
:
IMarker
,
index
:
number
,
templateData
:
IMarkerTemplateData
):
void
{
templateData
.
icon
.
className
=
'
icon
'
+
Renderer
.
iconClassNameFor
(
element
);
templateData
.
label
.
textContent
=
element
.
message
;
templateData
.
location
.
textContent
=
`
${
paths
.
basename
(
element
.
resource
.
fsPath
)}
:
${
element
.
startLineNumber
}
:
${
element
.
startColumn
}
`
;
templateData
.
location
.
textContent
=
`
${
paths
.
basename
(
element
.
resource
.
fsPath
)
}
:
${
element
.
startLineNumber
}
:
${
element
.
startColumn
}
`
;
}
private
static
iconClassNameFor
(
element
:
IMarker
):
string
{
...
...
@@ -73,14 +66,12 @@ class Renderer implements IRenderer<IMarker, IMarkerTemplateData> {
}
}
const
HEIGHT
=
22
;
class
Delegate
implements
IDelegate
<
IMarker
>
{
constructor
(
private
listProvider
:
()
=>
List
<
IMarker
>
)
{
}
getHeight
(
element
:
IMarker
):
number
{
return
HEIGHT
;
return
22
;
}
getTemplateId
(
element
:
IMarker
):
string
{
...
...
@@ -93,17 +84,13 @@ export class ErrorList extends Panel {
private
toDispose
:
lifecycle
.
IDisposable
[];
private
list
:
List
<
IMarker
>
;
private
delegate
:
IDelegate
<
IMarker
>
;
private
markerService
:
IMarkerService
;
private
_editorService
:
IWorkbenchEditorService
;
constructor
(
@
IMarkerService
markerService
:
IMarkerService
,
@
I
TelemetryService
telemetryService
:
ITelemetry
Service
,
@
I
WorkbenchEditorService
editorService
:
IWorkbenchEditor
Service
@
IMarkerService
private
markerService
:
IMarkerService
,
@
I
WorkbenchEditorService
private
editorService
:
IWorkbenchEditor
Service
,
@
I
TelemetryService
telemetryService
:
ITelemetry
Service
)
{
super
(
ERROR_LIST_PANEL_ID
,
telemetryService
);
this
.
markerService
=
markerService
;
this
.
_editorService
=
editorService
;
this
.
toDispose
=
[];
}
...
...
@@ -119,14 +106,14 @@ export class ErrorList extends Panel {
this
.
list
=
new
List
(
parent
.
getHTMLElement
(),
this
.
delegate
,
[
renderer
]);
this
.
toDispose
.
push
(
this
.
markerService
.
onMarkerChanged
((
changedResources
)
=>
{
this
.
_
onMarkersChanged
();
this
.
onMarkersChanged
();
}));
this
.
toDispose
.
push
(
this
.
list
.
onSelectionChange
((
e
)
=>
{
if
(
!
e
.
elements
.
length
)
{
return
;
}
let
el
=
e
.
elements
[
0
];
this
.
_
editorService
.
openEditor
({
this
.
editorService
.
openEditor
({
resource
:
el
.
resource
,
options
:
{
selection
:
{
...
...
@@ -138,12 +125,12 @@ export class ErrorList extends Panel {
}
}).
done
(
null
,
errors
.
onUnexpectedError
);
}));
this
.
_
onMarkersChanged
();
this
.
onMarkersChanged
();
return
TPromise
.
as
(
null
);
}
private
_
onMarkersChanged
():
void
{
private
onMarkersChanged
():
void
{
let
allMarkers
=
this
.
markerService
.
read
().
slice
(
0
);
allMarkers
.
sort
((
a
,
b
)
=>
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录