]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.browsing.ui.nattable/src/org/simantics/browsing/ui/nattable/GEEditBindings.java
Fixed all line endings of the repository
[simantics/platform.git] / bundles / org.simantics.browsing.ui.nattable / src / org / simantics / browsing / ui / nattable / GEEditBindings.java
1 package org.simantics.browsing.ui.nattable;
2
3 import org.eclipse.nebula.widgets.nattable.config.AbstractUiBindingConfiguration;
4 import org.eclipse.nebula.widgets.nattable.edit.action.CellEditDragMode;
5 import org.eclipse.nebula.widgets.nattable.edit.action.KeyEditAction;
6 import org.eclipse.nebula.widgets.nattable.edit.action.MouseEditAction;
7 import org.eclipse.nebula.widgets.nattable.grid.GridRegion;
8 import org.eclipse.nebula.widgets.nattable.painter.cell.CheckBoxPainter;
9 import org.eclipse.nebula.widgets.nattable.ui.binding.UiBindingRegistry;
10 import org.eclipse.nebula.widgets.nattable.ui.matcher.CellEditorMouseEventMatcher;
11 import org.eclipse.nebula.widgets.nattable.ui.matcher.CellPainterMouseEventMatcher;
12 import org.eclipse.nebula.widgets.nattable.ui.matcher.KeyEventMatcher;
13 import org.eclipse.nebula.widgets.nattable.ui.matcher.LetterOrDigitKeyEventMatcher;
14 import org.eclipse.nebula.widgets.nattable.ui.matcher.MouseEventMatcher;
15 import org.eclipse.swt.SWT;
16
17 public class GEEditBindings extends AbstractUiBindingConfiguration {
18         
19     @Override
20     public void configureUiBindings(UiBindingRegistry uiBindingRegistry) {
21         // configure the space key to activate a cell editor via keyboard
22         // this is especially useful for changing the value for a checkbox
23         uiBindingRegistry.registerKeyBinding(
24                 new KeyEventMatcher(SWT.NONE, 32),
25                 new KeyEditAction());
26         uiBindingRegistry.registerKeyBinding(
27                 new KeyEventMatcher(SWT.NONE, SWT.F2),
28                 new KeyEditAction());
29         uiBindingRegistry.registerKeyBinding(
30                 new LetterOrDigitKeyEventMatcher(),
31                 new KeyEditAction());
32         uiBindingRegistry.registerKeyBinding(
33                 new LetterOrDigitKeyEventMatcher(SWT.MOD2),
34                 new KeyEditAction());
35
36         uiBindingRegistry.registerSingleClickBinding(
37                 new SelectedCellEditorMatcher(GridRegion.BODY),
38                 new MouseEditAction());
39
40         uiBindingRegistry.registerMouseDragMode(
41                 new CellEditorMouseEventMatcher(GridRegion.BODY),
42                 new CellEditDragMode());
43
44         uiBindingRegistry.registerFirstSingleClickBinding(
45                 new CellPainterMouseEventMatcher(GridRegion.BODY, MouseEventMatcher.LEFT_BUTTON, CheckBoxPainter.class),
46                 new MouseEditAction());
47
48         uiBindingRegistry.registerFirstMouseDragMode(
49                 new CellPainterMouseEventMatcher(GridRegion.BODY, MouseEventMatcher.LEFT_BUTTON, CheckBoxPainter.class),
50                 new CellEditDragMode());
51
52     }
53
54         
55 }