package org.robotframework.red.nattable.configs;
import org.eclipse.nebula.widgets.nattable.grid.GridRegion;
import org.eclipse.nebula.widgets.nattable.tree.TreeLayer;
import org.eclipse.nebula.widgets.nattable.tree.action.TreeExpandCollapseAction;
import org.eclipse.nebula.widgets.nattable.tree.config.DefaultTreeLayerConfiguration;
import org.eclipse.nebula.widgets.nattable.tree.painter.TreeImagePainter;
import org.eclipse.nebula.widgets.nattable.ui.binding.UiBindingRegistry;
import org.eclipse.nebula.widgets.nattable.ui.matcher.CellPainterMouseEventMatcher;
import org.eclipse.nebula.widgets.nattable.ui.matcher.MouseEventMatcher;
public class TreeLayerConfiguration extends DefaultTreeLayerConfiguration {
public TreeLayerConfiguration(final TreeLayer treeLayer) {
super(treeLayer);
}
@Override
public void configureUiBindings(final UiBindingRegistry uiBindingRegistry) {
final TreeExpandCollapseAction treeExpandCollapseAction = new TreeExpandCollapseAction();
final CellPainterMouseEventMatcher treeImagePainterMouseEventMatcher = new CellPainterMouseEventMatcher(
GridRegion.BODY, MouseEventMatcher.LEFT_BUTTON, TreeImagePainter.class);
uiBindingRegistry.registerFirstMouseDownBinding(treeImagePainterMouseEventMatcher, treeExpandCollapseAction);
}
}