blob: 7f9ea545a48ade6dbec0ee0e41cb8ee293aa983d [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2000, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.gef;
import org.eclipse.draw2d.geometry.Point;
/**
* An interface used by the {@link org.eclipse.gef.tools.SelectionTool} to
* obtain a DragTracker. A GraphicalViewer will return a Handle at a given
* location. The <code>SelectionTool</code> looks for <code>Handles</code> first
* whenever the User presses the mouse button. If a Handle is found, it usually
* offers a DragTracker, although <code>null</code> can also be returned.
* <P>
* For keyboard accessibility purposes, a Handle can provide a Point at which
* the SelectionTool should programmatically place the mouse.
*/
public interface Handle {
/**
* Returns the DragTracker for dragging this Handle.
*
* @return <code>null</code> or a <code>DragTracker</code>
*/
DragTracker getDragTracker();
/**
* Returns an optional accessibility Point. This returned point is in
* absolute coordinates.
*
* @return <code>null</code> or the absolute location
*/
Point getAccessibleLocation();
}