Skip to content
Snippets Groups Projects
Commit a5047735 authored by Lukas Ladenberger's avatar Lukas Ladenberger
Browse files

reenabled context menu

parent 9c7a9dae
No related branches found
No related tags found
No related merge requests found
......@@ -103,7 +103,7 @@ public class Animation implements IAnimationListener {
}
public void checkObserver() {
if (visualization.isRunning()) {
// if (visualization.isRunning()) {
Display.getDefault().asyncExec(new Runnable() {
@Override
public void run() {
......@@ -114,7 +114,7 @@ public class Animation implements IAnimationListener {
c.checkObserver(Animation.this);
}
});
}
// }
}
public State getState() {
......
......@@ -68,7 +68,7 @@ public class BMSContextMenuProvider extends ContextMenuProvider {
if (sel instanceof AbstractEditPart) {
AbstractEditPart editPart = (AbstractEditPart) sel;
buildCustomMenu(menu, editPart);
// buildCustomMenu(menu, editPart);
buildObserverMenu(menu, editPart);
buildEventMenu(menu, editPart);
}
......
......@@ -3,9 +3,11 @@ package de.bmotionstudio.gef.editor;
import org.eclipse.draw2d.LightweightSystem;
import org.eclipse.draw2d.Viewport;
import org.eclipse.draw2d.parts.ScrollableThumbnail;
import org.eclipse.gef.ContextMenuProvider;
import org.eclipse.gef.GraphicalViewer;
import org.eclipse.gef.LayerConstants;
import org.eclipse.gef.editparts.ScalableRootEditPart;
import org.eclipse.gef.ui.actions.ActionRegistry;
import org.eclipse.gef.ui.parts.ContentOutlinePage;
import org.eclipse.gef.ui.parts.TreeViewer;
import org.eclipse.jface.action.Action;
......@@ -19,6 +21,8 @@ import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Tree;
import org.eclipse.swt.widgets.TreeItem;
import org.eclipse.ui.IActionBars;
import org.eclipse.ui.actions.ActionFactory;
import org.eclipse.ui.part.IPageSite;
import de.bmotionstudio.gef.editor.part.BMSTreeEditPartFactory;
......@@ -41,29 +45,28 @@ public class BMotionOutlinePage extends ContentOutlinePage {
@Override
public void init(IPageSite pageSite) {
super.init(pageSite);
// IActionBars bars = pageSite.getActionBars();
// ActionRegistry ar = getActionRegistry();
// bars.setGlobalActionHandler(ActionFactory.UNDO.getId(),
// ar.getAction(ActionFactory.UNDO.getId()));
// bars.setGlobalActionHandler(ActionFactory.REDO.getId(),
// ar.getAction(ActionFactory.REDO.getId()));
// bars.setGlobalActionHandler(ActionFactory.DELETE.getId(),
// ar.getAction(ActionFactory.DELETE.getId()));
// bars.setGlobalActionHandler(ActionFactory.COPY.getId(),
// ar.getAction(ActionFactory.COPY.getId()));
// bars.setGlobalActionHandler(ActionFactory.PASTE.getId(),
// ar.getAction(ActionFactory.PASTE.getId()));
IActionBars bars = pageSite.getActionBars();
ActionRegistry ar = viewPart.getActionRegistry();
bars.setGlobalActionHandler(ActionFactory.UNDO.getId(),
ar.getAction(ActionFactory.UNDO.getId()));
bars.setGlobalActionHandler(ActionFactory.REDO.getId(),
ar.getAction(ActionFactory.REDO.getId()));
bars.setGlobalActionHandler(ActionFactory.DELETE.getId(),
ar.getAction(ActionFactory.DELETE.getId()));
bars.setGlobalActionHandler(ActionFactory.COPY.getId(),
ar.getAction(ActionFactory.COPY.getId()));
bars.setGlobalActionHandler(ActionFactory.PASTE.getId(),
ar.getAction(ActionFactory.PASTE.getId()));
// buildCustomActions(bars, ar);
// bars.updateActionBars();
bars.updateActionBars();
}
protected void configureOutlineViewer() {
getViewer().setEditDomain(this.viewPart.getEditDomain());
getViewer().setEditPartFactory(new BMSTreeEditPartFactory());
// ContextMenuProvider provider = new
// BMSContextMenuProvider(getViewer(),
// getActionRegistry());
// getViewer().setContextMenu(provider);
ContextMenuProvider provider = new BMSContextMenuProvider(getViewer(),
viewPart.getActionRegistry());
getViewer().setContextMenu(provider);
// getViewer().setKeyHandler(getCommonKeyHandler());
}
......
......@@ -5,8 +5,14 @@ import java.util.EventObject;
import java.util.Iterator;
import java.util.List;
import org.eclipse.core.runtime.IConfigurationElement;
import org.eclipse.core.runtime.IExtension;
import org.eclipse.core.runtime.IExtensionPoint;
import org.eclipse.core.runtime.IExtensionRegistry;
import org.eclipse.core.runtime.Platform;
import org.eclipse.draw2d.ColorConstants;
import org.eclipse.draw2d.PositionConstants;
import org.eclipse.gef.ContextMenuProvider;
import org.eclipse.gef.EditDomain;
import org.eclipse.gef.GraphicalViewer;
import org.eclipse.gef.MouseWheelHandler;
......@@ -19,6 +25,7 @@ import org.eclipse.gef.editparts.ScalableRootEditPart;
import org.eclipse.gef.editparts.ZoomManager;
import org.eclipse.gef.rulers.RulerProvider;
import org.eclipse.gef.ui.actions.ActionRegistry;
import org.eclipse.gef.ui.actions.DeleteAction;
import org.eclipse.gef.ui.actions.GEFActionConstants;
import org.eclipse.gef.ui.actions.RedoAction;
import org.eclipse.gef.ui.actions.SelectAllAction;
......@@ -53,6 +60,8 @@ import org.eclipse.ui.views.contentoutline.IContentOutlinePage;
import org.eclipse.ui.views.properties.IPropertySheetPage;
import de.bmotionstudio.gef.editor.action.CopyAction;
import de.bmotionstudio.gef.editor.action.OpenObserverAction;
import de.bmotionstudio.gef.editor.action.OpenSchedulerEventAction;
import de.bmotionstudio.gef.editor.action.PasteAction;
import de.bmotionstudio.gef.editor.internal.BControlTransferDropTargetListener;
import de.bmotionstudio.gef.editor.model.BMotionRuler;
......@@ -261,9 +270,86 @@ public class VisualizationViewPart extends PageBookView implements
registry.registerAction(action);
getSelectionActions().add(action.getId());
action = new DeleteAction((IWorkbenchPart) this);
registry.registerAction(action);
getSelectionActions().add(action.getId());
action = new SelectAllAction(this);
registry.registerAction(action);
installObserverActions();
installSchedulerActions();
}
private void installObserverActions() {
IAction action;
ActionRegistry registry = getActionRegistry();
IExtensionRegistry reg = Platform.getExtensionRegistry();
IExtensionPoint extensionPoint = reg
.getExtensionPoint("de.bmotionstudio.gef.editor.observer");
for (IExtension extension : extensionPoint.getExtensions()) {
for (IConfigurationElement configurationElement : extension
.getConfigurationElements()) {
if ("observer".equals(configurationElement.getName())) {
String observerClassName = configurationElement
.getAttribute("class");
action = new OpenObserverAction(this);
action.setId("de.bmotionstudio.gef.editor.observerAction."
+ observerClassName);
((OpenObserverAction) action)
.setClassName(observerClassName);
registry.registerAction(action);
getSelectionActions().add(
"de.bmotionstudio.gef.editor.observerAction."
+ observerClassName);
}
}
}
}
private void installSchedulerActions() {
IAction action;
ActionRegistry registry = getActionRegistry();
IExtensionRegistry reg = Platform.getExtensionRegistry();
IExtensionPoint extensionPoint = reg
.getExtensionPoint("de.bmotionstudio.gef.editor.schedulerEvent");
for (IExtension extension : extensionPoint.getExtensions()) {
for (IConfigurationElement configurationElement : extension
.getConfigurationElements()) {
if ("schedulerEvent".equals(configurationElement.getName())) {
String sClassName = configurationElement
.getAttribute("class");
action = new OpenSchedulerEventAction(this);
action.setId("de.bmotionstudio.gef.editor.SchedulerEventAction."
+ sClassName);
((OpenSchedulerEventAction) action)
.setClassName(sClassName);
registry.registerAction(action);
getSelectionActions().add(
"de.bmotionstudio.gef.editor.SchedulerEventAction."
+ sClassName);
}
}
}
}
private class VisualizationViewPage extends Page {
......@@ -339,6 +425,9 @@ public class VisualizationViewPart extends PageBookView implements
bars.setGlobalActionHandler(ActionFactory.PASTE.getId(),
ar.getAction(ActionFactory.PASTE.getId()));
bars.setGlobalActionHandler(ActionFactory.DELETE.getId(),
ar.getAction(ActionFactory.DELETE.getId()));
bars.updateActionBars();
}
......@@ -361,6 +450,10 @@ public class VisualizationViewPart extends PageBookView implements
.getToolBarManager()
.add(getActionRegistry().getAction(
ActionFactory.PASTE.getId()));
pageSite.getActionBars()
.getToolBarManager()
.add(getActionRegistry().getAction(
ActionFactory.DELETE.getId()));
pageSite.getActionBars().getToolBarManager().add(new Separator());
......@@ -436,6 +529,11 @@ public class VisualizationViewPart extends PageBookView implements
updateActions(selectionActions);
}
});
ContextMenuProvider provider = new BMSContextMenuProvider(
graphicalViewer, getActionRegistry());
graphicalViewer.setContextMenu(provider);
}
public GraphicalViewer getGraphicalViewer() {
......
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<fragment>
<extension
point="org.eclipse.ui.perspectives">
<perspective
class="de.bmotionstudio.rodin.PerspectiveEditFactory"
icon="icons/logo_bmotion.png"
id="de.bmotionstudio.perspective.edit"
name="BMS Edit">
</perspective>
<perspective
class="de.bmotionstudio.rodin.PerspectiveRunFactory"
icon="icons/icon_run.png"
id="de.bmotionstudio.perspective.run"
name="BMS Run">
</perspective>
</extension>
<extension
point="org.eclipse.ui.menus">
<menuContribution
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment