Search in sources :

Example 16 with EBindingService

use of org.eclipse.e4.ui.bindings.EBindingService in project eclipse.platform.ui by eclipse-platform.

the class BindingLookupTest method testLookupShortcut.

@Test
public void testLookupShortcut() {
    ECommandService cs = workbenchContext.get(ECommandService.class);
    ParameterizedCommand cmd = cs.createCommand(TEST_ID1, null);
    EBindingService bs = workbenchContext.get(EBindingService.class);
    TriggerSequence seq = bs.createSequence("CTRL+5 T");
    Binding db = createDefaultBinding(bs, seq, cmd, ID_DIALOG_AND_WINDOW);
    bs.activateBinding(db);
    assertEquals(seq, bs.getBestSequenceFor(cmd));
}
Also used : Binding(org.eclipse.jface.bindings.Binding) TriggerSequence(org.eclipse.jface.bindings.TriggerSequence) EBindingService(org.eclipse.e4.ui.bindings.EBindingService) ParameterizedCommand(org.eclipse.core.commands.ParameterizedCommand) ECommandService(org.eclipse.e4.core.commands.ECommandService) Test(org.junit.Test)

Example 17 with EBindingService

use of org.eclipse.e4.ui.bindings.EBindingService in project eclipse.platform.ui by eclipse-platform.

the class BindingLookupTest method testLookupShortcuts.

@Test
public void testLookupShortcuts() {
    ECommandService cs = workbenchContext.get(ECommandService.class);
    ParameterizedCommand cmd = cs.createCommand(TEST_ID1, null);
    EBindingService bs = workbenchContext.get(EBindingService.class);
    TriggerSequence seq = bs.createSequence("CTRL+5 T");
    TriggerSequence seq2 = bs.createSequence("CTRL+2 X");
    Binding db = createDefaultBinding(bs, seq, cmd, ID_DIALOG_AND_WINDOW);
    bs.activateBinding(db);
    Binding db2 = createDefaultBinding(bs, seq2, cmd, ID_DIALOG_AND_WINDOW);
    bs.activateBinding(db2);
    TriggerSequence foundSequence = bs.getBestSequenceFor(cmd);
    assertNotNull(foundSequence);
    assertEquals(seq, foundSequence);
}
Also used : Binding(org.eclipse.jface.bindings.Binding) TriggerSequence(org.eclipse.jface.bindings.TriggerSequence) EBindingService(org.eclipse.e4.ui.bindings.EBindingService) ParameterizedCommand(org.eclipse.core.commands.ParameterizedCommand) ECommandService(org.eclipse.e4.core.commands.ECommandService) Test(org.junit.Test)

Example 18 with EBindingService

use of org.eclipse.e4.ui.bindings.EBindingService in project eclipse.platform.ui by eclipse-platform.

the class BindingLookupTest method testLookupBestShortcutWithChild.

@Test
public void testLookupBestShortcutWithChild() {
    ECommandService cs = workbenchContext.get(ECommandService.class);
    ParameterizedCommand cmd = cs.createCommand(TEST_ID1, null);
    EBindingService bs = workbenchContext.get(EBindingService.class);
    TriggerSequence seq2 = bs.createSequence("CTRL+5 T");
    Binding db2 = createDefaultBinding(bs, seq2, cmd, ID_DIALOG_AND_WINDOW);
    bs.activateBinding(db2);
    IEclipseContext c1 = workbenchContext.createChild("c1");
    c1.activate();
    EBindingService bs1 = c1.get(EBindingService.class);
    TriggerSequence seq = bs1.createSequence("ALT+5 X");
    Binding db = createDefaultBinding(bs, seq, cmd, ID_DIALOG_AND_WINDOW);
    bs1.activateBinding(db);
    TriggerSequence foundSequence = bs.getBestSequenceFor(cmd);
    assertNotNull(foundSequence);
    assertEquals(seq2, foundSequence);
}
Also used : Binding(org.eclipse.jface.bindings.Binding) TriggerSequence(org.eclipse.jface.bindings.TriggerSequence) EBindingService(org.eclipse.e4.ui.bindings.EBindingService) IEclipseContext(org.eclipse.e4.core.contexts.IEclipseContext) ParameterizedCommand(org.eclipse.core.commands.ParameterizedCommand) ECommandService(org.eclipse.e4.core.commands.ECommandService) Test(org.junit.Test)

Example 19 with EBindingService

use of org.eclipse.e4.ui.bindings.EBindingService in project eclipse.platform.ui by eclipse-platform.

the class BindingLookupTest method testLookupWithTwoChildren.

@Test
public void testLookupWithTwoChildren() {
    ECommandService cs = workbenchContext.get(ECommandService.class);
    ParameterizedCommand cmd1 = cs.createCommand(TEST_ID1, null);
    ParameterizedCommand cmd2 = cs.createCommand(TEST_ID2, null);
    EBindingService wBS = workbenchContext.get(EBindingService.class);
    TriggerSequence seq = wBS.createSequence("CTRL+5 T");
    IEclipseContext c1 = workbenchContext.createChild("c1");
    c1.activate();
    EContextService es = c1.get(EContextService.class);
    es.activateContext(ID_WINDOW);
    EBindingService bs1 = c1.get(EBindingService.class);
    Binding db = createDefaultBinding(bs1, seq, cmd1, ID_WINDOW);
    bs1.activateBinding(db);
    IEclipseContext c2 = workbenchContext.createChild("c2");
    EContextService es2 = c2.get(EContextService.class);
    es2.activateContext(ID_DIALOG);
    EBindingService bs2 = c2.get(EBindingService.class);
    db = createDefaultBinding(bs1, seq, cmd2, ID_DIALOG);
    bs2.activateBinding(db);
    assertEquals(cmd1, wBS.getPerfectMatch(seq).getParameterizedCommand());
    assertEquals(cmd1, bs1.getPerfectMatch(seq).getParameterizedCommand());
    assertEquals(cmd2, bs2.getPerfectMatch(seq).getParameterizedCommand());
}
Also used : Binding(org.eclipse.jface.bindings.Binding) TriggerSequence(org.eclipse.jface.bindings.TriggerSequence) EBindingService(org.eclipse.e4.ui.bindings.EBindingService) IEclipseContext(org.eclipse.e4.core.contexts.IEclipseContext) EContextService(org.eclipse.e4.ui.services.EContextService) ParameterizedCommand(org.eclipse.core.commands.ParameterizedCommand) ECommandService(org.eclipse.e4.core.commands.ECommandService) Test(org.junit.Test)

Example 20 with EBindingService

use of org.eclipse.e4.ui.bindings.EBindingService in project eclipse.platform.ui by eclipse-platform.

the class BindingLookupTest method testLookupWithDifferentActiveChild.

@Test
public void testLookupWithDifferentActiveChild() {
    ECommandService cs = workbenchContext.get(ECommandService.class);
    ParameterizedCommand cmd1 = cs.createCommand(TEST_ID1, null);
    ParameterizedCommand cmd2 = cs.createCommand(TEST_ID2, null);
    EBindingService wBS = workbenchContext.get(EBindingService.class);
    TriggerSequence seq = wBS.createSequence("CTRL+5 T");
    IEclipseContext c1 = workbenchContext.createChild("c1");
    c1.activate();
    EContextService es = c1.get(EContextService.class);
    es.activateContext(ID_WINDOW);
    EBindingService bs1 = c1.get(EBindingService.class);
    Binding db = createDefaultBinding(bs1, seq, cmd1, ID_WINDOW);
    bs1.activateBinding(db);
    IEclipseContext c2 = workbenchContext.createChild("c2");
    EContextService es2 = c2.get(EContextService.class);
    es2.activateContext(ID_DIALOG);
    EBindingService bs2 = c2.get(EBindingService.class);
    db = createDefaultBinding(bs1, seq, cmd2, ID_DIALOG);
    bs2.activateBinding(db);
    assertEquals(cmd1, bs1.getPerfectMatch(seq).getParameterizedCommand());
    assertEquals(cmd2, bs2.getPerfectMatch(seq).getParameterizedCommand());
    assertEquals(cmd1, wBS.getPerfectMatch(seq).getParameterizedCommand());
    c2.activate();
    assertEquals(cmd1, bs1.getPerfectMatch(seq).getParameterizedCommand());
    assertEquals(cmd2, bs2.getPerfectMatch(seq).getParameterizedCommand());
    assertEquals(cmd2, wBS.getPerfectMatch(seq).getParameterizedCommand());
    c1.activate();
    assertEquals(cmd1, bs1.getPerfectMatch(seq).getParameterizedCommand());
    assertEquals(cmd2, bs2.getPerfectMatch(seq).getParameterizedCommand());
    assertEquals(cmd1, wBS.getPerfectMatch(seq).getParameterizedCommand());
    c2.activate();
    assertEquals(cmd1, bs1.getPerfectMatch(seq).getParameterizedCommand());
    assertEquals(cmd2, bs2.getPerfectMatch(seq).getParameterizedCommand());
    assertEquals(cmd2, wBS.getPerfectMatch(seq).getParameterizedCommand());
    assertTrue(wBS.isPerfectMatch(seq));
}
Also used : Binding(org.eclipse.jface.bindings.Binding) TriggerSequence(org.eclipse.jface.bindings.TriggerSequence) EBindingService(org.eclipse.e4.ui.bindings.EBindingService) IEclipseContext(org.eclipse.e4.core.contexts.IEclipseContext) EContextService(org.eclipse.e4.ui.services.EContextService) ParameterizedCommand(org.eclipse.core.commands.ParameterizedCommand) ECommandService(org.eclipse.e4.core.commands.ECommandService) Test(org.junit.Test)

Aggregations

EBindingService (org.eclipse.e4.ui.bindings.EBindingService)24 ParameterizedCommand (org.eclipse.core.commands.ParameterizedCommand)23 Binding (org.eclipse.jface.bindings.Binding)21 TriggerSequence (org.eclipse.jface.bindings.TriggerSequence)18 Test (org.junit.Test)18 ECommandService (org.eclipse.e4.core.commands.ECommandService)17 IEclipseContext (org.eclipse.e4.core.contexts.IEclipseContext)9 EContextService (org.eclipse.e4.ui.services.EContextService)5 Scheme (org.eclipse.jface.bindings.Scheme)4 KeyBinding (org.eclipse.jface.bindings.keys.KeyBinding)4 KeySequence (org.eclipse.jface.bindings.keys.KeySequence)4 ArrayList (java.util.ArrayList)3 HashMap (java.util.HashMap)3 NotDefinedException (org.eclipse.core.commands.common.NotDefinedException)3 HashSet (java.util.HashSet)1 TreeSet (java.util.TreeSet)1 Category (org.eclipse.core.commands.Category)1 Command (org.eclipse.core.commands.Command)1 CommandManager (org.eclipse.core.commands.CommandManager)1 ContextManager (org.eclipse.core.commands.contexts.ContextManager)1