blob: 6fc8c768876f6a3c736f69f97be434ff6bb448c6 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2006, 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.test;
import java.util.List;
import junit.framework.TestCase;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.draw2d.Figure;
import org.eclipse.draw2d.IFigure;
import org.eclipse.gef.DefaultEditDomain;
import org.eclipse.gef.EditPart;
import org.eclipse.gef.editparts.AbstractGraphicalEditPart;
import org.eclipse.gef.tools.DragEditPartsTracker;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IEditorSite;
import org.eclipse.ui.IPropertyListener;
import org.eclipse.ui.IWorkbenchPartSite;
import org.eclipse.ui.PartInitException;
public class DragEditPartsTrackerTest extends AbstractFixtureTestCase {
/**
* @see TestCase#setUp()
*/
protected void setUp() throws Exception {
super.setUp();
}
/**
* @see TestCase#tearDown()
*/
protected void tearDown() throws Exception {
super.tearDown();
}
private static class TestGraphicalEditPart extends
AbstractGraphicalEditPart {
/*
* (non-Javadoc)
*
* @see org.eclipse.gef.editparts.AbstractEditPart#register()
*/
protected void register() {
// do nothing
}
/*
* (non-Javadoc)
*
* @see
* org.eclipse.gef.editparts.AbstractGraphicalEditPart#createFigure()
*/
protected IFigure createFigure() {
return new Figure();
}
/*
* (non-Javadoc)
*
* @see org.eclipse.gef.editparts.AbstractEditPart#createEditPolicies()
*/
protected void createEditPolicies() {
// do nothing
}
}
private class DummyEditorPart implements org.eclipse.ui.IEditorPart {
public void addPropertyListener(IPropertyListener listener) {
}
public void createPartControl(Composite parent) {
}
public void dispose() {
}
public IWorkbenchPartSite getSite() {
return null;
}
public String getTitle() {
return null;
}
public Image getTitleImage() {
return null;
}
public String getTitleToolTip() {
return null;
}
public void removePropertyListener(IPropertyListener listener) {
}
public void setFocus() {
}
public IEditorInput getEditorInput() {
return null;
}
public IEditorSite getEditorSite() {
return null;
}
public void init(IEditorSite site, IEditorInput input)
throws PartInitException {
}
public void doSave(IProgressMonitor monitor) {
}
public void doSaveAs() {
}
public boolean isDirty() {
return false;
}
public boolean isSaveAsAllowed() {
return false;
}
public boolean isSaveOnCloseNeeded() {
return false;
}
public Object getAdapter(Class adapter) {
return null;
}
}
private class TestDragEditPartsTracker extends DragEditPartsTracker {
public TestDragEditPartsTracker(EditPart sourceEditPart) {
super(sourceEditPart);
}
public List createOperationSet() {
return super.createOperationSet();
}
};
public void test_createOperationSet() {
TestDragEditPartsTracker dept = new TestDragEditPartsTracker(
new TestGraphicalEditPart());
dept.setEditDomain(new DefaultEditDomain(new DummyEditorPart()));
dept.activate();
List operationSet = dept.createOperationSet();
assertTrue(operationSet != null);
dept.deactivate();
}
}