Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
9034b9bd
D
dbeaver
项目概览
suliangchun
/
dbeaver
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dbeaver
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
9034b9bd
编写于
12月 28, 2016
作者:
S
Serge Rider
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#1074 Navigator filter toggle command
上级
427c321a
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
82 addition
and
1 deletion
+82
-1
plugins/org.jkiss.dbeaver.core/plugin.properties
plugins/org.jkiss.dbeaver.core/plugin.properties
+2
-0
plugins/org.jkiss.dbeaver.core/plugin.xml
plugins/org.jkiss.dbeaver.core/plugin.xml
+17
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/actions/ObjectPropertyTester.java
...rc/org/jkiss/dbeaver/ui/actions/ObjectPropertyTester.java
+5
-1
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/actions/navigator/NavigatorHandlerFilterToggle.java
...er/ui/actions/navigator/NavigatorHandlerFilterToggle.java
+58
-0
未找到文件。
plugins/org.jkiss.dbeaver.core/plugin.properties
浏览文件 @
9034b9bd
...
...
@@ -96,6 +96,8 @@ command.org.jkiss.dbeaver.core.object.filter.config.name=Configure filter
command.org.jkiss.dbeaver.core.object.filter.config.description
=
Configure objects filter
command.org.jkiss.dbeaver.core.object.filter.clear.name
=
Clear filter
command.org.jkiss.dbeaver.core.object.filter.clear.description
=
Clear filter settings
command.org.jkiss.dbeaver.core.object.filter.toggle.name
=
Toggle filter
command.org.jkiss.dbeaver.core.object.filter.toggle.description
=
Toggles (enables/disables) defined filter
command.org.jkiss.dbeaver.core.object.filter.add.exclude.name
=
Hide selected object(s)
command.org.jkiss.dbeaver.core.object.filter.add.exclude.description
=
Hide selected object(s)
command.org.jkiss.dbeaver.core.object.filter.add.include.name
=
Show only selected objects
...
...
plugins/org.jkiss.dbeaver.core/plugin.xml
浏览文件 @
9034b9bd
...
...
@@ -225,6 +225,7 @@
<command
id=
"org.jkiss.dbeaver.core.object.filter.add.exclude"
name=
"%command.org.jkiss.dbeaver.core.object.filter.add.exclude.name"
description=
"%command.org.jkiss.dbeaver.core.object.filter.add.exclude.description"
categoryId=
"org.jkiss.dbeaver.core.database"
/>
<command
id=
"org.jkiss.dbeaver.core.object.filter.add.include"
name=
"%command.org.jkiss.dbeaver.core.object.filter.add.include.name"
description=
"%command.org.jkiss.dbeaver.core.object.filter.add.include.description"
categoryId=
"org.jkiss.dbeaver.core.database"
/>
<command
id=
"org.jkiss.dbeaver.core.object.filter.clear"
name=
"%command.org.jkiss.dbeaver.core.object.filter.clear.name"
description=
"%command.org.jkiss.dbeaver.core.object.filter.clear.description"
categoryId=
"org.jkiss.dbeaver.core.database"
/>
<command
id=
"org.jkiss.dbeaver.core.object.filter.toggle"
name=
"%command.org.jkiss.dbeaver.core.object.filter.toggle.name"
description=
"%command.org.jkiss.dbeaver.core.object.filter.toggle.description"
categoryId=
"org.jkiss.dbeaver.core.database"
/>
<command
id=
"org.jkiss.dbeaver.ui.editors.sql.run.statement"
name=
"%command.org.jkiss.dbeaver.ui.editors.sql.run.statement.name"
description=
"%command.org.jkiss.dbeaver.ui.editors.sql.run.statement.description"
categoryId=
"org.jkiss.dbeaver.core.sql"
/>
<command
id=
"org.jkiss.dbeaver.ui.editors.sql.run.statementNew"
name=
"%command.org.jkiss.dbeaver.ui.editors.sql.run.statementNew.name"
description=
"%command.org.jkiss.dbeaver.ui.editors.sql.run.statementNew.description"
categoryId=
"org.jkiss.dbeaver.core.sql"
/>
...
...
@@ -753,6 +754,19 @@
</with>
</enabledWhen>
</handler>
<handler
commandId=
"org.jkiss.dbeaver.core.object.filter.toggle"
class=
"org.jkiss.dbeaver.ui.actions.navigator.NavigatorHandlerFilterToggle"
>
<enabledWhen>
<with
variable=
"selection"
>
<count
value=
"1"
/>
<iterate
operator=
"and"
>
<and>
<instanceof
value=
"org.jkiss.dbeaver.model.navigator.DBNNode"
/>
<test
property=
"org.jkiss.dbeaver.core.object.hasFilter"
value=
"defined"
/>
</and>
</iterate>
</with>
</enabledWhen>
</handler>
<handler
commandId=
"org.jkiss.dbeaver.core.object.filter.add.exclude"
class=
"org.jkiss.dbeaver.ui.actions.navigator.NavigatorHandlerFilterExclude"
>
<enabledWhen>
<with
variable=
"selection"
>
...
...
@@ -1771,6 +1785,9 @@
<command
commandId=
"org.jkiss.dbeaver.core.object.filter.config"
>
<visibleWhen
checkEnabled=
"true"
/>
</command>
<command
commandId=
"org.jkiss.dbeaver.core.object.filter.toggle"
>
<visibleWhen
checkEnabled=
"true"
/>
</command>
<command
commandId=
"org.jkiss.dbeaver.core.object.filter.clear"
>
<visibleWhen
checkEnabled=
"true"
/>
</command>
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/actions/ObjectPropertyTester.java
浏览文件 @
9034b9bd
...
...
@@ -180,7 +180,11 @@ public class ObjectPropertyTester extends PropertyTester
}
if
(
node
instanceof
DBNDatabaseFolder
&&
((
DBNDatabaseFolder
)
node
).
getItemsMeta
()
!=
null
)
{
DBSObjectFilter
filter
=
((
DBNDatabaseFolder
)
node
).
getNodeFilter
(((
DBNDatabaseFolder
)
node
).
getItemsMeta
(),
true
);
return
filter
!=
null
&&
!
filter
.
isNotApplicable
();
if
(
"defined"
.
equals
(
expectedValue
))
{
return
filter
!=
null
&&
!
filter
.
isEmpty
();
}
else
{
return
filter
!=
null
&&
!
filter
.
isNotApplicable
();
}
}
break
;
}
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/actions/navigator/NavigatorHandlerFilterToggle.java
0 → 100644
浏览文件 @
9034b9bd
/*
* DBeaver - Universal Database Manager
* Copyright (C) 2010-2016 Serge Rieder (serge@jkiss.org)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License (version 2)
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
package
org.jkiss.dbeaver.ui.actions.navigator
;
import
org.eclipse.core.commands.AbstractHandler
;
import
org.eclipse.core.commands.ExecutionEvent
;
import
org.eclipse.core.commands.ExecutionException
;
import
org.eclipse.jface.viewers.ISelection
;
import
org.eclipse.ui.handlers.HandlerUtil
;
import
org.jkiss.dbeaver.model.navigator.DBNDatabaseFolder
;
import
org.jkiss.dbeaver.model.navigator.DBNDatabaseItem
;
import
org.jkiss.dbeaver.model.navigator.DBNNode
;
import
org.jkiss.dbeaver.model.navigator.meta.DBXTreeItem
;
import
org.jkiss.dbeaver.model.struct.DBSObjectFilter
;
import
org.jkiss.dbeaver.ui.navigator.NavigatorUtils
;
import
java.util.Collections
;
public
class
NavigatorHandlerFilterToggle
extends
AbstractHandler
{
@Override
public
Object
execute
(
ExecutionEvent
event
)
throws
ExecutionException
{
final
ISelection
selection
=
HandlerUtil
.
getCurrentSelection
(
event
);
DBNNode
node
=
NavigatorUtils
.
getSelectedNode
(
selection
);
if
(
node
instanceof
DBNDatabaseItem
)
{
node
=
node
.
getParentNode
();
}
if
(
node
instanceof
DBNDatabaseFolder
)
{
final
DBNDatabaseFolder
folder
=
(
DBNDatabaseFolder
)
node
;
DBXTreeItem
itemsMeta
=
folder
.
getItemsMeta
();
if
(
itemsMeta
!=
null
)
{
final
DBSObjectFilter
nodeFilter
=
folder
.
getNodeFilter
(
itemsMeta
,
true
);
if
(
nodeFilter
!=
null
)
{
nodeFilter
.
setEnabled
(!
nodeFilter
.
isEnabled
());
NavigatorHandlerRefresh
.
refreshNavigator
(
Collections
.
singleton
(
folder
));
}
}
}
return
null
;
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录