Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
a63081e5
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,发现更多精彩内容 >>
提交
a63081e5
编写于
6月 02, 2018
作者:
S
serge-rider
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#3507 Grouping panel - context menu, i18n
Former-commit-id:
7d7a1021
上级
5d5f706d
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
64 addition
and
24 deletion
+64
-24
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/core/CoreMessages.java
...dbeaver.core/src/org/jkiss/dbeaver/core/CoreMessages.java
+4
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/core/CoreResources.properties
....core/src/org/jkiss/dbeaver/core/CoreResources.properties
+4
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/controls/resultset/IResultSetDecorator.java
...ss/dbeaver/ui/controls/resultset/IResultSetDecorator.java
+4
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/controls/resultset/QueryResultsDecorator.java
.../dbeaver/ui/controls/resultset/QueryResultsDecorator.java
+6
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/controls/resultset/ResultSetCommandHandler.java
...beaver/ui/controls/resultset/ResultSetCommandHandler.java
+1
-1
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/controls/resultset/ResultSetViewer.java
.../jkiss/dbeaver/ui/controls/resultset/ResultSetViewer.java
+11
-7
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/controls/resultset/panel/grouping/GroupingPanel.java
...r/ui/controls/resultset/panel/grouping/GroupingPanel.java
+26
-16
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/controls/resultset/panel/grouping/GroupingResultsDecorator.java
...ls/resultset/panel/grouping/GroupingResultsDecorator.java
+8
-0
未找到文件。
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/core/CoreMessages.java
浏览文件 @
a63081e5
...
...
@@ -265,6 +265,10 @@ public class CoreMessages extends NLS {
public
static
String
controls_resultset_filter_title
;
public
static
String
controls_resultset_filter_warning_custom_order_disabled
;
public
static
String
controls_resultset_grouping_edit
;
public
static
String
controls_resultset_grouping_remove_column
;
public
static
String
controls_resultset_grouping_clear
;
public
static
String
controls_resultset_viewer_action_edit
;
public
static
String
controls_resultset_viewer_action_order_filter
;
public
static
String
controls_resultset_viewer_action_custom_filter
;
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/core/CoreResources.properties
浏览文件 @
a63081e5
...
...
@@ -247,6 +247,10 @@ controls_resultset_filter_label_orderby = Order by
controls_resultset_filter_label_where
=
Where
controls_resultset_filter_title
=
Result Set Order/Filter Settings
controls_resultset_filter_warning_custom_order_disabled
=
Data filters and custom orderings are disabled for custom queries
controls_resultset_grouping_edit
=
Edit grouping columns
controls_resultset_grouping_remove_column
=
Remove grouping column
controls_resultset_grouping_clear
=
Clear grouping
controls_resultset_viewer_action_custom_filter
=
Advanced ...
controls_resultset_viewer_action_edit
=
Edit ...
#controls_resultset_viewer_action_export = Export Resultset ...
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/controls/resultset/IResultSetDecorator.java
浏览文件 @
a63081e5
...
...
@@ -17,6 +17,8 @@
package
org.jkiss.dbeaver.ui.controls.resultset
;
import
org.eclipse.jface.action.IContributionManager
;
/**
* ResultSet decorator.
*/
...
...
@@ -34,5 +36,7 @@ public interface IResultSetDecorator {
String
getEmptyDataDescription
();
void
fillContributions
(
IContributionManager
contributionManager
);
void
registerDragAndDrop
(
IResultSetPresentation
presentation
);
}
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/controls/resultset/QueryResultsDecorator.java
浏览文件 @
a63081e5
...
...
@@ -16,6 +16,7 @@
*/
package
org.jkiss.dbeaver.ui.controls.resultset
;
import
org.eclipse.jface.action.IContributionManager
;
import
org.jkiss.dbeaver.core.CoreMessages
;
/**
...
...
@@ -38,6 +39,11 @@ public class QueryResultsDecorator implements IResultSetDecorator {
return
null
;
}
@Override
public
void
fillContributions
(
IContributionManager
contributionManager
)
{
}
@Override
public
void
registerDragAndDrop
(
IResultSetPresentation
presentation
)
{
// No specific DnD handling
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/controls/resultset/ResultSetCommandHandler.java
浏览文件 @
a63081e5
...
...
@@ -158,7 +158,7 @@ public class ResultSetCommandHandler extends AbstractHandler {
rsv
.
toggleMode
();
break
;
case
CMD_TOGGLE_PANELS:
rsv
.
showPanels
(!
rsv
.
isPanelsVisible
());
rsv
.
showPanels
(!
rsv
.
isPanelsVisible
()
,
true
);
break
;
case
CMD_FOCUS_FILTER:
rsv
.
switchFilterFocus
();
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/controls/resultset/ResultSetViewer.java
浏览文件 @
a63081e5
...
...
@@ -266,7 +266,7 @@ public class ResultSetViewer extends Viewer
@Override
public
void
minimize
(
CTabFolderEvent
event
)
{
showPanels
(
false
);
showPanels
(
false
,
true
);
}
@Override
...
...
@@ -619,7 +619,7 @@ public class ResultSetViewer extends Viewer
}
activateDefaultPanels
(
settings
);
}
showPanels
(
panelsVisible
);
showPanels
(
panelsVisible
,
false
);
viewerSash
.
setWeights
(
panelWeights
);
}
...
...
@@ -760,7 +760,7 @@ public class ResultSetViewer extends Viewer
return
;
}
if
(
showPanels
&&
!
isPanelsVisible
())
{
showPanels
(
true
);
showPanels
(
true
,
false
);
}
PresentationSettings
presentationSettings
=
getPresentationSettings
();
...
...
@@ -849,6 +849,7 @@ public class ResultSetViewer extends Viewer
if
(
panel
!=
null
)
{
panel
.
activatePanel
();
updatePanelActions
();
savePresentationSettings
();
}
}
...
...
@@ -859,7 +860,7 @@ public class ResultSetViewer extends Viewer
}
getPresentationSettings
().
enabledPanelIds
.
remove
(
panelId
);
if
(
activePanels
.
isEmpty
())
{
showPanels
(
false
);
showPanels
(
false
,
true
);
}
}
...
...
@@ -887,7 +888,7 @@ public class ResultSetViewer extends Viewer
return
viewerSash
!=
null
&&
viewerSash
.
getMaximizedControl
()
==
null
;
}
void
showPanels
(
boolean
show
)
{
void
showPanels
(
boolean
show
,
boolean
saveSettings
)
{
if
(!
supportsPanels
()
||
show
==
isPanelsVisible
())
{
return
;
}
...
...
@@ -913,7 +914,9 @@ public class ResultSetViewer extends Viewer
}
getPresentationSettings
().
panelsVisible
=
show
;
savePresentationSettings
();
if
(
saveSettings
)
{
savePresentationSettings
();
}
}
private
List
<
IContributionItem
>
fillPanelsMenu
()
{
...
...
@@ -1943,9 +1946,10 @@ public class ResultSetViewer extends Viewer
manager
.
add
(
ActionUtils
.
makeCommandContribution
(
site
,
IWorkbenchCommandConstants
.
FILE_REFRESH
));
}
if
(
supportsPanels
())
manager
.
add
(
new
Separator
());
manager
.
add
(
new
GroupMarker
(
IWorkbenchActionConstants
.
MB_ADDITIONS
));
decorator
.
fillContributions
(
manager
);
}
@Nullable
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/controls/resultset/panel/grouping/GroupingPanel.java
浏览文件 @
a63081e5
...
...
@@ -22,12 +22,13 @@ import org.eclipse.jface.action.Separator;
import
org.eclipse.jface.action.ToolBarManager
;
import
org.eclipse.jface.dialogs.IDialogConstants
;
import
org.eclipse.jface.dialogs.IDialogSettings
;
import
org.eclipse.jface.resource.ImageDescriptor
;
import
org.eclipse.jface.viewers.SelectionChangedEvent
;
import
org.eclipse.swt.widgets.Composite
;
import
org.eclipse.swt.widgets.Control
;
import
org.eclipse.ui.ISharedImages
;
import
org.jkiss.dbeaver.DBException
;
import
org.jkiss.dbeaver.
Log
;
import
org.jkiss.dbeaver.
core.CoreMessages
;
import
org.jkiss.dbeaver.model.DBPEvaluationContext
;
import
org.jkiss.dbeaver.model.data.DBDAttributeBinding
;
import
org.jkiss.dbeaver.runtime.ui.DBUserInterface
;
...
...
@@ -45,7 +46,7 @@ import java.util.List;
*/
public
class
GroupingPanel
implements
IResultSetPanel
{
private
static
final
Log
log
=
Log
.
getLog
(
GroupingPanel
.
class
);
//
private static final Log log = Log.getLog(GroupingPanel.class);
public
static
final
String
PANEL_ID
=
"results-grouping"
;
...
...
@@ -148,20 +149,29 @@ public class GroupingPanel implements IResultSetPanel {
private
void
fillToolBar
(
IContributionManager
contributionManager
)
{
contributionManager
.
add
(
new
AddColumnAction
(
));
contributionManager
.
add
(
new
EditColumnsAction
(
resultsContainer
));
contributionManager
.
add
(
new
Separator
());
contributionManager
.
add
(
new
DeleteColumnAction
());
contributionManager
.
add
(
new
ClearGroupingAction
());
contributionManager
.
add
(
new
DeleteColumnAction
(
resultsContainer
));
contributionManager
.
add
(
new
ClearGroupingAction
(
resultsContainer
));
}
private
class
AddColumnAction
extends
Action
{
public
AddColumnAction
()
{
super
(
"Configure columns"
,
DBeaverIcons
.
getImageDescriptor
(
UIIcon
.
OBJ_ADD
));
abstract
static
class
GroupingAction
extends
Action
{
protected
final
GroupingResultsContainer
resultsContainer
;
public
GroupingAction
(
GroupingResultsContainer
resultsContainer
,
String
text
,
ImageDescriptor
image
)
{
super
(
text
,
image
);
this
.
resultsContainer
=
resultsContainer
;
}
}
static
class
EditColumnsAction
extends
GroupingAction
{
public
EditColumnsAction
(
GroupingResultsContainer
resultsContainer
)
{
super
(
resultsContainer
,
CoreMessages
.
controls_resultset_grouping_edit
,
DBeaverIcons
.
getImageDescriptor
(
UIIcon
.
OBJ_ADD
));
}
@Override
public
void
run
()
{
GroupingConfigDialog
dialog
=
new
GroupingConfigDialog
(
presentation
.
getControl
().
getShell
(),
resultsContainer
);
GroupingConfigDialog
dialog
=
new
GroupingConfigDialog
(
resultsContainer
.
getResultSetController
()
.
getControl
().
getShell
(),
resultsContainer
);
if
(
dialog
.
open
()
==
IDialogConstants
.
OK_ID
)
{
try
{
resultsContainer
.
rebuildGrouping
();
...
...
@@ -172,9 +182,9 @@ public class GroupingPanel implements IResultSetPanel {
}
}
private
class
DeleteColumnAction
extends
Action
{
public
DeleteColumnAction
()
{
super
(
"Delete column"
,
DBeaverIcons
.
getImageDescriptor
(
UIIcon
.
ACTION_OBJECT_DELETE
));
static
class
DeleteColumnAction
extends
Grouping
Action
{
public
DeleteColumnAction
(
GroupingResultsContainer
resultsContainer
)
{
super
(
resultsContainer
,
CoreMessages
.
controls_resultset_grouping_remove_column
,
DBeaverIcons
.
getImageDescriptor
(
UIIcon
.
ACTION_OBJECT_DELETE
));
}
@Override
...
...
@@ -198,9 +208,9 @@ public class GroupingPanel implements IResultSetPanel {
}
}
private
class
ClearGroupingAction
extends
Action
{
public
ClearGroupingAction
()
{
super
(
"Clear groupings"
,
UIUtils
.
getShardImageDescriptor
(
ISharedImages
.
IMG_ETOOL_CLEAR
));
static
class
ClearGroupingAction
extends
Grouping
Action
{
public
ClearGroupingAction
(
GroupingResultsContainer
resultsContainer
)
{
super
(
resultsContainer
,
CoreMessages
.
controls_resultset_grouping_clear
,
UIUtils
.
getShardImageDescriptor
(
ISharedImages
.
IMG_ETOOL_CLEAR
));
}
@Override
...
...
@@ -211,7 +221,7 @@ public class GroupingPanel implements IResultSetPanel {
@Override
public
void
run
()
{
resultsContainer
.
clearGrouping
();
updateControl
s
();
resultsContainer
.
getOwnerPresentation
().
getController
().
updatePanelAction
s
();
}
}
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/controls/resultset/panel/grouping/GroupingResultsDecorator.java
浏览文件 @
a63081e5
...
...
@@ -16,6 +16,7 @@
*/
package
org.jkiss.dbeaver.ui.controls.resultset.panel.grouping
;
import
org.eclipse.jface.action.IContributionManager
;
import
org.eclipse.jface.dialogs.IDialogConstants
;
import
org.eclipse.swt.dnd.DND
;
import
org.eclipse.swt.dnd.DropTarget
;
...
...
@@ -59,6 +60,13 @@ public class GroupingResultsDecorator implements IResultSetDecorator {
return
"Drag-and-drop results column(s) here to create grouping\nPress CONTROL to configure grouping settings"
;
}
@Override
public
void
fillContributions
(
IContributionManager
contributionManager
)
{
contributionManager
.
add
(
new
GroupingPanel
.
EditColumnsAction
(
container
));
contributionManager
.
add
(
new
GroupingPanel
.
DeleteColumnAction
(
container
));
contributionManager
.
add
(
new
GroupingPanel
.
ClearGroupingAction
(
container
));
}
@Override
public
void
registerDragAndDrop
(
IResultSetPresentation
presentation
)
{
// Register drop target to accept columns dropping
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录