提交 e03fdff4 编写于 作者: S Serge Rider

#1659 Quick filter copy/paste shortcuts fix. UIUtils refactoring.


Former-commit-id: f13e953d
上级 351534d0
......@@ -1022,6 +1022,18 @@ public class UIUtils {
}
}
public static void addDefaultEditActionsSupport(final IServiceLocator site, final Control control) {
UIUtils.addFocusTracker(site, UIUtils.INLINE_WIDGET_EDITOR_ID, control);
control.addDisposeListener(new DisposeListener() {
@Override
public void widgetDisposed(DisposeEvent e) {
// Unregister from focus service
UIUtils.removeFocusTracker(site, control);
}
});
}
@NotNull
public static IDialogSettings getDialogSettings(@NotNull String dialogId)
{
......@@ -1279,13 +1291,7 @@ public class UIUtils {
CellEditor cellEditor = UIUtils.createCellEditor(parent, object, property);
if (cellEditor != null) {
final Control editorControl = cellEditor.getControl();
UIUtils.addFocusTracker(serviceLocator, UIUtils.INLINE_WIDGET_EDITOR_ID, editorControl);
editorControl.addDisposeListener(new DisposeListener() {
@Override
public void widgetDisposed(DisposeEvent e) {
UIUtils.removeFocusTracker(serviceLocator, editorControl);
}
});
addDefaultEditActionsSupport(serviceLocator, editorControl);
}
return cellEditor;
}
......
......@@ -350,7 +350,7 @@ public class ProgressPageControl extends Composite implements ISearchContextProv
((GridLayout)searchControlsComposite.getLayout()).numColumns = 2;
searchText = new Text(searchControlsComposite, SWT.BORDER);
UIUtils.addFocusTracker(DBeaverUI.getActiveWorkbenchWindow(), UIUtils.INLINE_WIDGET_EDITOR_ID, this.searchText);
UIUtils.addDefaultEditActionsSupport(DBeaverUI.getActiveWorkbenchWindow(), this.searchText);
if (curSearchText != null) {
searchText.setText(curSearchText);
searchText.setSelection(curSearchText.length());
......
......@@ -17,8 +17,6 @@
package org.jkiss.dbeaver.ui.controls.resultset;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.DisposeEvent;
import org.eclipse.swt.events.DisposeListener;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.graphics.Image;
......@@ -91,15 +89,10 @@ abstract class ActiveStatusMessage extends Composite {
GridData gd = new GridData(GridData.FILL_HORIZONTAL);
messageText.setLayoutData(gd);
UIUtils.enableHostEditorKeyBindingsSupport(viewer.getSite(), this.messageText);
UIUtils.addFocusTracker(viewer.getSite(), UIUtils.INLINE_WIDGET_EDITOR_ID, this.messageText);
this.messageText.addDisposeListener(new DisposeListener() {
@Override
public void widgetDisposed(DisposeEvent e) {
// Unregister from focus service
UIUtils.removeFocusTracker(viewer.getSite(), messageText);
}
});
if (viewer != null) {
UIUtils.enableHostEditorKeyBindingsSupport(viewer.getSite(), this.messageText);
UIUtils.addDefaultEditActionsSupport(viewer.getSite(), this.messageText);
}
}
public void setMessage(String message)
......
......@@ -149,15 +149,7 @@ class ResultSetFilterPanel extends Composite implements IContentProposalProvider
this.refreshPanel = new RefreshPanel(filterComposite);
// Register filters text in focus service
UIUtils.addFocusTracker(viewer.getSite(), UIUtils.INLINE_WIDGET_EDITOR_ID, this.filtersText);
this.filtersText.addDisposeListener(new DisposeListener() {
@Override
public void widgetDisposed(DisposeEvent e)
{
// Unregister from focus service
UIUtils.removeFocusTracker(viewer.getSite(), filtersText);
}
});
UIUtils.addDefaultEditActionsSupport(viewer.getSite(), this.filtersText);
this.filtersText.addPaintListener(new PaintListener() {
@Override
......
......@@ -79,15 +79,10 @@ class StatusLabel extends Composite {
gd.minimumHeight = statusImage.getBounds().height;
statusText.setLayoutData(gd);
UIUtils.enableHostEditorKeyBindingsSupport(viewer.getSite(), this.statusText);
UIUtils.addFocusTracker(viewer.getSite(), UIUtils.INLINE_WIDGET_EDITOR_ID, this.statusText);
this.statusText.addDisposeListener(new DisposeListener() {
@Override
public void widgetDisposed(DisposeEvent e) {
// Unregister from focus service
UIUtils.removeFocusTracker(viewer.getSite(), statusText);
}
});
if (viewer != null) {
UIUtils.enableHostEditorKeyBindingsSupport(viewer.getSite(), this.statusText);
UIUtils.addDefaultEditActionsSupport(viewer.getSite(), this.statusText);
}
final ToolBar tb = new ToolBar(this, SWT.HORIZONTAL);
final ToolItem detailsIcon = new ToolItem(tb, SWT.NONE);
......
......@@ -43,6 +43,7 @@ import org.jkiss.dbeaver.model.runtime.DBRProgressMonitor;
import org.jkiss.dbeaver.model.runtime.DBRRunnableWithResult;
import org.jkiss.dbeaver.ui.AbstractUIJob;
import org.jkiss.dbeaver.ui.ActionUtils;
import org.jkiss.dbeaver.ui.UIUtils;
import org.jkiss.dbeaver.ui.actions.navigator.NavigatorHandlerObjectRename;
import org.jkiss.dbeaver.ui.navigator.NavigatorUtils;
import org.jkiss.utils.ArrayUtils;
......@@ -447,6 +448,8 @@ public class DatabaseNavigatorTree extends Composite implements INavigatorListen
super(navigatorTree, treeStyle, new TreeFilter(navigatorTree.navigatorFilter), true);
setInitialText("Type table/view name to filter");
((GridLayout)getLayout()).verticalSpacing = 0;
UIUtils.addDefaultEditActionsSupport(DBeaverUI.getActiveWorkbenchWindow(), getFilterControl());
}
@Override
......
#Thu Aug 19 23:54:20 MSD 2010
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
org.eclipse.jdt.core.compiler.compliance=1.6
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.6
org.eclipse.jdt.core.compiler.source=1.7
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册