Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
3cca0230
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,发现更多精彩内容 >>
提交
3cca0230
编写于
6月 06, 2016
作者:
S
Sandeep Somavarapu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#6679 Support icon inside input box and provide filter icon for filter box
上级
2d33d752
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
66 addition
and
42 deletion
+66
-42
src/vs/base/browser/ui/inputbox/inputBox.css
src/vs/base/browser/ui/inputbox/inputBox.css
+11
-0
src/vs/base/browser/ui/inputbox/inputBox.ts
src/vs/base/browser/ui/inputbox/inputBox.ts
+4
-0
src/vs/workbench/browser/media/workbench.css
src/vs/workbench/browser/media/workbench.css
+6
-2
src/vs/workbench/parts/markers/browser/markersPanel.ts
src/vs/workbench/parts/markers/browser/markersPanel.ts
+1
-0
src/vs/workbench/parts/markers/browser/markersPanelActions.ts
...vs/workbench/parts/markers/browser/markersPanelActions.ts
+7
-34
src/vs/workbench/parts/markers/browser/media/markers.css
src/vs/workbench/parts/markers/browser/media/markers.css
+11
-5
src/vs/workbench/parts/markers/common/markersModel.ts
src/vs/workbench/parts/markers/common/markersModel.ts
+26
-1
未找到文件。
src/vs/base/browser/ui/inputbox/inputBox.css
浏览文件 @
3cca0230
...
...
@@ -35,6 +35,17 @@
position
:
relative
;
width
:
100%
;
height
:
100%
;
display
:
flex
;
justify-content
:
flex-start
;
}
.vs-dark
.monaco-inputbox
>
.wrapper
{
background-color
:
var
(
--input-bgcolor
);
}
.monaco-inputbox
>
.wrapper
.icon
{
width
:
16px
;
height
:
22px
;
}
.monaco-inputbox
>
.wrapper
>
.input
{
...
...
src/vs/base/browser/ui/inputbox/inputBox.ts
浏览文件 @
3cca0230
...
...
@@ -27,6 +27,7 @@ export interface IInputOptions {
validationOptions
?:
IInputValidationOptions
;
flexibleHeight
?:
boolean
;
actions
?:
IAction
[];
iconClass
?:
string
;
}
export
interface
IInputValidator
{
...
...
@@ -96,6 +97,9 @@ export class InputBox extends Widget {
let
tagName
=
this
.
options
.
flexibleHeight
?
'
textarea
'
:
'
input
'
;
let
wrapper
=
dom
.
append
(
this
.
element
,
$
(
'
.wrapper
'
));
if
(
this
.
options
.
iconClass
)
{
dom
.
append
(
wrapper
,
$
(
'
span.icon.
'
+
this
.
options
.
iconClass
));
}
this
.
input
=
<
HTMLInputElement
>
dom
.
append
(
wrapper
,
$
(
tagName
+
'
.input
'
));
this
.
input
.
setAttribute
(
'
autocorrect
'
,
'
off
'
);
this
.
input
.
setAttribute
(
'
autocapitalize
'
,
'
off
'
);
...
...
src/vs/workbench/browser/media/workbench.css
浏览文件 @
3cca0230
...
...
@@ -46,7 +46,11 @@
/* ---------- Dark Theme ---------- */
.vs-dark
.monaco-workbench
{
background-color
:
#252526
;
color
:
#CCC
;
}
.vs-dark
.monaco-workbench
{
--input-bgcolor
:
#3C3C3C
;
background-color
:
#252526
;
color
:
#CCC
;
}
.vs-dark
.monaco-workbench
.monaco-scrollable-element
.shadow.top
{
box-shadow
:
#000
0
6px
6px
-6px
inset
;
}
.vs-dark
.monaco-workbench
.monaco-scrollable-element
.shadow.left
{
box-shadow
:
#000
6px
0
6px
-6px
inset
;
}
...
...
@@ -58,7 +62,7 @@
.vs-dark
.monaco-workbench
input
,
.vs-dark
.monaco-workbench
textarea
{
background-color
:
#3C3C3C
;
background-color
:
var
(
--input-bgcolor
)
;
}
.vs-dark
.monaco-workbench
input
:disabled
{
...
...
src/vs/workbench/parts/markers/browser/markersPanel.ts
浏览文件 @
3cca0230
...
...
@@ -99,6 +99,7 @@ export class MarkersPanel extends Panel {
}
public
refreshPanel
(
updateTitleArea
:
boolean
=
false
):
TPromise
<
any
>
{
this
.
collapseAllAction
.
enabled
=
this
.
markersModel
.
hasFilteredResources
();
this
.
refreshAutoExpanded
();
if
(
updateTitleArea
)
{
this
.
updateTitleArea
();
...
...
src/vs/workbench/parts/markers/browser/markersPanelActions.ts
浏览文件 @
3cca0230
...
...
@@ -5,7 +5,6 @@
import
*
as
DOM
from
'
vs/base/browser/dom
'
;
import
*
as
lifecycle
from
'
vs/base/common/lifecycle
'
;
import
*
as
strings
from
'
vs/base/common/strings
'
;
import
{
IAction
,
Action
}
from
'
vs/base/common/actions
'
;
import
{
BaseActionItem
}
from
'
vs/base/browser/ui/actionbar/actionbar
'
;
import
{
InputBox
}
from
'
vs/base/browser/ui/inputbox/inputBox
'
;
...
...
@@ -36,17 +35,17 @@ export class FilterInputBoxActionItem extends BaseActionItem {
public
render
(
container
:
HTMLElement
):
void
{
DOM
.
addClass
(
container
,
'
markers-panel-action-filter
'
);
var
filterInputBox
Container
=
DOM
.
append
(
container
,
DOM
.
emmet
(
'
.input-box-container
'
));
var
filterInputBox
=
new
InputBox
(
filterInputBoxContainer
,
this
.
contextViewService
,
{
placeholder
:
Messages
.
MARKERS_PANEL_FILTER_PLACEHOLDER
var
filterInputBox
=
new
InputBox
(
container
,
this
.
contextViewService
,
{
placeholder
:
Messages
.
MARKERS_PANEL_FILTER_PLACEHOLDER
,
iconClass
:
'
filterIcon
'
});
filterInputBox
.
value
=
this
.
markersPanel
.
markersModel
.
filterOptions
.
completeValue
;
filterInputBox
.
value
=
this
.
markersPanel
.
markersModel
.
filterOptions
.
filter
;
this
.
toDispose
.
push
(
filterInputBox
.
onDidChange
((
filter
:
string
)
=>
{
this
.
markersPanel
.
markersModel
.
update
(
this
.
prepare
FilterOptions
(
filter
));
this
.
markersPanel
.
markersModel
.
update
(
new
FilterOptions
(
filter
));
this
.
markersPanel
.
refreshPanel
();
}));
this
.
toDispose
.
push
(
DOM
.
addStandardDisposableListener
(
filterInputBoxC
ontainer
,
'
keydown
'
,
this
.
handleKeyboardEvent
));
this
.
toDispose
.
push
(
DOM
.
addStandardDisposableListener
(
filterInputBoxC
ontainer
,
'
keyup
'
,
this
.
handleKeyboardEvent
));
this
.
toDispose
.
push
(
DOM
.
addStandardDisposableListener
(
c
ontainer
,
'
keydown
'
,
this
.
handleKeyboardEvent
));
this
.
toDispose
.
push
(
DOM
.
addStandardDisposableListener
(
c
ontainer
,
'
keyup
'
,
this
.
handleKeyboardEvent
));
}
public
dispose
():
void
{
...
...
@@ -64,30 +63,4 @@ export class FilterInputBoxActionItem extends BaseActionItem {
break
;
}
}
private
prepareFilterOptions
(
filter
:
string
):
FilterOptions
{
let
filterOptions
:
FilterOptions
=
new
FilterOptions
();
filterOptions
.
completeValue
=
filter
;
filter
=
strings
.
trim
(
filter
);
if
(
!
filter
)
{
return
filterOptions
;
}
let
startIndex
=
0
;
if
(
strings
.
startsWith
(
filter
.
toLocaleLowerCase
(),
Messages
.
MARKERS_PANEL_FILTER_ERRORS
))
{
filterOptions
.
filterErrors
=
true
;
startIndex
=
(
Messages
.
MARKERS_PANEL_FILTER_ERRORS
).
length
;
}
if
(
strings
.
startsWith
(
filter
.
toLocaleLowerCase
(),
Messages
.
MARKERS_PANEL_FILTER_WARNINGS
))
{
filterOptions
.
filterWarnings
=
true
;
startIndex
=
(
Messages
.
MARKERS_PANEL_FILTER_WARNINGS
).
length
;
}
if
(
strings
.
startsWith
(
filter
.
toLocaleLowerCase
(),
Messages
.
MARKERS_PANEL_FILTER_INFOS
))
{
filterOptions
.
filterInfos
=
true
;
startIndex
=
(
Messages
.
MARKERS_PANEL_FILTER_INFOS
).
length
;
}
filterOptions
.
filterValue
=
filter
.
substr
(
startIndex
).
trim
();
return
filterOptions
;
}
}
\ No newline at end of file
src/vs/workbench/parts/markers/browser/media/markers.css
浏览文件 @
3cca0230
...
...
@@ -6,15 +6,20 @@
.monaco-action-bar
.action-item.markers-panel-action-filter
{
width
:
400px
;
cursor
:
default
;
margin
:
5
px
10px
0
0
;
margin
:
4
px
10px
0
0
;
}
.monaco-action-bar
.action-item.markers-panel-action-filter
.
input-box-container
{
b
ackground
:
#ddd
;
.monaco-action-bar
.action-item.markers-panel-action-filter
.
monaco-inputbox
{
b
order
:
1px
solid
#ddd
;
}
.vs-dark
.monaco-action-bar
.action-item.markers-panel-action-filter
.input-box-container
{
background
:
none
;
.vs-dark
.monaco-action-bar
.action-item.markers-panel-action-filter
.monaco-inputbox
{
border
:
none
;
}
.monaco-action-bar
.action-item.markers-panel-action-filter
.filterIcon
{
margin
:
2px
0
0
4px
;
background
:
url('filter.svg')
center
center
no-repeat
;
}
.markers-panel
.markers-panel-container
{
...
...
@@ -32,6 +37,7 @@
.markers-panel
.markers-panel-container
.tree-container
{
height
:
100%
;
margin-top
:
2px
;
}
.markers-panel
.markers-panel-container
.tree-container
.markers-panel-tree-entry
{
...
...
src/vs/workbench/parts/markers/common/markersModel.ts
浏览文件 @
3cca0230
...
...
@@ -33,11 +33,36 @@ export class FilterOptions {
public
filterWarnings
:
boolean
=
false
;
public
filterInfos
:
boolean
=
false
;
public
filterValue
:
string
=
''
;
public
completeValue
:
string
=
''
;
public
filter
:
string
=
''
;
constructor
(
filter
:
string
=
''
)
{
if
(
filter
)
{
this
.
parse
(
filter
);
}
}
public
hasActiveFilters
():
boolean
{
return
this
.
filterErrors
||
this
.
filterWarnings
||
this
.
filterInfos
||
!!
this
.
filterValue
;
}
private
parse
(
filter
:
string
)
{
this
.
filter
=
filter
;
filter
=
strings
.
trim
(
filter
);
let
startIndex
=
0
;
if
(
strings
.
startsWith
(
filter
.
toLocaleLowerCase
(),
Messages
.
MARKERS_PANEL_FILTER_ERRORS
))
{
this
.
filterErrors
=
true
;
startIndex
=
(
Messages
.
MARKERS_PANEL_FILTER_ERRORS
).
length
;
}
if
(
strings
.
startsWith
(
filter
.
toLocaleLowerCase
(),
Messages
.
MARKERS_PANEL_FILTER_WARNINGS
))
{
this
.
filterWarnings
=
true
;
startIndex
=
(
Messages
.
MARKERS_PANEL_FILTER_WARNINGS
).
length
;
}
if
(
strings
.
startsWith
(
filter
.
toLocaleLowerCase
(),
Messages
.
MARKERS_PANEL_FILTER_INFOS
))
{
this
.
filterInfos
=
true
;
startIndex
=
(
Messages
.
MARKERS_PANEL_FILTER_INFOS
).
length
;
}
this
.
filterValue
=
filter
.
substr
(
startIndex
).
trim
();
}
}
export
class
MarkersModel
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录