提交 c1e90bab 编写于 作者: S serge-rider

#178 QM view refresh

上级 1ce39b77
......@@ -301,6 +301,8 @@ command.org.jkiss.dbeaver.core.qm.filter.name=Filters ...
command.org.jkiss.dbeaver.core.qm.filter.description=Set query manager filter
command.org.jkiss.dbeaver.core.qm.clear.name=Clear log
command.org.jkiss.dbeaver.core.qm.clear.description=Clear query manager log
command.org.jkiss.dbeaver.core.qm.refresh.name=Refresh query history
command.org.jkiss.dbeaver.core.qm.refresh.description=Refresh query history
command.org.jkiss.dbeaver.core.process.stop.name=Terminate process
command.org.jkiss.dbeaver.core.process.stop.description=Terminates running process
......
......@@ -544,6 +544,7 @@
</with>
</activeWhen>
</handler>
<handler commandId="org.jkiss.dbeaver.core.export.data" class="org.jkiss.dbeaver.tools.transfer.handlers.DataExportHandler">
<enabledWhen>
<with variable="selection">
......@@ -1678,6 +1679,9 @@
<!-- Query log control handlers -->
<handler commandId="org.eclipse.ui.file.refresh" class="org.jkiss.dbeaver.ui.controls.querylog.QueryLogCommandHandler">
<activeWhen><reference definitionId="org.jkiss.dbeaver.core.ui.querylog.control"/></activeWhen>
</handler>
<handler commandId="org.eclipse.ui.edit.selectAll" class="org.jkiss.dbeaver.ui.controls.querylog.QueryLogCommandHandler">
<activeWhen><reference definitionId="org.jkiss.dbeaver.core.ui.querylog.control"/></activeWhen>
</handler>
......@@ -2416,13 +2420,17 @@
<menuContribution allPopups="false" locationURI="menu:org.jkiss.dbeaver.core.queryManager">
<command
commandId="org.jkiss.dbeaver.core.qm.filter"
label="%command.org.jkiss.dbeaver.core.qm.filter.name"
tooltip="%command.org.jkiss.dbeaver.core.qm.filter.description"/>
commandId="org.jkiss.dbeaver.core.qm.filter"
label="%command.org.jkiss.dbeaver.core.qm.filter.name"
tooltip="%command.org.jkiss.dbeaver.core.qm.filter.description"/>
<command
commandId="org.jkiss.dbeaver.core.qm.clear"
label="%command.org.jkiss.dbeaver.core.qm.clear.name"
tooltip="%command.org.jkiss.dbeaver.core.qm.clear.description"/>
commandId="org.jkiss.dbeaver.core.qm.clear"
label="%command.org.jkiss.dbeaver.core.qm.clear.name"
tooltip="%command.org.jkiss.dbeaver.core.qm.clear.description"/>
<command
commandId="org.eclipse.ui.file.refresh"
label="%command.org.jkiss.dbeaver.core.qm.refresh.name"
tooltip="%command.org.jkiss.dbeaver.core.qm.refresh.description"/>
<separator name="additions" visible="true"/>
</menuContribution>
......@@ -2435,6 +2443,10 @@
commandId="org.jkiss.dbeaver.core.qm.clear"
label="%command.org.jkiss.dbeaver.core.qm.clear.name"
tooltip="%command.org.jkiss.dbeaver.core.qm.clear.description"/>
<command
commandId="org.eclipse.ui.file.refresh"
label="%command.org.jkiss.dbeaver.core.qm.refresh.name"
tooltip="%command.org.jkiss.dbeaver.core.qm.refresh.description"/>
<separator name="additions" visible="true"/>
</menuContribution>
......
......@@ -51,16 +51,19 @@ public class QueryLogCommandHandler extends AbstractHandler {
}
String actionId = event.getCommand().getId();
if (actionId.equals(IWorkbenchCommandConstants.EDIT_SELECT_ALL)) {
logViewer.selectAll();
return null;
}
if (actionId.equals(IWorkbenchCommandConstants.EDIT_COPY)) {
logViewer.copySelectionToClipboard(false);
return null;
} else if (actionId.equals(CoreCommands.CMD_COPY_SPECIAL)) {
logViewer.copySelectionToClipboard(true);
return null;
switch (actionId) {
case IWorkbenchCommandConstants.EDIT_SELECT_ALL:
logViewer.selectAll();
return null;
case IWorkbenchCommandConstants.EDIT_COPY:
logViewer.copySelectionToClipboard(false);
return null;
case CoreCommands.CMD_COPY_SPECIAL:
logViewer.copySelectionToClipboard(true);
return null;
case IWorkbenchCommandConstants.FILE_REFRESH:
logViewer.refresh();
return null;
}
return null;
}
......
......@@ -90,6 +90,7 @@ public class QueryLogViewer extends Viewer implements QMMetaListener, DBPPrefere
public static final String COLOR_COMMITTED = "org.jkiss.dbeaver.txn.color.committed.background"; //= new RGB(0xBD, 0xFE, 0xBF);
public static final String COLOR_REVERTED = "org.jkiss.dbeaver.txn.color.reverted.background"; // = new RGB(0xFF, 0x63, 0x47);
public static final String COLOR_TRANSACTION = "org.jkiss.dbeaver.txn.color.transaction.background"; // = new RGB(0xFF, 0xE4, 0xB5);
private final Text searchText;
private static abstract class LogColumn {
private final String id;
......@@ -317,7 +318,9 @@ public class QueryLogViewer extends Viewer implements QMMetaListener, DBPPrefere
private final Color colorLightGreen;
private final Color colorLightRed;
private final Color colorLightYellow;
private final Color shadowColor;
private final Font boldFont;
private final Font hintFont;
private DragSource dndSource;
......@@ -336,9 +339,25 @@ public class QueryLogViewer extends Viewer implements QMMetaListener, DBPPrefere
colorLightGreen = colorRegistry.get(COLOR_COMMITTED);
colorLightRed = colorRegistry.get(COLOR_REVERTED);
colorLightYellow = colorRegistry.get(COLOR_TRANSACTION);
shadowColor = parent.getDisplay().getSystemColor(SWT.COLOR_WIDGET_NORMAL_SHADOW);
boldFont = UIUtils.makeBoldFont(parent.getFont());
hintFont = UIUtils.modifyFont(parent.getFont(), SWT.ITALIC);
boolean inDialog = UIUtils.isInDialog(parent);
// Search field
this.searchText = new Text(parent, SWT.BORDER);
this.searchText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
this.searchText.addPaintListener(e -> {
if (searchText.isEnabled() && searchText.getCharCount() == 0) {
e.gc.setForeground(shadowColor);
e.gc.setFont(hintFont);
e.gc.drawText("Type query part to search in query history",
2, 0, true);
e.gc.setFont(null);
}
});
// Create log table
logTable = new Table(
parent,
......@@ -452,6 +471,7 @@ public class QueryLogViewer extends Viewer implements QMMetaListener, DBPPrefere
UIUtils.dispose(dndSource);
UIUtils.dispose(logTable);
UIUtils.dispose(boldFont);
UIUtils.dispose(hintFont);
}
@Override
......@@ -759,6 +779,7 @@ public class QueryLogViewer extends Viewer implements QMMetaListener, DBPPrefere
manager.add(copyAllAction);
manager.add(selectAllAction);
manager.add(clearLogAction);
manager.add(ActionUtils.makeCommandContribution(site, IWorkbenchCommandConstants.FILE_REFRESH));
//manager.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
});
menuMgr.setRemoveAllWhenShown(true);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册