下面列出了org.eclipse.ui.keys.IBindingService#setKeyFilterEnabled ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
public static void handleEvent(Event e)
{
IBindingService bindingService = (IBindingService) PlatformUI.getWorkbench().getAdapter(IBindingService.class);
Listener keyDownFilter = ((BindingService) bindingService).getKeyboard().getKeyDownFilter();
boolean enabled = bindingService.isKeyFilterEnabled();
Control focusControl = e.display.getFocusControl();
try
{
bindingService.setKeyFilterEnabled(true);
keyDownFilter.handleEvent(e);
}
finally
{
if (focusControl == e.display.getFocusControl()) // $codepro.audit.disable useEquals
{
bindingService.setKeyFilterEnabled(enabled);
}
}
}
private void setFindBarContextActive(boolean activate)
{
fActivated = activate;
IWorkbenchPartSite site = textEditor.getSite();
IHandlerService handlerService = (IHandlerService) site.getService(IHandlerService.class);
IBindingService service = (IBindingService) site.getService(IBindingService.class);
if (activate)
{
// These will be the only active commands (note that they may have multiple keybindings
// defined in plugin.xml)
for (Map.Entry<String, AbstractHandler> entry : fCommandToHandler.entrySet())
{
AbstractHandler handler = entry.getValue();
if (handler != null)
{
fHandlerActivations.add(handlerService.activateHandler(entry.getKey(), handler));
}
}
// Yes, no longer execute anything from the binding service (we'll do our own handling so that the commands
// we need still get executed).
service.setKeyFilterEnabled(false);
service.addBindingManagerListener(fClearCommandToBindingOnChangesListener);
}
else
{
fCommandToBinding = null;
service.setKeyFilterEnabled(true);
service.removeBindingManagerListener(fClearCommandToBindingOnChangesListener);
handlerService.deactivateHandlers(fHandlerActivations);
fHandlerActivations.clear();
}
}
/**
* Create the dialog.
* @param parentShell
*/
public TmMatchEditDialog(Shell parentShell, FuzzySearchResult fuzzyResult) {
super(parentShell);
this.fuzzyResult = fuzzyResult;
setShellStyle(getShellStyle() | SWT.RESIZE);
IBindingService bindingService = (IBindingService) PlatformUI.getWorkbench().getService(IBindingService.class);
bindingService.setKeyFilterEnabled(false);
}
@Override
public boolean close() {
IBindingService bindingService = (IBindingService) PlatformUI.getWorkbench().getService(IBindingService.class);
bindingService.setKeyFilterEnabled(true);
srcSegmentViewer.reset();
tgtSegmentViewer.reset();
return super.close();
}
/**
* Create the dialog.
* @param parentShell
*/
public TmMatchEditDialog(Shell parentShell, FuzzySearchResult fuzzyResult) {
super(parentShell);
this.fuzzyResult = fuzzyResult;
setShellStyle(getShellStyle() | SWT.RESIZE);
IBindingService bindingService = (IBindingService) PlatformUI.getWorkbench().getService(IBindingService.class);
bindingService.setKeyFilterEnabled(false);
}
@Override
public boolean close() {
IBindingService bindingService = (IBindingService) PlatformUI.getWorkbench().getService(IBindingService.class);
bindingService.setKeyFilterEnabled(true);
srcSegmentViewer.reset();
tgtSegmentViewer.reset();
return super.close();
}