Skip to content
Snippets Groups Projects
Commit bc9a78f7 authored by Daniel Ratiu's avatar Daniel Ratiu
Browse files

adding a tooltip with a hint about how to draw connections

refs 1084
parent fd5cf069
No related branches found
No related tags found
No related merge requests found
......@@ -27,6 +27,7 @@ import static org.eclipse.gef.editparts.ZoomManager.FIT_WIDTH;
import static org.fortiss.tooling.base.layout.DefaultLayoutConstants.DEFAULT_GRID_ORIGIN_X;
import static org.fortiss.tooling.base.layout.DefaultLayoutConstants.DEFAULT_GRID_ORIGIN_Y;
import static org.fortiss.tooling.base.layout.DefaultLayoutConstants.DEFAULT_GRID_SIZE;
import static org.fortiss.tooling.kernel.ui.util.EObjectSelectionUtils.getFirstElement;
import java.util.ArrayList;
import java.util.Arrays;
......@@ -35,6 +36,7 @@ import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.conqat.ide.commons.ui.selection.SelectionUtils;
import org.eclipse.draw2d.ColorConstants;
import org.eclipse.draw2d.IFigure;
import org.eclipse.draw2d.geometry.Dimension;
......@@ -74,6 +76,7 @@ import org.eclipse.jface.viewers.ISelectionChangedListener;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.ui.IActionBars;
import org.eclipse.ui.IEditorInput;
......@@ -81,6 +84,8 @@ import org.eclipse.ui.IEditorSite;
import org.eclipse.ui.ISelectionListener;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.PartInitException;
import org.fortiss.tooling.base.model.element.IConnector;
import org.fortiss.tooling.base.model.element.IHierarchicElement;
import org.fortiss.tooling.base.ui.dnd.gef.ElementCompositionDropTargetListener;
import org.fortiss.tooling.base.ui.editpart.ConnectorEditPartBase;
import org.fortiss.tooling.base.ui.editpart.DiagramEditPartBase;
......@@ -91,7 +96,6 @@ import org.fortiss.tooling.kernel.ui.extension.base.EObjectActionBase;
import org.fortiss.tooling.kernel.ui.extension.data.ContextMenuContextProvider;
import org.fortiss.tooling.kernel.ui.service.IContextMenuService;
import org.fortiss.tooling.kernel.ui.service.IEditPartFactoryService;
import org.fortiss.tooling.kernel.ui.util.EObjectSelectionUtils;
/**
* GEF editor base implementation for graphical viewer editors.
......@@ -101,7 +105,7 @@ import org.fortiss.tooling.kernel.ui.util.EObjectSelectionUtils;
* @author hoelzl
* @author $Author$
* @version $Rev$
* @ConQAT.Rating YELLOW Hash: ED4D836D8777F3C81641AFB476504921
* @ConQAT.Rating YELLOW Hash: 34AD598E80FD2507CF8EF5AD46AC9A9E
*/
public class DiagramEditorBase<T extends EObject> extends GEFEditorBase<T> implements
IPostSelectionProvider, ContextMenuContextProvider {
......@@ -128,6 +132,15 @@ public class DiagramEditorBase<T extends EObject> extends GEFEditorBase<T> imple
private final ISelectionListener selectionListener = new ISelectionListener() {
@Override
public void selectionChanged(IWorkbenchPart part, ISelection selection) {
EditPart ep = SelectionUtils.checkAndPickFirstSafe(selection, EditPart.class);
if(ep != null) {
Control control = ep.getViewer().getControl();
if(ep.getModel() instanceof IConnector) {
control.setToolTipText("Link two connectors by pressing ALT and dragging from source to target.");
} else if(ep.getModel() instanceof IHierarchicElement) {
control.setToolTipText("Create a connection by pressing ALT and dragging.");
}
}
updateActions(selectionActions);
}
};
......@@ -146,8 +159,7 @@ public class DiagramEditorBase<T extends EObject> extends GEFEditorBase<T> imple
@Override
public EObject getSelectedModelElement() {
if(getSite().getSelectionProvider() != null) {
return EObjectSelectionUtils.getFirstElement(getSite().getSelectionProvider()
.getSelection());
return getFirstElement(getSite().getSelectionProvider().getSelection());
}
return null;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment