/** * Copyright (c) 2009-2011, The HATS Consortium. All rights reserved. * This file is licensed under the terms of the Modified BSD License. */ package org.absmodels.abs.plugin.navigator.actionProvider; import org.eclipse.ui.IActionBars; import org.eclipse.ui.navigator.CommonActionProvider; import org.eclipse.ui.navigator.ICommonActionConstants; import org.eclipse.ui.navigator.ICommonActionExtensionSite; /** * Action provider for hooking double click support (ASTNodes and ModulePaths) to the PackageExplorer * @author cseise * */ public class DoubleClickActionProvider extends CommonActionProvider { private final DoubleClickAction doubleClickAction = new DoubleClickAction(); private ICommonActionExtensionSite aSite; @Override public void init(ICommonActionExtensionSite aSite){ super.init(aSite); this.aSite = aSite; aSite.getStructuredViewer().addSelectionChangedListener(doubleClickAction); } @Override public void fillActionBars(IActionBars actionBars){ super.fillActionBars(actionBars); //forward doubleClick to appropriate ActionHandler actionBars.setGlobalActionHandler(ICommonActionConstants.OPEN, doubleClickAction); } @Override public void dispose(){ aSite.getStructuredViewer().removeSelectionChangedListener(doubleClickAction); } }