/** * This file is protected by Copyright. * Please refer to the COPYRIGHT file distributed with this source distribution. * * This file is part of REDHAWK IDE. * * 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. * */ package gov.redhawk.diagram.tools; import java.util.Map; import org.eclipse.gef.DragTracker; import org.eclipse.gef.EditDomain; import org.eclipse.gef.EditPartViewer; import org.eclipse.swt.dnd.DragSourceEvent; import org.eclipse.swt.events.FocusEvent; import org.eclipse.swt.events.KeyEvent; import org.eclipse.swt.events.MouseEvent; import org.eclipse.swt.events.TraverseEvent; import org.eclipse.swt.widgets.Event; /** * @since 3.0 * */ public class CompositeDragTracker implements DragTracker { private final DragTracker elementTracker; private final DragTracker containerTracker; public CompositeDragTracker(final DragTracker elementTracker, final DragTracker containerTracker) { this.elementTracker = elementTracker; this.containerTracker = containerTracker; } @Override public void commitDrag() { this.containerTracker.commitDrag(); // this.elementTracker.commitDrag(); } @Override public void activate() { this.containerTracker.activate(); this.elementTracker.activate(); } @Override public void deactivate() { this.containerTracker.deactivate(); this.elementTracker.deactivate(); } @Override public void focusGained(final FocusEvent event, final EditPartViewer viewer) { // this.containerTracker.focusGained(event, viewer); this.elementTracker.focusGained(event, viewer); } @Override public void focusLost(final FocusEvent event, final EditPartViewer viewer) { // this.containerTracker.focusLost(event, viewer); this.elementTracker.focusLost(event, viewer); } @Override public void keyDown(final KeyEvent keyEvent, final EditPartViewer viewer) { // this.containerTracker.keyDown(keyEvent, viewer); this.elementTracker.keyDown(keyEvent, viewer); } @Override public void keyTraversed(final TraverseEvent event, final EditPartViewer viewer) { // this.containerTracker.keyTraversed(event, viewer); this.elementTracker.keyTraversed(event, viewer); } @Override public void keyUp(final KeyEvent keyEvent, final EditPartViewer viewer) { // this.containerTracker.keyUp(keyEvent, viewer); this.elementTracker.keyUp(keyEvent, viewer); } @Override public void mouseDoubleClick(final MouseEvent mouseEvent, final EditPartViewer viewer) { // containerTracker.mouseDoubleClick(mouseEvent, viewer); this.elementTracker.mouseDoubleClick(mouseEvent, viewer); } @Override public void mouseDown(final MouseEvent mouseEvent, final EditPartViewer viewer) { this.containerTracker.mouseDown(mouseEvent, viewer); this.elementTracker.mouseDown(mouseEvent, viewer); } @Override public void mouseDrag(final MouseEvent mouseEvent, final EditPartViewer viewer) { this.containerTracker.mouseDrag(mouseEvent, viewer); // elementTracker.mouseDrag(mouseEvent, viewer); } @Override public void mouseHover(final MouseEvent mouseEvent, final EditPartViewer viewer) { // containerTracker.mouseHover(mouseEvent, viewer); this.elementTracker.mouseHover(mouseEvent, viewer); } @Override public void mouseMove(final MouseEvent mouseEvent, final EditPartViewer viewer) { this.containerTracker.mouseMove(mouseEvent, viewer); this.elementTracker.mouseMove(mouseEvent, viewer); } @Override public void mouseUp(final MouseEvent mouseEvent, final EditPartViewer viewer) { this.containerTracker.mouseUp(mouseEvent, viewer); // this.elementTracker.mouseUp(mouseEvent, viewer); } @Override public void mouseWheelScrolled(final Event event, final EditPartViewer viewer) { // containerTracker.mouseWheelScrolled(event, viewer); this.elementTracker.mouseWheelScrolled(event, viewer); } @Override public void nativeDragFinished(final DragSourceEvent event, final EditPartViewer viewer) { this.containerTracker.nativeDragFinished(event, viewer); // elementTracker.nativeDragFinished(event, viewer); } @Override public void nativeDragStarted(final DragSourceEvent event, final EditPartViewer viewer) { this.containerTracker.nativeDragStarted(event, viewer); // elementTracker.nativeDragStarted(event, viewer); } @Override public void setEditDomain(final EditDomain domain) { this.containerTracker.setEditDomain(domain); this.elementTracker.setEditDomain(domain); } @Override public void setViewer(final EditPartViewer viewer) { // this.containerTracker.setViewer(viewer); this.elementTracker.setViewer(viewer); } @Override public void viewerEntered(final MouseEvent mouseEvent, final EditPartViewer viewer) { // this.containerTracker.viewerEntered(mouseEvent, viewer); this.elementTracker.viewerEntered(mouseEvent, viewer); } @Override public void viewerExited(final MouseEvent mouseEvent, final EditPartViewer viewer) { // this.containerTracker.viewerExited(mouseEvent, viewer); this.elementTracker.viewerExited(mouseEvent, viewer); } @Override public void setProperties(@SuppressWarnings("rawtypes") final Map properties) { this.containerTracker.setProperties(properties); this.elementTracker.setProperties(properties); } }